Version Description
02-08-2022 =
Feature - Activate Mollie Components by default for new installations
Fix - Order note not translated
Fix - Gateway surcharge not applying tax
Fix - pending SEPA subscription renewal orders remain in "Pending payment" instead of being set to "On-Hold"
Fix - PHP warnings when using not Mollie gateway
Fix - Order API not processing transactions due to taxes mismatch
Fix - Inconsistent order numbers sometimes printing "Bestelling {bestelnummer}"
Fix - Link to new my.mollie.com url
Fix - Update In3 description
Download this release
Release Info
| Developer | carmen222 |
| Plugin | |
| Version | 7.3.0 |
| Comparing to | |
| See all releases | |
Code changes from version 7.2.0 to 7.3.0
- languages/mollie-payments-for-woocommerce-nl_BE.mo +0 -0
- languages/mollie-payments-for-woocommerce-nl_BE_formal.mo +0 -0
- languages/mollie-payments-for-woocommerce-nl_NL.mo +0 -0
- languages/mollie-payments-for-woocommerce-nl_NL_formal.mo +0 -0
- languages/mollie-payments-for-woocommerce.pot +3 -3
- mollie-payments-for-woocommerce.php +3 -3
- public/css/mollie-applepaydirect.min.css +23 -1
- public/css/mollie-components.min.css +53 -1
- public/css/mollie-gateway-icons.min.css +22 -1
- public/css/unabledButton.min.css +5 -1
- public/js/advancedSettings.min.js +156 -1
- public/js/applepay.min.js +117 -1
- public/js/applepayButtonBlockComponent.min.js +427 -1
- public/js/applepayDirect.min.js +442 -1
- public/js/applepayDirectCart.min.js +414 -1
- public/js/babel-polyfill.min.js +10279 -1
languages/mollie-payments-for-woocommerce-nl_BE.mo
CHANGED
|
Binary file
|
languages/mollie-payments-for-woocommerce-nl_BE_formal.mo
CHANGED
|
Binary file
|
languages/mollie-payments-for-woocommerce-nl_NL.mo
CHANGED
|
Binary file
|
languages/mollie-payments-for-woocommerce-nl_NL_formal.mo
CHANGED
|
Binary file
|
languages/mollie-payments-for-woocommerce.pot
CHANGED
|
@@ -1330,17 +1330,17 @@ msgstr ""
|
|
| 1330 |
|
| 1331 |
#: build/src/Mollie/WC/Gateway/Abstract.php:2580
|
| 1332 |
#: src/Mollie/WC/Gateway/Abstract.php:2580
|
| 1333 |
-
msgid "A
|
| 1334 |
msgstr ""
|
| 1335 |
|
| 1336 |
#: build/src/Mollie/WC/Gateway/Abstract.php:2590
|
| 1337 |
#: src/Mollie/WC/Gateway/Abstract.php:2590
|
| 1338 |
-
msgid "A
|
| 1339 |
msgstr ""
|
| 1340 |
|
| 1341 |
#: build/src/Mollie/WC/Gateway/Abstract.php:2607
|
| 1342 |
#: src/Mollie/WC/Gateway/Abstract.php:2607
|
| 1343 |
-
msgid "A
|
| 1344 |
msgstr ""
|
| 1345 |
|
| 1346 |
#: build/src/Mollie/WC/Gateway/Abstract.php:2646
|
| 1330 |
|
| 1331 |
#: build/src/Mollie/WC/Gateway/Abstract.php:2580
|
| 1332 |
#: src/Mollie/WC/Gateway/Abstract.php:2580
|
| 1333 |
+
msgid "A + %1s %2s fee might apply"
|
| 1334 |
msgstr ""
|
| 1335 |
|
| 1336 |
#: build/src/Mollie/WC/Gateway/Abstract.php:2590
|
| 1337 |
#: src/Mollie/WC/Gateway/Abstract.php:2590
|
| 1338 |
+
msgid "A + %1s%% fee might apply"
|
| 1339 |
msgstr ""
|
| 1340 |
|
| 1341 |
#: build/src/Mollie/WC/Gateway/Abstract.php:2607
|
| 1342 |
#: src/Mollie/WC/Gateway/Abstract.php:2607
|
| 1343 |
+
msgid "A + %1s %2s + %3s%% fee might apply"
|
| 1344 |
msgstr ""
|
| 1345 |
|
| 1346 |
#: build/src/Mollie/WC/Gateway/Abstract.php:2646
|
mollie-payments-for-woocommerce.php
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
* Plugin Name: Mollie Payments for WooCommerce
|
| 4 |
* Plugin URI: https://www.mollie.com
|
| 5 |
* Description: Accept payments in WooCommerce with the official Mollie plugin
|
| 6 |
-
* Version: 7.
|
| 7 |
* Author: Mollie
|
| 8 |
* Author URI: https://www.mollie.com
|
| 9 |
* Requires at least: 5.0
|
|
@@ -145,7 +145,7 @@ function initialize()
|
|
| 145 |
$properties = PluginProperties::new(__FILE__);
|
| 146 |
$bootstrap = Package::new($properties);
|
| 147 |
$modules = [
|
| 148 |
-
new ActivationModule(__FILE__),
|
| 149 |
new LogModule('mollie-payments-for-woocommerce-'),
|
| 150 |
new NoticeModule(),
|
| 151 |
new SharedModule(),
|
|
@@ -155,7 +155,7 @@ function initialize()
|
|
| 155 |
new GatewayModule(),
|
| 156 |
new VoucherModule(),
|
| 157 |
new PaymentModule(),
|
| 158 |
-
new UninstallModule()
|
| 159 |
];
|
| 160 |
$modules = apply_filters('mollie_wc_plugin_modules', $modules);
|
| 161 |
$bootstrap->boot(...$modules);
|
| 3 |
* Plugin Name: Mollie Payments for WooCommerce
|
| 4 |
* Plugin URI: https://www.mollie.com
|
| 5 |
* Description: Accept payments in WooCommerce with the official Mollie plugin
|
| 6 |
+
* Version: 7.3.0
|
| 7 |
* Author: Mollie
|
| 8 |
* Author URI: https://www.mollie.com
|
| 9 |
* Requires at least: 5.0
|
| 145 |
$properties = PluginProperties::new(__FILE__);
|
| 146 |
$bootstrap = Package::new($properties);
|
| 147 |
$modules = [
|
| 148 |
+
new ActivationModule(__FILE__, $properties->version()),
|
| 149 |
new LogModule('mollie-payments-for-woocommerce-'),
|
| 150 |
new NoticeModule(),
|
| 151 |
new SharedModule(),
|
| 155 |
new GatewayModule(),
|
| 156 |
new VoucherModule(),
|
| 157 |
new PaymentModule(),
|
| 158 |
+
new UninstallModule(),
|
| 159 |
];
|
| 160 |
$modules = apply_filters('mollie_wc_plugin_modules', $modules);
|
| 161 |
$bootstrap->boot(...$modules);
|
public/css/mollie-applepaydirect.min.css
CHANGED
|
@@ -1 +1,23 @@
|
|
| 1 |
-
.buttonDisabled{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.buttonDisabled {
|
| 2 |
+
opacity: 0.2;
|
| 3 |
+
}
|
| 4 |
+
|
| 5 |
+
.apple-pay-button {
|
| 6 |
+
display: inline-block;
|
| 7 |
+
-webkit-appearance: -apple-pay-button;
|
| 8 |
+
-apple-pay-button-type: checkout; /* also: check-out, book, or subscribe */
|
| 9 |
+
}
|
| 10 |
+
|
| 11 |
+
.apple-pay-button-black {
|
| 12 |
+
-apple-pay-button-style: black;
|
| 13 |
+
}
|
| 14 |
+
|
| 15 |
+
.apple-pay-button-white {
|
| 16 |
+
-apple-pay-button-style: white;
|
| 17 |
+
}
|
| 18 |
+
|
| 19 |
+
.apple-pay-button-white-with-line {
|
| 20 |
+
-apple-pay-button-style: white-outline;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vbW9sbGllLWFwcGxlcGF5ZGlyZWN0LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRTtBQUNGOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0FBRUY7O0FBQ0E7RUFDRTtBQUVGOztBQUNBO0VBQ0U7QUFFRjs7QUFDQTtFQUNFO0FBRUYsQyIsImZpbGUiOiJtb2xsaWUtYXBwbGVwYXlkaXJlY3QubWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5idXR0b25EaXNhYmxlZCB7XG4gIG9wYWNpdHk6IC4yO1xufVxuLmFwcGxlLXBheS1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogLWFwcGxlLXBheS1idXR0b247XG4gIC1hcHBsZS1wYXktYnV0dG9uLXR5cGU6IGNoZWNrb3V0OyAvKiBhbHNvOiBjaGVjay1vdXQsIGJvb2ssIG9yIHN1YnNjcmliZSAqL1xufVxuXG4uYXBwbGUtcGF5LWJ1dHRvbi1ibGFjayB7XG4gIC1hcHBsZS1wYXktYnV0dG9uLXN0eWxlOiBibGFjaztcbn1cblxuLmFwcGxlLXBheS1idXR0b24td2hpdGUge1xuICAtYXBwbGUtcGF5LWJ1dHRvbi1zdHlsZTogd2hpdGU7XG59XG5cbi5hcHBsZS1wYXktYnV0dG9uLXdoaXRlLXdpdGgtbGluZSB7XG4gIC1hcHBsZS1wYXktYnV0dG9uLXN0eWxlOiB3aGl0ZS1vdXRsaW5lO1xufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==*/
|
public/css/mollie-components.min.css
CHANGED
|
@@ -1 +1,53 @@
|
|
| 1 |
-
.mollie-components
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.mollie-components {
|
| 2 |
+
display: flex;
|
| 3 |
+
flex-wrap: wrap;
|
| 4 |
+
}
|
| 5 |
+
.mollie-components .mollie-component-label {
|
| 6 |
+
font-weight: 400;
|
| 7 |
+
}
|
| 8 |
+
.mollie-components .mollie-component {
|
| 9 |
+
width: 100%;
|
| 10 |
+
min-height: 34px;
|
| 11 |
+
background-color: #FFF;
|
| 12 |
+
border-radius: 6px;
|
| 13 |
+
color: #222;
|
| 14 |
+
transition: all 0.05s ease;
|
| 15 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.1), 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px 1px rgba(0, 0, 0, 0.05);
|
| 16 |
+
border: 2px solid transparent;
|
| 17 |
+
}
|
| 18 |
+
.mollie-components .mollie-component iframe {
|
| 19 |
+
border-radius: 6px;
|
| 20 |
+
margin: 0;
|
| 21 |
+
}
|
| 22 |
+
.mollie-components .mollie-component.is-invalid {
|
| 23 |
+
box-shadow: 0px 1px 1px 0px rgba(255, 51, 68, 0.1), 0px 1px 3px 0px rgba(255, 51, 68, 0.1);
|
| 24 |
+
border-color: #fff0f0;
|
| 25 |
+
}
|
| 26 |
+
.mollie-components .mollie-component.has-focus {
|
| 27 |
+
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.1), 0px 2px 6px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px 1px rgba(0, 0, 0, 0.05);
|
| 28 |
+
border-color: #07f;
|
| 29 |
+
}
|
| 30 |
+
.mollie-components div {
|
| 31 |
+
flex-grow: 1;
|
| 32 |
+
width: 100%;
|
| 33 |
+
}
|
| 34 |
+
.mollie-components div + div {
|
| 35 |
+
display: block;
|
| 36 |
+
margin-top: 0.63em;
|
| 37 |
+
}
|
| 38 |
+
.mollie-components #expiryDate,
|
| 39 |
+
.mollie-components #verificationCode {
|
| 40 |
+
max-width: 50%;
|
| 41 |
+
}
|
| 42 |
+
.mollie-components #expiryDate {
|
| 43 |
+
padding-right: 5%;
|
| 44 |
+
}
|
| 45 |
+
.mollie-components #verificationCode {
|
| 46 |
+
padding-left: 5%;
|
| 47 |
+
}
|
| 48 |
+
|
| 49 |
+
.mollie-components-description svg {
|
| 50 |
+
display: inline;
|
| 51 |
+
}
|
| 52 |
+
|
| 53 |
+
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vbW9sbGllLWNvbXBvbmVudHMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFO0VBQ0E7QUFDRjtBQUNFO0VBQ0U7QUFDSjtBQUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtBQUZKO0FBSUk7RUFDRTtFQUNBO0FBRk47QUFLSTtFQUNFO0VBRUE7QUFKTjtBQU9JO0VBQ0U7RUFHQTtBQVBOO0FBV0U7RUFDRTtFQUNBO0FBVEo7QUFZRTtFQUNFO0VBQ0E7QUFWSjtBQWFFOztFQUVFO0FBWEo7QUFjRTtFQUNFO0FBWko7QUFlRTtFQUNFO0FBYko7O0FBa0JFO0VBQ0U7QUFmSixDIiwiZmlsZSI6Im1vbGxpZS1jb21wb25lbnRzLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubW9sbGllLWNvbXBvbmVudHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgLm1vbGxpZS1jb21wb25lbnQtbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cblxuICAubW9sbGllLWNvbXBvbmVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMzRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBjb2xvcjogIzIyMjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjA1cyBlYXNlO1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSksXG4gICAgMHB4IDFweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKSxcbiAgICAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgIGlmcmFtZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJi5pcy1pbnZhbGlkIHtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAxcHggMXB4IDBweCByZ2JhKDI1NSwgNTEsIDY4LCAwLjEpLFxuICAgICAgMHB4IDFweCAzcHggMHB4IHJnYmEoMjU1LCA1MSwgNjgsIDAuMSk7XG4gICAgICBib3JkZXItY29sb3I6ICNmZmYwZjA7XG4gICAgfVxuXG4gICAgJi5oYXMtZm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogMHB4IDFweCAxcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKSxcbiAgICAgIDBweCAycHggNnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSksXG4gICAgICAwcHggMHB4IDBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICAgIGJvcmRlci1jb2xvcjogIzA3ZjtcbiAgICB9XG4gIH1cblxuICBkaXYge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGRpdiArIGRpdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogLjYzZW07XG4gIH1cblxuICAjZXhwaXJ5RGF0ZSxcbiAgI3ZlcmlmaWNhdGlvbkNvZGUge1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG5cbiAgI2V4cGlyeURhdGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICB9XG5cbiAgI3ZlcmlmaWNhdGlvbkNvZGUge1xuICAgIHBhZGRpbmctbGVmdDogNSU7XG4gIH1cbn1cblxuLm1vbGxpZS1jb21wb25lbnRzLWRlc2NyaXB0aW9uIHtcbiAgc3ZnIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=*/
|
public/css/mollie-gateway-icons.min.css
CHANGED
|
@@ -1 +1,22 @@
|
|
| 1 |
-
.mollie-gateway-icon
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.mollie-gateway-icon {
|
| 2 |
+
vertical-align: bottom;
|
| 3 |
+
height: 24px;
|
| 4 |
+
}
|
| 5 |
+
|
| 6 |
+
label .mollie-gateway-icon {
|
| 7 |
+
float: right;
|
| 8 |
+
}
|
| 9 |
+
|
| 10 |
+
.mollie-gateway-icon svg {
|
| 11 |
+
float: right;
|
| 12 |
+
}
|
| 13 |
+
|
| 14 |
+
.mollie_custom_icon {
|
| 15 |
+
padding: 1em;
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
#mol-paypal-settings-icon {
|
| 19 |
+
margin-left: 1em;
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vbW9sbGllLWdhdGV3YXktaWNvbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFO0VBQ0E7QUFDRjs7QUFDQTtFQUNFO0FBRUY7O0FBQUE7RUFDRTtBQUdGOztBQURBO0VBQ0U7QUFJRjs7QUFGQTtFQUNFO0FBS0YsQyIsImZpbGUiOiJtb2xsaWUtZ2F0ZXdheS1pY29ucy5taW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm1vbGxpZS1nYXRld2F5LWljb24ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBoZWlnaHQ6IDI0cHg7XG59XG5sYWJlbCAubW9sbGllLWdhdGV3YXktaWNvbntcbiAgZmxvYXQ6cmlnaHQ7XG59XG4ubW9sbGllLWdhdGV3YXktaWNvbiBzdmd7XG4gIGZsb2F0OnJpZ2h0O1xufVxuLm1vbGxpZV9jdXN0b21faWNvbntcbiAgcGFkZGluZzoxZW07XG59XG4jbW9sLXBheXBhbC1zZXR0aW5ncy1pY29ue1xuICBtYXJnaW4tbGVmdDoxZW07XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/
|
public/css/unabledButton.min.css
CHANGED
|
@@ -1 +1,5 @@
|
|
| 1 |
-
.buttonDisabled{
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.buttonDisabled {
|
| 2 |
+
opacity: 0.2;
|
| 3 |
+
}
|
| 4 |
+
|
| 5 |
+
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vdW5hYmxlZEJ1dHRvbi5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0U7QUFDRixDIiwiZmlsZSI6InVuYWJsZWRCdXR0b24ubWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5idXR0b25EaXNhYmxlZCB7XG4gIG9wYWNpdHk6IC4yO1xufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==*/
|
public/js/advancedSettings.min.js
CHANGED
|
@@ -1 +1,156 @@
|
|
| 1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/******/ (function(modules) { // webpackBootstrap
|
| 2 |
+
/******/ // The module cache
|
| 3 |
+
/******/ var installedModules = {};
|
| 4 |
+
/******/
|
| 5 |
+
/******/ // The require function
|
| 6 |
+
/******/ function __webpack_require__(moduleId) {
|
| 7 |
+
/******/
|
| 8 |
+
/******/ // Check if module is in cache
|
| 9 |
+
/******/ if(installedModules[moduleId]) {
|
| 10 |
+
/******/ return installedModules[moduleId].exports;
|
| 11 |
+
/******/ }
|
| 12 |
+
/******/ // Create a new module (and put it into the cache)
|
| 13 |
+
/******/ var module = installedModules[moduleId] = {
|
| 14 |
+
/******/ i: moduleId,
|
| 15 |
+
/******/ l: false,
|
| 16 |
+
/******/ exports: {}
|
| 17 |
+
/******/ };
|
| 18 |
+
/******/
|
| 19 |
+
/******/ // Execute the module function
|
| 20 |
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
| 21 |
+
/******/
|
| 22 |
+
/******/ // Flag the module as loaded
|
| 23 |
+
/******/ module.l = true;
|
| 24 |
+
/******/
|
| 25 |
+
/******/ // Return the exports of the module
|
| 26 |
+
/******/ return module.exports;
|
| 27 |
+
/******/ }
|
| 28 |
+
/******/
|
| 29 |
+
/******/
|
| 30 |
+
/******/ // expose the modules object (__webpack_modules__)
|
| 31 |
+
/******/ __webpack_require__.m = modules;
|
| 32 |
+
/******/
|
| 33 |
+
/******/ // expose the module cache
|
| 34 |
+
/******/ __webpack_require__.c = installedModules;
|
| 35 |
+
/******/
|
| 36 |
+
/******/ // define getter function for harmony exports
|
| 37 |
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
| 38 |
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
| 39 |
+
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
| 40 |
+
/******/ }
|
| 41 |
+
/******/ };
|
| 42 |
+
/******/
|
| 43 |
+
/******/ // define __esModule on exports
|
| 44 |
+
/******/ __webpack_require__.r = function(exports) {
|
| 45 |
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
| 46 |
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
| 47 |
+
/******/ }
|
| 48 |
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
| 49 |
+
/******/ };
|
| 50 |
+
/******/
|
| 51 |
+
/******/ // create a fake namespace object
|
| 52 |
+
/******/ // mode & 1: value is a module id, require it
|
| 53 |
+
/******/ // mode & 2: merge all properties of value into the ns
|
| 54 |
+
/******/ // mode & 4: return value when already ns object
|
| 55 |
+
/******/ // mode & 8|1: behave like require
|
| 56 |
+
/******/ __webpack_require__.t = function(value, mode) {
|
| 57 |
+
/******/ if(mode & 1) value = __webpack_require__(value);
|
| 58 |
+
/******/ if(mode & 8) return value;
|
| 59 |
+
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
| 60 |
+
/******/ var ns = Object.create(null);
|
| 61 |
+
/******/ __webpack_require__.r(ns);
|
| 62 |
+
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
| 63 |
+
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
| 64 |
+
/******/ return ns;
|
| 65 |
+
/******/ };
|
| 66 |
+
/******/
|
| 67 |
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
| 68 |
+
/******/ __webpack_require__.n = function(module) {
|
| 69 |
+
/******/ var getter = module && module.__esModule ?
|
| 70 |
+
/******/ function getDefault() { return module['default']; } :
|
| 71 |
+
/******/ function getModuleExports() { return module; };
|
| 72 |
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
| 73 |
+
/******/ return getter;
|
| 74 |
+
/******/ };
|
| 75 |
+
/******/
|
| 76 |
+
/******/ // Object.prototype.hasOwnProperty.call
|
| 77 |
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
| 78 |
+
/******/
|
| 79 |
+
/******/ // __webpack_public_path__
|
| 80 |
+
/******/ __webpack_require__.p = "/public/js/";
|
| 81 |
+
/******/
|
| 82 |
+
/******/
|
| 83 |
+
/******/ // Load entry module and return exports
|
| 84 |
+
/******/ return __webpack_require__(__webpack_require__.s = "./resources/js/advancedSettings.js");
|
| 85 |
+
/******/ })
|
| 86 |
+
/************************************************************************/
|
| 87 |
+
/******/ ({
|
| 88 |
+
|
| 89 |
+
/***/ "./resources/js/advancedSettings.js":
|
| 90 |
+
/*!******************************************!*\
|
| 91 |
+
!*** ./resources/js/advancedSettings.js ***!
|
| 92 |
+
\******************************************/
|
| 93 |
+
/*! no static exports found */
|
| 94 |
+
/***/ (function(module, exports) {
|
| 95 |
+
|
| 96 |
+
(function (_ref) {
|
| 97 |
+
var _ = _ref._,
|
| 98 |
+
jQuery = _ref.jQuery;
|
| 99 |
+
|
| 100 |
+
function mollie_settings__insertTextAtCursor(target, text, dontIgnoreSelection) {
|
| 101 |
+
if (target.setRangeText) {
|
| 102 |
+
if (!dontIgnoreSelection) {
|
| 103 |
+
// insert at end
|
| 104 |
+
target.setRangeText(text, target.value.length, target.value.length, "end");
|
| 105 |
+
} else {
|
| 106 |
+
// replace selection
|
| 107 |
+
target.setRangeText(text, target.selectionStart, target.selectionEnd, "end");
|
| 108 |
+
}
|
| 109 |
+
} else {
|
| 110 |
+
target.focus();
|
| 111 |
+
document.execCommand("insertText", false
|
| 112 |
+
/*no UI*/
|
| 113 |
+
, text);
|
| 114 |
+
}
|
| 115 |
+
|
| 116 |
+
target.focus();
|
| 117 |
+
}
|
| 118 |
+
|
| 119 |
+
jQuery(document).ready(function ($) {
|
| 120 |
+
$(".mollie-settings-advanced-payment-desc-label").data("ignore-click", "false").on("mousedown", function (e) {
|
| 121 |
+
var input = document.getElementById("mollie-payments-for-woocommerce_api_payment_description");
|
| 122 |
+
|
| 123 |
+
if (document.activeElement && input === document.activeElement) {
|
| 124 |
+
$(this).on("mouseup.molliesettings", function (e) {
|
| 125 |
+
$(this).data("ignore-click", "true");
|
| 126 |
+
$(this).off(".molliesettings");
|
| 127 |
+
var tag = $(this).data("tag");
|
| 128 |
+
var input = document.getElementById("mollie-payments-for-woocommerce_api_payment_description");
|
| 129 |
+
mollie_settings__insertTextAtCursor(input, tag, true);
|
| 130 |
+
});
|
| 131 |
+
}
|
| 132 |
+
|
| 133 |
+
var $this = $(this);
|
| 134 |
+
$(window).on("mouseup.molliesettings drag.molliesettings blur.molliesettings", function (e) {
|
| 135 |
+
$this.off(".molliesettings");
|
| 136 |
+
$(window).off(".molliesettings");
|
| 137 |
+
});
|
| 138 |
+
}).on("click", function (e) {
|
| 139 |
+
e.preventDefault();
|
| 140 |
+
e.stopImmediatePropagation();
|
| 141 |
+
|
| 142 |
+
if ($(this).data("ignore-click") === "false") {
|
| 143 |
+
var tag = $(this).data("tag");
|
| 144 |
+
var input = document.getElementById("mollie-payments-for-woocommerce_api_payment_description");
|
| 145 |
+
mollie_settings__insertTextAtCursor(input, tag, false);
|
| 146 |
+
} else {
|
| 147 |
+
$(this).data("ignore-click", "false");
|
| 148 |
+
}
|
| 149 |
+
});
|
| 150 |
+
});
|
| 151 |
+
})(window);
|
| 152 |
+
|
| 153 |
+
/***/ })
|
| 154 |
+
|
| 155 |
+
/******/ });
|
| 156 |
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2FkdmFuY2VkU2V0dGluZ3MuanMiXSwibmFtZXMiOlsiXyIsImpRdWVyeSIsIm1vbGxpZV9zZXR0aW5nc19faW5zZXJ0VGV4dEF0Q3Vyc29yIiwidGFyZ2V0IiwidGV4dCIsImRvbnRJZ25vcmVTZWxlY3Rpb24iLCJzZXRSYW5nZVRleHQiLCJ2YWx1ZSIsImxlbmd0aCIsInNlbGVjdGlvblN0YXJ0Iiwic2VsZWN0aW9uRW5kIiwiZm9jdXMiLCJkb2N1bWVudCIsImV4ZWNDb21tYW5kIiwicmVhZHkiLCIkIiwiZGF0YSIsIm9uIiwiZSIsImlucHV0IiwiZ2V0RWxlbWVudEJ5SWQiLCJhY3RpdmVFbGVtZW50Iiwib2ZmIiwidGFnIiwiJHRoaXMiLCJ3aW5kb3ciLCJwcmV2ZW50RGVmYXVsdCIsInN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiJdLCJtYXBwaW5ncyI6IjtRQUFBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBOzs7UUFHQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMENBQTBDLGdDQUFnQztRQUMxRTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLHdEQUF3RCxrQkFBa0I7UUFDMUU7UUFDQSxpREFBaUQsY0FBYztRQUMvRDs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EseUNBQXlDLGlDQUFpQztRQUMxRSxnSEFBZ0gsbUJBQW1CLEVBQUU7UUFDckk7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSwyQkFBMkIsMEJBQTBCLEVBQUU7UUFDdkQsaUNBQWlDLGVBQWU7UUFDaEQ7UUFDQTtRQUNBOztRQUVBO1FBQ0Esc0RBQXNELCtEQUErRDs7UUFFckg7UUFDQTs7O1FBR0E7UUFDQTs7Ozs7Ozs7Ozs7O0FDbEZBLENBQ0ksZ0JBQXdCO0VBQUEsSUFBYkEsQ0FBYSxRQUFiQSxDQUFhO0VBQUEsSUFBVkMsTUFBVSxRQUFWQSxNQUFVOztFQUVwQixTQUFTQyxtQ0FBVCxDQUE2Q0MsTUFBN0MsRUFBcURDLElBQXJELEVBQTJEQyxtQkFBM0QsRUFBZ0Y7SUFDNUUsSUFBSUYsTUFBTSxDQUFDRyxZQUFYLEVBQXlCO01BQ3JCLElBQUssQ0FBQ0QsbUJBQU4sRUFBNEI7UUFDeEI7UUFDQUYsTUFBTSxDQUFDRyxZQUFQLENBQW9CRixJQUFwQixFQUEwQkQsTUFBTSxDQUFDSSxLQUFQLENBQWFDLE1BQXZDLEVBQStDTCxNQUFNLENBQUNJLEtBQVAsQ0FBYUMsTUFBNUQsRUFBb0UsS0FBcEU7TUFDSCxDQUhELE1BR087UUFDSDtRQUNBTCxNQUFNLENBQUNHLFlBQVAsQ0FBb0JGLElBQXBCLEVBQTBCRCxNQUFNLENBQUNNLGNBQWpDLEVBQWlETixNQUFNLENBQUNPLFlBQXhELEVBQXNFLEtBQXRFO01BQ0g7SUFDSixDQVJELE1BUU87TUFDSFAsTUFBTSxDQUFDUSxLQUFQO01BQ0FDLFFBQVEsQ0FBQ0MsV0FBVCxDQUFxQixZQUFyQixFQUFtQztNQUFNO01BQXpDLEVBQW9EVCxJQUFwRDtJQUNIOztJQUNERCxNQUFNLENBQUNRLEtBQVA7RUFDSDs7RUFDRFYsTUFBTSxDQUFDVyxRQUFELENBQU4sQ0FBaUJFLEtBQWpCLENBQXVCLFVBQVNDLENBQVQsRUFBWTtJQUMvQkEsQ0FBQyxDQUFDLDhDQUFELENBQUQsQ0FDS0MsSUFETCxDQUNVLGNBRFYsRUFDMEIsT0FEMUIsRUFFS0MsRUFGTCxDQUVRLFdBRlIsRUFFcUIsVUFBU0MsQ0FBVCxFQUFZO01BQ3pCLElBQU1DLEtBQUssR0FBR1AsUUFBUSxDQUFDUSxjQUFULENBQXdCLHlEQUF4QixDQUFkOztNQUNBLElBQUtSLFFBQVEsQ0FBQ1MsYUFBVCxJQUEwQkYsS0FBSyxLQUFLUCxRQUFRLENBQUNTLGFBQWxELEVBQWtFO1FBQzlETixDQUFDLENBQUMsSUFBRCxDQUFELENBQVFFLEVBQVIsQ0FBVyx3QkFBWCxFQUFxQyxVQUFTQyxDQUFULEVBQVk7VUFDN0NILENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUUMsSUFBUixDQUFhLGNBQWIsRUFBNkIsTUFBN0I7VUFDQUQsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRTyxHQUFSLENBQVksaUJBQVo7VUFDQSxJQUFNQyxHQUFHLEdBQUdSLENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUUMsSUFBUixDQUFhLEtBQWIsQ0FBWjtVQUNBLElBQU1HLEtBQUssR0FBR1AsUUFBUSxDQUFDUSxjQUFULENBQXdCLHlEQUF4QixDQUFkO1VBQ0FsQixtQ0FBbUMsQ0FBQ2lCLEtBQUQsRUFBUUksR0FBUixFQUFhLElBQWIsQ0FBbkM7UUFDSCxDQU5EO01BT0g7O01BQ0QsSUFBSUMsS0FBSyxHQUFHVCxDQUFDLENBQUMsSUFBRCxDQUFiO01BQ0FBLENBQUMsQ0FBQ1UsTUFBRCxDQUFELENBQVVSLEVBQVYsQ0FBYSxnRUFBYixFQUErRSxVQUFTQyxDQUFULEVBQVk7UUFDdkZNLEtBQUssQ0FBQ0YsR0FBTixDQUFVLGlCQUFWO1FBQ0FQLENBQUMsQ0FBQ1UsTUFBRCxDQUFELENBQVVILEdBQVYsQ0FBYyxpQkFBZDtNQUNILENBSEQ7SUFJSCxDQWxCTCxFQW1CS0wsRUFuQkwsQ0FtQlEsT0FuQlIsRUFtQmlCLFVBQVNDLENBQVQsRUFBWTtNQUNyQkEsQ0FBQyxDQUFDUSxjQUFGO01BQ0FSLENBQUMsQ0FBQ1Msd0JBQUY7O01BQ0EsSUFBS1osQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRQyxJQUFSLENBQWEsY0FBYixNQUFpQyxPQUF0QyxFQUFnRDtRQUM1QyxJQUFNTyxHQUFHLEdBQUdSLENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUUMsSUFBUixDQUFhLEtBQWIsQ0FBWjtRQUNBLElBQU1HLEtBQUssR0FBR1AsUUFBUSxDQUFDUSxjQUFULENBQXdCLHlEQUF4QixDQUFkO1FBQ0FsQixtQ0FBbUMsQ0FBQ2lCLEtBQUQsRUFBUUksR0FBUixFQUFhLEtBQWIsQ0FBbkM7TUFDSCxDQUpELE1BSU87UUFDSFIsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRQyxJQUFSLENBQWEsY0FBYixFQUE2QixPQUE3QjtNQUNIO0lBQ0osQ0E3Qkw7RUErQkgsQ0FoQ0Q7QUFpQ0gsQ0FuREwsRUFzRElTLE1BdERKLEUiLCJmaWxlIjoiYWR2YW5jZWRTZXR0aW5ncy5taW4uanMiLCJzb3VyY2VzQ29udGVudCI6WyIgXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHt9O1xuXG4gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXG4gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuIFx0XHR9XG4gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbiBcdFx0XHRpOiBtb2R1bGVJZCxcbiBcdFx0XHRsOiBmYWxzZSxcbiBcdFx0XHRleHBvcnRzOiB7fVxuIFx0XHR9O1xuXG4gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuIFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcblxuIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcblxuIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4gXHR9XG5cblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBnZXR0ZXIgfSk7XG4gXHRcdH1cbiBcdH07XG5cbiBcdC8vIGRlZmluZSBfX2VzTW9kdWxlIG9uIGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uciA9IGZ1bmN0aW9uKGV4cG9ydHMpIHtcbiBcdFx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG4gXHRcdH1cbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiBcdH07XG5cbiBcdC8vIGNyZWF0ZSBhIGZha2UgbmFtZXNwYWNlIG9iamVjdFxuIFx0Ly8gbW9kZSAmIDE6IHZhbHVlIGlzIGEgbW9kdWxlIGlkLCByZXF1aXJlIGl0XG4gXHQvLyBtb2RlICYgMjogbWVyZ2UgYWxsIHByb3BlcnRpZXMgb2YgdmFsdWUgaW50byB0aGUgbnNcbiBcdC8vIG1vZGUgJiA0OiByZXR1cm4gdmFsdWUgd2hlbiBhbHJlYWR5IG5zIG9iamVjdFxuIFx0Ly8gbW9kZSAmIDh8MTogYmVoYXZlIGxpa2UgcmVxdWlyZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy50ID0gZnVuY3Rpb24odmFsdWUsIG1vZGUpIHtcbiBcdFx0aWYobW9kZSAmIDEpIHZhbHVlID0gX193ZWJwYWNrX3JlcXVpcmVfXyh2YWx1ZSk7XG4gXHRcdGlmKG1vZGUgJiA4KSByZXR1cm4gdmFsdWU7XG4gXHRcdGlmKChtb2RlICYgNCkgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAmJiB2YWx1ZS5fX2VzTW9kdWxlKSByZXR1cm4gdmFsdWU7XG4gXHRcdHZhciBucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18ucihucyk7XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShucywgJ2RlZmF1bHQnLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2YWx1ZSB9KTtcbiBcdFx0aWYobW9kZSAmIDIgJiYgdHlwZW9mIHZhbHVlICE9ICdzdHJpbmcnKSBmb3IodmFyIGtleSBpbiB2YWx1ZSkgX193ZWJwYWNrX3JlcXVpcmVfXy5kKG5zLCBrZXksIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gdmFsdWVba2V5XTsgfS5iaW5kKG51bGwsIGtleSkpO1xuIFx0XHRyZXR1cm4gbnM7XG4gXHR9O1xuXG4gXHQvLyBnZXREZWZhdWx0RXhwb3J0IGZ1bmN0aW9uIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbm9uLWhhcm1vbnkgbW9kdWxlc1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5uID0gZnVuY3Rpb24obW9kdWxlKSB7XG4gXHRcdHZhciBnZXR0ZXIgPSBtb2R1bGUgJiYgbW9kdWxlLl9fZXNNb2R1bGUgP1xuIFx0XHRcdGZ1bmN0aW9uIGdldERlZmF1bHQoKSB7IHJldHVybiBtb2R1bGVbJ2RlZmF1bHQnXTsgfSA6XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0TW9kdWxlRXhwb3J0cygpIHsgcmV0dXJuIG1vZHVsZTsgfTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kKGdldHRlciwgJ2EnLCBnZXR0ZXIpO1xuIFx0XHRyZXR1cm4gZ2V0dGVyO1xuIFx0fTtcblxuIFx0Ly8gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5KSB7IHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBwcm9wZXJ0eSk7IH07XG5cbiBcdC8vIF9fd2VicGFja19wdWJsaWNfcGF0aF9fXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnAgPSBcIi9wdWJsaWMvanMvXCI7XG5cblxuIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSBcIi4vcmVzb3VyY2VzL2pzL2FkdmFuY2VkU2V0dGluZ3MuanNcIik7XG4iLCIoXG4gICAgZnVuY3Rpb24gKHtfLCBqUXVlcnkgfSkge1xuXG4gICAgICAgIGZ1bmN0aW9uIG1vbGxpZV9zZXR0aW5nc19faW5zZXJ0VGV4dEF0Q3Vyc29yKHRhcmdldCwgdGV4dCwgZG9udElnbm9yZVNlbGVjdGlvbikge1xuICAgICAgICAgICAgaWYgKHRhcmdldC5zZXRSYW5nZVRleHQpIHtcbiAgICAgICAgICAgICAgICBpZiAoICFkb250SWdub3JlU2VsZWN0aW9uICkge1xuICAgICAgICAgICAgICAgICAgICAvLyBpbnNlcnQgYXQgZW5kXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldC5zZXRSYW5nZVRleHQodGV4dCwgdGFyZ2V0LnZhbHVlLmxlbmd0aCwgdGFyZ2V0LnZhbHVlLmxlbmd0aCwgXCJlbmRcIik7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gcmVwbGFjZSBzZWxlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LnNldFJhbmdlVGV4dCh0ZXh0LCB0YXJnZXQuc2VsZWN0aW9uU3RhcnQsIHRhcmdldC5zZWxlY3Rpb25FbmQsIFwiZW5kXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGFyZ2V0LmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoXCJpbnNlcnRUZXh0XCIsIGZhbHNlIC8qbm8gVUkqLywgdGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0YXJnZXQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICBqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCQpIHtcbiAgICAgICAgICAgICQoXCIubW9sbGllLXNldHRpbmdzLWFkdmFuY2VkLXBheW1lbnQtZGVzYy1sYWJlbFwiKVxuICAgICAgICAgICAgICAgIC5kYXRhKFwiaWdub3JlLWNsaWNrXCIsIFwiZmFsc2VcIilcbiAgICAgICAgICAgICAgICAub24oXCJtb3VzZWRvd25cIiwgZnVuY3Rpb24oZSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibW9sbGllLXBheW1lbnRzLWZvci13b29jb21tZXJjZV9hcGlfcGF5bWVudF9kZXNjcmlwdGlvblwiKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCBkb2N1bWVudC5hY3RpdmVFbGVtZW50ICYmIGlucHV0ID09PSBkb2N1bWVudC5hY3RpdmVFbGVtZW50ICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5vbihcIm1vdXNldXAubW9sbGllc2V0dGluZ3NcIiwgZnVuY3Rpb24oZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykuZGF0YShcImlnbm9yZS1jbGlja1wiLCBcInRydWVcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5vZmYoXCIubW9sbGllc2V0dGluZ3NcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFnID0gJCh0aGlzKS5kYXRhKFwidGFnXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGlucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJtb2xsaWUtcGF5bWVudHMtZm9yLXdvb2NvbW1lcmNlX2FwaV9wYXltZW50X2Rlc2NyaXB0aW9uXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vbGxpZV9zZXR0aW5nc19faW5zZXJ0VGV4dEF0Q3Vyc29yKGlucHV0LCB0YWcsIHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbGV0ICR0aGlzID0gJCh0aGlzKTtcbiAgICAgICAgICAgICAgICAgICAgJCh3aW5kb3cpLm9uKFwibW91c2V1cC5tb2xsaWVzZXR0aW5ncyBkcmFnLm1vbGxpZXNldHRpbmdzIGJsdXIubW9sbGllc2V0dGluZ3NcIiwgZnVuY3Rpb24oZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMub2ZmKFwiLm1vbGxpZXNldHRpbmdzXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh3aW5kb3cpLm9mZihcIi5tb2xsaWVzZXR0aW5nc1wiKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAub24oXCJjbGlja1wiLCBmdW5jdGlvbihlKSB7XG4gICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCAkKHRoaXMpLmRhdGEoXCJpZ25vcmUtY2xpY2tcIikgPT09IFwiZmFsc2VcIiApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRhZyA9ICQodGhpcykuZGF0YShcInRhZ1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGlucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJtb2xsaWUtcGF5bWVudHMtZm9yLXdvb2NvbW1lcmNlX2FwaV9wYXltZW50X2Rlc2NyaXB0aW9uXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbW9sbGllX3NldHRpbmdzX19pbnNlcnRUZXh0QXRDdXJzb3IoaW5wdXQsIHRhZywgZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5kYXRhKFwiaWdub3JlLWNsaWNrXCIsIFwiZmFsc2VcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgO1xuICAgICAgICB9KTtcbiAgICB9XG4pXG4oXG4gICAgd2luZG93XG4pXG4iXSwic291cmNlUm9vdCI6IiJ9
|
public/js/applepay.min.js
CHANGED
|
@@ -1 +1,117 @@
|
|
| 1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/******/ (function(modules) { // webpackBootstrap
|
| 2 |
+
/******/ // The module cache
|
| 3 |
+
/******/ var installedModules = {};
|
| 4 |
+
/******/
|
| 5 |
+
/******/ // The require function
|
| 6 |
+
/******/ function __webpack_require__(moduleId) {
|
| 7 |
+
/******/
|
| 8 |
+
/******/ // Check if module is in cache
|
| 9 |
+
/******/ if(installedModules[moduleId]) {
|
| 10 |
+
/******/ return installedModules[moduleId].exports;
|
| 11 |
+
/******/ }
|
| 12 |
+
/******/ // Create a new module (and put it into the cache)
|
| 13 |
+
/******/ var module = installedModules[moduleId] = {
|
| 14 |
+
/******/ i: moduleId,
|
| 15 |
+
/******/ l: false,
|
| 16 |
+
/******/ exports: {}
|
| 17 |
+
/******/ };
|
| 18 |
+
/******/
|
| 19 |
+
/******/ // Execute the module function
|
| 20 |
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
| 21 |
+
/******/
|
| 22 |
+
/******/ // Flag the module as loaded
|
| 23 |
+
/******/ module.l = true;
|
| 24 |
+
/******/
|
| 25 |
+
/******/ // Return the exports of the module
|
| 26 |
+
/******/ return module.exports;
|
| 27 |
+
/******/ }
|
| 28 |
+
/******/
|
| 29 |
+
/******/
|
| 30 |
+
/******/ // expose the modules object (__webpack_modules__)
|
| 31 |
+
/******/ __webpack_require__.m = modules;
|
| 32 |
+
/******/
|
| 33 |
+
/******/ // expose the module cache
|
| 34 |
+
/******/ __webpack_require__.c = installedModules;
|
| 35 |
+
/******/
|
| 36 |
+
/******/ // define getter function for harmony exports
|
| 37 |
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
| 38 |
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
| 39 |
+
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
| 40 |
+
/******/ }
|
| 41 |
+
/******/ };
|
| 42 |
+
/******/
|
| 43 |
+
/******/ // define __esModule on exports
|
| 44 |
+
/******/ __webpack_require__.r = function(exports) {
|
| 45 |
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
| 46 |
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
| 47 |
+
/******/ }
|
| 48 |
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
| 49 |
+
/******/ };
|
| 50 |
+
/******/
|
| 51 |
+
/******/ // create a fake namespace object
|
| 52 |
+
/******/ // mode & 1: value is a module id, require it
|
| 53 |
+
/******/ // mode & 2: merge all properties of value into the ns
|
| 54 |
+
/******/ // mode & 4: return value when already ns object
|
| 55 |
+
/******/ // mode & 8|1: behave like require
|
| 56 |
+
/******/ __webpack_require__.t = function(value, mode) {
|
| 57 |
+
/******/ if(mode & 1) value = __webpack_require__(value);
|
| 58 |
+
/******/ if(mode & 8) return value;
|
| 59 |
+
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
| 60 |
+
/******/ var ns = Object.create(null);
|
| 61 |
+
/******/ __webpack_require__.r(ns);
|
| 62 |
+
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
| 63 |
+
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
| 64 |
+
/******/ return ns;
|
| 65 |
+
/******/ };
|
| 66 |
+
/******/
|
| 67 |
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
| 68 |
+
/******/ __webpack_require__.n = function(module) {
|
| 69 |
+
/******/ var getter = module && module.__esModule ?
|
| 70 |
+
/******/ function getDefault() { return module['default']; } :
|
| 71 |
+
/******/ function getModuleExports() { return module; };
|
| 72 |
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
| 73 |
+
/******/ return getter;
|
| 74 |
+
/******/ };
|
| 75 |
+
/******/
|
| 76 |
+
/******/ // Object.prototype.hasOwnProperty.call
|
| 77 |
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
| 78 |
+
/******/
|
| 79 |
+
/******/ // __webpack_public_path__
|
| 80 |
+
/******/ __webpack_require__.p = "/public/js/";
|
| 81 |
+
/******/
|
| 82 |
+
/******/
|
| 83 |
+
/******/ // Load entry module and return exports
|
| 84 |
+
/******/ return __webpack_require__(__webpack_require__.s = "./resources/js/applepay.js");
|
| 85 |
+
/******/ })
|
| 86 |
+
/************************************************************************/
|
| 87 |
+
/******/ ({
|
| 88 |
+
|
| 89 |
+
/***/ "./resources/js/applepay.js":
|
| 90 |
+
/*!**********************************!*\
|
| 91 |
+
!*** ./resources/js/applepay.js ***!
|
| 92 |
+
\**********************************/
|
| 93 |
+
/*! no static exports found */
|
| 94 |
+
/***/ (function(module, exports) {
|
| 95 |
+
|
| 96 |
+
(function (ApplePaySession) {
|
| 97 |
+
document.addEventListener('DOMContentLoaded', function () {
|
| 98 |
+
var applePayMethodElement = document.querySelector('.payment_method_mollie_wc_gateway_applepay');
|
| 99 |
+
var woocommerceCheckoutForm = document.querySelector('form.woocommerce-checkout');
|
| 100 |
+
|
| 101 |
+
if (!woocommerceCheckoutForm) {
|
| 102 |
+
return;
|
| 103 |
+
}
|
| 104 |
+
|
| 105 |
+
if (!ApplePaySession || !ApplePaySession.canMakePayments()) {
|
| 106 |
+
applePayMethodElement && applePayMethodElement.parentNode.removeChild(applePayMethodElement);
|
| 107 |
+
return;
|
| 108 |
+
}
|
| 109 |
+
|
| 110 |
+
woocommerceCheckoutForm.insertAdjacentHTML('beforeend', '<input type="hidden" name="mollie_apple_pay_method_allowed" value="1" />');
|
| 111 |
+
});
|
| 112 |
+
})(window.ApplePaySession);
|
| 113 |
+
|
| 114 |
+
/***/ })
|
| 115 |
+
|
| 116 |
+
/******/ });
|
| 117 |
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2FwcGxlcGF5LmpzIl0sIm5hbWVzIjpbIkFwcGxlUGF5U2Vzc2lvbiIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsImFwcGxlUGF5TWV0aG9kRWxlbWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJ3b29jb21tZXJjZUNoZWNrb3V0Rm9ybSIsImNhbk1ha2VQYXltZW50cyIsInBhcmVudE5vZGUiLCJyZW1vdmVDaGlsZCIsImluc2VydEFkamFjZW50SFRNTCIsIndpbmRvdyJdLCJtYXBwaW5ncyI6IjtRQUFBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBOzs7UUFHQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMENBQTBDLGdDQUFnQztRQUMxRTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLHdEQUF3RCxrQkFBa0I7UUFDMUU7UUFDQSxpREFBaUQsY0FBYztRQUMvRDs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EseUNBQXlDLGlDQUFpQztRQUMxRSxnSEFBZ0gsbUJBQW1CLEVBQUU7UUFDckk7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSwyQkFBMkIsMEJBQTBCLEVBQUU7UUFDdkQsaUNBQWlDLGVBQWU7UUFDaEQ7UUFDQTtRQUNBOztRQUVBO1FBQ0Esc0RBQXNELCtEQUErRDs7UUFFckg7UUFDQTs7O1FBR0E7UUFDQTs7Ozs7Ozs7Ozs7O0FDbEZBLENBQUMsVUFBVUEsZUFBVixFQUEyQjtFQUUxQkMsUUFBUSxDQUFDQyxnQkFBVCxDQUEwQixrQkFBMUIsRUFBOEMsWUFBWTtJQUN4RCxJQUFJQyxxQkFBcUIsR0FBR0YsUUFBUSxDQUFDRyxhQUFULENBQzFCLDRDQUQwQixDQUE1QjtJQUlBLElBQUlDLHVCQUF1QixHQUFHSixRQUFRLENBQUNHLGFBQVQsQ0FDNUIsMkJBRDRCLENBQTlCOztJQUlBLElBQUksQ0FBQ0MsdUJBQUwsRUFBOEI7TUFDNUI7SUFDRDs7SUFFRCxJQUFJLENBQUNMLGVBQUQsSUFBb0IsQ0FBQ0EsZUFBZSxDQUFDTSxlQUFoQixFQUF6QixFQUE0RDtNQUMxREgscUJBQXFCLElBQ3JCQSxxQkFBcUIsQ0FBQ0ksVUFBdEIsQ0FBaUNDLFdBQWpDLENBQTZDTCxxQkFBN0MsQ0FEQTtNQUVBO0lBQ0Q7O0lBRURFLHVCQUF1QixDQUFDSSxrQkFBeEIsQ0FDRSxXQURGLEVBRUUsMEVBRkY7RUFJRCxDQXZCRDtBQXdCRCxDQTFCRCxFQTBCR0MsTUFBTSxDQUFDVixlQTFCVixFIiwiZmlsZSI6ImFwcGxlcGF5Lm1pbi5qcyIsInNvdXJjZXNDb250ZW50IjpbIiBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbiBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG5cbiBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cbiBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4gXHRcdH1cbiBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbiBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuIFx0XHRcdGk6IG1vZHVsZUlkLFxuIFx0XHRcdGw6IGZhbHNlLFxuIFx0XHRcdGV4cG9ydHM6IHt9XG4gXHRcdH07XG5cbiBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4gXHRcdG1vZHVsZXNbbW9kdWxlSWRdLmNhbGwobW9kdWxlLmV4cG9ydHMsIG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG4gXHRcdC8vIEZsYWcgdGhlIG1vZHVsZSBhcyBsb2FkZWRcbiBcdFx0bW9kdWxlLmwgPSB0cnVlO1xuXG4gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbiBcdH1cblxuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tID0gbW9kdWxlcztcblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGUgY2FjaGVcbiBcdF9fd2VicGFja19yZXF1aXJlX18uYyA9IGluc3RhbGxlZE1vZHVsZXM7XG5cbiBcdC8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb24gZm9yIGhhcm1vbnkgZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kID0gZnVuY3Rpb24oZXhwb3J0cywgbmFtZSwgZ2V0dGVyKSB7XG4gXHRcdGlmKCFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywgbmFtZSkpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgbmFtZSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGdldHRlciB9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yID0gZnVuY3Rpb24oZXhwb3J0cykge1xuIFx0XHRpZih0eXBlb2YgU3ltYm9sICE9PSAndW5kZWZpbmVkJyAmJiBTeW1ib2wudG9TdHJpbmdUYWcpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcbiBcdFx0fVxuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuIFx0fTtcblxuIFx0Ly8gY3JlYXRlIGEgZmFrZSBuYW1lc3BhY2Ugb2JqZWN0XG4gXHQvLyBtb2RlICYgMTogdmFsdWUgaXMgYSBtb2R1bGUgaWQsIHJlcXVpcmUgaXRcbiBcdC8vIG1vZGUgJiAyOiBtZXJnZSBhbGwgcHJvcGVydGllcyBvZiB2YWx1ZSBpbnRvIHRoZSBuc1xuIFx0Ly8gbW9kZSAmIDQ6IHJldHVybiB2YWx1ZSB3aGVuIGFscmVhZHkgbnMgb2JqZWN0XG4gXHQvLyBtb2RlICYgOHwxOiBiZWhhdmUgbGlrZSByZXF1aXJlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnQgPSBmdW5jdGlvbih2YWx1ZSwgbW9kZSkge1xuIFx0XHRpZihtb2RlICYgMSkgdmFsdWUgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKHZhbHVlKTtcbiBcdFx0aWYobW9kZSAmIDgpIHJldHVybiB2YWx1ZTtcbiBcdFx0aWYoKG1vZGUgJiA0KSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICYmIHZhbHVlLl9fZXNNb2R1bGUpIHJldHVybiB2YWx1ZTtcbiBcdFx0dmFyIG5zID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yKG5zKTtcbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG5zLCAnZGVmYXVsdCcsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHZhbHVlIH0pO1xuIFx0XHRpZihtb2RlICYgMiAmJiB0eXBlb2YgdmFsdWUgIT0gJ3N0cmluZycpIGZvcih2YXIga2V5IGluIHZhbHVlKSBfX3dlYnBhY2tfcmVxdWlyZV9fLmQobnMsIGtleSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiB2YWx1ZVtrZXldOyB9LmJpbmQobnVsbCwga2V5KSk7XG4gXHRcdHJldHVybiBucztcbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiL3B1YmxpYy9qcy9cIjtcblxuXG4gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbiBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IFwiLi9yZXNvdXJjZXMvanMvYXBwbGVwYXkuanNcIik7XG4iLCIoZnVuY3Rpb24gKEFwcGxlUGF5U2Vzc2lvbikge1xuXG4gIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIGFwcGxlUGF5TWV0aG9kRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnLnBheW1lbnRfbWV0aG9kX21vbGxpZV93Y19nYXRld2F5X2FwcGxlcGF5JyxcbiAgICApXG5cbiAgICB2YXIgd29vY29tbWVyY2VDaGVja291dEZvcm0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgJ2Zvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQnLFxuICAgIClcblxuICAgIGlmICghd29vY29tbWVyY2VDaGVja291dEZvcm0pIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICghQXBwbGVQYXlTZXNzaW9uIHx8ICFBcHBsZVBheVNlc3Npb24uY2FuTWFrZVBheW1lbnRzKCkpIHtcbiAgICAgIGFwcGxlUGF5TWV0aG9kRWxlbWVudCAmJlxuICAgICAgYXBwbGVQYXlNZXRob2RFbGVtZW50LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYXBwbGVQYXlNZXRob2RFbGVtZW50KVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgd29vY29tbWVyY2VDaGVja291dEZvcm0uaW5zZXJ0QWRqYWNlbnRIVE1MKFxuICAgICAgJ2JlZm9yZWVuZCcsXG4gICAgICAnPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwibW9sbGllX2FwcGxlX3BheV9tZXRob2RfYWxsb3dlZFwiIHZhbHVlPVwiMVwiIC8+JyxcbiAgICApXG4gIH0pXG59KSh3aW5kb3cuQXBwbGVQYXlTZXNzaW9uKVxuIl0sInNvdXJjZVJvb3QiOiIifQ==
|
public/js/applepayButtonBlockComponent.min.js
CHANGED
|
@@ -1 +1,427 @@
|
|
| 1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/******/ (function(modules) { // webpackBootstrap
|
| 2 |
+
/******/ // The module cache
|
| 3 |
+
/******/ var installedModules = {};
|
| 4 |
+
/******/
|
| 5 |
+
/******/ // The require function
|
| 6 |
+
/******/ function __webpack_require__(moduleId) {
|
| 7 |
+
/******/
|
| 8 |
+
/******/ // Check if module is in cache
|
| 9 |
+
/******/ if(installedModules[moduleId]) {
|
| 10 |
+
/******/ return installedModules[moduleId].exports;
|
| 11 |
+
/******/ }
|
| 12 |
+
/******/ // Create a new module (and put it into the cache)
|
| 13 |
+
/******/ var module = installedModules[moduleId] = {
|
| 14 |
+
/******/ i: moduleId,
|
| 15 |
+
/******/ l: false,
|
| 16 |
+
/******/ exports: {}
|
| 17 |
+
/******/ };
|
| 18 |
+
/******/
|
| 19 |
+
/******/ // Execute the module function
|
| 20 |
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
| 21 |
+
/******/
|
| 22 |
+
/******/ // Flag the module as loaded
|
| 23 |
+
/******/ module.l = true;
|
| 24 |
+
/******/
|
| 25 |
+
/******/ // Return the exports of the module
|
| 26 |
+
/******/ return module.exports;
|
| 27 |
+
/******/ }
|
| 28 |
+
/******/
|
| 29 |
+
/******/
|
| 30 |
+
/******/ // expose the modules object (__webpack_modules__)
|
| 31 |
+
/******/ __webpack_require__.m = modules;
|
| 32 |
+
/******/
|
| 33 |
+
/******/ // expose the module cache
|
| 34 |
+
/******/ __webpack_require__.c = installedModules;
|
| 35 |
+
/******/
|
| 36 |
+
/******/ // define getter function for harmony exports
|
| 37 |
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
| 38 |
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
| 39 |
+
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
| 40 |
+
/******/ }
|
| 41 |
+
/******/ };
|
| 42 |
+
/******/
|
| 43 |
+
/******/ // define __esModule on exports
|
| 44 |
+
/******/ __webpack_require__.r = function(exports) {
|
| 45 |
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
| 46 |
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
| 47 |
+
/******/ }
|
| 48 |
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
| 49 |
+
/******/ };
|
| 50 |
+
/******/
|
| 51 |
+
/******/ // create a fake namespace object
|
| 52 |
+
/******/ // mode & 1: value is a module id, require it
|
| 53 |
+
/******/ // mode & 2: merge all properties of value into the ns
|
| 54 |
+
/******/ // mode & 4: return value when already ns object
|
| 55 |
+
/******/ // mode & 8|1: behave like require
|
| 56 |
+
/******/ __webpack_require__.t = function(value, mode) {
|
| 57 |
+
/******/ if(mode & 1) value = __webpack_require__(value);
|
| 58 |
+
/******/ if(mode & 8) return value;
|
| 59 |
+
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
| 60 |
+
/******/ var ns = Object.create(null);
|
| 61 |
+
/******/ __webpack_require__.r(ns);
|
| 62 |
+
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
| 63 |
+
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
| 64 |
+
/******/ return ns;
|
| 65 |
+
/******/ };
|
| 66 |
+
/******/
|
| 67 |
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
| 68 |
+
/******/ __webpack_require__.n = function(module) {
|
| 69 |
+
/******/ var getter = module && module.__esModule ?
|
| 70 |
+
/******/ function getDefault() { return module['default']; } :
|
| 71 |
+
/******/ function getModuleExports() { return module; };
|
| 72 |
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
| 73 |
+
/******/ return getter;
|
| 74 |
+
/******/ };
|
| 75 |
+
/******/
|
| 76 |
+
/******/ // Object.prototype.hasOwnProperty.call
|
| 77 |
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
| 78 |
+
/******/
|
| 79 |
+
/******/ // __webpack_public_path__
|
| 80 |
+
/******/ __webpack_require__.p = "/public/js/";
|
| 81 |
+
/******/
|
| 82 |
+
/******/
|
| 83 |
+
/******/ // Load entry module and return exports
|
| 84 |
+
/******/ return __webpack_require__(__webpack_require__.s = "./resources/js/applepayButtonBlockComponent.js");
|
| 85 |
+
/******/ })
|
| 86 |
+
/************************************************************************/
|
| 87 |
+
/******/ ({
|
| 88 |
+
|
| 89 |
+
/***/ "./resources/js/applePayError.js":
|
| 90 |
+
/*!***************************************!*\
|
| 91 |
+
!*** ./resources/js/applePayError.js ***!
|
| 92 |
+
\***************************************/
|
| 93 |
+
/*! exports provided: createAppleErrors */
|
| 94 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 95 |
+
|
| 96 |
+
"use strict";
|
| 97 |
+
__webpack_require__.r(__webpack_exports__);
|
| 98 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createAppleErrors", function() { return createAppleErrors; });
|
| 99 |
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
| 100 |
+
|
| 101 |
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
| 102 |
+
|
| 103 |
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
| 104 |
+
|
| 105 |
+
function createAppleErrors(errors) {
|
| 106 |
+
var errorList = [];
|
| 107 |
+
|
| 108 |
+
var _iterator = _createForOfIteratorHelper(errors),
|
| 109 |
+
_step;
|
| 110 |
+
|
| 111 |
+
try {
|
| 112 |
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
| 113 |
+
var error = _step.value;
|
| 114 |
+
var _error$contactField = error.contactField,
|
| 115 |
+
contactField = _error$contactField === void 0 ? null : _error$contactField,
|
| 116 |
+
_error$code = error.code,
|
| 117 |
+
code = _error$code === void 0 ? null : _error$code,
|
| 118 |
+
_error$message = error.message,
|
| 119 |
+
message = _error$message === void 0 ? null : _error$message;
|
| 120 |
+
var appleError = contactField ? new ApplePayError(code, contactField, message) : new ApplePayError(code);
|
| 121 |
+
errorList.push(appleError);
|
| 122 |
+
}
|
| 123 |
+
} catch (err) {
|
| 124 |
+
_iterator.e(err);
|
| 125 |
+
} finally {
|
| 126 |
+
_iterator.f();
|
| 127 |
+
}
|
| 128 |
+
|
| 129 |
+
return errorList;
|
| 130 |
+
}
|
| 131 |
+
|
| 132 |
+
/***/ }),
|
| 133 |
+
|
| 134 |
+
/***/ "./resources/js/applePayRequest.js":
|
| 135 |
+
/*!*****************************************!*\
|
| 136 |
+
!*** ./resources/js/applePayRequest.js ***!
|
| 137 |
+
\*****************************************/
|
| 138 |
+
/*! exports provided: request */
|
| 139 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 140 |
+
|
| 141 |
+
"use strict";
|
| 142 |
+
__webpack_require__.r(__webpack_exports__);
|
| 143 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "request", function() { return request; });
|
| 144 |
+
var request = function request(countryCode, currencyCode, totalLabel, subtotal) {
|
| 145 |
+
return {
|
| 146 |
+
countryCode: countryCode,
|
| 147 |
+
currencyCode: currencyCode,
|
| 148 |
+
supportedNetworks: ['amex', 'maestro', 'masterCard', 'visa', 'vPay'],
|
| 149 |
+
merchantCapabilities: ['supports3DS'],
|
| 150 |
+
shippingType: 'shipping',
|
| 151 |
+
requiredBillingContactFields: ['postalAddress', 'email'],
|
| 152 |
+
requiredShippingContactFields: ['postalAddress', 'email'],
|
| 153 |
+
total: {
|
| 154 |
+
label: totalLabel,
|
| 155 |
+
amount: subtotal,
|
| 156 |
+
type: 'final'
|
| 157 |
+
}
|
| 158 |
+
};
|
| 159 |
+
};
|
| 160 |
+
|
| 161 |
+
/***/ }),
|
| 162 |
+
|
| 163 |
+
/***/ "./resources/js/applepayButtonBlockComponent.js":
|
| 164 |
+
/*!******************************************************!*\
|
| 165 |
+
!*** ./resources/js/applepayButtonBlockComponent.js ***!
|
| 166 |
+
\******************************************************/
|
| 167 |
+
/*! no exports provided */
|
| 168 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 169 |
+
|
| 170 |
+
"use strict";
|
| 171 |
+
__webpack_require__.r(__webpack_exports__);
|
| 172 |
+
/* harmony import */ var _maybeShowApplePayButton_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./maybeShowApplePayButton.js */ "./resources/js/maybeShowApplePayButton.js");
|
| 173 |
+
/* harmony import */ var _applePayRequest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./applePayRequest */ "./resources/js/applePayRequest.js");
|
| 174 |
+
/* harmony import */ var _applePayError__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./applePayError */ "./resources/js/applePayError.js");
|
| 175 |
+
|
| 176 |
+
|
| 177 |
+
|
| 178 |
+
|
| 179 |
+
(function (_ref) {
|
| 180 |
+
var mollieApplePayBlockDataCart = _ref.mollieApplePayBlockDataCart;
|
| 181 |
+
|
| 182 |
+
if (mollieApplePayBlockDataCart.length === 0) {
|
| 183 |
+
return;
|
| 184 |
+
}
|
| 185 |
+
|
| 186 |
+
var _mollieApplePayBlockD = mollieApplePayBlockDataCart.product,
|
| 187 |
+
_mollieApplePayBlockD2 = _mollieApplePayBlockD.needShipping,
|
| 188 |
+
needShipping = _mollieApplePayBlockD2 === void 0 ? true : _mollieApplePayBlockD2,
|
| 189 |
+
subtotal = _mollieApplePayBlockD.subtotal,
|
| 190 |
+
_mollieApplePayBlockD3 = mollieApplePayBlockDataCart.shop,
|
| 191 |
+
countryCode = _mollieApplePayBlockD3.countryCode,
|
| 192 |
+
_mollieApplePayBlockD4 = _mollieApplePayBlockD3.currencyCode,
|
| 193 |
+
currencyCode = _mollieApplePayBlockD4 === void 0 ? 'EUR' : _mollieApplePayBlockD4,
|
| 194 |
+
_mollieApplePayBlockD5 = _mollieApplePayBlockD3.totalLabel,
|
| 195 |
+
totalLabel = _mollieApplePayBlockD5 === void 0 ? '' : _mollieApplePayBlockD5,
|
| 196 |
+
buttonMarkup = mollieApplePayBlockDataCart.buttonMarkup,
|
| 197 |
+
ajaxUrl = mollieApplePayBlockDataCart.ajaxUrl;
|
| 198 |
+
var registerPlugin = wp.plugins.registerPlugin;
|
| 199 |
+
var ExperimentalOrderMeta = wc.blocksCheckout.ExperimentalOrderMeta;
|
| 200 |
+
|
| 201 |
+
var ApplePayButtonComponent = function ApplePayButtonComponent(_ref2) {
|
| 202 |
+
var cart = _ref2.cart,
|
| 203 |
+
extensions = _ref2.extensions;
|
| 204 |
+
return /*#__PURE__*/React.createElement("div", {
|
| 205 |
+
dangerouslySetInnerHTML: {
|
| 206 |
+
__html: buttonMarkup
|
| 207 |
+
}
|
| 208 |
+
});
|
| 209 |
+
};
|
| 210 |
+
|
| 211 |
+
var MollieApplePayButtonCart = function MollieApplePayButtonCart() {
|
| 212 |
+
return /*#__PURE__*/React.createElement(ExperimentalOrderMeta, null, /*#__PURE__*/React.createElement(ApplePayButtonComponent, null));
|
| 213 |
+
};
|
| 214 |
+
|
| 215 |
+
registerPlugin('mollie-applepay-block-button', {
|
| 216 |
+
render: function render() {
|
| 217 |
+
return /*#__PURE__*/React.createElement(MollieApplePayButtonCart, null);
|
| 218 |
+
},
|
| 219 |
+
scope: 'woocommerce-checkout'
|
| 220 |
+
});
|
| 221 |
+
setTimeout(function () {
|
| 222 |
+
if (!Object(_maybeShowApplePayButton_js__WEBPACK_IMPORTED_MODULE_0__["maybeShowButton"])()) {
|
| 223 |
+
return;
|
| 224 |
+
}
|
| 225 |
+
|
| 226 |
+
var nonce = document.getElementById("woocommerce-process-checkout-nonce").value;
|
| 227 |
+
var updatedContactInfo = [];
|
| 228 |
+
var selectedShippingMethod = [];
|
| 229 |
+
var redirectionUrl = '';
|
| 230 |
+
|
| 231 |
+
var applePaySession = function applePaySession() {
|
| 232 |
+
var session = new ApplePaySession(3, Object(_applePayRequest__WEBPACK_IMPORTED_MODULE_1__["request"])(countryCode, currencyCode, totalLabel, subtotal));
|
| 233 |
+
session.begin();
|
| 234 |
+
|
| 235 |
+
session.onshippingmethodselected = function (event) {
|
| 236 |
+
var _this = this;
|
| 237 |
+
|
| 238 |
+
jQuery.ajax({
|
| 239 |
+
url: ajaxUrl,
|
| 240 |
+
method: 'POST',
|
| 241 |
+
data: {
|
| 242 |
+
action: 'mollie_apple_pay_update_shipping_method',
|
| 243 |
+
shippingMethod: event.shippingMethod,
|
| 244 |
+
callerPage: 'cart',
|
| 245 |
+
simplifiedContact: updatedContactInfo,
|
| 246 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 247 |
+
},
|
| 248 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 249 |
+
success: function success(applePayShippingMethodUpdate, textStatus, jqXHR) {
|
| 250 |
+
var response = applePayShippingMethodUpdate.data;
|
| 251 |
+
selectedShippingMethod = event.shippingMethod;
|
| 252 |
+
|
| 253 |
+
if (applePayShippingMethodUpdate.success === false) {
|
| 254 |
+
response.errors = Object(_applePayError__WEBPACK_IMPORTED_MODULE_2__["createAppleErrors"])(response.errors);
|
| 255 |
+
}
|
| 256 |
+
|
| 257 |
+
_this.completeShippingMethodSelection(response);
|
| 258 |
+
},
|
| 259 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 260 |
+
console.warn(textStatus, errorThrown);
|
| 261 |
+
session.abort();
|
| 262 |
+
}
|
| 263 |
+
});
|
| 264 |
+
};
|
| 265 |
+
|
| 266 |
+
session.onshippingcontactselected = function (event) {
|
| 267 |
+
var _this2 = this;
|
| 268 |
+
|
| 269 |
+
jQuery.ajax({
|
| 270 |
+
url: ajaxUrl,
|
| 271 |
+
method: 'POST',
|
| 272 |
+
data: {
|
| 273 |
+
action: 'mollie_apple_pay_update_shipping_contact',
|
| 274 |
+
simplifiedContact: event.shippingContact,
|
| 275 |
+
callerPage: 'cart',
|
| 276 |
+
needShipping: needShipping,
|
| 277 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 278 |
+
},
|
| 279 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 280 |
+
success: function success(applePayShippingContactUpdate, textStatus, jqXHR) {
|
| 281 |
+
var response = applePayShippingContactUpdate.data;
|
| 282 |
+
updatedContactInfo = event.shippingContact;
|
| 283 |
+
|
| 284 |
+
if (applePayShippingContactUpdate.success === false) {
|
| 285 |
+
response.errors = Object(_applePayError__WEBPACK_IMPORTED_MODULE_2__["createAppleErrors"])(response.errors);
|
| 286 |
+
}
|
| 287 |
+
|
| 288 |
+
if (response.newShippingMethods) {
|
| 289 |
+
selectedShippingMethod = response.newShippingMethods[0];
|
| 290 |
+
}
|
| 291 |
+
|
| 292 |
+
_this2.completeShippingContactSelection(response);
|
| 293 |
+
},
|
| 294 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 295 |
+
console.warn(textStatus, errorThrown);
|
| 296 |
+
session.abort();
|
| 297 |
+
}
|
| 298 |
+
});
|
| 299 |
+
};
|
| 300 |
+
|
| 301 |
+
session.onvalidatemerchant = function (applePayValidateMerchantEvent) {
|
| 302 |
+
jQuery.ajax({
|
| 303 |
+
url: ajaxUrl,
|
| 304 |
+
method: 'POST',
|
| 305 |
+
data: {
|
| 306 |
+
action: 'mollie_apple_pay_validation',
|
| 307 |
+
validationUrl: applePayValidateMerchantEvent.validationURL,
|
| 308 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 309 |
+
},
|
| 310 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 311 |
+
success: function success(merchantSession, textStatus, jqXHR) {
|
| 312 |
+
if (merchantSession.success === true) {
|
| 313 |
+
session.completeMerchantValidation(JSON.parse(merchantSession.data));
|
| 314 |
+
} else {
|
| 315 |
+
console.warn(merchantSession.data);
|
| 316 |
+
session.abort();
|
| 317 |
+
}
|
| 318 |
+
},
|
| 319 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 320 |
+
console.warn(textStatus, errorThrown);
|
| 321 |
+
session.abort();
|
| 322 |
+
}
|
| 323 |
+
});
|
| 324 |
+
};
|
| 325 |
+
|
| 326 |
+
session.onpaymentauthorized = function (ApplePayPayment) {
|
| 327 |
+
var _ApplePayPayment$paym = ApplePayPayment.payment,
|
| 328 |
+
billingContact = _ApplePayPayment$paym.billingContact,
|
| 329 |
+
shippingContact = _ApplePayPayment$paym.shippingContact;
|
| 330 |
+
jQuery.ajax({
|
| 331 |
+
url: ajaxUrl,
|
| 332 |
+
method: 'POST',
|
| 333 |
+
data: {
|
| 334 |
+
action: 'mollie_apple_pay_create_order_cart',
|
| 335 |
+
shippingContact: ApplePayPayment.payment.shippingContact,
|
| 336 |
+
billingContact: ApplePayPayment.payment.billingContact,
|
| 337 |
+
token: ApplePayPayment.payment.token,
|
| 338 |
+
shippingMethod: selectedShippingMethod,
|
| 339 |
+
'mollie-payments-for-woocommerce_issuer_applepay': 'applepay',
|
| 340 |
+
'woocommerce-process-checkout-nonce': nonce,
|
| 341 |
+
'billing_first_name': billingContact.givenName || '',
|
| 342 |
+
'billing_last_name': billingContact.familyName || '',
|
| 343 |
+
'billing_company': '',
|
| 344 |
+
'billing_country': billingContact.countryCode || '',
|
| 345 |
+
'billing_address_1': billingContact.addressLines[0] || '',
|
| 346 |
+
'billing_address_2': billingContact.addressLines[1] || '',
|
| 347 |
+
'billing_postcode': billingContact.postalCode || '',
|
| 348 |
+
'billing_city': billingContact.locality || '',
|
| 349 |
+
'billing_state': billingContact.administrativeArea || '',
|
| 350 |
+
'billing_phone': billingContact.phoneNumber || '000000000000',
|
| 351 |
+
'billing_email': shippingContact.emailAddress || '',
|
| 352 |
+
'shipping_first_name': shippingContact.givenName || '',
|
| 353 |
+
'shipping_last_name': shippingContact.familyName || '',
|
| 354 |
+
'shipping_company': '',
|
| 355 |
+
'shipping_country': shippingContact.countryCode || '',
|
| 356 |
+
'shipping_address_1': shippingContact.addressLines[0] || '',
|
| 357 |
+
'shipping_address_2': shippingContact.addressLines[1] || '',
|
| 358 |
+
'shipping_postcode': shippingContact.postalCode || '',
|
| 359 |
+
'shipping_city': shippingContact.locality || '',
|
| 360 |
+
'shipping_state': shippingContact.administrativeArea || '',
|
| 361 |
+
'shipping_phone': shippingContact.phoneNumber || '000000000000',
|
| 362 |
+
'shipping_email': shippingContact.emailAddress || '',
|
| 363 |
+
'order_comments': '',
|
| 364 |
+
'payment_method': 'mollie_wc_gateway_applepay',
|
| 365 |
+
'_wp_http_referer': '/?wc-ajax=update_order_review'
|
| 366 |
+
},
|
| 367 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 368 |
+
success: function success(authorizationResult, textStatus, jqXHR) {
|
| 369 |
+
var result = authorizationResult.data;
|
| 370 |
+
|
| 371 |
+
if (authorizationResult.success === true) {
|
| 372 |
+
redirectionUrl = result['returnUrl'];
|
| 373 |
+
session.completePayment(result['responseToApple']);
|
| 374 |
+
window.location.href = redirectionUrl;
|
| 375 |
+
} else {
|
| 376 |
+
result.errors = Object(_applePayError__WEBPACK_IMPORTED_MODULE_2__["createAppleErrors"])(result.errors);
|
| 377 |
+
session.completePayment(result);
|
| 378 |
+
}
|
| 379 |
+
},
|
| 380 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 381 |
+
console.warn(textStatus, errorThrown);
|
| 382 |
+
session.abort();
|
| 383 |
+
}
|
| 384 |
+
});
|
| 385 |
+
};
|
| 386 |
+
};
|
| 387 |
+
|
| 388 |
+
document.querySelector('#mollie_applepay_button').addEventListener('click', function (evt) {
|
| 389 |
+
applePaySession();
|
| 390 |
+
});
|
| 391 |
+
}, 2000);
|
| 392 |
+
})(window);
|
| 393 |
+
|
| 394 |
+
/***/ }),
|
| 395 |
+
|
| 396 |
+
/***/ "./resources/js/maybeShowApplePayButton.js":
|
| 397 |
+
/*!*************************************************!*\
|
| 398 |
+
!*** ./resources/js/maybeShowApplePayButton.js ***!
|
| 399 |
+
\*************************************************/
|
| 400 |
+
/*! exports provided: maybeShowButton */
|
| 401 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 402 |
+
|
| 403 |
+
"use strict";
|
| 404 |
+
__webpack_require__.r(__webpack_exports__);
|
| 405 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "maybeShowButton", function() { return maybeShowButton; });
|
| 406 |
+
var maybeShowButton = function maybeShowButton() {
|
| 407 |
+
var _window = window,
|
| 408 |
+
ApplePaySession = _window.ApplePaySession;
|
| 409 |
+
var applePayMethodElement = document.querySelector('#mollie-applepayDirect-button');
|
| 410 |
+
var canShowButton = applePayMethodElement && ApplePaySession && ApplePaySession.canMakePayments();
|
| 411 |
+
|
| 412 |
+
if (!canShowButton) {
|
| 413 |
+
return false;
|
| 414 |
+
}
|
| 415 |
+
|
| 416 |
+
var button = document.createElement('button');
|
| 417 |
+
button.setAttribute('id', 'mollie_applepay_button');
|
| 418 |
+
button.classList.add('apple-pay-button');
|
| 419 |
+
button.classList.add('apple-pay-button-black');
|
| 420 |
+
applePayMethodElement.appendChild(button);
|
| 421 |
+
return true;
|
| 422 |
+
};
|
| 423 |
+
|
| 424 |
+
/***/ })
|
| 425 |
+
|
| 426 |
+
/******/ });
|
| 427 |
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2FwcGxlUGF5RXJyb3IuanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2FwcGxlUGF5UmVxdWVzdC5qcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvYXBwbGVwYXlCdXR0b25CbG9ja0NvbXBvbmVudC5qcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvbWF5YmVTaG93QXBwbGVQYXlCdXR0b24uanMiXSwibmFtZXMiOlsiY3JlYXRlQXBwbGVFcnJvcnMiLCJlcnJvcnMiLCJlcnJvckxpc3QiLCJlcnJvciIsImNvbnRhY3RGaWVsZCIsImNvZGUiLCJtZXNzYWdlIiwiYXBwbGVFcnJvciIsIkFwcGxlUGF5RXJyb3IiLCJwdXNoIiwicmVxdWVzdCIsImNvdW50cnlDb2RlIiwiY3VycmVuY3lDb2RlIiwidG90YWxMYWJlbCIsInN1YnRvdGFsIiwic3VwcG9ydGVkTmV0d29ya3MiLCJtZXJjaGFudENhcGFiaWxpdGllcyIsInNoaXBwaW5nVHlwZSIsInJlcXVpcmVkQmlsbGluZ0NvbnRhY3RGaWVsZHMiLCJyZXF1aXJlZFNoaXBwaW5nQ29udGFjdEZpZWxkcyIsInRvdGFsIiwibGFiZWwiLCJhbW91bnQiLCJ0eXBlIiwibW9sbGllQXBwbGVQYXlCbG9ja0RhdGFDYXJ0IiwibGVuZ3RoIiwicHJvZHVjdCIsIm5lZWRTaGlwcGluZyIsInNob3AiLCJidXR0b25NYXJrdXAiLCJhamF4VXJsIiwicmVnaXN0ZXJQbHVnaW4iLCJ3cCIsInBsdWdpbnMiLCJFeHBlcmltZW50YWxPcmRlck1ldGEiLCJ3YyIsImJsb2Nrc0NoZWNrb3V0IiwiQXBwbGVQYXlCdXR0b25Db21wb25lbnQiLCJjYXJ0IiwiZXh0ZW5zaW9ucyIsIl9faHRtbCIsIk1vbGxpZUFwcGxlUGF5QnV0dG9uQ2FydCIsInJlbmRlciIsInNjb3BlIiwic2V0VGltZW91dCIsIm1heWJlU2hvd0J1dHRvbiIsIm5vbmNlIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsInZhbHVlIiwidXBkYXRlZENvbnRhY3RJbmZvIiwic2VsZWN0ZWRTaGlwcGluZ01ldGhvZCIsInJlZGlyZWN0aW9uVXJsIiwiYXBwbGVQYXlTZXNzaW9uIiwic2Vzc2lvbiIsIkFwcGxlUGF5U2Vzc2lvbiIsImJlZ2luIiwib25zaGlwcGluZ21ldGhvZHNlbGVjdGVkIiwiZXZlbnQiLCJqUXVlcnkiLCJhamF4IiwidXJsIiwibWV0aG9kIiwiZGF0YSIsImFjdGlvbiIsInNoaXBwaW5nTWV0aG9kIiwiY2FsbGVyUGFnZSIsInNpbXBsaWZpZWRDb250YWN0IiwiY29tcGxldGUiLCJqcVhIUiIsInRleHRTdGF0dXMiLCJzdWNjZXNzIiwiYXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZSIsInJlc3BvbnNlIiwiY29tcGxldGVTaGlwcGluZ01ldGhvZFNlbGVjdGlvbiIsImVycm9yVGhyb3duIiwiY29uc29sZSIsIndhcm4iLCJhYm9ydCIsIm9uc2hpcHBpbmdjb250YWN0c2VsZWN0ZWQiLCJzaGlwcGluZ0NvbnRhY3QiLCJhcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZSIsIm5ld1NoaXBwaW5nTWV0aG9kcyIsImNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uIiwib252YWxpZGF0ZW1lcmNoYW50IiwiYXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQiLCJ2YWxpZGF0aW9uVXJsIiwidmFsaWRhdGlvblVSTCIsIm1lcmNoYW50U2Vzc2lvbiIsImNvbXBsZXRlTWVyY2hhbnRWYWxpZGF0aW9uIiwiSlNPTiIsInBhcnNlIiwib25wYXltZW50YXV0aG9yaXplZCIsIkFwcGxlUGF5UGF5bWVudCIsInBheW1lbnQiLCJiaWxsaW5nQ29udGFjdCIsInRva2VuIiwiZ2l2ZW5OYW1lIiwiZmFtaWx5TmFtZSIsImFkZHJlc3NMaW5lcyIsInBvc3RhbENvZGUiLCJsb2NhbGl0eSIsImFkbWluaXN0cmF0aXZlQXJlYSIsInBob25lTnVtYmVyIiwiZW1haWxBZGRyZXNzIiwiYXV0aG9yaXphdGlvblJlc3VsdCIsInJlc3VsdCIsImNvbXBsZXRlUGF5bWVudCIsIndpbmRvdyIsImxvY2F0aW9uIiwiaHJlZiIsInF1ZXJ5U2VsZWN0b3IiLCJhZGRFdmVudExpc3RlbmVyIiwiZXZ0IiwiYXBwbGVQYXlNZXRob2RFbGVtZW50IiwiY2FuU2hvd0J1dHRvbiIsImNhbk1ha2VQYXltZW50cyIsImJ1dHRvbiIsImNyZWF0ZUVsZW1lbnQiLCJzZXRBdHRyaWJ1dGUiLCJjbGFzc0xpc3QiLCJhZGQiLCJhcHBlbmRDaGlsZCJdLCJtYXBwaW5ncyI6IjtRQUFBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBOzs7UUFHQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMENBQTBDLGdDQUFnQztRQUMxRTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLHdEQUF3RCxrQkFBa0I7UUFDMUU7UUFDQSxpREFBaUQsY0FBYztRQUMvRDs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EseUNBQXlDLGlDQUFpQztRQUMxRSxnSEFBZ0gsbUJBQW1CLEVBQUU7UUFDckk7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSwyQkFBMkIsMEJBQTBCLEVBQUU7UUFDdkQsaUNBQWlDLGVBQWU7UUFDaEQ7UUFDQTtRQUNBOztRQUVBO1FBQ0Esc0RBQXNELCtEQUErRDs7UUFFckg7UUFDQTs7O1FBR0E7UUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDbEZPLFNBQVNBLGlCQUFULENBQTJCQyxNQUEzQixFQUFtQztFQUN0QyxJQUFNQyxTQUFTLEdBQUcsRUFBbEI7O0VBRHNDLDJDQUVsQkQsTUFGa0I7RUFBQTs7RUFBQTtJQUV0QyxvREFBNEI7TUFB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QUFQO0VBQ0EsSUFBTTJELHFCQUFxQixHQUFHbkUsUUFBUSxDQUFDZ0UsYUFBVCxDQUMxQiwrQkFEMEIsQ0FBOUI7RUFHQSxJQUFNSSxhQUFhLEdBQUdELHFCQUFxQixJQUFLM0QsZUFBZSxJQUFJQSxlQUFlLENBQUM2RCxlQUFoQixFQUFuRTs7RUFDQSxJQUFJLENBQUNELGFBQUwsRUFBb0I7SUFDaEIsT0FBTyxLQUFQO0VBQ0g7O0VBQ0QsSUFBTUUsTUFBTSxHQUFHdEUsUUFBUSxDQUFDdUUsYUFBVCxDQUF1QixRQUF2QixDQUFmO0VBQ0FELE1BQU0sQ0FBQ0UsWUFBUCxDQUFvQixJQUFwQixFQUEwQix3QkFBMUI7RUFDQUYsTUFBTSxDQUFDRyxTQUFQLENBQWlCQyxHQUFqQixDQUFxQixrQkFBckI7RUFDQUosTUFBTSxDQUFDRyxTQUFQLENBQWlCQyxHQUFqQixDQUFxQix3QkFBckI7RUFDQVAscUJBQXFCLENBQUNRLFdBQXRCLENBQWtDTCxNQUFsQztFQUNBLE9BQU8sSUFBUDtBQUNILENBZk0sQyIsImZpbGUiOiJhcHBsZXBheUJ1dHRvbkJsb2NrQ29tcG9uZW50Lm1pbi5qcyIsInNvdXJjZXNDb250ZW50IjpbIiBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbiBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG5cbiBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cbiBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4gXHRcdH1cbiBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbiBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuIFx0XHRcdGk6IG1vZHVsZUlkLFxuIFx0XHRcdGw6IGZhbHNlLFxuIFx0XHRcdGV4cG9ydHM6IHt9XG4gXHRcdH07XG5cbiBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4gXHRcdG1vZHVsZXNbbW9kdWxlSWRdLmNhbGwobW9kdWxlLmV4cG9ydHMsIG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG4gXHRcdC8vIEZsYWcgdGhlIG1vZHVsZSBhcyBsb2FkZWRcbiBcdFx0bW9kdWxlLmwgPSB0cnVlO1xuXG4gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbiBcdH1cblxuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tID0gbW9kdWxlcztcblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGUgY2FjaGVcbiBcdF9fd2VicGFja19yZXF1aXJlX18uYyA9IGluc3RhbGxlZE1vZHVsZXM7XG5cbiBcdC8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb24gZm9yIGhhcm1vbnkgZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kID0gZnVuY3Rpb24oZXhwb3J0cywgbmFtZSwgZ2V0dGVyKSB7XG4gXHRcdGlmKCFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywgbmFtZSkpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgbmFtZSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGdldHRlciB9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yID0gZnVuY3Rpb24oZXhwb3J0cykge1xuIFx0XHRpZih0eXBlb2YgU3ltYm9sICE9PSAndW5kZWZpbmVkJyAmJiBTeW1ib2wudG9TdHJpbmdUYWcpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcbiBcdFx0fVxuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuIFx0fTtcblxuIFx0Ly8gY3JlYXRlIGEgZmFrZSBuYW1lc3BhY2Ugb2JqZWN0XG4gXHQvLyBtb2RlICYgMTogdmFsdWUgaXMgYSBtb2R1bGUgaWQsIHJlcXVpcmUgaXRcbiBcdC8vIG1vZGUgJiAyOiBtZXJnZSBhbGwgcHJvcGVydGllcyBvZiB2YWx1ZSBpbnRvIHRoZSBuc1xuIFx0Ly8gbW9kZSAmIDQ6IHJldHVybiB2YWx1ZSB3aGVuIGFscmVhZHkgbnMgb2JqZWN0XG4gXHQvLyBtb2RlICYgOHwxOiBiZWhhdmUgbGlrZSByZXF1aXJlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnQgPSBmdW5jdGlvbih2YWx1ZSwgbW9kZSkge1xuIFx0XHRpZihtb2RlICYgMSkgdmFsdWUgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKHZhbHVlKTtcbiBcdFx0aWYobW9kZSAmIDgpIHJldHVybiB2YWx1ZTtcbiBcdFx0aWYoKG1vZGUgJiA0KSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICYmIHZhbHVlLl9fZXNNb2R1bGUpIHJldHVybiB2YWx1ZTtcbiBcdFx0dmFyIG5zID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yKG5zKTtcbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG5zLCAnZGVmYXVsdCcsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHZhbHVlIH0pO1xuIFx0XHRpZihtb2RlICYgMiAmJiB0eXBlb2YgdmFsdWUgIT0gJ3N0cmluZycpIGZvcih2YXIga2V5IGluIHZhbHVlKSBfX3dlYnBhY2tfcmVxdWlyZV9fLmQobnMsIGtleSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiB2YWx1ZVtrZXldOyB9LmJpbmQobnVsbCwga2V5KSk7XG4gXHRcdHJldHVybiBucztcbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiL3B1YmxpYy9qcy9cIjtcblxuXG4gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbiBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IFwiLi9yZXNvdXJjZXMvanMvYXBwbGVwYXlCdXR0b25CbG9ja0NvbXBvbmVudC5qc1wiKTtcbiIsImV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBcHBsZUVycm9ycyhlcnJvcnMpIHtcbiAgICBjb25zdCBlcnJvckxpc3QgPSBbXVxuICAgIGZvciAoY29uc3QgZXJyb3Igb2YgZXJyb3JzKSB7XG4gICAgICAgIGNvbnN0IHtjb250YWN0RmllbGQgPSBudWxsLCBjb2RlID0gbnVsbCwgbWVzc2FnZSA9IG51bGx9ID0gZXJyb3JcbiAgICAgICAgY29uc3QgYXBwbGVFcnJvciA9IGNvbnRhY3RGaWVsZCA/IG5ldyBBcHBsZVBheUVycm9yKGNvZGUsIGNvbnRhY3RGaWVsZCwgbWVzc2FnZSkgOiBuZXcgQXBwbGVQYXlFcnJvcihjb2RlKVxuICAgICAgICBlcnJvckxpc3QucHVzaChhcHBsZUVycm9yKVxuICAgIH1cblxuICAgIHJldHVybiBlcnJvckxpc3Rcbn1cbiIsImV4cG9ydCBjb25zdCByZXF1ZXN0ID0gKGNvdW50cnlDb2RlLCBjdXJyZW5jeUNvZGUsIHRvdGFsTGFiZWwsIHN1YnRvdGFsKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgY291bnRyeUNvZGU6IGNvdW50cnlDb2RlLFxuICAgICAgICBjdXJyZW5jeUNvZGU6IGN1cnJlbmN5Q29kZSxcbiAgICAgICAgc3VwcG9ydGVkTmV0d29ya3M6IFsnYW1leCcsICdtYWVzdHJvJywgJ21hc3RlckNhcmQnLCAndmlzYScsICd2UGF5J10sXG4gICAgICAgIG1lcmNoYW50Q2FwYWJpbGl0aWVzOiBbJ3N1cHBvcnRzM0RTJ10sXG4gICAgICAgIHNoaXBwaW5nVHlwZTogJ3NoaXBwaW5nJyxcbiAgICAgICAgcmVxdWlyZWRCaWxsaW5nQ29udGFjdEZpZWxkczogW1xuICAgICAgICAgICAgJ3Bvc3RhbEFkZHJlc3MnLFxuICAgICAgICAgICAgJ2VtYWlsJ1xuICAgICAgICBdLFxuICAgICAgICByZXF1aXJlZFNoaXBwaW5nQ29udGFjdEZpZWxkczogW1xuICAgICAgICAgICAgJ3Bvc3RhbEFkZHJlc3MnLFxuICAgICAgICAgICAgJ2VtYWlsJ1xuICAgICAgICBdLFxuICAgICAgICB0b3RhbDoge1xuICAgICAgICAgICAgbGFiZWw6IHRvdGFsTGFiZWwsXG4gICAgICAgICAgICBhbW91bnQ6IHN1YnRvdGFsLFxuICAgICAgICAgICAgdHlwZTogJ2ZpbmFsJ1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiaW1wb3J0IHttYXliZVNob3dCdXR0b259IGZyb20gJy4vbWF5YmVTaG93QXBwbGVQYXlCdXR0b24uanMnO1xuaW1wb3J0IHtyZXF1ZXN0fSBmcm9tIFwiLi9hcHBsZVBheVJlcXVlc3RcIjtcbmltcG9ydCB7Y3JlYXRlQXBwbGVFcnJvcnN9IGZyb20gXCIuL2FwcGxlUGF5RXJyb3JcIjtcblxuKFxuICAgIGZ1bmN0aW9uICh7bW9sbGllQXBwbGVQYXlCbG9ja0RhdGFDYXJ0fSlcbiAgICB7XG4gICAgICAgIGlmIChtb2xsaWVBcHBsZVBheUJsb2NrRGF0YUNhcnQubGVuZ3RoID09PSAwICkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qge3Byb2R1Y3Q6IHtuZWVkU2hpcHBpbmcgPSB0cnVlLCBzdWJ0b3RhbH0sIHNob3A6IHtjb3VudHJ5Q29kZSwgY3VycmVuY3lDb2RlID0gJ0VVUicsIHRvdGFsTGFiZWwgPSAnJ30sIGJ1dHRvbk1hcmt1cCwgYWpheFVybH0gPSBtb2xsaWVBcHBsZVBheUJsb2NrRGF0YUNhcnRcblxuICAgICAgICBjb25zdCB7IHJlZ2lzdGVyUGx1Z2luIH0gPSB3cC5wbHVnaW5zO1xuICAgICAgICBjb25zdCB7IEV4cGVyaW1lbnRhbE9yZGVyTWV0YSB9ID0gd2MuYmxvY2tzQ2hlY2tvdXQ7XG4gICAgICAgIGNvbnN0IEFwcGxlUGF5QnV0dG9uQ29tcG9uZW50ID0gKCB7IGNhcnQsIGV4dGVuc2lvbnMgfSApID0+IHtcbiAgICAgICAgICAgIHJldHVybiA8ZGl2IGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MPXsge19faHRtbDogYnV0dG9uTWFya3VwfSB9Lz5cbiAgICAgICAgfVxuICAgICAgICBjb25zdCBNb2xsaWVBcHBsZVBheUJ1dHRvbkNhcnQgPSAoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gIDxFeHBlcmltZW50YWxPcmRlck1ldGE+XG4gICAgICAgICAgICAgICAgPEFwcGxlUGF5QnV0dG9uQ29tcG9uZW50IC8+XG4gICAgICAgICAgICA8L0V4cGVyaW1lbnRhbE9yZGVyTWV0YT5cbiAgICAgICAgfTtcblxuICAgICAgICByZWdpc3RlclBsdWdpbiggJ21vbGxpZS1hcHBsZXBheS1ibG9jay1idXR0b24nLCB7XG4gICAgICAgICAgICByZW5kZXI6ICgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gPE1vbGxpZUFwcGxlUGF5QnV0dG9uQ2FydCAvPjtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzY29wZTogJ3dvb2NvbW1lcmNlLWNoZWNrb3V0J1xuICAgICAgICB9ICk7XG5cbiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpe1xuICAgICAgICAgICAgaWYoIW1heWJlU2hvd0J1dHRvbigpKXtcbiAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IG5vbmNlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJ3b29jb21tZXJjZS1wcm9jZXNzLWNoZWNrb3V0LW5vbmNlXCIpLnZhbHVlXG4gICAgICAgICAgICBsZXQgdXBkYXRlZENvbnRhY3RJbmZvID0gW11cbiAgICAgICAgICAgIGxldCBzZWxlY3RlZFNoaXBwaW5nTWV0aG9kID0gW11cbiAgICAgICAgICAgIGxldCByZWRpcmVjdGlvblVybCA9ICcnXG4gICAgICAgICAgICBsZXQgYXBwbGVQYXlTZXNzaW9uID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNlc3Npb24gPSBuZXcgQXBwbGVQYXlTZXNzaW9uKDMsIHJlcXVlc3QoY291bnRyeUNvZGUsIGN1cnJlbmN5Q29kZSwgdG90YWxMYWJlbCwgc3VidG90YWwpKVxuICAgICAgICAgICAgICAgIHNlc3Npb24uYmVnaW4oKVxuICAgICAgICAgICAgICAgIHNlc3Npb24ub25zaGlwcGluZ21ldGhvZHNlbGVjdGVkID0gZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGpRdWVyeS5hamF4KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogYWpheFVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogJ21vbGxpZV9hcHBsZV9wYXlfdXBkYXRlX3NoaXBwaW5nX21ldGhvZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hpcHBpbmdNZXRob2Q6IGV2ZW50LnNoaXBwaW5nTWV0aG9kLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxlclBhZ2U6ICdjYXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaW1wbGlmaWVkQ29udGFjdDogdXBkYXRlZENvbnRhY3RJbmZvLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3b29jb21tZXJjZS1wcm9jZXNzLWNoZWNrb3V0LW5vbmNlJzogbm9uY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGxldGU6IChqcVhIUiwgdGV4dFN0YXR1cykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IChhcHBsZVBheVNoaXBwaW5nTWV0aG9kVXBkYXRlLCB0ZXh0U3RhdHVzLCBqcVhIUikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXNwb25zZSA9IGFwcGxlUGF5U2hpcHBpbmdNZXRob2RVcGRhdGUuZGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkU2hpcHBpbmdNZXRob2QgPSBldmVudC5zaGlwcGluZ01ldGhvZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhcHBsZVBheVNoaXBwaW5nTWV0aG9kVXBkYXRlLnN1Y2Nlc3MgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLmVycm9ycyA9IGNyZWF0ZUFwcGxlRXJyb3JzKHJlc3BvbnNlLmVycm9ycylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wbGV0ZVNoaXBwaW5nTWV0aG9kU2VsZWN0aW9uKHJlc3BvbnNlKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yOiAoanFYSFIsIHRleHRTdGF0dXMsIGVycm9yVGhyb3duKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKHRleHRTdGF0dXMsIGVycm9yVGhyb3duKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uYWJvcnQoKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc2Vzc2lvbi5vbnNoaXBwaW5nY29udGFjdHNlbGVjdGVkID0gZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGpRdWVyeS5hamF4KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogYWpheFVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogJ21vbGxpZV9hcHBsZV9wYXlfdXBkYXRlX3NoaXBwaW5nX2NvbnRhY3QnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbXBsaWZpZWRDb250YWN0OiBldmVudC5zaGlwcGluZ0NvbnRhY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGVyUGFnZTogJ2NhcnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5lZWRTaGlwcGluZzogbmVlZFNoaXBwaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3b29jb21tZXJjZS1wcm9jZXNzLWNoZWNrb3V0LW5vbmNlJzogbm9uY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGxldGU6IChqcVhIUiwgdGV4dFN0YXR1cykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IChhcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZSwgdGV4dFN0YXR1cywganFYSFIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgcmVzcG9uc2UgPSBhcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZS5kYXRhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlZENvbnRhY3RJbmZvID0gZXZlbnQuc2hpcHBpbmdDb250YWN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGFwcGxlUGF5U2hpcHBpbmdDb250YWN0VXBkYXRlLnN1Y2Nlc3MgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLmVycm9ycyA9IGNyZWF0ZUFwcGxlRXJyb3JzKHJlc3BvbnNlLmVycm9ycylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLm5ld1NoaXBwaW5nTWV0aG9kcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZFNoaXBwaW5nTWV0aG9kID0gcmVzcG9uc2UubmV3U2hpcHBpbmdNZXRob2RzWzBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGxldGVTaGlwcGluZ0NvbnRhY3RTZWxlY3Rpb24ocmVzcG9uc2UpXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3I6IChqcVhIUiwgdGV4dFN0YXR1cywgZXJyb3JUaHJvd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4odGV4dFN0YXR1cywgZXJyb3JUaHJvd24pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbi5hYm9ydCgpXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzZXNzaW9uLm9udmFsaWRhdGVtZXJjaGFudCA9IChhcHBsZVBheVZhbGlkYXRlTWVyY2hhbnRFdmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBqUXVlcnkuYWpheCh7XG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGFqYXhVcmwsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246ICdtb2xsaWVfYXBwbGVfcGF5X3ZhbGlkYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRpb25Vcmw6IGFwcGxlUGF5VmFsaWRhdGVNZXJjaGFudEV2ZW50LnZhbGlkYXRpb25VUkwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dvb2NvbW1lcmNlLXByb2Nlc3MtY2hlY2tvdXQtbm9uY2UnOiBub25jZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBjb21wbGV0ZTogKGpxWEhSLCB0ZXh0U3RhdHVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKG1lcmNoYW50U2Vzc2lvbiwgdGV4dFN0YXR1cywganFYSFIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobWVyY2hhbnRTZXNzaW9uLnN1Y2Nlc3MgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbi5jb21wbGV0ZU1lcmNoYW50VmFsaWRhdGlvbihKU09OLnBhcnNlKG1lcmNoYW50U2Vzc2lvbi5kYXRhKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4obWVyY2hhbnRTZXNzaW9uLmRhdGEpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uYWJvcnQoKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvcjogKGpxWEhSLCB0ZXh0U3RhdHVzLCBlcnJvclRocm93bikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2Fybih0ZXh0U3RhdHVzLCBlcnJvclRocm93bilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uLmFib3J0KClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNlc3Npb24ub25wYXltZW50YXV0aG9yaXplZCA9IChBcHBsZVBheVBheW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qge2JpbGxpbmdDb250YWN0LCBzaGlwcGluZ0NvbnRhY3QgfSA9IEFwcGxlUGF5UGF5bWVudC5wYXltZW50XG5cbiAgICAgICAgICAgICAgICAgICAgalF1ZXJ5LmFqYXgoe1xuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBhamF4VXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiAnbW9sbGllX2FwcGxlX3BheV9jcmVhdGVfb3JkZXJfY2FydCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hpcHBpbmdDb250YWN0OiBBcHBsZVBheVBheW1lbnQucGF5bWVudC5zaGlwcGluZ0NvbnRhY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmlsbGluZ0NvbnRhY3Q6IEFwcGxlUGF5UGF5bWVudC5wYXltZW50LmJpbGxpbmdDb250YWN0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuOiBBcHBsZVBheVBheW1lbnQucGF5bWVudC50b2tlbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGlwcGluZ01ldGhvZDogc2VsZWN0ZWRTaGlwcGluZ01ldGhvZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbW9sbGllLXBheW1lbnRzLWZvci13b29jb21tZXJjZV9pc3N1ZXJfYXBwbGVwYXknOiAnYXBwbGVwYXknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3b29jb21tZXJjZS1wcm9jZXNzLWNoZWNrb3V0LW5vbmNlJzogbm9uY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JpbGxpbmdfZmlyc3RfbmFtZSc6IGJpbGxpbmdDb250YWN0LmdpdmVuTmFtZSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19sYXN0X25hbWUnOiBiaWxsaW5nQ29udGFjdC5mYW1pbHlOYW1lIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX2NvbXBhbnknOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19jb3VudHJ5JzogYmlsbGluZ0NvbnRhY3QuY291bnRyeUNvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JpbGxpbmdfYWRkcmVzc18xJzogYmlsbGluZ0NvbnRhY3QuYWRkcmVzc0xpbmVzWzBdIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX2FkZHJlc3NfMic6IGJpbGxpbmdDb250YWN0LmFkZHJlc3NMaW5lc1sxXSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19wb3N0Y29kZSc6IGJpbGxpbmdDb250YWN0LnBvc3RhbENvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JpbGxpbmdfY2l0eSc6IGJpbGxpbmdDb250YWN0LmxvY2FsaXR5IHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX3N0YXRlJzogYmlsbGluZ0NvbnRhY3QuYWRtaW5pc3RyYXRpdmVBcmVhIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX3Bob25lJzogYmlsbGluZ0NvbnRhY3QucGhvbmVOdW1iZXIgfHwgJzAwMDAwMDAwMDAwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JpbGxpbmdfZW1haWwnOiBzaGlwcGluZ0NvbnRhY3QuZW1haWxBZGRyZXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzaGlwcGluZ19maXJzdF9uYW1lJzogc2hpcHBpbmdDb250YWN0LmdpdmVuTmFtZSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfbGFzdF9uYW1lJzogc2hpcHBpbmdDb250YWN0LmZhbWlseU5hbWUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NoaXBwaW5nX2NvbXBhbnknOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfY291bnRyeSc6IHNoaXBwaW5nQ29udGFjdC5jb3VudHJ5Q29kZSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfYWRkcmVzc18xJzogc2hpcHBpbmdDb250YWN0LmFkZHJlc3NMaW5lc1swXSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfYWRkcmVzc18yJzogc2hpcHBpbmdDb250YWN0LmFkZHJlc3NMaW5lc1sxXSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfcG9zdGNvZGUnOiBzaGlwcGluZ0NvbnRhY3QucG9zdGFsQ29kZSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfY2l0eSc6IHNoaXBwaW5nQ29udGFjdC5sb2NhbGl0eSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfc3RhdGUnOiBzaGlwcGluZ0NvbnRhY3QuYWRtaW5pc3RyYXRpdmVBcmVhIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzaGlwcGluZ19waG9uZSc6IHNoaXBwaW5nQ29udGFjdC5waG9uZU51bWJlciB8fCAnMDAwMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfZW1haWwnOiBzaGlwcGluZ0NvbnRhY3QuZW1haWxBZGRyZXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcmRlcl9jb21tZW50cycgOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncGF5bWVudF9tZXRob2QnIDogJ21vbGxpZV93Y19nYXRld2F5X2FwcGxlcGF5JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX3dwX2h0dHBfcmVmZXJlcicgOiAnLz93Yy1hamF4PXVwZGF0ZV9vcmRlcl9yZXZpZXcnXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGxldGU6IChqcVhIUiwgdGV4dFN0YXR1cykgPT4ge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKGF1dGhvcml6YXRpb25SZXN1bHQsIHRleHRTdGF0dXMsIGpxWEhSKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9IGF1dGhvcml6YXRpb25SZXN1bHQuZGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhdXRob3JpemF0aW9uUmVzdWx0LnN1Y2Nlc3MgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVkaXJlY3Rpb25VcmwgPSByZXN1bHRbJ3JldHVyblVybCddO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlUGF5bWVudChyZXN1bHRbJ3Jlc3BvbnNlVG9BcHBsZSddKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHJlZGlyZWN0aW9uVXJsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmVycm9ycyA9IGNyZWF0ZUFwcGxlRXJyb3JzKHJlc3VsdC5lcnJvcnMpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uY29tcGxldGVQYXltZW50KHJlc3VsdClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3I6IChqcVhIUiwgdGV4dFN0YXR1cywgZXJyb3JUaHJvd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4odGV4dFN0YXR1cywgZXJyb3JUaHJvd24pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbi5hYm9ydCgpXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtb2xsaWVfYXBwbGVwYXlfYnV0dG9uJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZXZ0KSA9PiB7XG4gICAgICAgICAgICAgICAgYXBwbGVQYXlTZXNzaW9uKClcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0sMjAwMCk7XG5cbiAgICB9XG4pXG4oXG4gICAgd2luZG93XG4pXG4iLCJleHBvcnQgY29uc3QgbWF5YmVTaG93QnV0dG9uID0gKCkgPT4ge1xuICAgIGNvbnN0IHtBcHBsZVBheVNlc3Npb259ID0gd2luZG93XG4gICAgY29uc3QgYXBwbGVQYXlNZXRob2RFbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgJyNtb2xsaWUtYXBwbGVwYXlEaXJlY3QtYnV0dG9uJyxcbiAgICApXG4gICAgY29uc3QgY2FuU2hvd0J1dHRvbiA9IGFwcGxlUGF5TWV0aG9kRWxlbWVudCAmJiAoQXBwbGVQYXlTZXNzaW9uICYmIEFwcGxlUGF5U2Vzc2lvbi5jYW5NYWtlUGF5bWVudHMoKSlcbiAgICBpZiAoIWNhblNob3dCdXR0b24pIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICAgIGNvbnN0IGJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpXG4gICAgYnV0dG9uLnNldEF0dHJpYnV0ZSgnaWQnLCAnbW9sbGllX2FwcGxlcGF5X2J1dHRvbicpXG4gICAgYnV0dG9uLmNsYXNzTGlzdC5hZGQoJ2FwcGxlLXBheS1idXR0b24nKVxuICAgIGJ1dHRvbi5jbGFzc0xpc3QuYWRkKCdhcHBsZS1wYXktYnV0dG9uLWJsYWNrJylcbiAgICBhcHBsZVBheU1ldGhvZEVsZW1lbnQuYXBwZW5kQ2hpbGQoYnV0dG9uKVxuICAgIHJldHVybiB0cnVlXG59XG4iXSwic291cmNlUm9vdCI6IiJ9
|
public/js/applepayDirect.min.js
CHANGED
|
@@ -1 +1,442 @@
|
|
| 1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/******/ (function(modules) { // webpackBootstrap
|
| 2 |
+
/******/ // The module cache
|
| 3 |
+
/******/ var installedModules = {};
|
| 4 |
+
/******/
|
| 5 |
+
/******/ // The require function
|
| 6 |
+
/******/ function __webpack_require__(moduleId) {
|
| 7 |
+
/******/
|
| 8 |
+
/******/ // Check if module is in cache
|
| 9 |
+
/******/ if(installedModules[moduleId]) {
|
| 10 |
+
/******/ return installedModules[moduleId].exports;
|
| 11 |
+
/******/ }
|
| 12 |
+
/******/ // Create a new module (and put it into the cache)
|
| 13 |
+
/******/ var module = installedModules[moduleId] = {
|
| 14 |
+
/******/ i: moduleId,
|
| 15 |
+
/******/ l: false,
|
| 16 |
+
/******/ exports: {}
|
| 17 |
+
/******/ };
|
| 18 |
+
/******/
|
| 19 |
+
/******/ // Execute the module function
|
| 20 |
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
| 21 |
+
/******/
|
| 22 |
+
/******/ // Flag the module as loaded
|
| 23 |
+
/******/ module.l = true;
|
| 24 |
+
/******/
|
| 25 |
+
/******/ // Return the exports of the module
|
| 26 |
+
/******/ return module.exports;
|
| 27 |
+
/******/ }
|
| 28 |
+
/******/
|
| 29 |
+
/******/
|
| 30 |
+
/******/ // expose the modules object (__webpack_modules__)
|
| 31 |
+
/******/ __webpack_require__.m = modules;
|
| 32 |
+
/******/
|
| 33 |
+
/******/ // expose the module cache
|
| 34 |
+
/******/ __webpack_require__.c = installedModules;
|
| 35 |
+
/******/
|
| 36 |
+
/******/ // define getter function for harmony exports
|
| 37 |
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
| 38 |
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
| 39 |
+
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
| 40 |
+
/******/ }
|
| 41 |
+
/******/ };
|
| 42 |
+
/******/
|
| 43 |
+
/******/ // define __esModule on exports
|
| 44 |
+
/******/ __webpack_require__.r = function(exports) {
|
| 45 |
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
| 46 |
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
| 47 |
+
/******/ }
|
| 48 |
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
| 49 |
+
/******/ };
|
| 50 |
+
/******/
|
| 51 |
+
/******/ // create a fake namespace object
|
| 52 |
+
/******/ // mode & 1: value is a module id, require it
|
| 53 |
+
/******/ // mode & 2: merge all properties of value into the ns
|
| 54 |
+
/******/ // mode & 4: return value when already ns object
|
| 55 |
+
/******/ // mode & 8|1: behave like require
|
| 56 |
+
/******/ __webpack_require__.t = function(value, mode) {
|
| 57 |
+
/******/ if(mode & 1) value = __webpack_require__(value);
|
| 58 |
+
/******/ if(mode & 8) return value;
|
| 59 |
+
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
| 60 |
+
/******/ var ns = Object.create(null);
|
| 61 |
+
/******/ __webpack_require__.r(ns);
|
| 62 |
+
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
| 63 |
+
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
| 64 |
+
/******/ return ns;
|
| 65 |
+
/******/ };
|
| 66 |
+
/******/
|
| 67 |
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
| 68 |
+
/******/ __webpack_require__.n = function(module) {
|
| 69 |
+
/******/ var getter = module && module.__esModule ?
|
| 70 |
+
/******/ function getDefault() { return module['default']; } :
|
| 71 |
+
/******/ function getModuleExports() { return module; };
|
| 72 |
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
| 73 |
+
/******/ return getter;
|
| 74 |
+
/******/ };
|
| 75 |
+
/******/
|
| 76 |
+
/******/ // Object.prototype.hasOwnProperty.call
|
| 77 |
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
| 78 |
+
/******/
|
| 79 |
+
/******/ // __webpack_public_path__
|
| 80 |
+
/******/ __webpack_require__.p = "/public/js/";
|
| 81 |
+
/******/
|
| 82 |
+
/******/
|
| 83 |
+
/******/ // Load entry module and return exports
|
| 84 |
+
/******/ return __webpack_require__(__webpack_require__.s = "./resources/js/applepayDirect.js");
|
| 85 |
+
/******/ })
|
| 86 |
+
/************************************************************************/
|
| 87 |
+
/******/ ({
|
| 88 |
+
|
| 89 |
+
/***/ "./resources/js/applePayError.js":
|
| 90 |
+
/*!***************************************!*\
|
| 91 |
+
!*** ./resources/js/applePayError.js ***!
|
| 92 |
+
\***************************************/
|
| 93 |
+
/*! exports provided: createAppleErrors */
|
| 94 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 95 |
+
|
| 96 |
+
"use strict";
|
| 97 |
+
__webpack_require__.r(__webpack_exports__);
|
| 98 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createAppleErrors", function() { return createAppleErrors; });
|
| 99 |
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
| 100 |
+
|
| 101 |
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
| 102 |
+
|
| 103 |
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
| 104 |
+
|
| 105 |
+
function createAppleErrors(errors) {
|
| 106 |
+
var errorList = [];
|
| 107 |
+
|
| 108 |
+
var _iterator = _createForOfIteratorHelper(errors),
|
| 109 |
+
_step;
|
| 110 |
+
|
| 111 |
+
try {
|
| 112 |
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
| 113 |
+
var error = _step.value;
|
| 114 |
+
var _error$contactField = error.contactField,
|
| 115 |
+
contactField = _error$contactField === void 0 ? null : _error$contactField,
|
| 116 |
+
_error$code = error.code,
|
| 117 |
+
code = _error$code === void 0 ? null : _error$code,
|
| 118 |
+
_error$message = error.message,
|
| 119 |
+
message = _error$message === void 0 ? null : _error$message;
|
| 120 |
+
var appleError = contactField ? new ApplePayError(code, contactField, message) : new ApplePayError(code);
|
| 121 |
+
errorList.push(appleError);
|
| 122 |
+
}
|
| 123 |
+
} catch (err) {
|
| 124 |
+
_iterator.e(err);
|
| 125 |
+
} finally {
|
| 126 |
+
_iterator.f();
|
| 127 |
+
}
|
| 128 |
+
|
| 129 |
+
return errorList;
|
| 130 |
+
}
|
| 131 |
+
|
| 132 |
+
/***/ }),
|
| 133 |
+
|
| 134 |
+
/***/ "./resources/js/applePayRequest.js":
|
| 135 |
+
/*!*****************************************!*\
|
| 136 |
+
!*** ./resources/js/applePayRequest.js ***!
|
| 137 |
+
\*****************************************/
|
| 138 |
+
/*! exports provided: request */
|
| 139 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 140 |
+
|
| 141 |
+
"use strict";
|
| 142 |
+
__webpack_require__.r(__webpack_exports__);
|
| 143 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "request", function() { return request; });
|
| 144 |
+
var request = function request(countryCode, currencyCode, totalLabel, subtotal) {
|
| 145 |
+
return {
|
| 146 |
+
countryCode: countryCode,
|
| 147 |
+
currencyCode: currencyCode,
|
| 148 |
+
supportedNetworks: ['amex', 'maestro', 'masterCard', 'visa', 'vPay'],
|
| 149 |
+
merchantCapabilities: ['supports3DS'],
|
| 150 |
+
shippingType: 'shipping',
|
| 151 |
+
requiredBillingContactFields: ['postalAddress', 'email'],
|
| 152 |
+
requiredShippingContactFields: ['postalAddress', 'email'],
|
| 153 |
+
total: {
|
| 154 |
+
label: totalLabel,
|
| 155 |
+
amount: subtotal,
|
| 156 |
+
type: 'final'
|
| 157 |
+
}
|
| 158 |
+
};
|
| 159 |
+
};
|
| 160 |
+
|
| 161 |
+
/***/ }),
|
| 162 |
+
|
| 163 |
+
/***/ "./resources/js/applepayDirect.js":
|
| 164 |
+
/*!****************************************!*\
|
| 165 |
+
!*** ./resources/js/applepayDirect.js ***!
|
| 166 |
+
\****************************************/
|
| 167 |
+
/*! no exports provided */
|
| 168 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 169 |
+
|
| 170 |
+
"use strict";
|
| 171 |
+
__webpack_require__.r(__webpack_exports__);
|
| 172 |
+
/* harmony import */ var _applePayError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./applePayError.js */ "./resources/js/applePayError.js");
|
| 173 |
+
/* harmony import */ var _maybeShowApplePayButton_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./maybeShowApplePayButton.js */ "./resources/js/maybeShowApplePayButton.js");
|
| 174 |
+
/* harmony import */ var _applePayRequest_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./applePayRequest.js */ "./resources/js/applePayRequest.js");
|
| 175 |
+
|
| 176 |
+
|
| 177 |
+
|
| 178 |
+
|
| 179 |
+
(function (_ref) {
|
| 180 |
+
var _ = _ref._,
|
| 181 |
+
mollieApplePayDirectData = _ref.mollieApplePayDirectData,
|
| 182 |
+
jQuery = _ref.jQuery;
|
| 183 |
+
|
| 184 |
+
if (_.isEmpty(mollieApplePayDirectData)) {
|
| 185 |
+
return;
|
| 186 |
+
}
|
| 187 |
+
|
| 188 |
+
var _mollieApplePayDirect = mollieApplePayDirectData.product,
|
| 189 |
+
id = _mollieApplePayDirect.id,
|
| 190 |
+
_mollieApplePayDirect2 = _mollieApplePayDirect.needShipping,
|
| 191 |
+
needShipping = _mollieApplePayDirect2 === void 0 ? true : _mollieApplePayDirect2,
|
| 192 |
+
_mollieApplePayDirect3 = _mollieApplePayDirect.isVariation,
|
| 193 |
+
isVariation = _mollieApplePayDirect3 === void 0 ? false : _mollieApplePayDirect3,
|
| 194 |
+
price = _mollieApplePayDirect.price,
|
| 195 |
+
_mollieApplePayDirect4 = mollieApplePayDirectData.shop,
|
| 196 |
+
countryCode = _mollieApplePayDirect4.countryCode,
|
| 197 |
+
_mollieApplePayDirect5 = _mollieApplePayDirect4.currencyCode,
|
| 198 |
+
currencyCode = _mollieApplePayDirect5 === void 0 ? 'EUR' : _mollieApplePayDirect5,
|
| 199 |
+
_mollieApplePayDirect6 = _mollieApplePayDirect4.totalLabel,
|
| 200 |
+
totalLabel = _mollieApplePayDirect6 === void 0 ? '' : _mollieApplePayDirect6,
|
| 201 |
+
ajaxUrl = mollieApplePayDirectData.ajaxUrl;
|
| 202 |
+
|
| 203 |
+
if (!id || !price || !countryCode || !ajaxUrl) {
|
| 204 |
+
return;
|
| 205 |
+
}
|
| 206 |
+
|
| 207 |
+
if (!Object(_maybeShowApplePayButton_js__WEBPACK_IMPORTED_MODULE_1__["maybeShowButton"])()) {
|
| 208 |
+
return;
|
| 209 |
+
}
|
| 210 |
+
|
| 211 |
+
var nonce = document.getElementById('woocommerce-process-checkout-nonce').value;
|
| 212 |
+
var productId = id;
|
| 213 |
+
var productQuantity = 1;
|
| 214 |
+
var updatedContactInfo = [];
|
| 215 |
+
var selectedShippingMethod = [];
|
| 216 |
+
var redirectionUrl = '';
|
| 217 |
+
document.querySelector('input.qty').addEventListener('change', function (event) {
|
| 218 |
+
productQuantity = event.currentTarget.value;
|
| 219 |
+
});
|
| 220 |
+
|
| 221 |
+
if (isVariation) {
|
| 222 |
+
var appleButton = document.querySelector('#mollie_applepay_button');
|
| 223 |
+
jQuery('.single_variation_wrap').on('show_variation', function (event, variation) {
|
| 224 |
+
// Fired when the user selects all the required dropdowns / attributes
|
| 225 |
+
// and a final variation is selected / shown
|
| 226 |
+
if (variation.variation_id) {
|
| 227 |
+
productId = variation.variation_id;
|
| 228 |
+
}
|
| 229 |
+
|
| 230 |
+
appleButton.disabled = false;
|
| 231 |
+
appleButton.classList.remove("buttonDisabled");
|
| 232 |
+
});
|
| 233 |
+
appleButton.disabled = true;
|
| 234 |
+
appleButton.classList.add("buttonDisabled");
|
| 235 |
+
}
|
| 236 |
+
|
| 237 |
+
var amountWithoutTax = productQuantity * price;
|
| 238 |
+
|
| 239 |
+
var applePaySession = function applePaySession() {
|
| 240 |
+
var session = new ApplePaySession(3, Object(_applePayRequest_js__WEBPACK_IMPORTED_MODULE_2__["request"])(countryCode, currencyCode, totalLabel, amountWithoutTax));
|
| 241 |
+
session.begin();
|
| 242 |
+
|
| 243 |
+
if (needShipping) {
|
| 244 |
+
session.onshippingmethodselected = function (event) {
|
| 245 |
+
var _this = this;
|
| 246 |
+
|
| 247 |
+
jQuery.ajax({
|
| 248 |
+
url: ajaxUrl,
|
| 249 |
+
method: 'POST',
|
| 250 |
+
data: {
|
| 251 |
+
action: 'mollie_apple_pay_update_shipping_method',
|
| 252 |
+
shippingMethod: event.shippingMethod,
|
| 253 |
+
productId: productId,
|
| 254 |
+
callerPage: 'productDetail',
|
| 255 |
+
productQuantity: productQuantity,
|
| 256 |
+
simplifiedContact: updatedContactInfo,
|
| 257 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 258 |
+
},
|
| 259 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 260 |
+
success: function success(applePayShippingMethodUpdate, textStatus, jqXHR) {
|
| 261 |
+
var response = applePayShippingMethodUpdate.data;
|
| 262 |
+
selectedShippingMethod = event.shippingMethod;
|
| 263 |
+
|
| 264 |
+
if (applePayShippingMethodUpdate.success === false) {
|
| 265 |
+
response.errors = Object(_applePayError_js__WEBPACK_IMPORTED_MODULE_0__["createAppleErrors"])(response.errors);
|
| 266 |
+
}
|
| 267 |
+
|
| 268 |
+
_this.completeShippingMethodSelection(response);
|
| 269 |
+
},
|
| 270 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 271 |
+
console.warn(textStatus, errorThrown);
|
| 272 |
+
session.abort();
|
| 273 |
+
}
|
| 274 |
+
});
|
| 275 |
+
};
|
| 276 |
+
|
| 277 |
+
session.onshippingcontactselected = function (event) {
|
| 278 |
+
var _this2 = this;
|
| 279 |
+
|
| 280 |
+
jQuery.ajax({
|
| 281 |
+
url: ajaxUrl,
|
| 282 |
+
method: 'POST',
|
| 283 |
+
data: {
|
| 284 |
+
action: 'mollie_apple_pay_update_shipping_contact',
|
| 285 |
+
productId: productId,
|
| 286 |
+
callerPage: 'productDetail',
|
| 287 |
+
productQuantity: productQuantity,
|
| 288 |
+
simplifiedContact: event.shippingContact,
|
| 289 |
+
needShipping: needShipping,
|
| 290 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 291 |
+
},
|
| 292 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 293 |
+
success: function success(applePayShippingContactUpdate, textStatus, jqXHR) {
|
| 294 |
+
var response = applePayShippingContactUpdate.data;
|
| 295 |
+
updatedContactInfo = event.shippingContact;
|
| 296 |
+
|
| 297 |
+
if (applePayShippingContactUpdate.success === false) {
|
| 298 |
+
response.errors = Object(_applePayError_js__WEBPACK_IMPORTED_MODULE_0__["createAppleErrors"])(response.errors);
|
| 299 |
+
}
|
| 300 |
+
|
| 301 |
+
if (response.newShippingMethods) {
|
| 302 |
+
selectedShippingMethod = response.newShippingMethods[0];
|
| 303 |
+
}
|
| 304 |
+
|
| 305 |
+
_this2.completeShippingContactSelection(response);
|
| 306 |
+
},
|
| 307 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 308 |
+
console.warn(textStatus, errorThrown);
|
| 309 |
+
session.abort();
|
| 310 |
+
}
|
| 311 |
+
});
|
| 312 |
+
};
|
| 313 |
+
}
|
| 314 |
+
|
| 315 |
+
session.onvalidatemerchant = function (applePayValidateMerchantEvent) {
|
| 316 |
+
jQuery.ajax({
|
| 317 |
+
url: ajaxUrl,
|
| 318 |
+
method: 'POST',
|
| 319 |
+
data: {
|
| 320 |
+
action: 'mollie_apple_pay_validation',
|
| 321 |
+
validationUrl: applePayValidateMerchantEvent.validationURL,
|
| 322 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 323 |
+
},
|
| 324 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 325 |
+
success: function success(merchantSession, textStatus, jqXHR) {
|
| 326 |
+
if (merchantSession.success === true) {
|
| 327 |
+
session.completeMerchantValidation(JSON.parse(merchantSession.data));
|
| 328 |
+
} else {
|
| 329 |
+
console.warn(merchantSession.data);
|
| 330 |
+
session.abort();
|
| 331 |
+
}
|
| 332 |
+
},
|
| 333 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 334 |
+
console.warn(textStatus, errorThrown);
|
| 335 |
+
session.abort();
|
| 336 |
+
}
|
| 337 |
+
});
|
| 338 |
+
};
|
| 339 |
+
|
| 340 |
+
session.onpaymentauthorized = function (ApplePayPayment) {
|
| 341 |
+
var _ApplePayPayment$paym = ApplePayPayment.payment,
|
| 342 |
+
billingContact = _ApplePayPayment$paym.billingContact,
|
| 343 |
+
shippingContact = _ApplePayPayment$paym.shippingContact;
|
| 344 |
+
jQuery.ajax({
|
| 345 |
+
url: ajaxUrl,
|
| 346 |
+
method: 'POST',
|
| 347 |
+
data: {
|
| 348 |
+
action: 'mollie_apple_pay_create_order',
|
| 349 |
+
productId: productId,
|
| 350 |
+
productQuantity: productQuantity,
|
| 351 |
+
shippingContact: ApplePayPayment.payment.shippingContact,
|
| 352 |
+
billingContact: ApplePayPayment.payment.billingContact,
|
| 353 |
+
token: ApplePayPayment.payment.token,
|
| 354 |
+
shippingMethod: selectedShippingMethod,
|
| 355 |
+
'mollie-payments-for-woocommerce_issuer_applepay': 'applepay',
|
| 356 |
+
'woocommerce-process-checkout-nonce': nonce,
|
| 357 |
+
'billing_first_name': billingContact.givenName || '',
|
| 358 |
+
'billing_last_name': billingContact.familyName || '',
|
| 359 |
+
'billing_company': '',
|
| 360 |
+
'billing_country': billingContact.countryCode || '',
|
| 361 |
+
'billing_address_1': billingContact.addressLines[0] || '',
|
| 362 |
+
'billing_address_2': billingContact.addressLines[1] || '',
|
| 363 |
+
'billing_postcode': billingContact.postalCode || '',
|
| 364 |
+
'billing_city': billingContact.locality || '',
|
| 365 |
+
'billing_state': billingContact.administrativeArea || '',
|
| 366 |
+
'billing_phone': billingContact.phoneNumber || '000000000000',
|
| 367 |
+
'billing_email': shippingContact.emailAddress || '',
|
| 368 |
+
'shipping_first_name': shippingContact.givenName || '',
|
| 369 |
+
'shipping_last_name': shippingContact.familyName || '',
|
| 370 |
+
'shipping_company': '',
|
| 371 |
+
'shipping_country': shippingContact.countryCode || '',
|
| 372 |
+
'shipping_address_1': shippingContact.addressLines[0] || '',
|
| 373 |
+
'shipping_address_2': shippingContact.addressLines[1] || '',
|
| 374 |
+
'shipping_postcode': shippingContact.postalCode || '',
|
| 375 |
+
'shipping_city': shippingContact.locality || '',
|
| 376 |
+
'shipping_state': shippingContact.administrativeArea || '',
|
| 377 |
+
'shipping_phone': shippingContact.phoneNumber || '000000000000',
|
| 378 |
+
'shipping_email': shippingContact.emailAddress || '',
|
| 379 |
+
'order_comments': '',
|
| 380 |
+
'payment_method': 'mollie_wc_gateway_applepay',
|
| 381 |
+
'_wp_http_referer': '/?wc-ajax=update_order_review'
|
| 382 |
+
},
|
| 383 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 384 |
+
success: function success(authorizationResult, textStatus, jqXHR) {
|
| 385 |
+
var result = authorizationResult.data;
|
| 386 |
+
|
| 387 |
+
if (authorizationResult.success === true) {
|
| 388 |
+
redirectionUrl = result['returnUrl'];
|
| 389 |
+
session.completePayment(result['responseToApple']);
|
| 390 |
+
window.location.href = redirectionUrl;
|
| 391 |
+
} else {
|
| 392 |
+
result.errors = Object(_applePayError_js__WEBPACK_IMPORTED_MODULE_0__["createAppleErrors"])(result.errors);
|
| 393 |
+
session.completePayment(result);
|
| 394 |
+
}
|
| 395 |
+
},
|
| 396 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 397 |
+
console.warn(textStatus, errorThrown);
|
| 398 |
+
session.abort();
|
| 399 |
+
}
|
| 400 |
+
});
|
| 401 |
+
};
|
| 402 |
+
};
|
| 403 |
+
|
| 404 |
+
document.querySelector('#mollie_applepay_button').addEventListener('click', function (evt) {
|
| 405 |
+
applePaySession();
|
| 406 |
+
});
|
| 407 |
+
})(window);
|
| 408 |
+
|
| 409 |
+
/***/ }),
|
| 410 |
+
|
| 411 |
+
/***/ "./resources/js/maybeShowApplePayButton.js":
|
| 412 |
+
/*!*************************************************!*\
|
| 413 |
+
!*** ./resources/js/maybeShowApplePayButton.js ***!
|
| 414 |
+
\*************************************************/
|
| 415 |
+
/*! exports provided: maybeShowButton */
|
| 416 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 417 |
+
|
| 418 |
+
"use strict";
|
| 419 |
+
__webpack_require__.r(__webpack_exports__);
|
| 420 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "maybeShowButton", function() { return maybeShowButton; });
|
| 421 |
+
var maybeShowButton = function maybeShowButton() {
|
| 422 |
+
var _window = window,
|
| 423 |
+
ApplePaySession = _window.ApplePaySession;
|
| 424 |
+
var applePayMethodElement = document.querySelector('#mollie-applepayDirect-button');
|
| 425 |
+
var canShowButton = applePayMethodElement && ApplePaySession && ApplePaySession.canMakePayments();
|
| 426 |
+
|
| 427 |
+
if (!canShowButton) {
|
| 428 |
+
return false;
|
| 429 |
+
}
|
| 430 |
+
|
| 431 |
+
var button = document.createElement('button');
|
| 432 |
+
button.setAttribute('id', 'mollie_applepay_button');
|
| 433 |
+
button.classList.add('apple-pay-button');
|
| 434 |
+
button.classList.add('apple-pay-button-black');
|
| 435 |
+
applePayMethodElement.appendChild(button);
|
| 436 |
+
return true;
|
| 437 |
+
};
|
| 438 |
+
|
| 439 |
+
/***/ })
|
| 440 |
+
|
| 441 |
+
/******/ });
|
| 442 |
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2FwcGxlUGF5RXJyb3IuanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2FwcGxlUGF5UmVxdWVzdC5qcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvYXBwbGVwYXlEaXJlY3QuanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL21heWJlU2hvd0FwcGxlUGF5QnV0dG9uLmpzIl0sIm5hbWVzIjpbImNyZWF0ZUFwcGxlRXJyb3JzIiwiZXJyb3JzIiwiZXJyb3JMaXN0IiwiZXJyb3IiLCJjb250YWN0RmllbGQiLCJjb2RlIiwibWVzc2FnZSIsImFwcGxlRXJyb3IiLCJBcHBsZVBheUVycm9yIiwicHVzaCIsInJlcXVlc3QiLCJjb3VudHJ5Q29kZSIsImN1cnJlbmN5Q29kZSIsInRvdGFsTGFiZWwiLCJzdWJ0b3RhbCIsInN1cHBvcnRlZE5ldHdvcmtzIiwibWVyY2hhbnRDYXBhYmlsaXRpZXMiLCJzaGlwcGluZ1R5cGUiLCJyZXF1aXJlZEJpbGxpbmdDb250YWN0RmllbGRzIiwicmVxdWlyZWRTaGlwcGluZ0NvbnRhY3RGaWVsZHMiLCJ0b3RhbCIsImxhYmVsIiwiYW1vdW50IiwidHlwZSIsIl8iLCJtb2xsaWVBcHBsZVBheURpcmVjdERhdGEiLCJqUXVlcnkiLCJpc0VtcHR5IiwicHJvZHVjdCIsImlkIiwibmVlZFNoaXBwaW5nIiwiaXNWYXJpYXRpb24iLCJwcmljZSIsInNob3AiLCJhamF4VXJsIiwibWF5YmVTaG93QnV0dG9uIiwibm9uY2UiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwidmFsdWUiLCJwcm9kdWN0SWQiLCJwcm9kdWN0UXVhbnRpdHkiLCJ1cGRhdGVkQ29udGFjdEluZm8iLCJzZWxlY3RlZFNoaXBwaW5nTWV0aG9kIiwicmVkaXJlY3Rpb25VcmwiLCJxdWVyeVNlbGVjdG9yIiwiYWRkRXZlbnRMaXN0ZW5lciIsImV2ZW50IiwiY3VycmVudFRhcmdldCIsImFwcGxlQnV0dG9uIiwib24iLCJ2YXJpYXRpb24iLCJ2YXJpYXRpb25faWQiLCJkaXNhYmxlZCIsImNsYXNzTGlzdCIsInJlbW92ZSIsImFkZCIsImFtb3VudFdpdGhvdXRUYXgiLCJhcHBsZVBheVNlc3Npb24iLCJzZXNzaW9uIiwiQXBwbGVQYXlTZXNzaW9uIiwiYmVnaW4iLCJvbnNoaXBwaW5nbWV0aG9kc2VsZWN0ZWQiLCJhamF4IiwidXJsIiwibWV0aG9kIiwiZGF0YSIsImFjdGlvbiIsInNoaXBwaW5nTWV0aG9kIiwiY2FsbGVyUGFnZSIsInNpbXBsaWZpZWRDb250YWN0IiwiY29tcGxldGUiLCJqcVhIUiIsInRleHRTdGF0dXMiLCJzdWNjZXNzIiwiYXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZSIsInJlc3BvbnNlIiwiY29tcGxldGVTaGlwcGluZ01ldGhvZFNlbGVjdGlvbiIsImVycm9yVGhyb3duIiwiY29uc29sZSIsIndhcm4iLCJhYm9ydCIsIm9uc2hpcHBpbmdjb250YWN0c2VsZWN0ZWQiLCJzaGlwcGluZ0NvbnRhY3QiLCJhcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZSIsIm5ld1NoaXBwaW5nTWV0aG9kcyIsImNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uIiwib252YWxpZGF0ZW1lcmNoYW50IiwiYXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQiLCJ2YWxpZGF0aW9uVXJsIiwidmFsaWRhdGlvblVSTCIsIm1lcmNoYW50U2Vzc2lvbiIsImNvbXBsZXRlTWVyY2hhbnRWYWxpZGF0aW9uIiwiSlNPTiIsInBhcnNlIiwib25wYXltZW50YXV0aG9yaXplZCIsIkFwcGxlUGF5UGF5bWVudCIsInBheW1lbnQiLCJiaWxsaW5nQ29udGFjdCIsInRva2VuIiwiZ2l2ZW5OYW1lIiwiZmFtaWx5TmFtZSIsImFkZHJlc3NMaW5lcyIsInBvc3RhbENvZGUiLCJsb2NhbGl0eSIsImFkbWluaXN0cmF0aXZlQXJlYSIsInBob25lTnVtYmVyIiwiZW1haWxBZGRyZXNzIiwiYXV0aG9yaXphdGlvblJlc3VsdCIsInJlc3VsdCIsImNvbXBsZXRlUGF5bWVudCIsIndpbmRvdyIsImxvY2F0aW9uIiwiaHJlZiIsImV2dCIsImFwcGxlUGF5TWV0aG9kRWxlbWVudCIsImNhblNob3dCdXR0b24iLCJjYW5NYWtlUGF5bWVudHMiLCJidXR0b24iLCJjcmVhdGVFbGVtZW50Iiwic2V0QXR0cmlidXRlIiwiYXBwZW5kQ2hpbGQiXSwibWFwcGluZ3MiOiI7UUFBQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTs7O1FBR0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLDBDQUEwQyxnQ0FBZ0M7UUFDMUU7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSx3REFBd0Qsa0JBQWtCO1FBQzFFO1FBQ0EsaURBQWlELGNBQWM7UUFDL0Q7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLHlDQUF5QyxpQ0FBaUM7UUFDMUUsZ0hBQWdILG1CQUFtQixFQUFFO1FBQ3JJO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMkJBQTJCLDBCQUEwQixFQUFFO1FBQ3ZELGlDQUFpQyxlQUFlO1FBQ2hEO1FBQ0E7UUFDQTs7UUFFQTtRQUNBLHNEQUFzRCwrREFBK0Q7O1FBRXJIO1FBQ0E7OztRQUdBO1FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ2xGTyxTQUFTQSxpQkFBVCxDQUEyQkMsTUFBM0IsRUFBbUM7RUFDdEMsSUFBTUMsU0FBUyxHQUFHLEVBQWxCOztFQURzQywyQ0FFbEJELE1BRmtCO0VBQUE7O0VBQUE7SUFFdEMsb0RBQTRCO01BQUEsSUFBakJFLEtBQWlCO01BQ3hCLDBCQUEyREEsS0FBM0QsQ0FBT0MsWUFBUDtNQUFBLElBQU9BLFlB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YXBwbGVwYXlEaXJlY3QubWluLmpzIiwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZ2V0dGVyIH0pO1xuIFx0XHR9XG4gXHR9O1xuXG4gXHQvLyBkZWZpbmUgX19lc01vZHVsZSBvbiBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIgPSBmdW5jdGlvbihleHBvcnRzKSB7XG4gXHRcdGlmKHR5cGVvZiBTeW1ib2wgIT09ICd1bmRlZmluZWQnICYmIFN5bWJvbC50b1N0cmluZ1RhZykge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuIFx0XHR9XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gXHR9O1xuXG4gXHQvLyBjcmVhdGUgYSBmYWtlIG5hbWVzcGFjZSBvYmplY3RcbiBcdC8vIG1vZGUgJiAxOiB2YWx1ZSBpcyBhIG1vZHVsZSBpZCwgcmVxdWlyZSBpdFxuIFx0Ly8gbW9kZSAmIDI6IG1lcmdlIGFsbCBwcm9wZXJ0aWVzIG9mIHZhbHVlIGludG8gdGhlIG5zXG4gXHQvLyBtb2RlICYgNDogcmV0dXJuIHZhbHVlIHdoZW4gYWxyZWFkeSBucyBvYmplY3RcbiBcdC8vIG1vZGUgJiA4fDE6IGJlaGF2ZSBsaWtlIHJlcXVpcmVcbiBcdF9fd2VicGFja19yZXF1aXJlX18udCA9IGZ1bmN0aW9uKHZhbHVlLCBtb2RlKSB7XG4gXHRcdGlmKG1vZGUgJiAxKSB2YWx1ZSA9IF9fd2VicGFja19yZXF1aXJlX18odmFsdWUpO1xuIFx0XHRpZihtb2RlICYgOCkgcmV0dXJuIHZhbHVlO1xuIFx0XHRpZigobW9kZSAmIDQpICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUgJiYgdmFsdWUuX19lc01vZHVsZSkgcmV0dXJuIHZhbHVlO1xuIFx0XHR2YXIgbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIobnMpO1xuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkobnMsICdkZWZhdWx0JywgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdmFsdWUgfSk7XG4gXHRcdGlmKG1vZGUgJiAyICYmIHR5cGVvZiB2YWx1ZSAhPSAnc3RyaW5nJykgZm9yKHZhciBrZXkgaW4gdmFsdWUpIF9fd2VicGFja19yZXF1aXJlX18uZChucywga2V5LCBmdW5jdGlvbihrZXkpIHsgcmV0dXJuIHZhbHVlW2tleV07IH0uYmluZChudWxsLCBrZXkpKTtcbiBcdFx0cmV0dXJuIG5zO1xuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCIvcHVibGljL2pzL1wiO1xuXG5cbiBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gXCIuL3Jlc291cmNlcy9qcy9hcHBsZXBheURpcmVjdC5qc1wiKTtcbiIsImV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBcHBsZUVycm9ycyhlcnJvcnMpIHtcbiAgICBjb25zdCBlcnJvckxpc3QgPSBbXVxuICAgIGZvciAoY29uc3QgZXJyb3Igb2YgZXJyb3JzKSB7XG4gICAgICAgIGNvbnN0IHtjb250YWN0RmllbGQgPSBudWxsLCBjb2RlID0gbnVsbCwgbWVzc2FnZSA9IG51bGx9ID0gZXJyb3JcbiAgICAgICAgY29uc3QgYXBwbGVFcnJvciA9IGNvbnRhY3RGaWVsZCA/IG5ldyBBcHBsZVBheUVycm9yKGNvZGUsIGNvbnRhY3RGaWVsZCwgbWVzc2FnZSkgOiBuZXcgQXBwbGVQYXlFcnJvcihjb2RlKVxuICAgICAgICBlcnJvckxpc3QucHVzaChhcHBsZUVycm9yKVxuICAgIH1cblxuICAgIHJldHVybiBlcnJvckxpc3Rcbn1cbiIsImV4cG9ydCBjb25zdCByZXF1ZXN0ID0gKGNvdW50cnlDb2RlLCBjdXJyZW5jeUNvZGUsIHRvdGFsTGFiZWwsIHN1YnRvdGFsKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgY291bnRyeUNvZGU6IGNvdW50cnlDb2RlLFxuICAgICAgICBjdXJyZW5jeUNvZGU6IGN1cnJlbmN5Q29kZSxcbiAgICAgICAgc3VwcG9ydGVkTmV0d29ya3M6IFsnYW1leCcsICdtYWVzdHJvJywgJ21hc3RlckNhcmQnLCAndmlzYScsICd2UGF5J10sXG4gICAgICAgIG1lcmNoYW50Q2FwYWJpbGl0aWVzOiBbJ3N1cHBvcnRzM0RTJ10sXG4gICAgICAgIHNoaXBwaW5nVHlwZTogJ3NoaXBwaW5nJyxcbiAgICAgICAgcmVxdWlyZWRCaWxsaW5nQ29udGFjdEZpZWxkczogW1xuICAgICAgICAgICAgJ3Bvc3RhbEFkZHJlc3MnLFxuICAgICAgICAgICAgJ2VtYWlsJ1xuICAgICAgICBdLFxuICAgICAgICByZXF1aXJlZFNoaXBwaW5nQ29udGFjdEZpZWxkczogW1xuICAgICAgICAgICAgJ3Bvc3RhbEFkZHJlc3MnLFxuICAgICAgICAgICAgJ2VtYWlsJ1xuICAgICAgICBdLFxuICAgICAgICB0b3RhbDoge1xuICAgICAgICAgICAgbGFiZWw6IHRvdGFsTGFiZWwsXG4gICAgICAgICAgICBhbW91bnQ6IHN1YnRvdGFsLFxuICAgICAgICAgICAgdHlwZTogJ2ZpbmFsJ1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiaW1wb3J0IHtjcmVhdGVBcHBsZUVycm9yc30gZnJvbSAnLi9hcHBsZVBheUVycm9yLmpzJztcbmltcG9ydCB7bWF5YmVTaG93QnV0dG9ufSBmcm9tICcuL21heWJlU2hvd0FwcGxlUGF5QnV0dG9uLmpzJztcbmltcG9ydCB7cmVxdWVzdH0gZnJvbSAnLi9hcHBsZVBheVJlcXVlc3QuanMnO1xuXG4oXG4gICAgZnVuY3Rpb24gKHtfLCBtb2xsaWVBcHBsZVBheURpcmVjdERhdGEsIGpRdWVyeX0pIHtcbiAgICAgICAgaWYgKF8uaXNFbXB0eShtb2xsaWVBcHBsZVBheURpcmVjdERhdGEpKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtwcm9kdWN0OiB7aWQsIG5lZWRTaGlwcGluZyA9IHRydWUsIGlzVmFyaWF0aW9uID0gZmFsc2UsIHByaWNlfSwgc2hvcDoge2NvdW50cnlDb2RlLCBjdXJyZW5jeUNvZGUgPSAnRVVSJywgdG90YWxMYWJlbCA9ICcnfSwgYWpheFVybH0gPSBtb2xsaWVBcHBsZVBheURpcmVjdERhdGFcblxuICAgICAgICBpZiAoIWlkIHx8ICFwcmljZSB8fCAhY291bnRyeUNvZGUgfHwgIWFqYXhVcmwpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICAgIGlmKCFtYXliZVNob3dCdXR0b24oKSl7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5vbmNlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3dvb2NvbW1lcmNlLXByb2Nlc3MtY2hlY2tvdXQtbm9uY2UnKS52YWx1ZVxuICAgICAgICBsZXQgcHJvZHVjdElkID0gaWRcbiAgICAgICAgbGV0IHByb2R1Y3RRdWFudGl0eSA9IDFcbiAgICAgICAgbGV0IHVwZGF0ZWRDb250YWN0SW5mbyA9IFtdXG4gICAgICAgIGxldCBzZWxlY3RlZFNoaXBwaW5nTWV0aG9kID0gW11cbiAgICAgICAgbGV0IHJlZGlyZWN0aW9uVXJsID0gJydcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQucXR5JykuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgZXZlbnQgPT4ge1xuICAgICAgICAgICAgcHJvZHVjdFF1YW50aXR5ID0gZXZlbnQuY3VycmVudFRhcmdldC52YWx1ZVxuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChpc1ZhcmlhdGlvbikge1xuICAgICAgICAgICAgbGV0IGFwcGxlQnV0dG9uID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI21vbGxpZV9hcHBsZXBheV9idXR0b24nKTtcbiAgICAgICAgICAgIGpRdWVyeSgnLnNpbmdsZV92YXJpYXRpb25fd3JhcCcpLm9uKCdzaG93X3ZhcmlhdGlvbicsIGZ1bmN0aW9uIChldmVudCwgdmFyaWF0aW9uKSB7XG4gICAgICAgICAgICAgICAgLy8gRmlyZWQgd2hlbiB0aGUgdXNlciBzZWxlY3RzIGFsbCB0aGUgcmVxdWlyZWQgZHJvcGRvd25zIC8gYXR0cmlidXRlc1xuICAgICAgICAgICAgICAgIC8vIGFuZCBhIGZpbmFsIHZhcmlhdGlvbiBpcyBzZWxlY3RlZCAvIHNob3duXG4gICAgICAgICAgICAgICAgaWYgKHZhcmlhdGlvbi52YXJpYXRpb25faWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvZHVjdElkID0gdmFyaWF0aW9uLnZhcmlhdGlvbl9pZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhcHBsZUJ1dHRvbi5kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGFwcGxlQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoXCJidXR0b25EaXNhYmxlZFwiKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgYXBwbGVCdXR0b24uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgICAgYXBwbGVCdXR0b24uY2xhc3NMaXN0LmFkZChcImJ1dHRvbkRpc2FibGVkXCIpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFtb3VudFdpdGhvdXRUYXggPSBwcm9kdWN0UXVhbnRpdHkgKiBwcmljZVxuICAgICAgICBsZXQgYXBwbGVQYXlTZXNzaW9uID0gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc2Vzc2lvbiA9IG5ldyBBcHBsZVBheVNlc3Npb24oMywgcmVxdWVzdChjb3VudHJ5Q29kZSwgY3VycmVuY3lDb2RlLCB0b3RhbExhYmVsLCBhbW91bnRXaXRob3V0VGF4KSlcbiAgICAgICAgICAgIHNlc3Npb24uYmVnaW4oKVxuICAgICAgICAgICAgaWYobmVlZFNoaXBwaW5nKXtcbiAgICAgICAgICAgICAgICBzZXNzaW9uLm9uc2hpcHBpbmdtZXRob2RzZWxlY3RlZCA9IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgICAgICAgICAgICBqUXVlcnkuYWpheCh7XG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGFqYXhVcmwsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246ICdtb2xsaWVfYXBwbGVfcGF5X3VwZGF0ZV9zaGlwcGluZ19tZXRob2QnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoaXBwaW5nTWV0aG9kOiBldmVudC5zaGlwcGluZ01ldGhvZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0SWQ6IHByb2R1Y3RJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsZXJQYWdlOiAncHJvZHVjdERldGFpbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjdFF1YW50aXR5OiBwcm9kdWN0UXVhbnRpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2ltcGxpZmllZENvbnRhY3Q6IHVwZGF0ZWRDb250YWN0SW5mbyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd29vY29tbWVyY2UtcHJvY2Vzcy1jaGVja291dC1ub25jZSc6IG5vbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBsZXRlOiAoanFYSFIsIHRleHRTdGF0dXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiAoYXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZSwgdGV4dFN0YXR1cywganFYSFIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgcmVzcG9uc2UgPSBhcHBsZVBheVNoaXBwaW5nTWV0aG9kVXBkYXRlLmRhdGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZFNoaXBwaW5nTWV0aG9kID0gZXZlbnQuc2hpcHBpbmdNZXRob2RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZS5zdWNjZXNzID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5lcnJvcnMgPSBjcmVhdGVBcHBsZUVycm9ycyhyZXNwb25zZS5lcnJvcnMpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGxldGVTaGlwcGluZ01ldGhvZFNlbGVjdGlvbihyZXNwb25zZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvcjogKGpxWEhSLCB0ZXh0U3RhdHVzLCBlcnJvclRocm93bikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2Fybih0ZXh0U3RhdHVzLCBlcnJvclRocm93bilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uLmFib3J0KClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNlc3Npb24ub25zaGlwcGluZ2NvbnRhY3RzZWxlY3RlZCA9IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgICAgICAgICAgICBqUXVlcnkuYWpheCh7XG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGFqYXhVcmwsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246ICdtb2xsaWVfYXBwbGVfcGF5X3VwZGF0ZV9zaGlwcGluZ19jb250YWN0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0SWQ6IHByb2R1Y3RJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsZXJQYWdlOiAncHJvZHVjdERldGFpbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjdFF1YW50aXR5OiBwcm9kdWN0UXVhbnRpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2ltcGxpZmllZENvbnRhY3Q6IGV2ZW50LnNoaXBwaW5nQ29udGFjdCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZWVkU2hpcHBpbmc6IG5lZWRTaGlwcGluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd29vY29tbWVyY2UtcHJvY2Vzcy1jaGVja291dC1ub25jZSc6IG5vbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBsZXRlOiAoanFYSFIsIHRleHRTdGF0dXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiAoYXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RVcGRhdGUsIHRleHRTdGF0dXMsIGpxWEhSKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJlc3BvbnNlID0gYXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RVcGRhdGUuZGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZWRDb250YWN0SW5mbyA9IGV2ZW50LnNoaXBwaW5nQ29udGFjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZS5zdWNjZXNzID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZS5lcnJvcnMgPSBjcmVhdGVBcHBsZUVycm9ycyhyZXNwb25zZS5lcnJvcnMpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5uZXdTaGlwcGluZ01ldGhvZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRTaGlwcGluZ01ldGhvZCA9IHJlc3BvbnNlLm5ld1NoaXBwaW5nTWV0aG9kc1swXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKHJlc3BvbnNlKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yOiAoanFYSFIsIHRleHRTdGF0dXMsIGVycm9yVGhyb3duKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKHRleHRTdGF0dXMsIGVycm9yVGhyb3duKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uYWJvcnQoKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZXNzaW9uLm9udmFsaWRhdGVtZXJjaGFudCA9IChhcHBsZVBheVZhbGlkYXRlTWVyY2hhbnRFdmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGpRdWVyeS5hamF4KHtcbiAgICAgICAgICAgICAgICAgICAgdXJsOiBhamF4VXJsLFxuICAgICAgICAgICAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiAnbW9sbGllX2FwcGxlX3BheV92YWxpZGF0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRpb25Vcmw6IGFwcGxlUGF5VmFsaWRhdGVNZXJjaGFudEV2ZW50LnZhbGlkYXRpb25VUkwsXG4gICAgICAgICAgICAgICAgICAgICAgICAnd29vY29tbWVyY2UtcHJvY2Vzcy1jaGVja291dC1ub25jZSc6IG5vbmNlLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBjb21wbGV0ZTogKGpxWEhSLCB0ZXh0U3RhdHVzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IChtZXJjaGFudFNlc3Npb24sIHRleHRTdGF0dXMsIGpxWEhSKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobWVyY2hhbnRTZXNzaW9uLnN1Y2Nlc3MgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uLmNvbXBsZXRlTWVyY2hhbnRWYWxpZGF0aW9uKEpTT04ucGFyc2UobWVyY2hhbnRTZXNzaW9uLmRhdGEpKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4obWVyY2hhbnRTZXNzaW9uLmRhdGEpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbi5hYm9ydCgpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGVycm9yOiAoanFYSFIsIHRleHRTdGF0dXMsIGVycm9yVGhyb3duKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4odGV4dFN0YXR1cywgZXJyb3JUaHJvd24pXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uLmFib3J0KClcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2Vzc2lvbi5vbnBheW1lbnRhdXRob3JpemVkID0gKEFwcGxlUGF5UGF5bWVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHtiaWxsaW5nQ29udGFjdCwgc2hpcHBpbmdDb250YWN0IH0gPSBBcHBsZVBheVBheW1lbnQucGF5bWVudFxuXG4gICAgICAgICAgICAgICAgalF1ZXJ5LmFqYXgoe1xuICAgICAgICAgICAgICAgICAgICB1cmw6IGFqYXhVcmwsXG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246ICdtb2xsaWVfYXBwbGVfcGF5X2NyZWF0ZV9vcmRlcicsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0SWQ6IHByb2R1Y3RJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3RRdWFudGl0eTogcHJvZHVjdFF1YW50aXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgc2hpcHBpbmdDb250YWN0OiBBcHBsZVBheVBheW1lbnQucGF5bWVudC5zaGlwcGluZ0NvbnRhY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICBiaWxsaW5nQ29udGFjdDogQXBwbGVQYXlQYXltZW50LnBheW1lbnQuYmlsbGluZ0NvbnRhY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICB0b2tlbjogQXBwbGVQYXlQYXltZW50LnBheW1lbnQudG9rZW4sXG4gICAgICAgICAgICAgICAgICAgICAgICBzaGlwcGluZ01ldGhvZDogc2VsZWN0ZWRTaGlwcGluZ01ldGhvZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICdtb2xsaWUtcGF5bWVudHMtZm9yLXdvb2NvbW1lcmNlX2lzc3Vlcl9hcHBsZXBheSc6ICdhcHBsZXBheScsXG4gICAgICAgICAgICAgICAgICAgICAgICAnd29vY29tbWVyY2UtcHJvY2Vzcy1jaGVja291dC1ub25jZSc6IG5vbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ2JpbGxpbmdfZmlyc3RfbmFtZSc6ICBiaWxsaW5nQ29udGFjdC5naXZlbk5hbWUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19sYXN0X25hbWUnIDogYmlsbGluZ0NvbnRhY3QuZmFtaWx5TmFtZSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX2NvbXBhbnknOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX2NvdW50cnknIDogYmlsbGluZ0NvbnRhY3QuY291bnRyeUNvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19hZGRyZXNzXzEnIDogYmlsbGluZ0NvbnRhY3QuYWRkcmVzc0xpbmVzWzBdIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ2JpbGxpbmdfYWRkcmVzc18yJyA6IGJpbGxpbmdDb250YWN0LmFkZHJlc3NMaW5lc1sxXSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX3Bvc3Rjb2RlJyA6IGJpbGxpbmdDb250YWN0LnBvc3RhbENvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19jaXR5JzogYmlsbGluZ0NvbnRhY3QubG9jYWxpdHkgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19zdGF0ZScgOiBiaWxsaW5nQ29udGFjdC5hZG1pbmlzdHJhdGl2ZUFyZWEgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19waG9uZScgOiBiaWxsaW5nQ29udGFjdC5waG9uZU51bWJlciB8fCAnMDAwMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX2VtYWlsJyA6IHNoaXBwaW5nQ29udGFjdC5lbWFpbEFkZHJlc3MgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfZmlyc3RfbmFtZSc6ICBzaGlwcGluZ0NvbnRhY3QuZ2l2ZW5OYW1lIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3NoaXBwaW5nX2xhc3RfbmFtZScgOiBzaGlwcGluZ0NvbnRhY3QuZmFtaWx5TmFtZSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdzaGlwcGluZ19jb21wYW55JzogJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfY291bnRyeScgOiBzaGlwcGluZ0NvbnRhY3QuY291bnRyeUNvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfYWRkcmVzc18xJyA6IHNoaXBwaW5nQ29udGFjdC5hZGRyZXNzTGluZXNbMF0gfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfYWRkcmVzc18yJyA6IHNoaXBwaW5nQ29udGFjdC5hZGRyZXNzTGluZXNbMV0gfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfcG9zdGNvZGUnIDogc2hpcHBpbmdDb250YWN0LnBvc3RhbENvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfY2l0eSc6IHNoaXBwaW5nQ29udGFjdC5sb2NhbGl0eSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdzaGlwcGluZ19zdGF0ZScgOiBzaGlwcGluZ0NvbnRhY3QuYWRtaW5pc3RyYXRpdmVBcmVhIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3NoaXBwaW5nX3Bob25lJyA6IHNoaXBwaW5nQ29udGFjdC5waG9uZU51bWJlciB8fCAnMDAwMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdzaGlwcGluZ19lbWFpbCcgOiBzaGlwcGluZ0NvbnRhY3QuZW1haWxBZGRyZXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ29yZGVyX2NvbW1lbnRzJyA6ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3BheW1lbnRfbWV0aG9kJyA6ICdtb2xsaWVfd2NfZ2F0ZXdheV9hcHBsZXBheScsXG4gICAgICAgICAgICAgICAgICAgICAgICAnX3dwX2h0dHBfcmVmZXJlcicgOiAnLz93Yy1hamF4PXVwZGF0ZV9vcmRlcl9yZXZpZXcnXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGNvbXBsZXRlOiAoanFYSFIsIHRleHRTdGF0dXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKGF1dGhvcml6YXRpb25SZXN1bHQsIHRleHRTdGF0dXMsIGpxWEhSKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgcmVzdWx0ID0gYXV0aG9yaXphdGlvblJlc3VsdC5kYXRhXG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhdXRob3JpemF0aW9uUmVzdWx0LnN1Y2Nlc3MgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWRpcmVjdGlvblVybCA9IHJlc3VsdFsncmV0dXJuVXJsJ107XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbi5jb21wbGV0ZVBheW1lbnQocmVzdWx0WydyZXNwb25zZVRvQXBwbGUnXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHJlZGlyZWN0aW9uVXJsXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5lcnJvcnMgPSBjcmVhdGVBcHBsZUVycm9ycyhyZXN1bHQuZXJyb3JzKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uY29tcGxldGVQYXltZW50KHJlc3VsdClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3I6IChqcVhIUiwgdGV4dFN0YXR1cywgZXJyb3JUaHJvd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2Fybih0ZXh0U3RhdHVzLCBlcnJvclRocm93bilcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uYWJvcnQoKVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI21vbGxpZV9hcHBsZXBheV9idXR0b24nKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChldnQpID0+IHtcbiAgICAgICAgICAgIGFwcGxlUGF5U2Vzc2lvbigpXG4gICAgICAgIH0pXG4gICAgfVxuKVxuKFxuICAgIHdpbmRvd1xuKVxuIiwiZXhwb3J0IGNvbnN0IG1heWJlU2hvd0J1dHRvbiA9ICgpID0+IHtcbiAgICBjb25zdCB7QXBwbGVQYXlTZXNzaW9ufSA9IHdpbmRvd1xuICAgIGNvbnN0IGFwcGxlUGF5TWV0aG9kRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICcjbW9sbGllLWFwcGxlcGF5RGlyZWN0LWJ1dHRvbicsXG4gICAgKVxuICAgIGNvbnN0IGNhblNob3dCdXR0b24gPSBhcHBsZVBheU1ldGhvZEVsZW1lbnQgJiYgKEFwcGxlUGF5U2Vzc2lvbiAmJiBBcHBsZVBheVNlc3Npb24uY2FuTWFrZVBheW1lbnRzKCkpXG4gICAgaWYgKCFjYW5TaG93QnV0dG9uKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgICBjb25zdCBidXR0b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKVxuICAgIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2lkJywgJ21vbGxpZV9hcHBsZXBheV9idXR0b24nKVxuICAgIGJ1dHRvbi5jbGFzc0xpc3QuYWRkKCdhcHBsZS1wYXktYnV0dG9uJylcbiAgICBidXR0b24uY2xhc3NMaXN0LmFkZCgnYXBwbGUtcGF5LWJ1dHRvbi1ibGFjaycpXG4gICAgYXBwbGVQYXlNZXRob2RFbGVtZW50LmFwcGVuZENoaWxkKGJ1dHRvbilcbiAgICByZXR1cm4gdHJ1ZVxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==
|
public/js/applepayDirectCart.min.js
CHANGED
|
@@ -1 +1,414 @@
|
|
| 1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/******/ (function(modules) { // webpackBootstrap
|
| 2 |
+
/******/ // The module cache
|
| 3 |
+
/******/ var installedModules = {};
|
| 4 |
+
/******/
|
| 5 |
+
/******/ // The require function
|
| 6 |
+
/******/ function __webpack_require__(moduleId) {
|
| 7 |
+
/******/
|
| 8 |
+
/******/ // Check if module is in cache
|
| 9 |
+
/******/ if(installedModules[moduleId]) {
|
| 10 |
+
/******/ return installedModules[moduleId].exports;
|
| 11 |
+
/******/ }
|
| 12 |
+
/******/ // Create a new module (and put it into the cache)
|
| 13 |
+
/******/ var module = installedModules[moduleId] = {
|
| 14 |
+
/******/ i: moduleId,
|
| 15 |
+
/******/ l: false,
|
| 16 |
+
/******/ exports: {}
|
| 17 |
+
/******/ };
|
| 18 |
+
/******/
|
| 19 |
+
/******/ // Execute the module function
|
| 20 |
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
| 21 |
+
/******/
|
| 22 |
+
/******/ // Flag the module as loaded
|
| 23 |
+
/******/ module.l = true;
|
| 24 |
+
/******/
|
| 25 |
+
/******/ // Return the exports of the module
|
| 26 |
+
/******/ return module.exports;
|
| 27 |
+
/******/ }
|
| 28 |
+
/******/
|
| 29 |
+
/******/
|
| 30 |
+
/******/ // expose the modules object (__webpack_modules__)
|
| 31 |
+
/******/ __webpack_require__.m = modules;
|
| 32 |
+
/******/
|
| 33 |
+
/******/ // expose the module cache
|
| 34 |
+
/******/ __webpack_require__.c = installedModules;
|
| 35 |
+
/******/
|
| 36 |
+
/******/ // define getter function for harmony exports
|
| 37 |
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
| 38 |
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
| 39 |
+
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
| 40 |
+
/******/ }
|
| 41 |
+
/******/ };
|
| 42 |
+
/******/
|
| 43 |
+
/******/ // define __esModule on exports
|
| 44 |
+
/******/ __webpack_require__.r = function(exports) {
|
| 45 |
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
| 46 |
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
| 47 |
+
/******/ }
|
| 48 |
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
| 49 |
+
/******/ };
|
| 50 |
+
/******/
|
| 51 |
+
/******/ // create a fake namespace object
|
| 52 |
+
/******/ // mode & 1: value is a module id, require it
|
| 53 |
+
/******/ // mode & 2: merge all properties of value into the ns
|
| 54 |
+
/******/ // mode & 4: return value when already ns object
|
| 55 |
+
/******/ // mode & 8|1: behave like require
|
| 56 |
+
/******/ __webpack_require__.t = function(value, mode) {
|
| 57 |
+
/******/ if(mode & 1) value = __webpack_require__(value);
|
| 58 |
+
/******/ if(mode & 8) return value;
|
| 59 |
+
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
| 60 |
+
/******/ var ns = Object.create(null);
|
| 61 |
+
/******/ __webpack_require__.r(ns);
|
| 62 |
+
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
| 63 |
+
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
| 64 |
+
/******/ return ns;
|
| 65 |
+
/******/ };
|
| 66 |
+
/******/
|
| 67 |
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
| 68 |
+
/******/ __webpack_require__.n = function(module) {
|
| 69 |
+
/******/ var getter = module && module.__esModule ?
|
| 70 |
+
/******/ function getDefault() { return module['default']; } :
|
| 71 |
+
/******/ function getModuleExports() { return module; };
|
| 72 |
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
| 73 |
+
/******/ return getter;
|
| 74 |
+
/******/ };
|
| 75 |
+
/******/
|
| 76 |
+
/******/ // Object.prototype.hasOwnProperty.call
|
| 77 |
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
| 78 |
+
/******/
|
| 79 |
+
/******/ // __webpack_public_path__
|
| 80 |
+
/******/ __webpack_require__.p = "/public/js/";
|
| 81 |
+
/******/
|
| 82 |
+
/******/
|
| 83 |
+
/******/ // Load entry module and return exports
|
| 84 |
+
/******/ return __webpack_require__(__webpack_require__.s = "./resources/js/applepayDirectCart.js");
|
| 85 |
+
/******/ })
|
| 86 |
+
/************************************************************************/
|
| 87 |
+
/******/ ({
|
| 88 |
+
|
| 89 |
+
/***/ "./resources/js/applePayError.js":
|
| 90 |
+
/*!***************************************!*\
|
| 91 |
+
!*** ./resources/js/applePayError.js ***!
|
| 92 |
+
\***************************************/
|
| 93 |
+
/*! exports provided: createAppleErrors */
|
| 94 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 95 |
+
|
| 96 |
+
"use strict";
|
| 97 |
+
__webpack_require__.r(__webpack_exports__);
|
| 98 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createAppleErrors", function() { return createAppleErrors; });
|
| 99 |
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
| 100 |
+
|
| 101 |
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
| 102 |
+
|
| 103 |
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
| 104 |
+
|
| 105 |
+
function createAppleErrors(errors) {
|
| 106 |
+
var errorList = [];
|
| 107 |
+
|
| 108 |
+
var _iterator = _createForOfIteratorHelper(errors),
|
| 109 |
+
_step;
|
| 110 |
+
|
| 111 |
+
try {
|
| 112 |
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
| 113 |
+
var error = _step.value;
|
| 114 |
+
var _error$contactField = error.contactField,
|
| 115 |
+
contactField = _error$contactField === void 0 ? null : _error$contactField,
|
| 116 |
+
_error$code = error.code,
|
| 117 |
+
code = _error$code === void 0 ? null : _error$code,
|
| 118 |
+
_error$message = error.message,
|
| 119 |
+
message = _error$message === void 0 ? null : _error$message;
|
| 120 |
+
var appleError = contactField ? new ApplePayError(code, contactField, message) : new ApplePayError(code);
|
| 121 |
+
errorList.push(appleError);
|
| 122 |
+
}
|
| 123 |
+
} catch (err) {
|
| 124 |
+
_iterator.e(err);
|
| 125 |
+
} finally {
|
| 126 |
+
_iterator.f();
|
| 127 |
+
}
|
| 128 |
+
|
| 129 |
+
return errorList;
|
| 130 |
+
}
|
| 131 |
+
|
| 132 |
+
/***/ }),
|
| 133 |
+
|
| 134 |
+
/***/ "./resources/js/applePayRequest.js":
|
| 135 |
+
/*!*****************************************!*\
|
| 136 |
+
!*** ./resources/js/applePayRequest.js ***!
|
| 137 |
+
\*****************************************/
|
| 138 |
+
/*! exports provided: request */
|
| 139 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 140 |
+
|
| 141 |
+
"use strict";
|
| 142 |
+
__webpack_require__.r(__webpack_exports__);
|
| 143 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "request", function() { return request; });
|
| 144 |
+
var request = function request(countryCode, currencyCode, totalLabel, subtotal) {
|
| 145 |
+
return {
|
| 146 |
+
countryCode: countryCode,
|
| 147 |
+
currencyCode: currencyCode,
|
| 148 |
+
supportedNetworks: ['amex', 'maestro', 'masterCard', 'visa', 'vPay'],
|
| 149 |
+
merchantCapabilities: ['supports3DS'],
|
| 150 |
+
shippingType: 'shipping',
|
| 151 |
+
requiredBillingContactFields: ['postalAddress', 'email'],
|
| 152 |
+
requiredShippingContactFields: ['postalAddress', 'email'],
|
| 153 |
+
total: {
|
| 154 |
+
label: totalLabel,
|
| 155 |
+
amount: subtotal,
|
| 156 |
+
type: 'final'
|
| 157 |
+
}
|
| 158 |
+
};
|
| 159 |
+
};
|
| 160 |
+
|
| 161 |
+
/***/ }),
|
| 162 |
+
|
| 163 |
+
/***/ "./resources/js/applepayDirectCart.js":
|
| 164 |
+
/*!********************************************!*\
|
| 165 |
+
!*** ./resources/js/applepayDirectCart.js ***!
|
| 166 |
+
\********************************************/
|
| 167 |
+
/*! no exports provided */
|
| 168 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 169 |
+
|
| 170 |
+
"use strict";
|
| 171 |
+
__webpack_require__.r(__webpack_exports__);
|
| 172 |
+
/* harmony import */ var _applePayError_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./applePayError.js */ "./resources/js/applePayError.js");
|
| 173 |
+
/* harmony import */ var _applePayRequest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./applePayRequest */ "./resources/js/applePayRequest.js");
|
| 174 |
+
/* harmony import */ var _maybeShowApplePayButton_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./maybeShowApplePayButton.js */ "./resources/js/maybeShowApplePayButton.js");
|
| 175 |
+
|
| 176 |
+
|
| 177 |
+
|
| 178 |
+
|
| 179 |
+
(function (_ref) {
|
| 180 |
+
var _ = _ref._,
|
| 181 |
+
mollieApplePayDirectDataCart = _ref.mollieApplePayDirectDataCart,
|
| 182 |
+
jQuery = _ref.jQuery;
|
| 183 |
+
|
| 184 |
+
if (_.isEmpty(mollieApplePayDirectDataCart)) {
|
| 185 |
+
return;
|
| 186 |
+
}
|
| 187 |
+
|
| 188 |
+
var _mollieApplePayDirect = mollieApplePayDirectDataCart.product,
|
| 189 |
+
_mollieApplePayDirect2 = _mollieApplePayDirect.needShipping,
|
| 190 |
+
needShipping = _mollieApplePayDirect2 === void 0 ? true : _mollieApplePayDirect2,
|
| 191 |
+
subtotal = _mollieApplePayDirect.subtotal,
|
| 192 |
+
_mollieApplePayDirect3 = mollieApplePayDirectDataCart.shop,
|
| 193 |
+
countryCode = _mollieApplePayDirect3.countryCode,
|
| 194 |
+
_mollieApplePayDirect4 = _mollieApplePayDirect3.currencyCode,
|
| 195 |
+
currencyCode = _mollieApplePayDirect4 === void 0 ? 'EUR' : _mollieApplePayDirect4,
|
| 196 |
+
_mollieApplePayDirect5 = _mollieApplePayDirect3.totalLabel,
|
| 197 |
+
totalLabel = _mollieApplePayDirect5 === void 0 ? '' : _mollieApplePayDirect5,
|
| 198 |
+
ajaxUrl = mollieApplePayDirectDataCart.ajaxUrl;
|
| 199 |
+
|
| 200 |
+
if (!subtotal || !countryCode || !ajaxUrl) {
|
| 201 |
+
return;
|
| 202 |
+
}
|
| 203 |
+
|
| 204 |
+
var nonce = document.getElementById("woocommerce-process-checkout-nonce").value;
|
| 205 |
+
var updatedContactInfo = [];
|
| 206 |
+
var selectedShippingMethod = [];
|
| 207 |
+
var redirectionUrl = '';
|
| 208 |
+
|
| 209 |
+
var applePaySession = function applePaySession() {
|
| 210 |
+
var session = new ApplePaySession(3, Object(_applePayRequest__WEBPACK_IMPORTED_MODULE_1__["request"])(countryCode, currencyCode, totalLabel, subtotal));
|
| 211 |
+
session.begin();
|
| 212 |
+
|
| 213 |
+
session.onshippingmethodselected = function (event) {
|
| 214 |
+
var _this = this;
|
| 215 |
+
|
| 216 |
+
jQuery.ajax({
|
| 217 |
+
url: ajaxUrl,
|
| 218 |
+
method: 'POST',
|
| 219 |
+
data: {
|
| 220 |
+
action: 'mollie_apple_pay_update_shipping_method',
|
| 221 |
+
shippingMethod: event.shippingMethod,
|
| 222 |
+
callerPage: 'cart',
|
| 223 |
+
simplifiedContact: updatedContactInfo,
|
| 224 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 225 |
+
},
|
| 226 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 227 |
+
success: function success(applePayShippingMethodUpdate, textStatus, jqXHR) {
|
| 228 |
+
var response = applePayShippingMethodUpdate.data;
|
| 229 |
+
selectedShippingMethod = event.shippingMethod;
|
| 230 |
+
|
| 231 |
+
if (applePayShippingMethodUpdate.success === false) {
|
| 232 |
+
response.errors = Object(_applePayError_js__WEBPACK_IMPORTED_MODULE_0__["createAppleErrors"])(response.errors);
|
| 233 |
+
}
|
| 234 |
+
|
| 235 |
+
_this.completeShippingMethodSelection(response);
|
| 236 |
+
},
|
| 237 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 238 |
+
console.warn(textStatus, errorThrown);
|
| 239 |
+
session.abort();
|
| 240 |
+
}
|
| 241 |
+
});
|
| 242 |
+
};
|
| 243 |
+
|
| 244 |
+
session.onshippingcontactselected = function (event) {
|
| 245 |
+
var _this2 = this;
|
| 246 |
+
|
| 247 |
+
jQuery.ajax({
|
| 248 |
+
url: ajaxUrl,
|
| 249 |
+
method: 'POST',
|
| 250 |
+
data: {
|
| 251 |
+
action: 'mollie_apple_pay_update_shipping_contact',
|
| 252 |
+
simplifiedContact: event.shippingContact,
|
| 253 |
+
callerPage: 'cart',
|
| 254 |
+
needShipping: needShipping,
|
| 255 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 256 |
+
},
|
| 257 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 258 |
+
success: function success(applePayShippingContactUpdate, textStatus, jqXHR) {
|
| 259 |
+
var response = applePayShippingContactUpdate.data;
|
| 260 |
+
updatedContactInfo = event.shippingContact;
|
| 261 |
+
|
| 262 |
+
if (applePayShippingContactUpdate.success === false) {
|
| 263 |
+
response.errors = Object(_applePayError_js__WEBPACK_IMPORTED_MODULE_0__["createAppleErrors"])(response.errors);
|
| 264 |
+
}
|
| 265 |
+
|
| 266 |
+
if (response.newShippingMethods) {
|
| 267 |
+
selectedShippingMethod = response.newShippingMethods[0];
|
| 268 |
+
}
|
| 269 |
+
|
| 270 |
+
_this2.completeShippingContactSelection(response);
|
| 271 |
+
},
|
| 272 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 273 |
+
console.warn(textStatus, errorThrown);
|
| 274 |
+
session.abort();
|
| 275 |
+
}
|
| 276 |
+
});
|
| 277 |
+
};
|
| 278 |
+
|
| 279 |
+
session.onvalidatemerchant = function (applePayValidateMerchantEvent) {
|
| 280 |
+
jQuery.ajax({
|
| 281 |
+
url: ajaxUrl,
|
| 282 |
+
method: 'POST',
|
| 283 |
+
data: {
|
| 284 |
+
action: 'mollie_apple_pay_validation',
|
| 285 |
+
validationUrl: applePayValidateMerchantEvent.validationURL,
|
| 286 |
+
'woocommerce-process-checkout-nonce': nonce
|
| 287 |
+
},
|
| 288 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 289 |
+
success: function success(merchantSession, textStatus, jqXHR) {
|
| 290 |
+
if (merchantSession.success === true) {
|
| 291 |
+
session.completeMerchantValidation(JSON.parse(merchantSession.data));
|
| 292 |
+
} else {
|
| 293 |
+
console.warn(merchantSession.data);
|
| 294 |
+
session.abort();
|
| 295 |
+
}
|
| 296 |
+
},
|
| 297 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 298 |
+
console.warn(textStatus, errorThrown);
|
| 299 |
+
session.abort();
|
| 300 |
+
}
|
| 301 |
+
});
|
| 302 |
+
};
|
| 303 |
+
|
| 304 |
+
session.onpaymentauthorized = function (ApplePayPayment) {
|
| 305 |
+
var _ApplePayPayment$paym = ApplePayPayment.payment,
|
| 306 |
+
billingContact = _ApplePayPayment$paym.billingContact,
|
| 307 |
+
shippingContact = _ApplePayPayment$paym.shippingContact;
|
| 308 |
+
jQuery.ajax({
|
| 309 |
+
url: ajaxUrl,
|
| 310 |
+
method: 'POST',
|
| 311 |
+
data: {
|
| 312 |
+
action: 'mollie_apple_pay_create_order_cart',
|
| 313 |
+
shippingContact: ApplePayPayment.payment.shippingContact,
|
| 314 |
+
billingContact: ApplePayPayment.payment.billingContact,
|
| 315 |
+
token: ApplePayPayment.payment.token,
|
| 316 |
+
shippingMethod: selectedShippingMethod,
|
| 317 |
+
'mollie-payments-for-woocommerce_issuer_applepay': 'applepay',
|
| 318 |
+
'woocommerce-process-checkout-nonce': nonce,
|
| 319 |
+
'billing_first_name': billingContact.givenName || '',
|
| 320 |
+
'billing_last_name': billingContact.familyName || '',
|
| 321 |
+
'billing_company': '',
|
| 322 |
+
'billing_country': billingContact.countryCode || '',
|
| 323 |
+
'billing_address_1': billingContact.addressLines[0] || '',
|
| 324 |
+
'billing_address_2': billingContact.addressLines[1] || '',
|
| 325 |
+
'billing_postcode': billingContact.postalCode || '',
|
| 326 |
+
'billing_city': billingContact.locality || '',
|
| 327 |
+
'billing_state': billingContact.administrativeArea || '',
|
| 328 |
+
'billing_phone': billingContact.phoneNumber || '000000000000',
|
| 329 |
+
'billing_email': shippingContact.emailAddress || '',
|
| 330 |
+
'shipping_first_name': shippingContact.givenName || '',
|
| 331 |
+
'shipping_last_name': shippingContact.familyName || '',
|
| 332 |
+
'shipping_company': '',
|
| 333 |
+
'shipping_country': shippingContact.countryCode || '',
|
| 334 |
+
'shipping_address_1': shippingContact.addressLines[0] || '',
|
| 335 |
+
'shipping_address_2': shippingContact.addressLines[1] || '',
|
| 336 |
+
'shipping_postcode': shippingContact.postalCode || '',
|
| 337 |
+
'shipping_city': shippingContact.locality || '',
|
| 338 |
+
'shipping_state': shippingContact.administrativeArea || '',
|
| 339 |
+
'shipping_phone': shippingContact.phoneNumber || '000000000000',
|
| 340 |
+
'shipping_email': shippingContact.emailAddress || '',
|
| 341 |
+
'order_comments': '',
|
| 342 |
+
'payment_method': 'mollie_wc_gateway_applepay',
|
| 343 |
+
'_wp_http_referer': '/?wc-ajax=update_order_review'
|
| 344 |
+
},
|
| 345 |
+
complete: function complete(jqXHR, textStatus) {},
|
| 346 |
+
success: function success(authorizationResult, textStatus, jqXHR) {
|
| 347 |
+
var result = authorizationResult.data;
|
| 348 |
+
|
| 349 |
+
if (authorizationResult.success === true) {
|
| 350 |
+
redirectionUrl = result['returnUrl'];
|
| 351 |
+
session.completePayment(result['responseToApple']);
|
| 352 |
+
window.location.href = redirectionUrl;
|
| 353 |
+
} else {
|
| 354 |
+
result.errors = Object(_applePayError_js__WEBPACK_IMPORTED_MODULE_0__["createAppleErrors"])(result.errors);
|
| 355 |
+
session.completePayment(result);
|
| 356 |
+
}
|
| 357 |
+
},
|
| 358 |
+
error: function error(jqXHR, textStatus, errorThrown) {
|
| 359 |
+
console.warn(textStatus, errorThrown);
|
| 360 |
+
session.abort();
|
| 361 |
+
}
|
| 362 |
+
});
|
| 363 |
+
};
|
| 364 |
+
};
|
| 365 |
+
|
| 366 |
+
if (!Object(_maybeShowApplePayButton_js__WEBPACK_IMPORTED_MODULE_2__["maybeShowButton"])()) {
|
| 367 |
+
return;
|
| 368 |
+
}
|
| 369 |
+
|
| 370 |
+
jQuery(document.body).on('updated_cart_totals', function (event) {
|
| 371 |
+
Object(_maybeShowApplePayButton_js__WEBPACK_IMPORTED_MODULE_2__["maybeShowButton"])();
|
| 372 |
+
document.querySelector('#mollie_applepay_button').addEventListener('click', function (evt) {
|
| 373 |
+
applePaySession();
|
| 374 |
+
});
|
| 375 |
+
});
|
| 376 |
+
document.querySelector('#mollie_applepay_button').addEventListener('click', function (evt) {
|
| 377 |
+
applePaySession();
|
| 378 |
+
});
|
| 379 |
+
})(window);
|
| 380 |
+
|
| 381 |
+
/***/ }),
|
| 382 |
+
|
| 383 |
+
/***/ "./resources/js/maybeShowApplePayButton.js":
|
| 384 |
+
/*!*************************************************!*\
|
| 385 |
+
!*** ./resources/js/maybeShowApplePayButton.js ***!
|
| 386 |
+
\*************************************************/
|
| 387 |
+
/*! exports provided: maybeShowButton */
|
| 388 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
| 389 |
+
|
| 390 |
+
"use strict";
|
| 391 |
+
__webpack_require__.r(__webpack_exports__);
|
| 392 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "maybeShowButton", function() { return maybeShowButton; });
|
| 393 |
+
var maybeShowButton = function maybeShowButton() {
|
| 394 |
+
var _window = window,
|
| 395 |
+
ApplePaySession = _window.ApplePaySession;
|
| 396 |
+
var applePayMethodElement = document.querySelector('#mollie-applepayDirect-button');
|
| 397 |
+
var canShowButton = applePayMethodElement && ApplePaySession && ApplePaySession.canMakePayments();
|
| 398 |
+
|
| 399 |
+
if (!canShowButton) {
|
| 400 |
+
return false;
|
| 401 |
+
}
|
| 402 |
+
|
| 403 |
+
var button = document.createElement('button');
|
| 404 |
+
button.setAttribute('id', 'mollie_applepay_button');
|
| 405 |
+
button.classList.add('apple-pay-button');
|
| 406 |
+
button.classList.add('apple-pay-button-black');
|
| 407 |
+
applePayMethodElement.appendChild(button);
|
| 408 |
+
return true;
|
| 409 |
+
};
|
| 410 |
+
|
| 411 |
+
/***/ })
|
| 412 |
+
|
| 413 |
+
/******/ });
|
| 414 |
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2FwcGxlUGF5RXJyb3IuanMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2FwcGxlUGF5UmVxdWVzdC5qcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvYXBwbGVwYXlEaXJlY3RDYXJ0LmpzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9tYXliZVNob3dBcHBsZVBheUJ1dHRvbi5qcyJdLCJuYW1lcyI6WyJjcmVhdGVBcHBsZUVycm9ycyIsImVycm9ycyIsImVycm9yTGlzdCIsImVycm9yIiwiY29udGFjdEZpZWxkIiwiY29kZSIsIm1lc3NhZ2UiLCJhcHBsZUVycm9yIiwiQXBwbGVQYXlFcnJvciIsInB1c2giLCJyZXF1ZXN0IiwiY291bnRyeUNvZGUiLCJjdXJyZW5jeUNvZGUiLCJ0b3RhbExhYmVsIiwic3VidG90YWwiLCJzdXBwb3J0ZWROZXR3b3JrcyIsIm1lcmNoYW50Q2FwYWJpbGl0aWVzIiwic2hpcHBpbmdUeXBlIiwicmVxdWlyZWRCaWxsaW5nQ29udGFjdEZpZWxkcyIsInJlcXVpcmVkU2hpcHBpbmdDb250YWN0RmllbGRzIiwidG90YWwiLCJsYWJlbCIsImFtb3VudCIsInR5cGUiLCJfIiwibW9sbGllQXBwbGVQYXlEaXJlY3REYXRhQ2FydCIsImpRdWVyeSIsImlzRW1wdHkiLCJwcm9kdWN0IiwibmVlZFNoaXBwaW5nIiwic2hvcCIsImFqYXhVcmwiLCJub25jZSIsImRvY3VtZW50IiwiZ2V0RWxlbWVudEJ5SWQiLCJ2YWx1ZSIsInVwZGF0ZWRDb250YWN0SW5mbyIsInNlbGVjdGVkU2hpcHBpbmdNZXRob2QiLCJyZWRpcmVjdGlvblVybCIsImFwcGxlUGF5U2Vzc2lvbiIsInNlc3Npb24iLCJBcHBsZVBheVNlc3Npb24iLCJiZWdpbiIsIm9uc2hpcHBpbmdtZXRob2RzZWxlY3RlZCIsImV2ZW50IiwiYWpheCIsInVybCIsIm1ldGhvZCIsImRhdGEiLCJhY3Rpb24iLCJzaGlwcGluZ01ldGhvZCIsImNhbGxlclBhZ2UiLCJzaW1wbGlmaWVkQ29udGFjdCIsImNvbXBsZXRlIiwianFYSFIiLCJ0ZXh0U3RhdHVzIiwic3VjY2VzcyIsImFwcGxlUGF5U2hpcHBpbmdNZXRob2RVcGRhdGUiLCJyZXNwb25zZSIsImNvbXBsZXRlU2hpcHBpbmdNZXRob2RTZWxlY3Rpb24iLCJlcnJvclRocm93biIsImNvbnNvbGUiLCJ3YXJuIiwiYWJvcnQiLCJvbnNoaXBwaW5nY29udGFjdHNlbGVjdGVkIiwic2hpcHBpbmdDb250YWN0IiwiYXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RVcGRhdGUiLCJuZXdTaGlwcGluZ01ldGhvZHMiLCJjb21wbGV0ZVNoaXBwaW5nQ29udGFjdFNlbGVjdGlvbiIsIm9udmFsaWRhdGVtZXJjaGFudCIsImFwcGxlUGF5VmFsaWRhdGVNZXJjaGFudEV2ZW50IiwidmFsaWRhdGlvblVybCIsInZhbGlkYXRpb25VUkwiLCJtZXJjaGFudFNlc3Npb24iLCJjb21wbGV0ZU1lcmNoYW50VmFsaWRhdGlvbiIsIkpTT04iLCJwYXJzZSIsIm9ucGF5bWVudGF1dGhvcml6ZWQiLCJBcHBsZVBheVBheW1lbnQiLCJwYXltZW50IiwiYmlsbGluZ0NvbnRhY3QiLCJ0b2tlbiIsImdpdmVuTmFtZSIsImZhbWlseU5hbWUiLCJhZGRyZXNzTGluZXMiLCJwb3N0YWxDb2RlIiwibG9jYWxpdHkiLCJhZG1pbmlzdHJhdGl2ZUFyZWEiLCJwaG9uZU51bWJlciIsImVtYWlsQWRkcmVzcyIsImF1dGhvcml6YXRpb25SZXN1bHQiLCJyZXN1bHQiLCJjb21wbGV0ZVBheW1lbnQiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsImhyZWYiLCJtYXliZVNob3dCdXR0b24iLCJib2R5Iiwib24iLCJxdWVyeVNlbGVjdG9yIiwiYWRkRXZlbnRMaXN0ZW5lciIsImV2dCIsImFwcGxlUGF5TWV0aG9kRWxlbWVudCIsImNhblNob3dCdXR0b24iLCJjYW5NYWtlUGF5bWVudHMiLCJidXR0b24iLCJjcmVhdGVFbGVtZW50Iiwic2V0QXR0cmlidXRlIiwiY2xhc3NMaXN0IiwiYWRkIiwiYXBwZW5kQ2hpbGQiXSwibWFwcGluZ3MiOiI7UUFBQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTs7O1FBR0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLDBDQUEwQyxnQ0FBZ0M7UUFDMUU7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSx3REFBd0Qsa0JBQWtCO1FBQzFFO1FBQ0EsaURBQWlELGNBQWM7UUFDL0Q7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLHlDQUF5QyxpQ0FBaUM7UUFDMUUsZ0hBQWdILG1CQUFtQixFQUFFO1FBQ3JJO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMkJBQTJCLDBCQUEwQixFQUFFO1FBQ3ZELGlDQUFpQyxlQUFlO1FBQ2hEO1FBQ0E7UUFDQTs7UUFFQTtRQUNBLHNEQUFzRCwrREFBK0Q7O1FBRXJIO1FBQ0E7OztRQUdBO1FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ2xGTyxTQUFTQSxpQkFBVCxDQUEyQkMsTUFBM0IsRUFBbUM7RUFDdEMsSUFBTUMsU0FBUyxHQUFHLEVBQWxCOztFQURzQywyQ0FFbEJELE1BRmtCO0VBQUE7O0VBQUE7SUFFdEMsb0RBQTRCO01BQUEsSUFBakJFLEtBQWlCO01BQ3hCLDBCQUEyREEsS0FBM0QsQ0FBT0MsWUFBUDtNQUFBLElBQU9BLFlBQVAsb0NBQXNCLElBQXRCO01BQUEsa0JBQTJERCxLQUEzRCxDQUE0QkUsSUFBNUI7TUFBQSxJQUE0QkEsSUFBNUIsNEJBQW1DLElBQW5DO01BQUEscUJBQTJERixLQUEzRCxDQUF5Q0csT0FBekM7TUFBQSxJQUF5Q0EsT0FBekMsK0JBQW1ELElB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QUNILENBZk0sQyIsImZpbGUiOiJhcHBsZXBheURpcmVjdENhcnQubWluLmpzIiwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZ2V0dGVyIH0pO1xuIFx0XHR9XG4gXHR9O1xuXG4gXHQvLyBkZWZpbmUgX19lc01vZHVsZSBvbiBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIgPSBmdW5jdGlvbihleHBvcnRzKSB7XG4gXHRcdGlmKHR5cGVvZiBTeW1ib2wgIT09ICd1bmRlZmluZWQnICYmIFN5bWJvbC50b1N0cmluZ1RhZykge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuIFx0XHR9XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gXHR9O1xuXG4gXHQvLyBjcmVhdGUgYSBmYWtlIG5hbWVzcGFjZSBvYmplY3RcbiBcdC8vIG1vZGUgJiAxOiB2YWx1ZSBpcyBhIG1vZHVsZSBpZCwgcmVxdWlyZSBpdFxuIFx0Ly8gbW9kZSAmIDI6IG1lcmdlIGFsbCBwcm9wZXJ0aWVzIG9mIHZhbHVlIGludG8gdGhlIG5zXG4gXHQvLyBtb2RlICYgNDogcmV0dXJuIHZhbHVlIHdoZW4gYWxyZWFkeSBucyBvYmplY3RcbiBcdC8vIG1vZGUgJiA4fDE6IGJlaGF2ZSBsaWtlIHJlcXVpcmVcbiBcdF9fd2VicGFja19yZXF1aXJlX18udCA9IGZ1bmN0aW9uKHZhbHVlLCBtb2RlKSB7XG4gXHRcdGlmKG1vZGUgJiAxKSB2YWx1ZSA9IF9fd2VicGFja19yZXF1aXJlX18odmFsdWUpO1xuIFx0XHRpZihtb2RlICYgOCkgcmV0dXJuIHZhbHVlO1xuIFx0XHRpZigobW9kZSAmIDQpICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUgJiYgdmFsdWUuX19lc01vZHVsZSkgcmV0dXJuIHZhbHVlO1xuIFx0XHR2YXIgbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIobnMpO1xuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkobnMsICdkZWZhdWx0JywgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdmFsdWUgfSk7XG4gXHRcdGlmKG1vZGUgJiAyICYmIHR5cGVvZiB2YWx1ZSAhPSAnc3RyaW5nJykgZm9yKHZhciBrZXkgaW4gdmFsdWUpIF9fd2VicGFja19yZXF1aXJlX18uZChucywga2V5LCBmdW5jdGlvbihrZXkpIHsgcmV0dXJuIHZhbHVlW2tleV07IH0uYmluZChudWxsLCBrZXkpKTtcbiBcdFx0cmV0dXJuIG5zO1xuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCIvcHVibGljL2pzL1wiO1xuXG5cbiBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gXCIuL3Jlc291cmNlcy9qcy9hcHBsZXBheURpcmVjdENhcnQuanNcIik7XG4iLCJleHBvcnQgZnVuY3Rpb24gY3JlYXRlQXBwbGVFcnJvcnMoZXJyb3JzKSB7XG4gICAgY29uc3QgZXJyb3JMaXN0ID0gW11cbiAgICBmb3IgKGNvbnN0IGVycm9yIG9mIGVycm9ycykge1xuICAgICAgICBjb25zdCB7Y29udGFjdEZpZWxkID0gbnVsbCwgY29kZSA9IG51bGwsIG1lc3NhZ2UgPSBudWxsfSA9IGVycm9yXG4gICAgICAgIGNvbnN0IGFwcGxlRXJyb3IgPSBjb250YWN0RmllbGQgPyBuZXcgQXBwbGVQYXlFcnJvcihjb2RlLCBjb250YWN0RmllbGQsIG1lc3NhZ2UpIDogbmV3IEFwcGxlUGF5RXJyb3IoY29kZSlcbiAgICAgICAgZXJyb3JMaXN0LnB1c2goYXBwbGVFcnJvcilcbiAgICB9XG5cbiAgICByZXR1cm4gZXJyb3JMaXN0XG59XG4iLCJleHBvcnQgY29uc3QgcmVxdWVzdCA9IChjb3VudHJ5Q29kZSwgY3VycmVuY3lDb2RlLCB0b3RhbExhYmVsLCBzdWJ0b3RhbCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAgIGNvdW50cnlDb2RlOiBjb3VudHJ5Q29kZSxcbiAgICAgICAgY3VycmVuY3lDb2RlOiBjdXJyZW5jeUNvZGUsXG4gICAgICAgIHN1cHBvcnRlZE5ldHdvcmtzOiBbJ2FtZXgnLCAnbWFlc3RybycsICdtYXN0ZXJDYXJkJywgJ3Zpc2EnLCAndlBheSddLFxuICAgICAgICBtZXJjaGFudENhcGFiaWxpdGllczogWydzdXBwb3J0czNEUyddLFxuICAgICAgICBzaGlwcGluZ1R5cGU6ICdzaGlwcGluZycsXG4gICAgICAgIHJlcXVpcmVkQmlsbGluZ0NvbnRhY3RGaWVsZHM6IFtcbiAgICAgICAgICAgICdwb3N0YWxBZGRyZXNzJyxcbiAgICAgICAgICAgICdlbWFpbCdcbiAgICAgICAgXSxcbiAgICAgICAgcmVxdWlyZWRTaGlwcGluZ0NvbnRhY3RGaWVsZHM6IFtcbiAgICAgICAgICAgICdwb3N0YWxBZGRyZXNzJyxcbiAgICAgICAgICAgICdlbWFpbCdcbiAgICAgICAgXSxcbiAgICAgICAgdG90YWw6IHtcbiAgICAgICAgICAgIGxhYmVsOiB0b3RhbExhYmVsLFxuICAgICAgICAgICAgYW1vdW50OiBzdWJ0b3RhbCxcbiAgICAgICAgICAgIHR5cGU6ICdmaW5hbCdcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImltcG9ydCB7Y3JlYXRlQXBwbGVFcnJvcnN9IGZyb20gJy4vYXBwbGVQYXlFcnJvci5qcyc7XG5pbXBvcnQge3JlcXVlc3R9IGZyb20gXCIuL2FwcGxlUGF5UmVxdWVzdFwiO1xuaW1wb3J0IHttYXliZVNob3dCdXR0b259IGZyb20gJy4vbWF5YmVTaG93QXBwbGVQYXlCdXR0b24uanMnO1xuXG4oXG4gICAgZnVuY3Rpb24gKHtfLCBtb2xsaWVBcHBsZVBheURpcmVjdERhdGFDYXJ0LCBqUXVlcnl9KSB7XG4gICAgICAgIGlmIChfLmlzRW1wdHkobW9sbGllQXBwbGVQYXlEaXJlY3REYXRhQ2FydCkpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHtwcm9kdWN0OiB7bmVlZFNoaXBwaW5nID0gdHJ1ZSwgc3VidG90YWx9LCBzaG9wOiB7Y291bnRyeUNvZGUsIGN1cnJlbmN5Q29kZSA9ICdFVVInLCB0b3RhbExhYmVsID0gJyd9LCBhamF4VXJsfSA9IG1vbGxpZUFwcGxlUGF5RGlyZWN0RGF0YUNhcnRcblxuICAgICAgICBpZiAoIXN1YnRvdGFsIHx8ICFjb3VudHJ5Q29kZSB8fCAhYWpheFVybCkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBub25jZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwid29vY29tbWVyY2UtcHJvY2Vzcy1jaGVja291dC1ub25jZVwiKS52YWx1ZVxuXG4gICAgICAgIGxldCB1cGRhdGVkQ29udGFjdEluZm8gPSBbXVxuICAgICAgICBsZXQgc2VsZWN0ZWRTaGlwcGluZ01ldGhvZCA9IFtdXG4gICAgICAgIGxldCByZWRpcmVjdGlvblVybCA9ICcnXG4gICAgICAgIGxldCBhcHBsZVBheVNlc3Npb24gPSAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzZXNzaW9uID0gbmV3IEFwcGxlUGF5U2Vzc2lvbigzLCByZXF1ZXN0KGNvdW50cnlDb2RlLCBjdXJyZW5jeUNvZGUsIHRvdGFsTGFiZWwsIHN1YnRvdGFsKSlcbiAgICAgICAgICAgIHNlc3Npb24uYmVnaW4oKVxuICAgICAgICAgICAgc2Vzc2lvbi5vbnNoaXBwaW5nbWV0aG9kc2VsZWN0ZWQgPSBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICBqUXVlcnkuYWpheCh7XG4gICAgICAgICAgICAgICAgICAgIHVybDogYWpheFVybCxcbiAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogJ21vbGxpZV9hcHBsZV9wYXlfdXBkYXRlX3NoaXBwaW5nX21ldGhvZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBzaGlwcGluZ01ldGhvZDogZXZlbnQuc2hpcHBpbmdNZXRob2QsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYWxsZXJQYWdlOiAnY2FydCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBzaW1wbGlmaWVkQ29udGFjdDogdXBkYXRlZENvbnRhY3RJbmZvLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3dvb2NvbW1lcmNlLXByb2Nlc3MtY2hlY2tvdXQtbm9uY2UnOiBub25jZSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgY29tcGxldGU6IChqcVhIUiwgdGV4dFN0YXR1cykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiAoYXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZSwgdGV4dFN0YXR1cywganFYSFIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXNwb25zZSA9IGFwcGxlUGF5U2hpcHBpbmdNZXRob2RVcGRhdGUuZGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRTaGlwcGluZ01ldGhvZCA9IGV2ZW50LnNoaXBwaW5nTWV0aG9kXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoYXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0ZS5zdWNjZXNzID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLmVycm9ycyA9IGNyZWF0ZUFwcGxlRXJyb3JzKHJlc3BvbnNlLmVycm9ycylcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGxldGVTaGlwcGluZ01ldGhvZFNlbGVjdGlvbihyZXNwb25zZSlcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3I6IChqcVhIUiwgdGV4dFN0YXR1cywgZXJyb3JUaHJvd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2Fybih0ZXh0U3RhdHVzLCBlcnJvclRocm93bilcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uYWJvcnQoKVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZXNzaW9uLm9uc2hpcHBpbmdjb250YWN0c2VsZWN0ZWQgPSBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICBqUXVlcnkuYWpheCh7XG4gICAgICAgICAgICAgICAgICAgIHVybDogYWpheFVybCxcbiAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogJ21vbGxpZV9hcHBsZV9wYXlfdXBkYXRlX3NoaXBwaW5nX2NvbnRhY3QnLFxuICAgICAgICAgICAgICAgICAgICAgICAgc2ltcGxpZmllZENvbnRhY3Q6IGV2ZW50LnNoaXBwaW5nQ29udGFjdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxlclBhZ2U6ICdjYXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5lZWRTaGlwcGluZzogbmVlZFNoaXBwaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3dvb2NvbW1lcmNlLXByb2Nlc3MtY2hlY2tvdXQtbm9uY2UnOiBub25jZSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgY29tcGxldGU6IChqcVhIUiwgdGV4dFN0YXR1cykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiAoYXBwbGVQYXlTaGlwcGluZ0NvbnRhY3RVcGRhdGUsIHRleHRTdGF0dXMsIGpxWEhSKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgcmVzcG9uc2UgPSBhcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZS5kYXRhXG4gICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVkQ29udGFjdEluZm8gPSBldmVudC5zaGlwcGluZ0NvbnRhY3RcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhcHBsZVBheVNoaXBwaW5nQ29udGFjdFVwZGF0ZS5zdWNjZXNzID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlLmVycm9ycyA9IGNyZWF0ZUFwcGxlRXJyb3JzKHJlc3BvbnNlLmVycm9ycylcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5uZXdTaGlwcGluZ01ldGhvZHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZFNoaXBwaW5nTWV0aG9kID0gcmVzcG9uc2UubmV3U2hpcHBpbmdNZXRob2RzWzBdXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbXBsZXRlU2hpcHBpbmdDb250YWN0U2VsZWN0aW9uKHJlc3BvbnNlKVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBlcnJvcjogKGpxWEhSLCB0ZXh0U3RhdHVzLCBlcnJvclRocm93bikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKHRleHRTdGF0dXMsIGVycm9yVGhyb3duKVxuICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbi5hYm9ydCgpXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNlc3Npb24ub252YWxpZGF0ZW1lcmNoYW50ID0gKGFwcGxlUGF5VmFsaWRhdGVNZXJjaGFudEV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgalF1ZXJ5LmFqYXgoe1xuICAgICAgICAgICAgICAgICAgICB1cmw6IGFqYXhVcmwsXG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246ICdtb2xsaWVfYXBwbGVfcGF5X3ZhbGlkYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGlvblVybDogYXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQudmFsaWRhdGlvblVSTCxcbiAgICAgICAgICAgICAgICAgICAgICAgICd3b29jb21tZXJjZS1wcm9jZXNzLWNoZWNrb3V0LW5vbmNlJzogbm9uY2UsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGNvbXBsZXRlOiAoanFYSFIsIHRleHRTdGF0dXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgc3VjY2VzczogKG1lcmNoYW50U2Vzc2lvbiwgdGV4dFN0YXR1cywganFYSFIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtZXJjaGFudFNlc3Npb24uc3VjY2VzcyA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uY29tcGxldGVNZXJjaGFudFZhbGlkYXRpb24oSlNPTi5wYXJzZShtZXJjaGFudFNlc3Npb24uZGF0YSkpXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihtZXJjaGFudFNlc3Npb24uZGF0YSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uLmFib3J0KClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3I6IChqcVhIUiwgdGV4dFN0YXR1cywgZXJyb3JUaHJvd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2Fybih0ZXh0U3RhdHVzLCBlcnJvclRocm93bilcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uYWJvcnQoKVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZXNzaW9uLm9ucGF5bWVudGF1dGhvcml6ZWQgPSAoQXBwbGVQYXlQYXltZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qge2JpbGxpbmdDb250YWN0LCBzaGlwcGluZ0NvbnRhY3QgfSA9IEFwcGxlUGF5UGF5bWVudC5wYXltZW50XG5cbiAgICAgICAgICAgICAgICBqUXVlcnkuYWpheCh7XG4gICAgICAgICAgICAgICAgICAgIHVybDogYWpheFVybCxcbiAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogJ21vbGxpZV9hcHBsZV9wYXlfY3JlYXRlX29yZGVyX2NhcnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgc2hpcHBpbmdDb250YWN0OiBBcHBsZVBheVBheW1lbnQucGF5bWVudC5zaGlwcGluZ0NvbnRhY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICBiaWxsaW5nQ29udGFjdDogQXBwbGVQYXlQYXltZW50LnBheW1lbnQuYmlsbGluZ0NvbnRhY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICB0b2tlbjogQXBwbGVQYXlQYXltZW50LnBheW1lbnQudG9rZW4sXG4gICAgICAgICAgICAgICAgICAgICAgICBzaGlwcGluZ01ldGhvZDogc2VsZWN0ZWRTaGlwcGluZ01ldGhvZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICdtb2xsaWUtcGF5bWVudHMtZm9yLXdvb2NvbW1lcmNlX2lzc3Vlcl9hcHBsZXBheSc6ICdhcHBsZXBheScsXG4gICAgICAgICAgICAgICAgICAgICAgICAnd29vY29tbWVyY2UtcHJvY2Vzcy1jaGVja291dC1ub25jZSc6IG5vbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ2JpbGxpbmdfZmlyc3RfbmFtZSc6IGJpbGxpbmdDb250YWN0LmdpdmVuTmFtZSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX2xhc3RfbmFtZSc6IGJpbGxpbmdDb250YWN0LmZhbWlseU5hbWUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19jb21wYW55JzogJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19jb3VudHJ5JzogYmlsbGluZ0NvbnRhY3QuY291bnRyeUNvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19hZGRyZXNzXzEnOiBiaWxsaW5nQ29udGFjdC5hZGRyZXNzTGluZXNbMF0gfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19hZGRyZXNzXzInOiBiaWxsaW5nQ29udGFjdC5hZGRyZXNzTGluZXNbMV0gfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19wb3N0Y29kZSc6IGJpbGxpbmdDb250YWN0LnBvc3RhbENvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19jaXR5JzogYmlsbGluZ0NvbnRhY3QubG9jYWxpdHkgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19zdGF0ZSc6IGJpbGxpbmdDb250YWN0LmFkbWluaXN0cmF0aXZlQXJlYSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdiaWxsaW5nX3Bob25lJzogYmlsbGluZ0NvbnRhY3QucGhvbmVOdW1iZXIgfHwgJzAwMDAwMDAwMDAwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAnYmlsbGluZ19lbWFpbCc6IHNoaXBwaW5nQ29udGFjdC5lbWFpbEFkZHJlc3MgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfZmlyc3RfbmFtZSc6IHNoaXBwaW5nQ29udGFjdC5naXZlbk5hbWUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfbGFzdF9uYW1lJzogc2hpcHBpbmdDb250YWN0LmZhbWlseU5hbWUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfY29tcGFueSc6ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3NoaXBwaW5nX2NvdW50cnknOiBzaGlwcGluZ0NvbnRhY3QuY291bnRyeUNvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfYWRkcmVzc18xJzogc2hpcHBpbmdDb250YWN0LmFkZHJlc3NMaW5lc1swXSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdzaGlwcGluZ19hZGRyZXNzXzInOiBzaGlwcGluZ0NvbnRhY3QuYWRkcmVzc0xpbmVzWzFdIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3NoaXBwaW5nX3Bvc3Rjb2RlJzogc2hpcHBpbmdDb250YWN0LnBvc3RhbENvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfY2l0eSc6IHNoaXBwaW5nQ29udGFjdC5sb2NhbGl0eSB8fCAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdzaGlwcGluZ19zdGF0ZSc6IHNoaXBwaW5nQ29udGFjdC5hZG1pbmlzdHJhdGl2ZUFyZWEgfHwgJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfcGhvbmUnOiBzaGlwcGluZ0NvbnRhY3QucGhvbmVOdW1iZXIgfHwgJzAwMDAwMDAwMDAwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAnc2hpcHBpbmdfZW1haWwnOiBzaGlwcGluZ0NvbnRhY3QuZW1haWxBZGRyZXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ29yZGVyX2NvbW1lbnRzJyA6ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3BheW1lbnRfbWV0aG9kJyA6ICdtb2xsaWVfd2NfZ2F0ZXdheV9hcHBsZXBheScsXG4gICAgICAgICAgICAgICAgICAgICAgICAnX3dwX2h0dHBfcmVmZXJlcicgOiAnLz93Yy1hamF4PXVwZGF0ZV9vcmRlcl9yZXZpZXcnXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGNvbXBsZXRlOiAoanFYSFIsIHRleHRTdGF0dXMpID0+IHtcblxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiAoYXV0aG9yaXphdGlvblJlc3VsdCwgdGV4dFN0YXR1cywganFYSFIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSBhdXRob3JpemF0aW9uUmVzdWx0LmRhdGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhdXRob3JpemF0aW9uUmVzdWx0LnN1Y2Nlc3MgPT09IHRydWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWRpcmVjdGlvblVybCA9IHJlc3VsdFsncmV0dXJuVXJsJ107XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbi5jb21wbGV0ZVBheW1lbnQocmVzdWx0WydyZXNwb25zZVRvQXBwbGUnXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHJlZGlyZWN0aW9uVXJsXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5lcnJvcnMgPSBjcmVhdGVBcHBsZUVycm9ycyhyZXN1bHQuZXJyb3JzKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uY29tcGxldGVQYXltZW50KHJlc3VsdClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3I6IChqcVhIUiwgdGV4dFN0YXR1cywgZXJyb3JUaHJvd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2Fybih0ZXh0U3RhdHVzLCBlcnJvclRocm93bilcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb24uYWJvcnQoKVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZighbWF5YmVTaG93QnV0dG9uKCkpe1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBqUXVlcnkoZG9jdW1lbnQuYm9keSkub24oJ3VwZGF0ZWRfY2FydF90b3RhbHMnLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgIG1heWJlU2hvd0J1dHRvbigpXG4gICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbW9sbGllX2FwcGxlcGF5X2J1dHRvbicpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGV2dCkgPT4ge1xuICAgICAgICAgICAgICAgIGFwcGxlUGF5U2Vzc2lvbigpXG4gICAgICAgICAgICB9KVxuICAgICAgICB9KVxuXG4gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtb2xsaWVfYXBwbGVwYXlfYnV0dG9uJykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZXZ0KSA9PiB7XG4gICAgICAgICAgICBhcHBsZVBheVNlc3Npb24oKVxuICAgICAgICB9KVxuICAgIH1cblxuKVxuKFxuICAgIHdpbmRvd1xuKVxuXG5cblxuIiwiZXhwb3J0IGNvbnN0IG1heWJlU2hvd0J1dHRvbiA9ICgpID0+IHtcbiAgICBjb25zdCB7QXBwbGVQYXlTZXNzaW9ufSA9IHdpbmRvd1xuICAgIGNvbnN0IGFwcGxlUGF5TWV0aG9kRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICcjbW9sbGllLWFwcGxlcGF5RGlyZWN0LWJ1dHRvbicsXG4gICAgKVxuICAgIGNvbnN0IGNhblNob3dCdXR0b24gPSBhcHBsZVBheU1ldGhvZEVsZW1lbnQgJiYgKEFwcGxlUGF5U2Vzc2lvbiAmJiBBcHBsZVBheVNlc3Npb24uY2FuTWFrZVBheW1lbnRzKCkpXG4gICAgaWYgKCFjYW5TaG93QnV0dG9uKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgICBjb25zdCBidXR0b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKVxuICAgIGJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ2lkJywgJ21vbGxpZV9hcHBsZXBheV9idXR0b24nKVxuICAgIGJ1dHRvbi5jbGFzc0xpc3QuYWRkKCdhcHBsZS1wYXktYnV0dG9uJylcbiAgICBidXR0b24uY2xhc3NMaXN0LmFkZCgnYXBwbGUtcGF5LWJ1dHRvbi1ibGFjaycpXG4gICAgYXBwbGVQYXlNZXRob2RFbGVtZW50LmFwcGVuZENoaWxkKGJ1dHRvbilcbiAgICByZXR1cm4gdHJ1ZVxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==
|
public/js/babel-polyfill.min.js
CHANGED
|
@@ -1 +1,10279 @@
|
|
| 1 |
-
!function(t){var n={};function r(e){if(n[e])return n[e].exports;var i=n[e]={i:e,l:!1,exports:{}};return t[e].call(i.exports,i,i.exports,r),i.l=!0,i.exports}r.m=t,r.c=n,r.d=function(t,n,e){r.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:e})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,n){if(1&n&&(t=r(t)),8&n)return t;if(4&n&&"object"==typeof t&&t&&t.__esModule)return t;var e=Object.create(null);if(r.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:t}),2&n&&"string"!=typeof t)for(var i in t)r.d(e,i,function(n){return t[n]}.bind(null,i));return e},r.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(n,"a",n),n},r.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},r.p="/public/js/",r(r.s="55Il")}({"+Xmh":function(t,n,r){r("jm62"),t.exports=r("g3g5").Object.getOwnPropertyDescriptors},"+auO":function(t,n,r){var e=r("XKFU"),i=r("lvtm");e(e.S,"Math",{cbrt:function(t){return i(t=+t)*Math.pow(Math.abs(t),1/3)}})},"+lvF":function(t,n,r){t.exports=r("VTer")("native-function-to-string",Function.toString)},"+oPb":function(t,n,r){"use strict";r("OGtf")("blink",(function(t){return function(){return t(this,"blink","","")}}))},"+rLv":function(t,n,r){var e=r("dyZX").document;t.exports=e&&e.documentElement},"/8Fb":function(t,n,r){var e=r("XKFU"),i=r("UExd")(!0);e(e.S,"Object",{entries:function(t){return i(t)}})},"/KAi":function(t,n,r){var e=r("XKFU"),i=r("dyZX").isFinite;e(e.S,"Number",{isFinite:function(t){return"number"==typeof t&&i(t)}})},"/SS/":function(t,n,r){var e=r("XKFU");e(e.S,"Object",{setPrototypeOf:r("i5dc").set})},"/e88":function(t,n){t.exports="\t\n\v\f\r \u2028\u2029\ufeff"},"0/R4":function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},"0E+W":function(t,n,r){r("elZq")("Array")},"0LDn":function(t,n,r){"use strict";r("OGtf")("italics",(function(t){return function(){return t(this,"i","","")}}))},"0YWM":function(t,n,r){var e=r("EemH"),i=r("OP3Y"),o=r("aagx"),u=r("XKFU"),c=r("0/R4"),a=r("y3w9");u(u.S,"Reflect",{get:function t(n,r){var u,f,s=arguments.length<3?n:arguments[2];return a(n)===s?n[r]:(u=e.f(n,r))?o(u,"value")?u.value:void 0!==u.get?u.get.call(s):void 0:c(f=i(n))?t(f,r,s):void 0}})},"0l/t":function(t,n,r){"use strict";var e=r("XKFU"),i=r("CkkT")(2);e(e.P+e.F*!r("LyE8")([].filter,!0),"Array",{filter:function(t){return i(this,t,arguments[1])}})},"0mN4":function(t,n,r){"use strict";r("OGtf")("fixed",(function(t){return function(){return t(this,"tt","","")}}))},"0sh+":function(t,n,r){var e=r("quPj"),i=r("vhPU");t.exports=function(t,n,r){if(e(n))throw TypeError("String#"+r+" doesn't accept regex!");return String(i(t))}},"11IZ":function(t,n,r){var e=r("dyZX").parseFloat,i=r("qncB").trim;t.exports=1/e(r("/e88")+"-0")!=-1/0?function(t){var n=i(String(t),3),r=e(n);return 0===r&&"-"==n.charAt(0)?-0:r}:e},"1MBn":function(t,n,r){var e=r("DVgA"),i=r("JiEa"),o=r("UqcF");t.exports=function(t){var n=e(t),r=i.f;if(r)for(var u,c=r(t),a=o.f,f=0;c.length>f;)a.call(t,u=c[f++])&&n.push(u);return n}},"1TsA":function(t,n){t.exports=function(t,n){return{value:n,done:!!t}}},"1sa7":function(t,n){t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},"25dN":function(t,n,r){var e=r("XKFU");e(e.S,"Object",{is:r("g6HL")})},"2GTP":function(t,n,r){var e=r("eaoh");t.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,i){return t.call(n,r,e,i)}}return function(){return t.apply(n,arguments)}}},"2OiF":function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},"2Spj":function(t,n,r){var e=r("XKFU");e(e.P,"Function",{bind:r("8MEG")})},"2atp":function(t,n,r){var e=r("XKFU"),i=Math.atanh;e(e.S+e.F*!(i&&1/i(-0)<0),"Math",{atanh:function(t){return 0==(t=+t)?t:Math.log((1+t)/(1-t))/2}})},"2faE":function(t,n,r){var e=r("5K7Z"),i=r("eUtF"),o=r("G8Mo"),u=Object.defineProperty;n.f=r("jmDH")?Object.defineProperty:function(t,n,r){if(e(t),n=o(n,!0),e(r),i)try{return u(t,n,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[n]=r.value),t}},"3Lyj":function(t,n,r){var e=r("KroJ");t.exports=function(t,n,r){for(var i in n)e(t,i,n[i],r);return t}},"3xty":function(t,n,r){var e=r("XKFU"),i=r("2OiF"),o=r("y3w9"),u=(r("dyZX").Reflect||{}).apply,c=Function.apply;e(e.S+e.F*!r("eeVq")((function(){u((function(){}))})),"Reflect",{apply:function(t,n,r){var e=i(t),a=o(r);return u?u(e,n,a):c.call(e,n,a)}})},"4LiD":function(t,n,r){"use strict";var e=r("dyZX"),i=r("XKFU"),o=r("KroJ"),u=r("3Lyj"),c=r("Z6vF"),a=r("SlkY"),f=r("9gX7"),s=r("0/R4"),l=r("eeVq"),h=r("XMVh"),v=r("fyDq"),p=r("Xbzi");t.exports=function(t,n,r,y,g,d){var x=e[t],m=x,b=g?"set":"add",w=m&&m.prototype,F={},S=function(t){var n=w[t];o(w,t,"delete"==t||"has"==t?function(t){return!(d&&!s(t))&&n.call(this,0===t?0:t)}:"get"==t?function(t){return d&&!s(t)?void 0:n.call(this,0===t?0:t)}:"add"==t?function(t){return n.call(this,0===t?0:t),this}:function(t,r){return n.call(this,0===t?0:t,r),this})};if("function"==typeof m&&(d||w.forEach&&!l((function(){(new m).entries().next()})))){var E=new m,O=E[b](d?{}:-0,1)!=E,U=l((function(){E.has(1)})),_=h((function(t){new m(t)})),P=!d&&l((function(){for(var t=new m,n=5;n--;)t[b](n,n);return!t.has(-0)}));_||((m=n((function(n,r){f(n,m,t);var e=p(new x,n,m);return null!=r&&a(r,g,e[b],e),e}))).prototype=w,w.constructor=m),(U||P)&&(S("delete"),S("has"),g&&S("get")),(P||O)&&S(b),d&&w.clear&&delete w.clear}else m=y.getConstructor(n,t,g,b),u(m.prototype,r),c.NEED=!0;return v(m,t),F[t]=m,i(i.G+i.W+i.F*(m!=x),F),d||y.setStrong(m,t,g),m}},"4R4u":function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"55Il":function(t,n,r){"use strict";r("g2aq");var e,i=(e=r("VsWn"))&&e.__esModule?e:{default:e};i.default._babelPolyfill&&"undefined"!=typeof console&&console.warn&&console.warn("@babel/polyfill is loaded more than once on this page. This is probably not desirable/intended and may have consequences if different versions of the polyfills are applied sequentially. If you do need to load the polyfill more than once, use @babel/polyfill/noConflict instead to bypass the warning."),i.default._babelPolyfill=!0},"5K7Z":function(t,n,r){var e=r("93I4");t.exports=function(t){if(!e(t))throw TypeError(t+" is not an object!");return t}},"5Pf0":function(t,n,r){var e=r("S/j/"),i=r("OP3Y");r("Xtr8")("getPrototypeOf",(function(){return function(t){return i(e(t))}}))},"5T2Y":function(t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},"694e":function(t,n,r){var e=r("EemH"),i=r("XKFU"),o=r("y3w9");i(i.S,"Reflect",{getOwnPropertyDescriptor:function(t,n){return e.f(o(t),n)}})},"69bn":function(t,n,r){var e=r("y3w9"),i=r("2OiF"),o=r("K0xU")("species");t.exports=function(t,n){var r,u=e(t).constructor;return void 0===u||null==(r=e(u)[o])?n:i(r)}},"6AQ9":function(t,n,r){"use strict";var e=r("XKFU"),i=r("8a7r");e(e.S+e.F*r("eeVq")((function(){function t(){}return!(Array.of.call(t)instanceof t)})),"Array",{of:function(){for(var t=0,n=arguments.length,r=new("function"==typeof this?this:Array)(n);n>t;)i(r,t,arguments[t++]);return r.length=n,r}})},"6FMO":function(t,n,r){var e=r("0/R4"),i=r("EWmC"),o=r("K0xU")("species");t.exports=function(t){var n;return i(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!i(n.prototype)||(n=void 0),e(n)&&null===(n=n[o])&&(n=void 0)),void 0===n?Array:n}},"6VaU":function(t,n,r){"use strict";var e=r("XKFU"),i=r("xF/b"),o=r("S/j/"),u=r("ne8i"),c=r("2OiF"),a=r("zRwo");e(e.P,"Array",{flatMap:function(t){var n,r,e=o(this);return c(t),n=u(e.length),r=a(e,0),i(r,e,e,n,0,1,t,arguments[1]),r}}),r("nGyu")("flatMap")},"7DDg":function(t,n,r){"use strict";if(r("nh4g")){var e=r("LQAc"),i=r("dyZX"),o=r("eeVq"),u=r("XKFU"),c=r("D4iV"),a=r("7Qtz"),f=r("m0Pp"),s=r("9gX7"),l=r("RjD/"),h=r("Mukb"),v=r("3Lyj"),p=r("RYi7"),y=r("ne8i"),g=r("Cfrj"),d=r("d/Gc"),x=r("apmT"),m=r("aagx"),b=r("I8a+"),w=r("0/R4"),F=r("S/j/"),S=r("M6Qj"),E=r("Kuth"),O=r("OP3Y"),U=r("kJMx").f,_=r("J+6e"),P=r("ylqs"),M=r("K0xU"),K=r("CkkT"),j=r("w2a5"),X=r("69bn"),A=r("yt8O"),I=r("hPIQ"),T=r("XMVh"),L=r("elZq"),R=r("Nr18"),N=r("upKx"),k=r("hswa"),D=r("EemH"),V=k.f,C=D.f,q=i.RangeError,Z=i.TypeError,W=i.Uint8Array,G=Array.prototype,Y=a.ArrayBuffer,B=a.DataView,z=K(0),J=K(2),H=K(3),Q=K(4),$=K(5),tt=K(6),nt=j(!0),rt=j(!1),et=A.values,it=A.keys,ot=A.entries,ut=G.lastIndexOf,ct=G.reduce,at=G.reduceRight,ft=G.join,st=G.sort,lt=G.slice,ht=G.toString,vt=G.toLocaleString,pt=M("iterator"),yt=M("toStringTag"),gt=P("typed_constructor"),dt=P("def_constructor"),xt=c.CONSTR,mt=c.TYPED,bt=c.VIEW,wt=K(1,(function(t,n){return Ut(X(t,t[dt]),n)})),Ft=o((function(){return 1===new W(new Uint16Array([1]).buffer)[0]})),St=!!W&&!!W.prototype.set&&o((function(){new W(1).set({})})),Et=function(t,n){var r=p(t);if(r<0||r%n)throw q("Wrong offset!");return r},Ot=function(t){if(w(t)&&mt in t)return t;throw Z(t+" is not a typed array!")},Ut=function(t,n){if(!w(t)||!(gt in t))throw Z("It is not a typed array constructor!");return new t(n)},_t=function(t,n){return Pt(X(t,t[dt]),n)},Pt=function(t,n){for(var r=0,e=n.length,i=Ut(t,e);e>r;)i[r]=n[r++];return i},Mt=function(t,n,r){V(t,n,{get:function(){return this._d[r]}})},Kt=function(t){var n,r,e,i,o,u,c=F(t),a=arguments.length,s=a>1?arguments[1]:void 0,l=void 0!==s,h=_(c);if(null!=h&&!S(h)){for(u=h.call(c),e=[],n=0;!(o=u.next()).done;n++)e.push(o.value);c=e}for(l&&a>2&&(s=f(s,arguments[2],2)),n=0,r=y(c.length),i=Ut(this,r);r>n;n++)i[n]=l?s(c[n],n):c[n];return i},jt=function(){for(var t=0,n=arguments.length,r=Ut(this,n);n>t;)r[t]=arguments[t++];return r},Xt=!!W&&o((function(){vt.call(new W(1))})),At=function(){return vt.apply(Xt?lt.call(Ot(this)):Ot(this),arguments)},It={copyWithin:function(t,n){return N.call(Ot(this),t,n,arguments.length>2?arguments[2]:void 0)},every:function(t){return Q(Ot(this),t,arguments.length>1?arguments[1]:void 0)},fill:function(t){return R.apply(Ot(this),arguments)},filter:function(t){return _t(this,J(Ot(this),t,arguments.length>1?arguments[1]:void 0))},find:function(t){return $(Ot(this),t,arguments.length>1?arguments[1]:void 0)},findIndex:function(t){return tt(Ot(this),t,arguments.length>1?arguments[1]:void 0)},forEach:function(t){z(Ot(this),t,arguments.length>1?arguments[1]:void 0)},indexOf:function(t){return rt(Ot(this),t,arguments.length>1?arguments[1]:void 0)},includes:function(t){return nt(Ot(this),t,arguments.length>1?arguments[1]:void 0)},join:function(t){return ft.apply(Ot(this),arguments)},lastIndexOf:function(t){return ut.apply(Ot(this),arguments)},map:function(t){return wt(Ot(this),t,arguments.length>1?arguments[1]:void 0)},reduce:function(t){return ct.apply(Ot(this),arguments)},reduceRight:function(t){return at.apply(Ot(this),arguments)},reverse:function(){for(var t,n=Ot(this).length,r=Math.floor(n/2),e=0;e<r;)t=this[e],this[e++]=this[--n],this[n]=t;return this},some:function(t){return H(Ot(this),t,arguments.length>1?arguments[1]:void 0)},sort:function(t){return st.call(Ot(this),t)},subarray:function(t,n){var r=Ot(this),e=r.length,i=d(t,e);return new(X(r,r[dt]))(r.buffer,r.byteOffset+i*r.BYTES_PER_ELEMENT,y((void 0===n?e:d(n,e))-i))}},Tt=function(t,n){return _t(this,lt.call(Ot(this),t,n))},Lt=function(t){Ot(this);var n=Et(arguments[1],1),r=this.length,e=F(t),i=y(e.length),o=0;if(i+n>r)throw q("Wrong length!");for(;o<i;)this[n+o]=e[o++]},Rt={entries:function(){return ot.call(Ot(this))},keys:function(){return it.call(Ot(this))},values:function(){return et.call(Ot(this))}},Nt=function(t,n){return w(t)&&t[mt]&&"symbol"!=typeof n&&n in t&&String(+n)==String(n)},kt=function(t,n){return Nt(t,n=x(n,!0))?l(2,t[n]):C(t,n)},Dt=function(t,n,r){return!(Nt(t,n=x(n,!0))&&w(r)&&m(r,"value"))||m(r,"get")||m(r,"set")||r.configurable||m(r,"writable")&&!r.writable||m(r,"enumerable")&&!r.enumerable?V(t,n,r):(t[n]=r.value,t)};xt||(D.f=kt,k.f=Dt),u(u.S+u.F*!xt,"Object",{getOwnPropertyDescriptor:kt,defineProperty:Dt}),o((function(){ht.call({})}))&&(ht=vt=function(){return ft.call(this)});var Vt=v({},It);v(Vt,Rt),h(Vt,pt,Rt.values),v(Vt,{slice:Tt,set:Lt,constructor:function(){},toString:ht,toLocaleString:At}),Mt(Vt,"buffer","b"),Mt(Vt,"byteOffset","o"),Mt(Vt,"byteLength","l"),Mt(Vt,"length","e"),V(Vt,yt,{get:function(){return this[mt]}}),t.exports=function(t,n,r,a){var f=t+((a=!!a)?"Clamped":"")+"Array",l="get"+t,v="set"+t,p=i[f],d=p||{},x=p&&O(p),m=!p||!c.ABV,F={},S=p&&p.prototype,_=function(t,r){V(t,r,{get:function(){return function(t,r){var e=t._d;return e.v[l](r*n+e.o,Ft)}(this,r)},set:function(t){return function(t,r,e){var i=t._d;a&&(e=(e=Math.round(e))<0?0:e>255?255:255&e),i.v[v](r*n+i.o,e,Ft)}(this,r,t)},enumerable:!0})};m?(p=r((function(t,r,e,i){s(t,p,f,"_d");var o,u,c,a,l=0,v=0;if(w(r)){if(!(r instanceof Y||"ArrayBuffer"==(a=b(r))||"SharedArrayBuffer"==a))return mt in r?Pt(p,r):Kt.call(p,r);o=r,v=Et(e,n);var d=r.byteLength;if(void 0===i){if(d%n)throw q("Wrong length!");if((u=d-v)<0)throw q("Wrong length!")}else if((u=y(i)*n)+v>d)throw q("Wrong length!");c=u/n}else c=g(r),o=new Y(u=c*n);for(h(t,"_d",{b:o,o:v,l:u,e:c,v:new B(o)});l<c;)_(t,l++)})),S=p.prototype=E(Vt),h(S,"constructor",p)):o((function(){p(1)}))&&o((function(){new p(-1)}))&&T((function(t){new p,new p(null),new p(1.5),new p(t)}),!0)||(p=r((function(t,r,e,i){var o;return s(t,p,f),w(r)?r instanceof Y||"ArrayBuffer"==(o=b(r))||"SharedArrayBuffer"==o?void 0!==i?new d(r,Et(e,n),i):void 0!==e?new d(r,Et(e,n)):new d(r):mt in r?Pt(p,r):Kt.call(p,r):new d(g(r))})),z(x!==Function.prototype?U(d).concat(U(x)):U(d),(function(t){t in p||h(p,t,d[t])})),p.prototype=S,e||(S.constructor=p));var P=S[pt],M=!!P&&("values"==P.name||null==P.name),K=Rt.values;h(p,gt,!0),h(S,mt,f),h(S,bt,!0),h(S,dt,p),(a?new p(1)[yt]==f:yt in S)||V(S,yt,{get:function(){return f}}),F[f]=p,u(u.G+u.W+u.F*(p!=d),F),u(u.S,f,{BYTES_PER_ELEMENT:n}),u(u.S+u.F*o((function(){d.of.call(p,1)})),f,{from:Kt,of:jt}),"BYTES_PER_ELEMENT"in S||h(S,"BYTES_PER_ELEMENT",n),u(u.P,f,It),L(f),u(u.P+u.F*St,f,{set:Lt}),u(u.P+u.F*!M,f,Rt),e||S.toString==ht||(S.toString=ht),u(u.P+u.F*o((function(){new p(1).slice()})),f,{slice:Tt}),u(u.P+u.F*(o((function(){return[1,2].toLocaleString()!=new p([1,2]).toLocaleString()}))||!o((function(){S.toLocaleString.call([1,2])}))),f,{toLocaleString:At}),I[f]=M?P:K,e||M||h(S,pt,K)}}else t.exports=function(){}},"7PI8":function(t,n,r){var e=r("Y7ZC");e(e.G,{global:r("5T2Y")})},"7Qtz":function(t,n,r){"use strict";var e=r("dyZX"),i=r("nh4g"),o=r("LQAc"),u=r("D4iV"),c=r("Mukb"),a=r("3Lyj"),f=r("eeVq"),s=r("9gX7"),l=r("RYi7"),h=r("ne8i"),v=r("Cfrj"),p=r("kJMx").f,y=r("hswa").f,g=r("Nr18"),d=r("fyDq"),x=e.ArrayBuffer,m=e.DataView,b=e.Math,w=e.RangeError,F=e.Infinity,S=x,E=b.abs,O=b.pow,U=b.floor,_=b.log,P=b.LN2,M=i?"_b":"buffer",K=i?"_l":"byteLength",j=i?"_o":"byteOffset";function X(t,n,r){var e,i,o,u=new Array(r),c=8*r-n-1,a=(1<<c)-1,f=a>>1,s=23===n?O(2,-24)-O(2,-77):0,l=0,h=t<0||0===t&&1/t<0?1:0;for((t=E(t))!=t||t===F?(i=t!=t?1:0,e=a):(e=U(_(t)/P),t*(o=O(2,-e))<1&&(e--,o*=2),(t+=e+f>=1?s/o:s*O(2,1-f))*o>=2&&(e++,o/=2),e+f>=a?(i=0,e=a):e+f>=1?(i=(t*o-1)*O(2,n),e+=f):(i=t*O(2,f-1)*O(2,n),e=0));n>=8;u[l++]=255&i,i/=256,n-=8);for(e=e<<n|i,c+=n;c>0;u[l++]=255&e,e/=256,c-=8);return u[--l]|=128*h,u}function A(t,n,r){var e,i=8*r-n-1,o=(1<<i)-1,u=o>>1,c=i-7,a=r-1,f=t[a--],s=127&f;for(f>>=7;c>0;s=256*s+t[a],a--,c-=8);for(e=s&(1<<-c)-1,s>>=-c,c+=n;c>0;e=256*e+t[a],a--,c-=8);if(0===s)s=1-u;else{if(s===o)return e?NaN:f?-F:F;e+=O(2,n),s-=u}return(f?-1:1)*e*O(2,s-n)}function I(t){return t[3]<<24|t[2]<<16|t[1]<<8|t[0]}function T(t){return[255&t]}function L(t){return[255&t,t>>8&255]}function R(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]}function N(t){return X(t,52,8)}function k(t){return X(t,23,4)}function D(t,n,r){y(t.prototype,n,{get:function(){return this[r]}})}function V(t,n,r,e){var i=v(+r);if(i+n>t[K])throw w("Wrong index!");var o=t[M]._b,u=i+t[j],c=o.slice(u,u+n);return e?c:c.reverse()}function C(t,n,r,e,i,o){var u=v(+r);if(u+n>t[K])throw w("Wrong index!");for(var c=t[M]._b,a=u+t[j],f=e(+i),s=0;s<n;s++)c[a+s]=f[o?s:n-s-1]}if(u.ABV){if(!f((function(){x(1)}))||!f((function(){new x(-1)}))||f((function(){return new x,new x(1.5),new x(NaN),"ArrayBuffer"!=x.name}))){for(var q,Z=(x=function(t){return s(this,x),new S(v(t))}).prototype=S.prototype,W=p(S),G=0;W.length>G;)(q=W[G++])in x||c(x,q,S[q]);o||(Z.constructor=x)}var Y=new m(new x(2)),B=m.prototype.setInt8;Y.setInt8(0,2147483648),Y.setInt8(1,2147483649),!Y.getInt8(0)&&Y.getInt8(1)||a(m.prototype,{setInt8:function(t,n){B.call(this,t,n<<24>>24)},setUint8:function(t,n){B.call(this,t,n<<24>>24)}},!0)}else x=function(t){s(this,x,"ArrayBuffer");var n=v(t);this._b=g.call(new Array(n),0),this[K]=n},m=function(t,n,r){s(this,m,"DataView"),s(t,x,"DataView");var e=t[K],i=l(n);if(i<0||i>e)throw w("Wrong offset!");if(i+(r=void 0===r?e-i:h(r))>e)throw w("Wrong length!");this[M]=t,this[j]=i,this[K]=r},i&&(D(x,"byteLength","_l"),D(m,"buffer","_b"),D(m,"byteLength","_l"),D(m,"byteOffset","_o")),a(m.prototype,{getInt8:function(t){return V(this,1,t)[0]<<24>>24},getUint8:function(t){return V(this,1,t)[0]},getInt16:function(t){var n=V(this,2,t,arguments[1]);return(n[1]<<8|n[0])<<16>>16},getUint16:function(t){var n=V(this,2,t,arguments[1]);return n[1]<<8|n[0]},getInt32:function(t){return I(V(this,4,t,arguments[1]))},getUint32:function(t){return I(V(this,4,t,arguments[1]))>>>0},getFloat32:function(t){return A(V(this,4,t,arguments[1]),23,4)},getFloat64:function(t){return A(V(this,8,t,arguments[1]),52,8)},setInt8:function(t,n){C(this,1,t,T,n)},setUint8:function(t,n){C(this,1,t,T,n)},setInt16:function(t,n){C(this,2,t,L,n,arguments[2])},setUint16:function(t,n){C(this,2,t,L,n,arguments[2])},setInt32:function(t,n){C(this,4,t,R,n,arguments[2])},setUint32:function(t,n){C(this,4,t,R,n,arguments[2])},setFloat32:function(t,n){C(this,4,t,k,n,arguments[2])},setFloat64:function(t,n){C(this,8,t,N,n,arguments[2])}});d(x,"ArrayBuffer"),d(m,"DataView"),c(m.prototype,u.VIEW,!0),n.ArrayBuffer=x,n.DataView=m},"7VC1":function(t,n,r){"use strict";var e=r("XKFU"),i=r("Lgjv"),o=r("ol8x"),u=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(o);e(e.P+e.F*u,"String",{padEnd:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0,!1)}})},"7h0T":function(t,n,r){var e=r("XKFU");e(e.S,"Number",{isNaN:function(t){return t!=t}})},"8+KV":function(t,n,r){"use strict";var e=r("XKFU"),i=r("CkkT")(0),o=r("LyE8")([].forEach,!0);e(e.P+e.F*!o,"Array",{forEach:function(t){return i(this,t,arguments[1])}})},"84bF":function(t,n,r){"use strict";r("OGtf")("small",(function(t){return function(){return t(this,"small","","")}}))},"8MEG":function(t,n,r){"use strict";var e=r("2OiF"),i=r("0/R4"),o=r("MfQN"),u=[].slice,c={},a=function(t,n,r){if(!(n in c)){for(var e=[],i=0;i<n;i++)e[i]="a["+i+"]";c[n]=Function("F,a","return new F("+e.join(",")+")")}return c[n](t,r)};t.exports=Function.bind||function(t){var n=e(this),r=u.call(arguments,1),c=function(){var e=r.concat(u.call(arguments));return this instanceof c?a(n,e.length,e):o(n,e,t)};return i(n.prototype)&&(c.prototype=n.prototype),c}},"8a7r":function(t,n,r){"use strict";var e=r("hswa"),i=r("RjD/");t.exports=function(t,n,r){n in t?e.f(t,n,i(0,r)):t[n]=r}},"91GP":function(t,n,r){var e=r("XKFU");e(e.S+e.F,"Object",{assign:r("czNK")})},"93I4":function(t,n){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},"9AAn":function(t,n,r){"use strict";var e=r("wmvG"),i=r("s5qY");t.exports=r("4LiD")("Map",(function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}}),{get:function(t){var n=e.getEntry(i(this,"Map"),t);return n&&n.v},set:function(t,n){return e.def(i(this,"Map"),0===t?0:t,n)}},e,!0)},"9P93":function(t,n,r){var e=r("XKFU"),i=Math.imul;e(e.S+e.F*r("eeVq")((function(){return-5!=i(4294967295,5)||2!=i.length})),"Math",{imul:function(t,n){var r=+t,e=+n,i=65535&r,o=65535&e;return 0|i*o+((65535&r>>>16)*o+i*(65535&e>>>16)<<16>>>0)}})},"9VmF":function(t,n,r){"use strict";var e=r("XKFU"),i=r("ne8i"),o=r("0sh+"),u="".startsWith;e(e.P+e.F*r("UUeW")("startsWith"),"String",{startsWith:function(t){var n=o(this,t,"startsWith"),r=i(Math.min(arguments.length>1?arguments[1]:void 0,n.length)),e=String(t);return u?u.call(n,e,r):n.slice(r,r+e.length)===e}})},"9XZr":function(t,n,r){"use strict";var e=r("XKFU"),i=r("Lgjv"),o=r("ol8x"),u=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(o);e(e.P+e.F*u,"String",{padStart:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0,!0)}})},"9gX7":function(t,n){t.exports=function(t,n,r,e){if(!(t instanceof n)||void 0!==e&&e in t)throw TypeError(r+": incorrect invocation!");return t}},"9rMk":function(t,n,r){var e=r("XKFU");e(e.S,"Reflect",{has:function(t,n){return n in t}})},A2zW:function(t,n,r){"use strict";var e=r("XKFU"),i=r("RYi7"),o=r("vvmO"),u=r("l0Rn"),c=1..toFixed,a=Math.floor,f=[0,0,0,0,0,0],s="Number.toFixed: incorrect invocation!",l=function(t,n){for(var r=-1,e=n;++r<6;)e+=t*f[r],f[r]=e%1e7,e=a(e/1e7)},h=function(t){for(var n=6,r=0;--n>=0;)r+=f[n],f[n]=a(r/t),r=r%t*1e7},v=function(){for(var t=6,n="";--t>=0;)if(""!==n||0===t||0!==f[t]){var r=String(f[t]);n=""===n?r:n+u.call("0",7-r.length)+r}return n},p=function(t,n,r){return 0===n?r:n%2==1?p(t,n-1,r*t):p(t*t,n/2,r)};e(e.P+e.F*(!!c&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!r("eeVq")((function(){c.call({})}))),"Number",{toFixed:function(t){var n,r,e,c,a=o(this,s),f=i(t),y="",g="0";if(f<0||f>20)throw RangeError(s);if(a!=a)return"NaN";if(a<=-1e21||a>=1e21)return String(a);if(a<0&&(y="-",a=-a),a>1e-21)if(r=(n=function(t){for(var n=0,r=t;r>=4096;)n+=12,r/=4096;for(;r>=2;)n+=1,r/=2;return n}(a*p(2,69,1))-69)<0?a*p(2,-n,1):a/p(2,n,1),r*=4503599627370496,(n=52-n)>0){for(l(0,r),e=f;e>=7;)l(1e7,0),e-=7;for(l(p(10,e,1),0),e=n-1;e>=23;)h(1<<23),e-=23;h(1<<e),l(1,1),h(2),g=v()}else l(0,r),l(1<<-n,0),g=v()+u.call("0",f);return g=f>0?y+((c=g.length)<=f?"0."+u.call("0",f-c)+g:g.slice(0,c-f)+"."+g.slice(c-f)):y+g}})},A5AN:function(t,n,r){"use strict";var e=r("AvRE")(!0);t.exports=function(t,n,r){return n+(r?e(t,n).length:1)}},Afnz:function(t,n,r){"use strict";var e=r("LQAc"),i=r("XKFU"),o=r("KroJ"),u=r("Mukb"),c=r("hPIQ"),a=r("QaDb"),f=r("fyDq"),s=r("OP3Y"),l=r("K0xU")("iterator"),h=!([].keys&&"next"in[].keys()),v=function(){return this};t.exports=function(t,n,r,p,y,g,d){a(r,n,p);var x,m,b,w=function(t){if(!h&&t in O)return O[t];switch(t){case"keys":case"values":return function(){return new r(this,t)}}return function(){return new r(this,t)}},F=n+" Iterator",S="values"==y,E=!1,O=t.prototype,U=O[l]||O["@@iterator"]||y&&O[y],_=U||w(y),P=y?S?w("entries"):_:void 0,M="Array"==n&&O.entries||U;if(M&&(b=s(M.call(new t)))!==Object.prototype&&b.next&&(f(b,F,!0),e||"function"==typeof b[l]||u(b,l,v)),S&&U&&"values"!==U.name&&(E=!0,_=function(){return U.call(this)}),e&&!d||!h&&!E&&O[l]||u(O,l,_),c[n]=_,c[F]=v,y)if(x={values:S?_:w("values"),keys:g?_:w("keys"),entries:P},d)for(m in x)m in O||o(O,m,x[m]);else i(i.P+i.F*(h||E),n,x);return x}},AphP:function(t,n,r){"use strict";var e=r("XKFU"),i=r("S/j/"),o=r("apmT");e(e.P+e.F*r("eeVq")((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})})),"Date",{toJSON:function(t){var n=i(this),r=o(n);return"number"!=typeof r||isFinite(r)?n.toISOString():null}})},AvRE:function(t,n,r){var e=r("RYi7"),i=r("vhPU");t.exports=function(t){return function(n,r){var o,u,c=String(i(n)),a=e(r),f=c.length;return a<0||a>=f?t?"":void 0:(o=c.charCodeAt(a))<55296||o>56319||a+1===f||(u=c.charCodeAt(a+1))<56320||u>57343?t?c.charAt(a):o:t?c.slice(a,a+2):u-56320+(o-55296<<10)+65536}}},"B+OT":function(t,n){var r={}.hasOwnProperty;t.exports=function(t,n){return r.call(t,n)}},BC7C:function(t,n,r){var e=r("XKFU");e(e.S,"Math",{fround:r("kcoS")})},"BJ/l":function(t,n,r){var e=r("XKFU");e(e.S,"Math",{log1p:r("1sa7")})},BP8U:function(t,n,r){var e=r("XKFU"),i=r("PKUr");e(e.S+e.F*(Number.parseInt!=i),"Number",{parseInt:i})},Btvt:function(t,n,r){"use strict";var e=r("I8a+"),i={};i[r("K0xU")("toStringTag")]="z",i+""!="[object z]"&&r("KroJ")(Object.prototype,"toString",(function(){return"[object "+e(this)+"]"}),!0)},"C/va":function(t,n,r){"use strict";var e=r("y3w9");t.exports=function(){var t=e(this),n="";return t.global&&(n+="g"),t.ignoreCase&&(n+="i"),t.multiline&&(n+="m"),t.unicode&&(n+="u"),t.sticky&&(n+="y"),n}},CX2u:function(t,n,r){"use strict";var e=r("XKFU"),i=r("g3g5"),o=r("dyZX"),u=r("69bn"),c=r("vKrd");e(e.P+e.R,"Promise",{finally:function(t){var n=u(this,i.Promise||o.Promise),r="function"==typeof t;return this.then(r?function(r){return c(n,t()).then((function(){return r}))}:t,r?function(r){return c(n,t()).then((function(){throw r}))}:t)}})},Cfrj:function(t,n,r){var e=r("RYi7"),i=r("ne8i");t.exports=function(t){if(void 0===t)return 0;var n=e(t),r=i(n);if(n!==r)throw RangeError("Wrong length!");return r}},CkkT:function(t,n,r){var e=r("m0Pp"),i=r("Ymqv"),o=r("S/j/"),u=r("ne8i"),c=r("zRwo");t.exports=function(t,n){var r=1==t,a=2==t,f=3==t,s=4==t,l=6==t,h=5==t||l,v=n||c;return function(n,c,p){for(var y,g,d=o(n),x=i(d),m=e(c,p,3),b=u(x.length),w=0,F=r?v(n,b):a?v(n,0):void 0;b>w;w++)if((h||w in x)&&(g=m(y=x[w],w,d),t))if(r)F[w]=g;else if(g)switch(t){case 3:return!0;case 5:return y;case 6:return w;case 2:F.push(y)}else if(s)return!1;return l?-1:f||s?s:F}}},CyHz:function(t,n,r){var e=r("XKFU");e(e.S,"Math",{sign:r("lvtm")})},D4iV:function(t,n,r){for(var e,i=r("dyZX"),o=r("Mukb"),u=r("ylqs"),c=u("typed_array"),a=u("view"),f=!(!i.ArrayBuffer||!i.DataView),s=f,l=0,h="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");l<9;)(e=i[h[l++]])?(o(e.prototype,c,!0),o(e.prototype,a,!0)):s=!1;t.exports={ABV:f,CONSTR:s,TYPED:c,VIEW:a}},DNiP:function(t,n,r){"use strict";var e=r("XKFU"),i=r("eyMr");e(e.P+e.F*!r("LyE8")([].reduce,!0),"Array",{reduce:function(t){return i(this,t,arguments.length,arguments[1],!1)}})},DVgA:function(t,n,r){var e=r("zhAb"),i=r("4R4u");t.exports=Object.keys||function(t){return e(t,i)}},DW2E:function(t,n,r){var e=r("0/R4"),i=r("Z6vF").onFreeze;r("Xtr8")("freeze",(function(t){return function(n){return t&&e(n)?t(i(n)):n}}))},EK0E:function(t,n,r){"use strict";var e,i=r("dyZX"),o=r("CkkT")(0),u=r("KroJ"),c=r("Z6vF"),a=r("czNK"),f=r("ZD67"),s=r("0/R4"),l=r("s5qY"),h=r("s5qY"),v=!i.ActiveXObject&&"ActiveXObject"in i,p=c.getWeak,y=Object.isExtensible,g=f.ufstore,d=function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},x={get:function(t){if(s(t)){var n=p(t);return!0===n?g(l(this,"WeakMap")).get(t):n?n[this._i]:void 0}},set:function(t,n){return f.def(l(this,"WeakMap"),t,n)}},m=t.exports=r("4LiD")("WeakMap",d,x,f,!0,!0);h&&v&&(a((e=f.getConstructor(d,"WeakMap")).prototype,x),c.NEED=!0,o(["delete","has","get","set"],(function(t){var n=m.prototype,r=n[t];u(n,t,(function(n,i){if(s(n)&&!y(n)){this._f||(this._f=new e);var o=this._f[t](n,i);return"set"==t?this:o}return r.call(this,n,i)}))})))},EWmC:function(t,n,r){var e=r("LZWt");t.exports=Array.isArray||function(t){return"Array"==e(t)}},EemH:function(t,n,r){var e=r("UqcF"),i=r("RjD/"),o=r("aCFj"),u=r("apmT"),c=r("aagx"),a=r("xpql"),f=Object.getOwnPropertyDescriptor;n.f=r("nh4g")?f:function(t,n){if(t=o(t),n=u(n,!0),a)try{return f(t,n)}catch(t){}if(c(t,n))return i(!e.f.call(t,n),t[n])}},"Ew+T":function(t,n,r){var e=r("XKFU"),i=r("GZEu");e(e.G+e.B,{setImmediate:i.set,clearImmediate:i.clear})},FDph:function(t,n,r){r("Z2Ku"),t.exports=r("g3g5").Array.includes},FEjr:function(t,n,r){"use strict";r("OGtf")("strike",(function(t){return function(){return t(this,"strike","","")}}))},FJW5:function(t,n,r){var e=r("hswa"),i=r("y3w9"),o=r("DVgA");t.exports=r("nh4g")?Object.defineProperties:function(t,n){i(t);for(var r,u=o(n),c=u.length,a=0;c>a;)e.f(t,r=u[a++],n[r]);return t}},FLlr:function(t,n,r){var e=r("XKFU");e(e.P,"String",{repeat:r("l0Rn")})},Faw5:function(t,n,r){r("7DDg")("Int16",2,(function(t){return function(n,r,e){return t(this,n,r,e)}}))},FlsD:function(t,n,r){var e=r("0/R4");r("Xtr8")("isExtensible",(function(t){return function(n){return!!e(n)&&(!t||t(n))}}))},FxUG:function(t,n,r){r("R5XZ"),r("Ew+T"),r("rGqo"),t.exports=r("g3g5")},G8Mo:function(t,n,r){var e=r("93I4");t.exports=function(t,n){if(!e(t))return t;var r,i;if(n&&"function"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;if("function"==typeof(r=t.valueOf)&&!e(i=r.call(t)))return i;if(!n&&"function"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},GNAe:function(t,n,r){var e=r("XKFU"),i=r("PKUr");e(e.G+e.F*(parseInt!=i),{parseInt:i})},GZEu:function(t,n,r){var e,i,o,u=r("m0Pp"),c=r("MfQN"),a=r("+rLv"),f=r("Iw71"),s=r("dyZX"),l=s.process,h=s.setImmediate,v=s.clearImmediate,p=s.MessageChannel,y=s.Dispatch,g=0,d={},x=function(){var t=+this;if(d.hasOwnProperty(t)){var n=d[t];delete d[t],n()}},m=function(t){x.call(t.data)};h&&v||(h=function(t){for(var n=[],r=1;arguments.length>r;)n.push(arguments[r++]);return d[++g]=function(){c("function"==typeof t?t:Function(t),n)},e(g),g},v=function(t){delete d[t]},"process"==r("LZWt")(l)?e=function(t){l.nextTick(u(x,t,1))}:y&&y.now?e=function(t){y.now(u(x,t,1))}:p?(o=(i=new p).port2,i.port1.onmessage=m,e=u(o.postMessage,o,1)):s.addEventListener&&"function"==typeof postMessage&&!s.importScripts?(e=function(t){s.postMessage(t+"","*")},s.addEventListener("message",m,!1)):e="onreadystatechange"in f("script")?function(t){a.appendChild(f("script")).onreadystatechange=function(){a.removeChild(this),x.call(t)}}:function(t){setTimeout(u(x,t,1),0)}),t.exports={set:h,clear:v}},H6hf:function(t,n,r){var e=r("y3w9");t.exports=function(t,n,r,i){try{return i?n(e(r)[0],r[1]):n(r)}catch(n){var o=t.return;throw void 0!==o&&e(o.call(t)),n}}},"HAE/":function(t,n,r){var e=r("XKFU");e(e.S+e.F*!r("nh4g"),"Object",{defineProperty:r("hswa").f})},HEwt:function(t,n,r){"use strict";var e=r("m0Pp"),i=r("XKFU"),o=r("S/j/"),u=r("H6hf"),c=r("M6Qj"),a=r("ne8i"),f=r("8a7r"),s=r("J+6e");i(i.S+i.F*!r("XMVh")((function(t){Array.from(t)})),"Array",{from:function(t){var n,r,i,l,h=o(t),v="function"==typeof this?this:Array,p=arguments.length,y=p>1?arguments[1]:void 0,g=void 0!==y,d=0,x=s(h);if(g&&(y=e(y,p>2?arguments[2]:void 0,2)),null==x||v==Array&&c(x))for(r=new v(n=a(h.length));n>d;d++)f(r,d,g?y(h[d],d):h[d]);else for(l=x.call(h),r=new v;!(i=l.next()).done;d++)f(r,d,g?u(l,y,[i.value,d],!0):i.value);return r.length=d,r}})},Hsns:function(t,n,r){var e=r("93I4"),i=r("5T2Y").document,o=e(i)&&e(i.createElement);t.exports=function(t){return o?i.createElement(t):{}}},I5cv:function(t,n,r){var e=r("XKFU"),i=r("Kuth"),o=r("2OiF"),u=r("y3w9"),c=r("0/R4"),a=r("eeVq"),f=r("8MEG"),s=(r("dyZX").Reflect||{}).construct,l=a((function(){function t(){}return!(s((function(){}),[],t)instanceof t)})),h=!a((function(){s((function(){}))}));e(e.S+e.F*(l||h),"Reflect",{construct:function(t,n){o(t),u(n);var r=arguments.length<3?t:o(arguments[2]);if(h&&!l)return s(t,n,r);if(t==r){switch(n.length){case 0:return new t;case 1:return new t(n[0]);case 2:return new t(n[0],n[1]);case 3:return new t(n[0],n[1],n[2]);case 4:return new t(n[0],n[1],n[2],n[3])}var e=[null];return e.push.apply(e,n),new(f.apply(t,e))}var a=r.prototype,v=i(c(a)?a:Object.prototype),p=Function.apply.call(t,v,n);return c(p)?p:v}})},I74W:function(t,n,r){"use strict";r("qncB")("trimLeft",(function(t){return function(){return t(this,1)}}),"trimStart")},I78e:function(t,n,r){"use strict";var e=r("XKFU"),i=r("+rLv"),o=r("LZWt"),u=r("d/Gc"),c=r("ne8i"),a=[].slice;e(e.P+e.F*r("eeVq")((function(){i&&a.call(i)})),"Array",{slice:function(t,n){var r=c(this.length),e=o(this);if(n=void 0===n?r:n,"Array"==e)return a.call(this,t,n);for(var i=u(t,r),f=u(n,r),s=c(f-i),l=new Array(s),h=0;h<s;h++)l[h]="String"==e?this.charAt(i+h):this[i+h];return l}})},"I8a+":function(t,n,r){var e=r("LZWt"),i=r("K0xU")("toStringTag"),o="Arguments"==e(function(){return arguments}());t.exports=function(t){var n,r,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,n){try{return t[n]}catch(t){}}(n=Object(t),i))?r:o?e(n):"Object"==(u=e(n))&&"function"==typeof n.callee?"Arguments":u}},INYr:function(t,n,r){"use strict";var e=r("XKFU"),i=r("CkkT")(6),o="findIndex",u=!0;o in[]&&Array(1)[o]((function(){u=!1})),e(e.P+e.F*u,"Array",{findIndex:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),r("nGyu")(o)},"IU+Z":function(t,n,r){"use strict";r("sMXx");var e=r("KroJ"),i=r("Mukb"),o=r("eeVq"),u=r("vhPU"),c=r("K0xU"),a=r("Ugos"),f=c("species"),s=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),l=function(){var t=/(?:)/,n=t.exec;t.exec=function(){return n.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(t,n,r){var h=c(t),v=!o((function(){var n={};return n[h]=function(){return 7},7!=""[t](n)})),p=v?!o((function(){var n=!1,r=/a/;return r.exec=function(){return n=!0,null},"split"===t&&(r.constructor={},r.constructor[f]=function(){return r}),r[h](""),!n})):void 0;if(!v||!p||"replace"===t&&!s||"split"===t&&!l){var y=/./[h],g=r(u,h,""[t],(function(t,n,r,e,i){return n.exec===a?v&&!i?{done:!0,value:y.call(n,r,e)}:{done:!0,value:t.call(r,n,e)}:{done:!1}})),d=g[0],x=g[1];e(String.prototype,t,d),i(RegExp.prototype,h,2==n?function(t,n){return x.call(t,this,n)}:function(t){return x.call(t,this)})}}},IXt9:function(t,n,r){"use strict";var e=r("0/R4"),i=r("OP3Y"),o=r("K0xU")("hasInstance"),u=Function.prototype;o in u||r("hswa").f(u,o,{value:function(t){if("function"!=typeof this||!e(t))return!1;if(!e(this.prototype))return t instanceof this;for(;t=i(t);)if(this.prototype===t)return!0;return!1}})},IlFx:function(t,n,r){var e=r("XKFU"),i=r("y3w9"),o=Object.isExtensible;e(e.S,"Reflect",{isExtensible:function(t){return i(t),!o||o(t)}})},Iw71:function(t,n,r){var e=r("0/R4"),i=r("dyZX").document,o=e(i)&&e(i.createElement);t.exports=function(t){return o?i.createElement(t):{}}},Izvi:function(t,n,r){r("I74W"),t.exports=r("g3g5").String.trimLeft},"J+6e":function(t,n,r){var e=r("I8a+"),i=r("K0xU")("iterator"),o=r("hPIQ");t.exports=r("g3g5").getIteratorMethod=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[e(t)]}},JCqj:function(t,n,r){"use strict";r("OGtf")("sup",(function(t){return function(){return t(this,"sup","","")}}))},JbTB:function(t,n,r){r("/8Fb"),t.exports=r("g3g5").Object.entries},Jcmo:function(t,n,r){var e=r("XKFU"),i=Math.exp;e(e.S,"Math",{cosh:function(t){return(i(t=+t)+i(-t))/2}})},JduL:function(t,n,r){r("Xtr8")("getOwnPropertyNames",(function(){return r("e7yV").f}))},"Ji/l":function(t,n,r){var e=r("XKFU");e(e.G+e.W+e.F*!r("D4iV").ABV,{DataView:r("7Qtz").DataView})},JiEa:function(t,n){n.f=Object.getOwnPropertySymbols},K0xU:function(t,n,r){var e=r("VTer")("wks"),i=r("ylqs"),o=r("dyZX").Symbol,u="function"==typeof o;(t.exports=function(t){return e[t]||(e[t]=u&&o[t]||(u?o:i)("Symbol."+t))}).store=e},KKXr:function(t,n,r){"use strict";var e=r("quPj"),i=r("y3w9"),o=r("69bn"),u=r("A5AN"),c=r("ne8i"),a=r("Xxuz"),f=r("Ugos"),s=r("eeVq"),l=Math.min,h=[].push,v="length",p=!s((function(){RegExp(4294967295,"y")}));r("IU+Z")("split",2,(function(t,n,r,s){var y;return y="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1)[v]||2!="ab".split(/(?:ab)*/)[v]||4!=".".split(/(.?)(.?)/)[v]||".".split(/()()/)[v]>1||"".split(/.?/)[v]?function(t,n){var i=String(this);if(void 0===t&&0===n)return[];if(!e(t))return r.call(i,t,n);for(var o,u,c,a=[],s=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),l=0,p=void 0===n?4294967295:n>>>0,y=new RegExp(t.source,s+"g");(o=f.call(y,i))&&!((u=y.lastIndex)>l&&(a.push(i.slice(l,o.index)),o[v]>1&&o.index<i[v]&&h.apply(a,o.slice(1)),c=o[0][v],l=u,a[v]>=p));)y.lastIndex===o.index&&y.lastIndex++;return l===i[v]?!c&&y.test("")||a.push(""):a.push(i.slice(l)),a[v]>p?a.slice(0,p):a}:"0".split(void 0,0)[v]?function(t,n){return void 0===t&&0===n?[]:r.call(this,t,n)}:r,[function(r,e){var i=t(this),o=null==r?void 0:r[n];return void 0!==o?o.call(r,i,e):y.call(String(i),r,e)},function(t,n){var e=s(y,t,this,n,y!==r);if(e.done)return e.value;var f=i(t),h=String(this),v=o(f,RegExp),g=f.unicode,d=(f.ignoreCase?"i":"")+(f.multiline?"m":"")+(f.unicode?"u":"")+(p?"y":"g"),x=new v(p?f:"^(?:"+f.source+")",d),m=void 0===n?4294967295:n>>>0;if(0===m)return[];if(0===h.length)return null===a(x,h)?[h]:[];for(var b=0,w=0,F=[];w<h.length;){x.lastIndex=p?w:0;var S,E=a(x,p?h:h.slice(w));if(null===E||(S=l(c(x.lastIndex+(p?0:w)),h.length))===b)w=u(h,w,g);else{if(F.push(h.slice(b,w)),F.length===m)return F;for(var O=1;O<=E.length-1;O++)if(F.push(E[O]),F.length===m)return F;w=b=S}}return F.push(h.slice(b)),F}]}))},KUxP:function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},KroJ:function(t,n,r){var e=r("dyZX"),i=r("Mukb"),o=r("aagx"),u=r("ylqs")("src"),c=r("+lvF"),a=(""+c).split("toString");r("g3g5").inspectSource=function(t){return c.call(t)},(t.exports=function(t,n,r,c){var f="function"==typeof r;f&&(o(r,"name")||i(r,"name",n)),t[n]!==r&&(f&&(o(r,u)||i(r,u,t[n]?""+t[n]:a.join(String(n)))),t===e?t[n]=r:c?t[n]?t[n]=r:i(t,n,r):(delete t[n],i(t,n,r)))})(Function.prototype,"toString",(function(){return"function"==typeof this&&this[u]||c.call(this)}))},Kuth:function(t,n,r){var e=r("y3w9"),i=r("FJW5"),o=r("4R4u"),u=r("YTvA")("IE_PROTO"),c=function(){},a=function(){var t,n=r("Iw71")("iframe"),e=o.length;for(n.style.display="none",r("+rLv").appendChild(n),n.src="javascript:",(t=n.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),a=t.F;e--;)delete a.prototype[o[e]];return a()};t.exports=Object.create||function(t,n){var r;return null!==t?(c.prototype=e(t),r=new c,c.prototype=null,r[u]=t):r=a(),void 0===n?r:i(r,n)}},L9s1:function(t,n,r){"use strict";var e=r("XKFU"),i=r("0sh+");e(e.P+e.F*r("UUeW")("includes"),"String",{includes:function(t){return!!~i(this,t,"includes").indexOf(t,arguments.length>1?arguments[1]:void 0)}})},LK8F:function(t,n,r){var e=r("XKFU");e(e.S,"Array",{isArray:r("EWmC")})},LQAc:function(t,n){t.exports=!1},LTTk:function(t,n,r){var e=r("XKFU"),i=r("OP3Y"),o=r("y3w9");e(e.S,"Reflect",{getPrototypeOf:function(t){return i(o(t))}})},LVwc:function(t,n){var r=Math.expm1;t.exports=!r||r(10)>22025.465794806718||r(10)<22025.465794806718||-2e-17!=r(-2e-17)?function(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:Math.exp(t)-1}:r},LZWt:function(t,n){var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},Lgjv:function(t,n,r){var e=r("ne8i"),i=r("l0Rn"),o=r("vhPU");t.exports=function(t,n,r,u){var c=String(o(t)),a=c.length,f=void 0===r?" ":String(r),s=e(n);if(s<=a||""==f)return c;var l=s-a,h=i.call(f,Math.ceil(l/f.length));return h.length>l&&(h=h.slice(0,l)),u?h+c:c+h}},Ljet:function(t,n,r){var e=r("XKFU");e(e.S,"Number",{EPSILON:Math.pow(2,-52)})},LyE8:function(t,n,r){"use strict";var e=r("eeVq");t.exports=function(t,n){return!!t&&e((function(){n?t.call(null,(function(){}),1):t.call(null)}))}},M6Qj:function(t,n,r){var e=r("hPIQ"),i=r("K0xU")("iterator"),o=Array.prototype;t.exports=function(t){return void 0!==t&&(e.Array===t||o[i]===t)}},MfQN:function(t,n){t.exports=function(t,n,r){var e=void 0===r;switch(n.length){case 0:return e?t():t.call(r);case 1:return e?t(n[0]):t.call(r,n[0]);case 2:return e?t(n[0],n[1]):t.call(r,n[0],n[1]);case 3:return e?t(n[0],n[1],n[2]):t.call(r,n[0],n[1],n[2]);case 4:return e?t(n[0],n[1],n[2],n[3]):t.call(r,n[0],n[1],n[2],n[3])}return t.apply(r,n)}},MtdB:function(t,n,r){var e=r("XKFU");e(e.S,"Math",{clz32:function(t){return(t>>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},Mukb:function(t,n,r){var e=r("hswa"),i=r("RjD/");t.exports=r("nh4g")?function(t,n,r){return e.f(t,n,i(1,r))}:function(t,n,r){return t[n]=r,t}},N8g3:function(t,n,r){n.f=r("K0xU")},NO8f:function(t,n,r){r("7DDg")("Uint8",1,(function(t){return function(n,r,e){return t(this,n,r,e)}}))},NegM:function(t,n,r){var e=r("2faE"),i=r("rr1i");t.exports=r("jmDH")?function(t,n,r){return e.f(t,n,i(1,r))}:function(t,n,r){return t[n]=r,t}},Nr18:function(t,n,r){"use strict";var e=r("S/j/"),i=r("d/Gc"),o=r("ne8i");t.exports=function(t){for(var n=e(this),r=o(n.length),u=arguments.length,c=i(u>1?arguments[1]:void 0,r),a=u>2?arguments[2]:void 0,f=void 0===a?r:i(a,r);f>c;)n[c++]=t;return n}},Nz9U:function(t,n,r){"use strict";var e=r("XKFU"),i=r("aCFj"),o=[].join;e(e.P+e.F*(r("Ymqv")!=Object||!r("LyE8")(o)),"Array",{join:function(t){return o.call(i(this),void 0===t?",":t)}})},OEbY:function(t,n,r){r("nh4g")&&"g"!=/./g.flags&&r("hswa").f(RegExp.prototype,"flags",{configurable:!0,get:r("C/va")})},OG14:function(t,n,r){"use strict";var e=r("y3w9"),i=r("g6HL"),o=r("Xxuz");r("IU+Z")("search",1,(function(t,n,r,u){return[function(r){var e=t(this),i=null==r?void 0:r[n];return void 0!==i?i.call(r,e):new RegExp(r)[n](String(e))},function(t){var n=u(r,t,this);if(n.done)return n.value;var c=e(t),a=String(this),f=c.lastIndex;i(f,0)||(c.lastIndex=0);var s=o(c,a);return i(c.lastIndex,f)||(c.lastIndex=f),null===s?-1:s.index}]}))},OGtf:function(t,n,r){var e=r("XKFU"),i=r("eeVq"),o=r("vhPU"),u=/"/g,c=function(t,n,r,e){var i=String(o(t)),c="<"+n;return""!==r&&(c+=" "+r+'="'+String(e).replace(u,""")+'"'),c+">"+i+"</"+n+">"};t.exports=function(t,n){var r={};r[t]=n(c),e(e.P+e.F*i((function(){var n=""[t]('"');return n!==n.toLowerCase()||n.split('"').length>3})),"String",r)}},OP3Y:function(t,n,r){var e=r("aagx"),i=r("S/j/"),o=r("YTvA")("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=i(t),e(t,o)?t[o]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},OnI7:function(t,n,r){var e=r("dyZX"),i=r("g3g5"),o=r("LQAc"),u=r("N8g3"),c=r("hswa").f;t.exports=function(t){var n=i.Symbol||(i.Symbol=o?{}:e.Symbol||{});"_"==t.charAt(0)||t in n||c(n,t,{value:u.f(t)})}},Oyvg:function(t,n,r){var e=r("dyZX"),i=r("Xbzi"),o=r("hswa").f,u=r("kJMx").f,c=r("quPj"),a=r("C/va"),f=e.RegExp,s=f,l=f.prototype,h=/a/g,v=/a/g,p=new f(h)!==h;if(r("nh4g")&&(!p||r("eeVq")((function(){return v[r("K0xU")("match")]=!1,f(h)!=h||f(v)==v||"/a/i"!=f(h,"i")})))){f=function(t,n){var r=this instanceof f,e=c(t),o=void 0===n;return!r&&e&&t.constructor===f&&o?t:i(p?new s(e&&!o?t.source:t,n):s((e=t instanceof f)?t.source:t,e&&o?a.call(t):n),r?this:l,f)};for(var y=function(t){t in f||o(f,t,{configurable:!0,get:function(){return s[t]},set:function(n){s[t]=n}})},g=u(s),d=0;g.length>d;)y(g[d++]);l.constructor=f,f.prototype=l,r("KroJ")(e,"RegExp",f)}r("elZq")("RegExp")},PKUr:function(t,n,r){var e=r("dyZX").parseInt,i=r("qncB").trim,o=r("/e88"),u=/^[-+]?0[xX]/;t.exports=8!==e(o+"08")||22!==e(o+"0x16")?function(t,n){var r=i(String(t),3);return e(r,n>>>0||(u.test(r)?16:10))}:e},QNwp:function(t,n,r){r("7VC1"),t.exports=r("g3g5").String.padEnd},QaDb:function(t,n,r){"use strict";var e=r("Kuth"),i=r("RjD/"),o=r("fyDq"),u={};r("Mukb")(u,r("K0xU")("iterator"),(function(){return this})),t.exports=function(t,n,r){t.prototype=e(u,{next:i(1,r)}),o(t,n+" Iterator")}},R5XZ:function(t,n,r){var e=r("dyZX"),i=r("XKFU"),o=r("ol8x"),u=[].slice,c=/MSIE .\./.test(o),a=function(t){return function(n,r){var e=arguments.length>2,i=!!e&&u.call(arguments,2);return t(e?function(){("function"==typeof n?n:Function(n)).apply(this,i)}:n,r)}};i(i.G+i.B+i.F*c,{setTimeout:a(e.setTimeout),setInterval:a(e.setInterval)})},RW0V:function(t,n,r){var e=r("S/j/"),i=r("DVgA");r("Xtr8")("keys",(function(){return function(t){return i(e(t))}}))},RYi7:function(t,n){var r=Math.ceil,e=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?e:r)(t)}},"RjD/":function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},"S/j/":function(t,n,r){var e=r("vhPU");t.exports=function(t){return Object(e(t))}},SMB2:function(t,n,r){"use strict";r("OGtf")("bold",(function(t){return function(){return t(this,"b","","")}}))},SPin:function(t,n,r){"use strict";var e=r("XKFU"),i=r("eyMr");e(e.P+e.F*!r("LyE8")([].reduceRight,!0),"Array",{reduceRight:function(t){return i(this,t,arguments.length,arguments[1],!0)}})},SRfc:function(t,n,r){"use strict";var e=r("y3w9"),i=r("ne8i"),o=r("A5AN"),u=r("Xxuz");r("IU+Z")("match",1,(function(t,n,r,c){return[function(r){var e=t(this),i=null==r?void 0:r[n];return void 0!==i?i.call(r,e):new RegExp(r)[n](String(e))},function(t){var n=c(r,t,this);if(n.done)return n.value;var a=e(t),f=String(this);if(!a.global)return u(a,f);var s=a.unicode;a.lastIndex=0;for(var l,h=[],v=0;null!==(l=u(a,f));){var p=String(l[0]);h[v]=p,""===p&&(a.lastIndex=o(f,i(a.lastIndex),s)),v++}return 0===v?null:h}]}))},SlkY:function(t,n,r){var e=r("m0Pp"),i=r("H6hf"),o=r("M6Qj"),u=r("y3w9"),c=r("ne8i"),a=r("J+6e"),f={},s={};(n=t.exports=function(t,n,r,l,h){var v,p,y,g,d=h?function(){return t}:a(t),x=e(r,l,n?2:1),m=0;if("function"!=typeof d)throw TypeError(t+" is not iterable!");if(o(d)){for(v=c(t.length);v>m;m++)if((g=n?x(u(p=t[m])[0],p[1]):x(t[m]))===f||g===s)return g}else for(y=d.call(t);!(p=y.next()).done;)if((g=i(y,x,p.value,n))===f||g===s)return g}).BREAK=f,n.RETURN=s},T39b:function(t,n,r){"use strict";var e=r("wmvG"),i=r("s5qY");t.exports=r("4LiD")("Set",(function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}}),{add:function(t){return e.def(i(this,"Set"),t=0===t?0:t,t)}},e)},TIpR:function(t,n,r){"use strict";r("VRzm"),r("CX2u"),t.exports=r("g3g5").Promise.finally},Tdpu:function(t,n,r){r("7DDg")("Float64",8,(function(t){return function(n,r,e){return t(this,n,r,e)}}))},Tze0:function(t,n,r){"use strict";r("qncB")("trim",(function(t){return function(){return t(this,3)}}))},U2t9:function(t,n,r){var e=r("XKFU"),i=Math.asinh;e(e.S+e.F*!(i&&1/i(0)>0),"Math",{asinh:function t(n){return isFinite(n=+n)&&0!=n?n<0?-t(-n):Math.log(n+Math.sqrt(n*n+1)):n}})},UExd:function(t,n,r){var e=r("nh4g"),i=r("DVgA"),o=r("aCFj"),u=r("UqcF").f;t.exports=function(t){return function(n){for(var r,c=o(n),a=i(c),f=a.length,s=0,l=[];f>s;)r=a[s++],e&&!u.call(c,r)||l.push(t?[r,c[r]]:c[r]);return l}}},UUeW:function(t,n,r){var e=r("K0xU")("match");t.exports=function(t){var n=/./;try{"/./"[t](n)}catch(r){try{return n[e]=!1,!"/./"[t](n)}catch(t){}}return!0}},Ugos:function(t,n,r){"use strict";var e,i,o=r("C/va"),u=RegExp.prototype.exec,c=String.prototype.replace,a=u,f=(e=/a/,i=/b*/g,u.call(e,"a"),u.call(i,"a"),0!==e.lastIndex||0!==i.lastIndex),s=void 0!==/()??/.exec("")[1];(f||s)&&(a=function(t){var n,r,e,i,a=this;return s&&(r=new RegExp("^"+a.source+"$(?!\\s)",o.call(a))),f&&(n=a.lastIndex),e=u.call(a,t),f&&e&&(a.lastIndex=a.global?e.index+e[0].length:n),s&&e&&e.length>1&&c.call(e[0],r,(function(){for(i=1;i<arguments.length-2;i++)void 0===arguments[i]&&(e[i]=void 0)})),e}),t.exports=a},UqcF:function(t,n){n.f={}.propertyIsEnumerable},"V+eJ":function(t,n,r){"use strict";var e=r("XKFU"),i=r("w2a5")(!1),o=[].indexOf,u=!!o&&1/[1].indexOf(1,-0)<0;e(e.P+e.F*(u||!r("LyE8")(o)),"Array",{indexOf:function(t){return u?o.apply(this,arguments)||0:i(this,t,arguments[1])}})},"V/DX":function(t,n,r){var e=r("0/R4");r("Xtr8")("isSealed",(function(t){return function(n){return!e(n)||!!t&&t(n)}}))},VKir:function(t,n,r){"use strict";var e=r("XKFU"),i=r("eeVq"),o=r("vvmO"),u=1..toPrecision;e(e.P+e.F*(i((function(){return"1"!==u.call(1,void 0)}))||!i((function(){u.call({})}))),"Number",{toPrecision:function(t){var n=o(this,"Number#toPrecision: incorrect invocation!");return void 0===t?u.call(n):u.call(n,t)}})},VRzm:function(t,n,r){"use strict";var e,i,o,u,c=r("LQAc"),a=r("dyZX"),f=r("m0Pp"),s=r("I8a+"),l=r("XKFU"),h=r("0/R4"),v=r("2OiF"),p=r("9gX7"),y=r("SlkY"),g=r("69bn"),d=r("GZEu").set,x=r("gHnn")(),m=r("pbhE"),b=r("nICZ"),w=r("ol8x"),F=r("vKrd"),S=a.TypeError,E=a.process,O=E&&E.versions,U=O&&O.v8||"",_=a.Promise,P="process"==s(E),M=function(){},K=i=m.f,j=!!function(){try{var t=_.resolve(1),n=(t.constructor={})[r("K0xU")("species")]=function(t){t(M,M)};return(P||"function"==typeof PromiseRejectionEvent)&&t.then(M)instanceof n&&0!==U.indexOf("6.6")&&-1===w.indexOf("Chrome/66")}catch(t){}}(),X=function(t){var n;return!(!h(t)||"function"!=typeof(n=t.then))&&n},A=function(t,n){if(!t._n){t._n=!0;var r=t._c;x((function(){for(var e=t._v,i=1==t._s,o=0,u=function(n){var r,o,u,c=i?n.ok:n.fail,a=n.resolve,f=n.reject,s=n.domain;try{c?(i||(2==t._h&&L(t),t._h=1),!0===c?r=e:(s&&s.enter(),r=c(e),s&&(s.exit(),u=!0)),r===n.promise?f(S("Promise-chain cycle")):(o=X(r))?o.call(r,a,f):a(r)):f(e)}catch(t){s&&!u&&s.exit(),f(t)}};r.length>o;)u(r[o++]);t._c=[],t._n=!1,n&&!t._h&&I(t)}))}},I=function(t){d.call(a,(function(){var n,r,e,i=t._v,o=T(t);if(o&&(n=b((function(){P?E.emit("unhandledRejection",i,t):(r=a.onunhandledrejection)?r({promise:t,reason:i}):(e=a.console)&&e.error&&e.error("Unhandled promise rejection",i)})),t._h=P||T(t)?2:1),t._a=void 0,o&&n.e)throw n.v}))},T=function(t){return 1!==t._h&&0===(t._a||t._c).length},L=function(t){d.call(a,(function(){var n;P?E.emit("rejectionHandled",t):(n=a.onrejectionhandled)&&n({promise:t,reason:t._v})}))},R=function(t){var n=this;n._d||(n._d=!0,(n=n._w||n)._v=t,n._s=2,n._a||(n._a=n._c.slice()),A(n,!0))},N=function(t){var n,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===t)throw S("Promise can't be resolved itself");(n=X(t))?x((function(){var e={_w:r,_d:!1};try{n.call(t,f(N,e,1),f(R,e,1))}catch(t){R.call(e,t)}})):(r._v=t,r._s=1,A(r,!1))}catch(t){R.call({_w:r,_d:!1},t)}}};j||(_=function(t){p(this,_,"Promise","_h"),v(t),e.call(this);try{t(f(N,this,1),f(R,this,1))}catch(t){R.call(this,t)}},(e=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=r("3Lyj")(_.prototype,{then:function(t,n){var r=K(g(this,_));return r.ok="function"!=typeof t||t,r.fail="function"==typeof n&&n,r.domain=P?E.domain:void 0,this._c.push(r),this._a&&this._a.push(r),this._s&&A(this,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new e;this.promise=t,this.resolve=f(N,t,1),this.reject=f(R,t,1)},m.f=K=function(t){return t===_||t===u?new o(t):i(t)}),l(l.G+l.W+l.F*!j,{Promise:_}),r("fyDq")(_,"Promise"),r("elZq")("Promise"),u=r("g3g5").Promise,l(l.S+l.F*!j,"Promise",{reject:function(t){var n=K(this);return(0,n.reject)(t),n.promise}}),l(l.S+l.F*(c||!j),"Promise",{resolve:function(t){return F(c&&this===u?_:this,t)}}),l(l.S+l.F*!(j&&r("XMVh")((function(t){_.all(t).catch(M)}))),"Promise",{all:function(t){var n=this,r=K(n),e=r.resolve,i=r.reject,o=b((function(){var r=[],o=0,u=1;y(t,!1,(function(t){var c=o++,a=!1;r.push(void 0),u++,n.resolve(t).then((function(t){a||(a=!0,r[c]=t,--u||e(r))}),i)})),--u||e(r)}));return o.e&&i(o.v),r.promise},race:function(t){var n=this,r=K(n),e=r.reject,i=b((function(){y(t,!1,(function(t){n.resolve(t).then(r.resolve,e)}))}));return i.e&&e(i.v),r.promise}})},VTer:function(t,n,r){var e=r("g3g5"),i=r("dyZX"),o=i["__core-js_shared__"]||(i["__core-js_shared__"]={});(t.exports=function(t,n){return o[t]||(o[t]=void 0!==n?n:{})})("versions",[]).push({version:e.version,mode:r("LQAc")?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},Vd3H:function(t,n,r){"use strict";var e=r("XKFU"),i=r("2OiF"),o=r("S/j/"),u=r("eeVq"),c=[].sort,a=[1,2,3];e(e.P+e.F*(u((function(){a.sort(void 0)}))||!u((function(){a.sort(null)}))||!r("LyE8")(c)),"Array",{sort:function(t){return void 0===t?c.call(o(this)):c.call(o(this),i(t))}})},VpUO:function(t,n,r){var e=r("XKFU"),i=r("d/Gc"),o=String.fromCharCode,u=String.fromCodePoint;e(e.S+e.F*(!!u&&1!=u.length),"String",{fromCodePoint:function(t){for(var n,r=[],e=arguments.length,u=0;e>u;){if(n=+arguments[u++],i(n,1114111)!==n)throw RangeError(n+" is not a valid code point");r.push(n<65536?o(n):o(55296+((n-=65536)>>10),n%1024+56320))}return r.join("")}})},VsWn:function(t,n,r){r("7PI8"),t.exports=r("WEpk").global},W9dy:function(t,n,r){r("ioFf"),r("hHhE"),r("HAE/"),r("WLL4"),r("mYba"),r("5Pf0"),r("RW0V"),r("JduL"),r("DW2E"),r("z2o2"),r("mura"),r("Zshi"),r("V/DX"),r("FlsD"),r("91GP"),r("25dN"),r("/SS/"),r("Btvt"),r("2Spj"),r("f3/d"),r("IXt9"),r("GNAe"),r("tyy+"),r("xfY5"),r("A2zW"),r("VKir"),r("Ljet"),r("/KAi"),r("fN96"),r("7h0T"),r("sbF8"),r("h/M4"),r("knhD"),r("XfKG"),r("BP8U"),r("fyVe"),r("U2t9"),r("2atp"),r("+auO"),r("MtdB"),r("Jcmo"),r("nzyx"),r("BC7C"),r("x8ZO"),r("9P93"),r("eHKK"),r("BJ/l"),r("pp/T"),r("CyHz"),r("bBoP"),r("x8Yj"),r("hLT2"),r("VpUO"),r("eI33"),r("Tze0"),r("XfO3"),r("oDIu"),r("rvZc"),r("L9s1"),r("FLlr"),r("9VmF"),r("hEkN"),r("nIY7"),r("+oPb"),r("SMB2"),r("0mN4"),r("bDcW"),r("nsiH"),r("0LDn"),r("tUrg"),r("84bF"),r("FEjr"),r("Zz4T"),r("JCqj"),r("eM6i"),r("AphP"),r("jqX0"),r("h7Nl"),r("yM4b"),r("LK8F"),r("HEwt"),r("6AQ9"),r("Nz9U"),r("I78e"),r("Vd3H"),r("8+KV"),r("bWfx"),r("0l/t"),r("dZ+Y"),r("YJVH"),r("DNiP"),r("SPin"),r("V+eJ"),r("mGWK"),r("dE+T"),r("bHtr"),r("dRSK"),r("INYr"),r("0E+W"),r("yt8O"),r("Oyvg"),r("sMXx"),r("a1Th"),r("OEbY"),r("SRfc"),r("pIFo"),r("OG14"),r("KKXr"),r("VRzm"),r("9AAn"),r("T39b"),r("EK0E"),r("wCsR"),r("xm80"),r("Ji/l"),r("sFw1"),r("NO8f"),r("aqI/"),r("Faw5"),r("r1bV"),r("tuSo"),r("nCnK"),r("Y9lz"),r("Tdpu"),r("3xty"),r("I5cv"),r("iMoV"),r("uhZd"),r("f/aN"),r("0YWM"),r("694e"),r("LTTk"),r("9rMk"),r("IlFx"),r("xpiv"),r("oZ/O"),r("klPD"),r("knU9"),t.exports=r("g3g5")},WEpk:function(t,n){var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},WLL4:function(t,n,r){var e=r("XKFU");e(e.S+e.F*!r("nh4g"),"Object",{defineProperties:r("FJW5")})},XKFU:function(t,n,r){var e=r("dyZX"),i=r("g3g5"),o=r("Mukb"),u=r("KroJ"),c=r("m0Pp"),a=function(t,n,r){var f,s,l,h,v=t&a.F,p=t&a.G,y=t&a.S,g=t&a.P,d=t&a.B,x=p?e:y?e[n]||(e[n]={}):(e[n]||{}).prototype,m=p?i:i[n]||(i[n]={}),b=m.prototype||(m.prototype={});for(f in p&&(r=n),r)l=((s=!v&&x&&void 0!==x[f])?x:r)[f],h=d&&s?c(l,e):g&&"function"==typeof l?c(Function.call,l):l,x&&u(x,f,l,t&a.U),m[f]!=l&&o(m,f,h),g&&b[f]!=l&&(b[f]=l)};e.core=i,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,t.exports=a},XMVh:function(t,n,r){var e=r("K0xU")("iterator"),i=!1;try{var o=[7][e]();o.return=function(){i=!0},Array.from(o,(function(){throw 2}))}catch(t){}t.exports=function(t,n){if(!n&&!i)return!1;var r=!1;try{var o=[7],u=o[e]();u.next=function(){return{done:r=!0}},o[e]=function(){return u},t(o)}catch(t){}return r}},Xbzi:function(t,n,r){var e=r("0/R4"),i=r("i5dc").set;t.exports=function(t,n,r){var o,u=n.constructor;return u!==r&&"function"==typeof u&&(o=u.prototype)!==r.prototype&&e(o)&&i&&i(t,o),t}},XfKG:function(t,n,r){var e=r("XKFU"),i=r("11IZ");e(e.S+e.F*(Number.parseFloat!=i),"Number",{parseFloat:i})},XfO3:function(t,n,r){"use strict";var e=r("AvRE")(!0);r("Afnz")(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,n=this._t,r=this._i;return r>=n.length?{value:void 0,done:!0}:(t=e(n,r),this._i+=t.length,{value:t,done:!1})}))},Xtr8:function(t,n,r){var e=r("XKFU"),i=r("g3g5"),o=r("eeVq");t.exports=function(t,n){var r=(i.Object||{})[t]||Object[t],u={};u[t]=n(r),e(e.S+e.F*o((function(){r(1)})),"Object",u)}},Xxuz:function(t,n,r){"use strict";var e=r("I8a+"),i=RegExp.prototype.exec;t.exports=function(t,n){var r=t.exec;if("function"==typeof r){var o=r.call(t,n);if("object"!=typeof o)throw new TypeError("RegExp exec method returned something other than an Object or null");return o}if("RegExp"!==e(t))throw new TypeError("RegExp#exec called on incompatible receiver");return i.call(t,n)}},Y7ZC:function(t,n,r){var e=r("5T2Y"),i=r("WEpk"),o=r("2GTP"),u=r("NegM"),c=r("B+OT"),a=function(t,n,r){var f,s,l,h=t&a.F,v=t&a.G,p=t&a.S,y=t&a.P,g=t&a.B,d=t&a.W,x=v?i:i[n]||(i[n]={}),m=x.prototype,b=v?e:p?e[n]:(e[n]||{}).prototype;for(f in v&&(r=n),r)(s=!h&&b&&void 0!==b[f])&&c(x,f)||(l=s?b[f]:r[f],x[f]=v&&"function"!=typeof b[f]?r[f]:g&&s?o(l,e):d&&b[f]==l?function(t){var n=function(n,r,e){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(n);case 2:return new t(n,r)}return new t(n,r,e)}return t.apply(this,arguments)};return n.prototype=t.prototype,n}(l):y&&"function"==typeof l?o(Function.call,l):l,y&&((x.virtual||(x.virtual={}))[f]=l,t&a.R&&m&&!m[f]&&u(m,f,l)))};a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,t.exports=a},Y9lz:function(t,n,r){r("7DDg")("Float32",4,(function(t){return function(n,r,e){return t(this,n,r,e)}}))},YJVH:function(t,n,r){"use strict";var e=r("XKFU"),i=r("CkkT")(4);e(e.P+e.F*!r("LyE8")([].every,!0),"Array",{every:function(t){return i(this,t,arguments[1])}})},YTvA:function(t,n,r){var e=r("VTer")("keys"),i=r("ylqs");t.exports=function(t){return e[t]||(e[t]=i(t))}},Ymqv:function(t,n,r){var e=r("LZWt");t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==e(t)?t.split(""):Object(t)}},Yp8f:function(t,n,r){r("6VaU"),t.exports=r("g3g5").Array.flatMap},Z2Ku:function(t,n,r){"use strict";var e=r("XKFU"),i=r("w2a5")(!0);e(e.P,"Array",{includes:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),r("nGyu")("includes")},Z6vF:function(t,n,r){var e=r("ylqs")("meta"),i=r("0/R4"),o=r("aagx"),u=r("hswa").f,c=0,a=Object.isExtensible||function(){return!0},f=!r("eeVq")((function(){return a(Object.preventExtensions({}))})),s=function(t){u(t,e,{value:{i:"O"+ ++c,w:{}}})},l=t.exports={KEY:e,NEED:!1,fastKey:function(t,n){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!o(t,e)){if(!a(t))return"F";if(!n)return"E";s(t)}return t[e].i},getWeak:function(t,n){if(!o(t,e)){if(!a(t))return!0;if(!n)return!1;s(t)}return t[e].w},onFreeze:function(t){return f&&l.NEED&&a(t)&&!o(t,e)&&s(t),t}}},ZD67:function(t,n,r){"use strict";var e=r("3Lyj"),i=r("Z6vF").getWeak,o=r("y3w9"),u=r("0/R4"),c=r("9gX7"),a=r("SlkY"),f=r("CkkT"),s=r("aagx"),l=r("s5qY"),h=f(5),v=f(6),p=0,y=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},d=function(t,n){return h(t.a,(function(t){return t[0]===n}))};g.prototype={get:function(t){var n=d(this,t);if(n)return n[1]},has:function(t){return!!d(this,t)},set:function(t,n){var r=d(this,t);r?r[1]=n:this.a.push([t,n])},delete:function(t){var n=v(this.a,(function(n){return n[0]===t}));return~n&&this.a.splice(n,1),!!~n}},t.exports={getConstructor:function(t,n,r,o){var f=t((function(t,e){c(t,f,n,"_i"),t._t=n,t._i=p++,t._l=void 0,null!=e&&a(e,r,t[o],t)}));return e(f.prototype,{delete:function(t){if(!u(t))return!1;var r=i(t);return!0===r?y(l(this,n)).delete(t):r&&s(r,this._i)&&delete r[this._i]},has:function(t){if(!u(t))return!1;var r=i(t);return!0===r?y(l(this,n)).has(t):r&&s(r,this._i)}}),f},def:function(t,n,r){var e=i(o(n),!0);return!0===e?y(t).set(n,r):e[t._i]=r,t},ufstore:y}},Zshi:function(t,n,r){var e=r("0/R4");r("Xtr8")("isFrozen",(function(t){return function(n){return!e(n)||!!t&&t(n)}}))},Zz4T:function(t,n,r){"use strict";r("OGtf")("sub",(function(t){return function(){return t(this,"sub","","")}}))},a1Th:function(t,n,r){"use strict";r("OEbY");var e=r("y3w9"),i=r("C/va"),o=r("nh4g"),u=/./.toString,c=function(t){r("KroJ")(RegExp.prototype,"toString",t,!0)};r("eeVq")((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))?c((function(){var t=e(this);return"/".concat(t.source,"/","flags"in t?t.flags:!o&&t instanceof RegExp?i.call(t):void 0)})):"toString"!=u.name&&c((function(){return u.call(this)}))},aCFj:function(t,n,r){var e=r("Ymqv"),i=r("vhPU");t.exports=function(t){return e(i(t))}},aagx:function(t,n){var r={}.hasOwnProperty;t.exports=function(t,n){return r.call(t,n)}},apmT:function(t,n,r){var e=r("0/R4");t.exports=function(t,n){if(!e(t))return t;var r,i;if(n&&"function"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;if("function"==typeof(r=t.valueOf)&&!e(i=r.call(t)))return i;if(!n&&"function"==typeof(r=t.toString)&&!e(i=r.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},"aqI/":function(t,n,r){r("7DDg")("Uint8",1,(function(t){return function(n,r,e){return t(this,n,r,e)}}),!0)},bBoP:function(t,n,r){var e=r("XKFU"),i=r("LVwc"),o=Math.exp;e(e.S+e.F*r("eeVq")((function(){return-2e-17!=!Math.sinh(-2e-17)})),"Math",{sinh:function(t){return Math.abs(t=+t)<1?(i(t)-i(-t))/2:(o(t-1)-o(-t-1))*(Math.E/2)}})},bDcW:function(t,n,r){"use strict";r("OGtf")("fontcolor",(function(t){return function(n){return t(this,"font","color",n)}}))},bHtr:function(t,n,r){var e=r("XKFU");e(e.P,"Array",{fill:r("Nr18")}),r("nGyu")("fill")},bWfx:function(t,n,r){"use strict";var e=r("XKFU"),i=r("CkkT")(1);e(e.P+e.F*!r("LyE8")([].map,!0),"Array",{map:function(t){return i(this,t,arguments[1])}})},czNK:function(t,n,r){"use strict";var e=r("nh4g"),i=r("DVgA"),o=r("JiEa"),u=r("UqcF"),c=r("S/j/"),a=r("Ymqv"),f=Object.assign;t.exports=!f||r("eeVq")((function(){var t={},n={},r=Symbol(),e="abcdefghijklmnopqrst";return t[r]=7,e.split("").forEach((function(t){n[t]=t})),7!=f({},t)[r]||Object.keys(f({},n)).join("")!=e}))?function(t,n){for(var r=c(t),f=arguments.length,s=1,l=o.f,h=u.f;f>s;)for(var v,p=a(arguments[s++]),y=l?i(p).concat(l(p)):i(p),g=y.length,d=0;g>d;)v=y[d++],e&&!h.call(p,v)||(r[v]=p[v]);return r}:f},"d/Gc":function(t,n,r){var e=r("RYi7"),i=Math.max,o=Math.min;t.exports=function(t,n){return(t=e(t))<0?i(t+n,0):o(t,n)}},"dE+T":function(t,n,r){var e=r("XKFU");e(e.P,"Array",{copyWithin:r("upKx")}),r("nGyu")("copyWithin")},dRSK:function(t,n,r){"use strict";var e=r("XKFU"),i=r("CkkT")(5),o=!0;"find"in[]&&Array(1).find((function(){o=!1})),e(e.P+e.F*o,"Array",{find:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),r("nGyu")("find")},"dZ+Y":function(t,n,r){"use strict";var e=r("XKFU"),i=r("CkkT")(3);e(e.P+e.F*!r("LyE8")([].some,!0),"Array",{some:function(t){return i(this,t,arguments[1])}})},dyZX:function(t,n){var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},e7yV:function(t,n,r){var e=r("aCFj"),i=r("kJMx").f,o={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return u&&"[object Window]"==o.call(t)?function(t){try{return i(t)}catch(t){return u.slice()}}(t):i(e(t))}},eHKK:function(t,n,r){var e=r("XKFU");e(e.S,"Math",{log10:function(t){return Math.log(t)*Math.LOG10E}})},eI33:function(t,n,r){var e=r("XKFU"),i=r("aCFj"),o=r("ne8i");e(e.S,"String",{raw:function(t){for(var n=i(t.raw),r=o(n.length),e=arguments.length,u=[],c=0;r>c;)u.push(String(n[c++])),c<e&&u.push(String(arguments[c]));return u.join("")}})},eM6i:function(t,n,r){var e=r("XKFU");e(e.S,"Date",{now:function(){return(new Date).getTime()}})},eUtF:function(t,n,r){t.exports=!r("jmDH")&&!r("KUxP")((function(){return 7!=Object.defineProperty(r("Hsns")("div"),"a",{get:function(){return 7}}).a}))},eaoh:function(t,n){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},eeVq:function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},elZq:function(t,n,r){"use strict";var e=r("dyZX"),i=r("hswa"),o=r("nh4g"),u=r("K0xU")("species");t.exports=function(t){var n=e[t];o&&n&&!n[u]&&i.f(n,u,{configurable:!0,get:function(){return this}})}},eyMr:function(t,n,r){var e=r("2OiF"),i=r("S/j/"),o=r("Ymqv"),u=r("ne8i");t.exports=function(t,n,r,c,a){e(n);var f=i(t),s=o(f),l=u(f.length),h=a?l-1:0,v=a?-1:1;if(r<2)for(;;){if(h in s){c=s[h],h+=v;break}if(h+=v,a?h<0:l<=h)throw TypeError("Reduce of empty array with no initial value")}for(;a?h>=0:l>h;h+=v)h in s&&(c=n(c,s[h],h,f));return c}},"f/aN":function(t,n,r){"use strict";var e=r("XKFU"),i=r("y3w9"),o=function(t){this._t=i(t),this._i=0;var n,r=this._k=[];for(n in t)r.push(n)};r("QaDb")(o,"Object",(function(){var t,n=this._k;do{if(this._i>=n.length)return{value:void 0,done:!0}}while(!((t=n[this._i++])in this._t));return{value:t,done:!1}})),e(e.S,"Reflect",{enumerate:function(t){return new o(t)}})},"f3/d":function(t,n,r){var e=r("hswa").f,i=Function.prototype,o=/^\s*function ([^ (]*)/;"name"in i||r("nh4g")&&e(i,"name",{configurable:!0,get:function(){try{return(""+this).match(o)[1]}catch(t){return""}}})},fA63:function(t,n,r){"use strict";r("qncB")("trimRight",(function(t){return function(){return t(this,2)}}),"trimEnd")},fN96:function(t,n,r){var e=r("XKFU");e(e.S,"Number",{isInteger:r("nBIS")})},fyDq:function(t,n,r){var e=r("hswa").f,i=r("aagx"),o=r("K0xU")("toStringTag");t.exports=function(t,n,r){t&&!i(t=r?t:t.prototype,o)&&e(t,o,{configurable:!0,value:n})}},fyVe:function(t,n,r){var e=r("XKFU"),i=r("1sa7"),o=Math.sqrt,u=Math.acosh;e(e.S+e.F*!(u&&710==Math.floor(u(Number.MAX_VALUE))&&u(1/0)==1/0),"Math",{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?Math.log(t)+Math.LN2:i(t-1+o(t-1)*o(t+1))}})},g2aq:function(t,n,r){"use strict";r("W9dy"),r("FDph"),r("Yp8f"),r("wYy3"),r("QNwp"),r("Izvi"),r("ln0Z"),r("wDwx"),r("+Xmh"),r("zFFn"),r("JbTB"),r("TIpR"),r("FxUG"),r("ls82")},g3g5:function(t,n){var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},g4EE:function(t,n,r){"use strict";var e=r("y3w9"),i=r("apmT");t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return i(e(this),"number"!=t)}},g6HL:function(t,n){t.exports=Object.is||function(t,n){return t===n?0!==t||1/t==1/n:t!=t&&n!=n}},gHnn:function(t,n,r){var e=r("dyZX"),i=r("GZEu").set,o=e.MutationObserver||e.WebKitMutationObserver,u=e.process,c=e.Promise,a="process"==r("LZWt")(u);t.exports=function(){var t,n,r,f=function(){var e,i;for(a&&(e=u.domain)&&e.exit();t;){i=t.fn,t=t.next;try{i()}catch(e){throw t?r():n=void 0,e}}n=void 0,e&&e.enter()};if(a)r=function(){u.nextTick(f)};else if(!o||e.navigator&&e.navigator.standalone)if(c&&c.resolve){var s=c.resolve(void 0);r=function(){s.then(f)}}else r=function(){i.call(e,f)};else{var l=!0,h=document.createTextNode("");new o(f).observe(h,{characterData:!0}),r=function(){h.data=l=!l}}return function(e){var i={fn:e,next:void 0};n&&(n.next=i),t||(t=i,r()),n=i}}},"h/M4":function(t,n,r){var e=r("XKFU");e(e.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},h7Nl:function(t,n,r){var e=Date.prototype,i=e.toString,o=e.getTime;new Date(NaN)+""!="Invalid Date"&&r("KroJ")(e,"toString",(function(){var t=o.call(this);return t==t?i.call(this):"Invalid Date"}))},hEkN:function(t,n,r){"use strict";r("OGtf")("anchor",(function(t){return function(n){return t(this,"a","name",n)}}))},hHhE:function(t,n,r){var e=r("XKFU");e(e.S,"Object",{create:r("Kuth")})},hLT2:function(t,n,r){var e=r("XKFU");e(e.S,"Math",{trunc:function(t){return(t>0?Math.floor:Math.ceil)(t)}})},hPIQ:function(t,n){t.exports={}},hhXQ:function(t,n,r){var e=r("XKFU"),i=r("UExd")(!1);e(e.S,"Object",{values:function(t){return i(t)}})},hswa:function(t,n,r){var e=r("y3w9"),i=r("xpql"),o=r("apmT"),u=Object.defineProperty;n.f=r("nh4g")?Object.defineProperty:function(t,n,r){if(e(t),n=o(n,!0),e(r),i)try{return u(t,n,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[n]=r.value),t}},i5dc:function(t,n,r){var e=r("0/R4"),i=r("y3w9"),o=function(t,n){if(i(t),!e(n)&&null!==n)throw TypeError(n+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,n,e){try{(e=r("m0Pp")(Function.call,r("EemH").f(Object.prototype,"__proto__").set,2))(t,[]),n=!(t instanceof Array)}catch(t){n=!0}return function(t,r){return o(t,r),n?t.__proto__=r:e(t,r),t}}({},!1):void 0),check:o}},iMoV:function(t,n,r){var e=r("hswa"),i=r("XKFU"),o=r("y3w9"),u=r("apmT");i(i.S+i.F*r("eeVq")((function(){Reflect.defineProperty(e.f({},1,{value:1}),1,{value:2})})),"Reflect",{defineProperty:function(t,n,r){o(t),n=u(n,!0),o(r);try{return e.f(t,n,r),!0}catch(t){return!1}}})},ioFf:function(t,n,r){"use strict";var e=r("dyZX"),i=r("aagx"),o=r("nh4g"),u=r("XKFU"),c=r("KroJ"),a=r("Z6vF").KEY,f=r("eeVq"),s=r("VTer"),l=r("fyDq"),h=r("ylqs"),v=r("K0xU"),p=r("N8g3"),y=r("OnI7"),g=r("1MBn"),d=r("EWmC"),x=r("y3w9"),m=r("0/R4"),b=r("S/j/"),w=r("aCFj"),F=r("apmT"),S=r("RjD/"),E=r("Kuth"),O=r("e7yV"),U=r("EemH"),_=r("JiEa"),P=r("hswa"),M=r("DVgA"),K=U.f,j=P.f,X=O.f,A=e.Symbol,I=e.JSON,T=I&&I.stringify,L=v("_hidden"),R=v("toPrimitive"),N={}.propertyIsEnumerable,k=s("symbol-registry"),D=s("symbols"),V=s("op-symbols"),C=Object.prototype,q="function"==typeof A&&!!_.f,Z=e.QObject,W=!Z||!Z.prototype||!Z.prototype.findChild,G=o&&f((function(){return 7!=E(j({},"a",{get:function(){return j(this,"a",{value:7}).a}})).a}))?function(t,n,r){var e=K(C,n);e&&delete C[n],j(t,n,r),e&&t!==C&&j(C,n,e)}:j,Y=function(t){var n=D[t]=E(A.prototype);return n._k=t,n},B=q&&"symbol"==typeof A.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof A},z=function(t,n,r){return t===C&&z(V,n,r),x(t),n=F(n,!0),x(r),i(D,n)?(r.enumerable?(i(t,L)&&t[L][n]&&(t[L][n]=!1),r=E(r,{enumerable:S(0,!1)})):(i(t,L)||j(t,L,S(1,{})),t[L][n]=!0),G(t,n,r)):j(t,n,r)},J=function(t,n){x(t);for(var r,e=g(n=w(n)),i=0,o=e.length;o>i;)z(t,r=e[i++],n[r]);return t},H=function(t){var n=N.call(this,t=F(t,!0));return!(this===C&&i(D,t)&&!i(V,t))&&(!(n||!i(this,t)||!i(D,t)||i(this,L)&&this[L][t])||n)},Q=function(t,n){if(t=w(t),n=F(n,!0),t!==C||!i(D,n)||i(V,n)){var r=K(t,n);return!r||!i(D,n)||i(t,L)&&t[L][n]||(r.enumerable=!0),r}},$=function(t){for(var n,r=X(w(t)),e=[],o=0;r.length>o;)i(D,n=r[o++])||n==L||n==a||e.push(n);return e},tt=function(t){for(var n,r=t===C,e=X(r?V:w(t)),o=[],u=0;e.length>u;)!i(D,n=e[u++])||r&&!i(C,n)||o.push(D[n]);return o};q||(c((A=function(){if(this instanceof A)throw TypeError("Symbol is not a constructor!");var t=h(arguments.length>0?arguments[0]:void 0),n=function(r){this===C&&n.call(V,r),i(this,L)&&i(this[L],t)&&(this[L][t]=!1),G(this,t,S(1,r))};return o&&W&&G(C,t,{configurable:!0,set:n}),Y(t)}).prototype,"toString",(function(){return this._k})),U.f=Q,P.f=z,r("kJMx").f=O.f=$,r("UqcF").f=H,_.f=tt,o&&!r("LQAc")&&c(C,"propertyIsEnumerable",H,!0),p.f=function(t){return Y(v(t))}),u(u.G+u.W+u.F*!q,{Symbol:A});for(var nt="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),rt=0;nt.length>rt;)v(nt[rt++]);for(var et=M(v.store),it=0;et.length>it;)y(et[it++]);u(u.S+u.F*!q,"Symbol",{for:function(t){return i(k,t+="")?k[t]:k[t]=A(t)},keyFor:function(t){if(!B(t))throw TypeError(t+" is not a symbol!");for(var n in k)if(k[n]===t)return n},useSetter:function(){W=!0},useSimple:function(){W=!1}}),u(u.S+u.F*!q,"Object",{create:function(t,n){return void 0===n?E(t):J(E(t),n)},defineProperty:z,defineProperties:J,getOwnPropertyDescriptor:Q,getOwnPropertyNames:$,getOwnPropertySymbols:tt});var ot=f((function(){_.f(1)}));u(u.S+u.F*ot,"Object",{getOwnPropertySymbols:function(t){return _.f(b(t))}}),I&&u(u.S+u.F*(!q||f((function(){var t=A();return"[null]"!=T([t])||"{}"!=T({a:t})||"{}"!=T(Object(t))}))),"JSON",{stringify:function(t){for(var n,r,e=[t],i=1;arguments.length>i;)e.push(arguments[i++]);if(r=n=e[1],(m(n)||void 0!==t)&&!B(t))return d(n)||(n=function(t,n){if("function"==typeof r&&(n=r.call(this,t,n)),!B(n))return n}),e[1]=n,T.apply(I,e)}}),A.prototype[R]||r("Mukb")(A.prototype,R,A.prototype.valueOf),l(A,"Symbol"),l(Math,"Math",!0),l(e.JSON,"JSON",!0)},jm62:function(t,n,r){var e=r("XKFU"),i=r("mQtv"),o=r("aCFj"),u=r("EemH"),c=r("8a7r");e(e.S,"Object",{getOwnPropertyDescriptors:function(t){for(var n,r,e=o(t),a=u.f,f=i(e),s={},l=0;f.length>l;)void 0!==(r=a(e,n=f[l++]))&&c(s,n,r);return s}})},jmDH:function(t,n,r){t.exports=!r("KUxP")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},jqX0:function(t,n,r){var e=r("XKFU"),i=r("jtBr");e(e.P+e.F*(Date.prototype.toISOString!==i),"Date",{toISOString:i})},jtBr:function(t,n,r){"use strict";var e=r("eeVq"),i=Date.prototype.getTime,o=Date.prototype.toISOString,u=function(t){return t>9?t:"0"+t};t.exports=e((function(){return"0385-07-25T07:06:39.999Z"!=o.call(new Date(-50000000000001))}))||!e((function(){o.call(new Date(NaN))}))?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value");var t=this,n=t.getUTCFullYear(),r=t.getUTCMilliseconds(),e=n<0?"-":n>9999?"+":"";return e+("00000"+Math.abs(n)).slice(e?-6:-4)+"-"+u(t.getUTCMonth()+1)+"-"+u(t.getUTCDate())+"T"+u(t.getUTCHours())+":"+u(t.getUTCMinutes())+":"+u(t.getUTCSeconds())+"."+(r>99?r:"0"+u(r))+"Z"}:o},kJMx:function(t,n,r){var e=r("zhAb"),i=r("4R4u").concat("length","prototype");n.f=Object.getOwnPropertyNames||function(t){return e(t,i)}},kcoS:function(t,n,r){var e=r("lvtm"),i=Math.pow,o=i(2,-52),u=i(2,-23),c=i(2,127)*(2-u),a=i(2,-126);t.exports=Math.fround||function(t){var n,r,i=Math.abs(t),f=e(t);return i<a?f*(i/a/u+1/o-1/o)*a*u:(r=(n=(1+u/o)*i)-(n-i))>c||r!=r?f*(1/0):f*r}},klPD:function(t,n,r){var e=r("hswa"),i=r("EemH"),o=r("OP3Y"),u=r("aagx"),c=r("XKFU"),a=r("RjD/"),f=r("y3w9"),s=r("0/R4");c(c.S,"Reflect",{set:function t(n,r,c){var l,h,v=arguments.length<4?n:arguments[3],p=i.f(f(n),r);if(!p){if(s(h=o(n)))return t(h,r,c,v);p=a(0)}if(u(p,"value")){if(!1===p.writable||!s(v))return!1;if(l=i.f(v,r)){if(l.get||l.set||!1===l.writable)return!1;l.value=c,e.f(v,r,l)}else e.f(v,r,a(0,c));return!0}return void 0!==p.set&&(p.set.call(v,c),!0)}})},knU9:function(t,n,r){var e=r("XKFU"),i=r("i5dc");i&&e(e.S,"Reflect",{setPrototypeOf:function(t,n){i.check(t,n);try{return i.set(t,n),!0}catch(t){return!1}}})},knhD:function(t,n,r){var e=r("XKFU");e(e.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},l0Rn:function(t,n,r){"use strict";var e=r("RYi7"),i=r("vhPU");t.exports=function(t){var n=String(i(this)),r="",o=e(t);if(o<0||o==1/0)throw RangeError("Count can't be negative");for(;o>0;(o>>>=1)&&(n+=n))1&o&&(r+=n);return r}},ln0Z:function(t,n,r){r("fA63"),t.exports=r("g3g5").String.trimRight},ls82:function(t,n,r){var e=function(t){"use strict";var n=Object.prototype,r=n.hasOwnProperty,e="function"==typeof Symbol?Symbol:{},i=e.iterator||"@@iterator",o=e.asyncIterator||"@@asyncIterator",u=e.toStringTag||"@@toStringTag";function c(t,n,r){return Object.defineProperty(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[n]}try{c({},"")}catch(t){c=function(t,n,r){return t[n]=r}}function a(t,n,r,e){var i=n&&n.prototype instanceof l?n:l,o=Object.create(i.prototype),u=new S(e||[]);return o._invoke=function(t,n,r){var e="suspendedStart";return function(i,o){if("executing"===e)throw new Error("Generator is already running");if("completed"===e){if("throw"===i)throw o;return O()}for(r.method=i,r.arg=o;;){var u=r.delegate;if(u){var c=b(u,r);if(c){if(c===s)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===e)throw e="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);e="executing";var a=f(t,n,r);if("normal"===a.type){if(e=r.done?"completed":"suspendedYield",a.arg===s)continue;return{value:a.arg,done:r.done}}"throw"===a.type&&(e="completed",r.method="throw",r.arg=a.arg)}}}(t,r,u),o}function f(t,n,r){try{return{type:"normal",arg:t.call(n,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=a;var s={};function l(){}function h(){}function v(){}var p={};c(p,i,(function(){return this}));var y=Object.getPrototypeOf,g=y&&y(y(E([])));g&&g!==n&&r.call(g,i)&&(p=g);var d=v.prototype=l.prototype=Object.create(p);function x(t){["next","throw","return"].forEach((function(n){c(t,n,(function(t){return this._invoke(n,t)}))}))}function m(t,n){var e;this._invoke=function(i,o){function u(){return new n((function(e,u){!function e(i,o,u,c){var a=f(t[i],t,o);if("throw"!==a.type){var s=a.arg,l=s.value;return l&&"object"==typeof l&&r.call(l,"__await")?n.resolve(l.__await).then((function(t){e("next",t,u,c)}),(function(t){e("throw",t,u,c)})):n.resolve(l).then((function(t){s.value=t,u(s)}),(function(t){return e("throw",t,u,c)}))}c(a.arg)}(i,o,e,u)}))}return e=e?e.then(u,u):u()}}function b(t,n){var r=t.iterator[n.method];if(void 0===r){if(n.delegate=null,"throw"===n.method){if(t.iterator.return&&(n.method="return",n.arg=void 0,b(t,n),"throw"===n.method))return s;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return s}var e=f(r,t.iterator,n.arg);if("throw"===e.type)return n.method="throw",n.arg=e.arg,n.delegate=null,s;var i=e.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=void 0),n.delegate=null,s):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,s)}function w(t){var n={tryLoc:t[0]};1 in t&&(n.catchLoc=t[1]),2 in t&&(n.finallyLoc=t[2],n.afterLoc=t[3]),this.tryEntries.push(n)}function F(t){var n=t.completion||{};n.type="normal",delete n.arg,t.completion=n}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(w,this),this.reset(!0)}function E(t){if(t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var e=-1,o=function n(){for(;++e<t.length;)if(r.call(t,e))return n.value=t[e],n.done=!1,n;return n.value=void 0,n.done=!0,n};return o.next=o}}return{next:O}}function O(){return{value:void 0,done:!0}}return h.prototype=v,c(d,"constructor",v),c(v,"constructor",h),h.displayName=c(v,u,"GeneratorFunction"),t.isGeneratorFunction=function(t){var n="function"==typeof t&&t.constructor;return!!n&&(n===h||"GeneratorFunction"===(n.displayName||n.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,c(t,u,"GeneratorFunction")),t.prototype=Object.create(d),t},t.awrap=function(t){return{__await:t}},x(m.prototype),c(m.prototype,o,(function(){return this})),t.AsyncIterator=m,t.async=function(n,r,e,i,o){void 0===o&&(o=Promise);var u=new m(a(n,r,e,i),o);return t.isGeneratorFunction(r)?u:u.next().then((function(t){return t.done?t.value:u.next()}))},x(d),c(d,u,"Generator"),c(d,i,(function(){return this})),c(d,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var n=[];for(var r in t)n.push(r);return n.reverse(),function r(){for(;n.length;){var e=n.pop();if(e in t)return r.value=e,r.done=!1,r}return r.done=!0,r}},t.values=E,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(F),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function e(r,e){return u.type="throw",u.arg=t,n.next=r,e&&(n.method="next",n.arg=void 0),!!e}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],u=o.completion;if("root"===o.tryLoc)return e("end");if(o.tryLoc<=this.prev){var c=r.call(o,"catchLoc"),a=r.call(o,"finallyLoc");if(c&&a){if(this.prev<o.catchLoc)return e(o.catchLoc,!0);if(this.prev<o.finallyLoc)return e(o.finallyLoc)}else if(c){if(this.prev<o.catchLoc)return e(o.catchLoc,!0)}else{if(!a)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return e(o.finallyLoc)}}}},abrupt:function(t,n){for(var e=this.tryEntries.length-1;e>=0;--e){var i=this.tryEntries[e];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=n&&n<=o.finallyLoc&&(o=null);var u=o?o.completion:{};return u.type=t,u.arg=n,o?(this.method="next",this.next=o.finallyLoc,s):this.complete(u)},complete:function(t,n){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&n&&(this.next=n),s},finish:function(t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),F(r),s}},catch:function(t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n];if(r.tryLoc===t){var e=r.completion;if("throw"===e.type){var i=e.arg;F(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:E(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=void 0),s}},t}(t.exports);try{regeneratorRuntime=e}catch(t){"object"==typeof globalThis?globalThis.regeneratorRuntime=e:Function("r","regeneratorRuntime = r")(e)}},lvtm:function(t,n){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},m0Pp:function(t,n,r){var e=r("2OiF");t.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,i){return t.call(n,r,e,i)}}return function(){return t.apply(n,arguments)}}},mGWK:function(t,n,r){"use strict";var e=r("XKFU"),i=r("aCFj"),o=r("RYi7"),u=r("ne8i"),c=[].lastIndexOf,a=!!c&&1/[1].lastIndexOf(1,-0)<0;e(e.P+e.F*(a||!r("LyE8")(c)),"Array",{lastIndexOf:function(t){if(a)return c.apply(this,arguments)||0;var n=i(this),r=u(n.length),e=r-1;for(arguments.length>1&&(e=Math.min(e,o(arguments[1]))),e<0&&(e=r+e);e>=0;e--)if(e in n&&n[e]===t)return e||0;return-1}})},mQtv:function(t,n,r){var e=r("kJMx"),i=r("JiEa"),o=r("y3w9"),u=r("dyZX").Reflect;t.exports=u&&u.ownKeys||function(t){var n=e.f(o(t)),r=i.f;return r?n.concat(r(t)):n}},mYba:function(t,n,r){var e=r("aCFj"),i=r("EemH").f;r("Xtr8")("getOwnPropertyDescriptor",(function(){return function(t,n){return i(e(t),n)}}))},mura:function(t,n,r){var e=r("0/R4"),i=r("Z6vF").onFreeze;r("Xtr8")("preventExtensions",(function(t){return function(n){return t&&e(n)?t(i(n)):n}}))},nBIS:function(t,n,r){var e=r("0/R4"),i=Math.floor;t.exports=function(t){return!e(t)&&isFinite(t)&&i(t)===t}},nCnK:function(t,n,r){r("7DDg")("Uint32",4,(function(t){return function(n,r,e){return t(this,n,r,e)}}))},nGyu:function(t,n,r){var e=r("K0xU")("unscopables"),i=Array.prototype;null==i[e]&&r("Mukb")(i,e,{}),t.exports=function(t){i[e][t]=!0}},nICZ:function(t,n){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},nIY7:function(t,n,r){"use strict";r("OGtf")("big",(function(t){return function(){return t(this,"big","","")}}))},ne8i:function(t,n,r){var e=r("RYi7"),i=Math.min;t.exports=function(t){return t>0?i(e(t),9007199254740991):0}},nh4g:function(t,n,r){t.exports=!r("eeVq")((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},nsiH:function(t,n,r){"use strict";r("OGtf")("fontsize",(function(t){return function(n){return t(this,"font","size",n)}}))},nzyx:function(t,n,r){var e=r("XKFU"),i=r("LVwc");e(e.S+e.F*(i!=Math.expm1),"Math",{expm1:i})},oDIu:function(t,n,r){"use strict";var e=r("XKFU"),i=r("AvRE")(!1);e(e.P,"String",{codePointAt:function(t){return i(this,t)}})},"oZ/O":function(t,n,r){var e=r("XKFU"),i=r("y3w9"),o=Object.preventExtensions;e(e.S,"Reflect",{preventExtensions:function(t){i(t);try{return o&&o(t),!0}catch(t){return!1}}})},ol8x:function(t,n,r){var e=r("dyZX").navigator;t.exports=e&&e.userAgent||""},pIFo:function(t,n,r){"use strict";var e=r("y3w9"),i=r("S/j/"),o=r("ne8i"),u=r("RYi7"),c=r("A5AN"),a=r("Xxuz"),f=Math.max,s=Math.min,l=Math.floor,h=/\$([$&`']|\d\d?|<[^>]*>)/g,v=/\$([$&`']|\d\d?)/g;r("IU+Z")("replace",2,(function(t,n,r,p){return[function(e,i){var o=t(this),u=null==e?void 0:e[n];return void 0!==u?u.call(e,o,i):r.call(String(o),e,i)},function(t,n){var i=p(r,t,this,n);if(i.done)return i.value;var l=e(t),h=String(this),v="function"==typeof n;v||(n=String(n));var g=l.global;if(g){var d=l.unicode;l.lastIndex=0}for(var x=[];;){var m=a(l,h);if(null===m)break;if(x.push(m),!g)break;""===String(m[0])&&(l.lastIndex=c(h,o(l.lastIndex),d))}for(var b,w="",F=0,S=0;S<x.length;S++){m=x[S];for(var E=String(m[0]),O=f(s(u(m.index),h.length),0),U=[],_=1;_<m.length;_++)U.push(void 0===(b=m[_])?b:String(b));var P=m.groups;if(v){var M=[E].concat(U,O,h);void 0!==P&&M.push(P);var K=String(n.apply(void 0,M))}else K=y(E,h,O,U,P,n);O>=F&&(w+=h.slice(F,O)+K,F=O+E.length)}return w+h.slice(F)}];function y(t,n,e,o,u,c){var a=e+t.length,f=o.length,s=v;return void 0!==u&&(u=i(u),s=h),r.call(c,s,(function(r,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,e);case"'":return n.slice(a);case"<":c=u[i.slice(1,-1)];break;default:var s=+i;if(0===s)return r;if(s>f){var h=l(s/10);return 0===h?r:h<=f?void 0===o[h-1]?i.charAt(1):o[h-1]+i.charAt(1):r}c=o[s-1]}return void 0===c?"":c}))}}))},pbhE:function(t,n,r){"use strict";var e=r("2OiF");function i(t){var n,r;this.promise=new t((function(t,e){if(void 0!==n||void 0!==r)throw TypeError("Bad Promise constructor");n=t,r=e})),this.resolve=e(n),this.reject=e(r)}t.exports.f=function(t){return new i(t)}},"pp/T":function(t,n,r){var e=r("XKFU");e(e.S,"Math",{log2:function(t){return Math.log(t)/Math.LN2}})},qncB:function(t,n,r){var e=r("XKFU"),i=r("vhPU"),o=r("eeVq"),u=r("/e88"),c="["+u+"]",a=RegExp("^"+c+c+"*"),f=RegExp(c+c+"*$"),s=function(t,n,r){var i={},c=o((function(){return!!u[t]()||"
"!="
"[t]()})),a=i[t]=c?n(l):u[t];r&&(i[r]=a),e(e.P+e.F*c,"String",i)},l=s.trim=function(t,n){return t=String(i(t)),1&n&&(t=t.replace(a,"")),2&n&&(t=t.replace(f,"")),t};t.exports=s},quPj:function(t,n,r){var e=r("0/R4"),i=r("LZWt"),o=r("K0xU")("match");t.exports=function(t){var n;return e(t)&&(void 0!==(n=t[o])?!!n:"RegExp"==i(t))}},r1bV:function(t,n,r){r("7DDg")("Uint16",2,(function(t){return function(n,r,e){return t(this,n,r,e)}}))},rE2o:function(t,n,r){r("OnI7")("asyncIterator")},rGqo:function(t,n,r){for(var e=r("yt8O"),i=r("DVgA"),o=r("KroJ"),u=r("dyZX"),c=r("Mukb"),a=r("hPIQ"),f=r("K0xU"),s=f("iterator"),l=f("toStringTag"),h=a.Array,v={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},p=i(v),y=0;y<p.length;y++){var g,d=p[y],x=v[d],m=u[d],b=m&&m.prototype;if(b&&(b[s]||c(b,s,h),b[l]||c(b,l,d),a[d]=h,x))for(g in e)b[g]||o(b,g,e[g],!0)}},rr1i:function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},rvZc:function(t,n,r){"use strict";var e=r("XKFU"),i=r("ne8i"),o=r("0sh+"),u="".endsWith;e(e.P+e.F*r("UUeW")("endsWith"),"String",{endsWith:function(t){var n=o(this,t,"endsWith"),r=arguments.length>1?arguments[1]:void 0,e=i(n.length),c=void 0===r?e:Math.min(i(r),e),a=String(t);return u?u.call(n,a,c):n.slice(c-a.length,c)===a}})},s5qY:function(t,n,r){var e=r("0/R4");t.exports=function(t,n){if(!e(t)||t._t!==n)throw TypeError("Incompatible receiver, "+n+" required!");return t}},sFw1:function(t,n,r){r("7DDg")("Int8",1,(function(t){return function(n,r,e){return t(this,n,r,e)}}))},sMXx:function(t,n,r){"use strict";var e=r("Ugos");r("XKFU")({target:"RegExp",proto:!0,forced:e!==/./.exec},{exec:e})},sbF8:function(t,n,r){var e=r("XKFU"),i=r("nBIS"),o=Math.abs;e(e.S,"Number",{isSafeInteger:function(t){return i(t)&&o(t)<=9007199254740991}})},tUrg:function(t,n,r){"use strict";r("OGtf")("link",(function(t){return function(n){return t(this,"a","href",n)}}))},tuSo:function(t,n,r){r("7DDg")("Int32",4,(function(t){return function(n,r,e){return t(this,n,r,e)}}))},"tyy+":function(t,n,r){var e=r("XKFU"),i=r("11IZ");e(e.G+e.F*(parseFloat!=i),{parseFloat:i})},uhZd:function(t,n,r){var e=r("XKFU"),i=r("EemH").f,o=r("y3w9");e(e.S,"Reflect",{deleteProperty:function(t,n){var r=i(o(t),n);return!(r&&!r.configurable)&&delete t[n]}})},upKx:function(t,n,r){"use strict";var e=r("S/j/"),i=r("d/Gc"),o=r("ne8i");t.exports=[].copyWithin||function(t,n){var r=e(this),u=o(r.length),c=i(t,u),a=i(n,u),f=arguments.length>2?arguments[2]:void 0,s=Math.min((void 0===f?u:i(f,u))-a,u-c),l=1;for(a<c&&c<a+s&&(l=-1,a+=s-1,c+=s-1);s-- >0;)a in r?r[c]=r[a]:delete r[c],c+=l,a+=l;return r}},vKrd:function(t,n,r){var e=r("y3w9"),i=r("0/R4"),o=r("pbhE");t.exports=function(t,n){if(e(t),i(n)&&n.constructor===t)return n;var r=o.f(t);return(0,r.resolve)(n),r.promise}},vhPU:function(t,n){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},vvmO:function(t,n,r){var e=r("LZWt");t.exports=function(t,n){if("number"!=typeof t&&"Number"!=e(t))throw TypeError(n);return+t}},w2a5:function(t,n,r){var e=r("aCFj"),i=r("ne8i"),o=r("d/Gc");t.exports=function(t){return function(n,r,u){var c,a=e(n),f=i(a.length),s=o(u,f);if(t&&r!=r){for(;f>s;)if((c=a[s++])!=c)return!0}else for(;f>s;s++)if((t||s in a)&&a[s]===r)return t||s||0;return!t&&-1}}},wCsR:function(t,n,r){"use strict";var e=r("ZD67"),i=r("s5qY");r("4LiD")("WeakSet",(function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}}),{add:function(t){return e.def(i(this,"WeakSet"),t,!0)}},e,!1,!0)},wDwx:function(t,n,r){r("rE2o"),t.exports=r("N8g3").f("asyncIterator")},wYy3:function(t,n,r){r("9XZr"),t.exports=r("g3g5").String.padStart},wmvG:function(t,n,r){"use strict";var e=r("hswa").f,i=r("Kuth"),o=r("3Lyj"),u=r("m0Pp"),c=r("9gX7"),a=r("SlkY"),f=r("Afnz"),s=r("1TsA"),l=r("elZq"),h=r("nh4g"),v=r("Z6vF").fastKey,p=r("s5qY"),y=h?"_s":"size",g=function(t,n){var r,e=v(n);if("F"!==e)return t._i[e];for(r=t._f;r;r=r.n)if(r.k==n)return r};t.exports={getConstructor:function(t,n,r,f){var s=t((function(t,e){c(t,s,n,"_i"),t._t=n,t._i=i(null),t._f=void 0,t._l=void 0,t[y]=0,null!=e&&a(e,r,t[f],t)}));return o(s.prototype,{clear:function(){for(var t=p(this,n),r=t._i,e=t._f;e;e=e.n)e.r=!0,e.p&&(e.p=e.p.n=void 0),delete r[e.i];t._f=t._l=void 0,t[y]=0},delete:function(t){var r=p(this,n),e=g(r,t);if(e){var i=e.n,o=e.p;delete r._i[e.i],e.r=!0,o&&(o.n=i),i&&(i.p=o),r._f==e&&(r._f=i),r._l==e&&(r._l=o),r[y]--}return!!e},forEach:function(t){p(this,n);for(var r,e=u(t,arguments.length>1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(e(r.v,r.k,this);r&&r.r;)r=r.p},has:function(t){return!!g(p(this,n),t)}}),h&&e(s.prototype,"size",{get:function(){return p(this,n)[y]}}),s},def:function(t,n,r){var e,i,o=g(t,n);return o?o.v=r:(t._l=o={i:i=v(n,!0),k:n,v:r,p:e=t._l,n:void 0,r:!1},t._f||(t._f=o),e&&(e.n=o),t[y]++,"F"!==i&&(t._i[i]=o)),t},getEntry:g,setStrong:function(t,n,r){f(t,n,(function(t,r){this._t=p(t,n),this._k=r,this._l=void 0}),(function(){for(var t=this._k,n=this._l;n&&n.r;)n=n.p;return this._t&&(this._l=n=n?n.n:this._t._f)?s(0,"keys"==t?n.k:"values"==t?n.v:[n.k,n.v]):(this._t=void 0,s(1))}),r?"entries":"values",!r,!0),l(n)}}},x8Yj:function(t,n,r){var e=r("XKFU"),i=r("LVwc"),o=Math.exp;e(e.S,"Math",{tanh:function(t){var n=i(t=+t),r=i(-t);return n==1/0?1:r==1/0?-1:(n-r)/(o(t)+o(-t))}})},x8ZO:function(t,n,r){var e=r("XKFU"),i=Math.abs;e(e.S,"Math",{hypot:function(t,n){for(var r,e,o=0,u=0,c=arguments.length,a=0;u<c;)a<(r=i(arguments[u++]))?(o=o*(e=a/r)*e+1,a=r):o+=r>0?(e=r/a)*e:r;return a===1/0?1/0:a*Math.sqrt(o)}})},"xF/b":function(t,n,r){"use strict";var e=r("EWmC"),i=r("0/R4"),o=r("ne8i"),u=r("m0Pp"),c=r("K0xU")("isConcatSpreadable");t.exports=function t(n,r,a,f,s,l,h,v){for(var p,y,g=s,d=0,x=!!h&&u(h,v,3);d<f;){if(d in a){if(p=x?x(a[d],d,r):a[d],y=!1,i(p)&&(y=void 0!==(y=p[c])?!!y:e(p)),y&&l>0)g=t(n,r,p,o(p.length),g,l-1)-1;else{if(g>=9007199254740991)throw TypeError();n[g]=p}g++}d++}return g}},xfY5:function(t,n,r){"use strict";var e=r("dyZX"),i=r("aagx"),o=r("LZWt"),u=r("Xbzi"),c=r("apmT"),a=r("eeVq"),f=r("kJMx").f,s=r("EemH").f,l=r("hswa").f,h=r("qncB").trim,v=e.Number,p=v,y=v.prototype,g="Number"==o(r("Kuth")(y)),d="trim"in String.prototype,x=function(t){var n=c(t,!1);if("string"==typeof n&&n.length>2){var r,e,i,o=(n=d?n.trim():h(n,3)).charCodeAt(0);if(43===o||45===o){if(88===(r=n.charCodeAt(2))||120===r)return NaN}else if(48===o){switch(n.charCodeAt(1)){case 66:case 98:e=2,i=49;break;case 79:case 111:e=8,i=55;break;default:return+n}for(var u,a=n.slice(2),f=0,s=a.length;f<s;f++)if((u=a.charCodeAt(f))<48||u>i)return NaN;return parseInt(a,e)}}return+n};if(!v(" 0o1")||!v("0b1")||v("+0x1")){v=function(t){var n=arguments.length<1?0:t,r=this;return r instanceof v&&(g?a((function(){y.valueOf.call(r)})):"Number"!=o(r))?u(new p(x(n)),r,v):x(n)};for(var m,b=r("nh4g")?f(p):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),w=0;b.length>w;w++)i(p,m=b[w])&&!i(v,m)&&l(v,m,s(p,m));v.prototype=y,y.constructor=v,r("KroJ")(e,"Number",v)}},xm80:function(t,n,r){"use strict";var e=r("XKFU"),i=r("D4iV"),o=r("7Qtz"),u=r("y3w9"),c=r("d/Gc"),a=r("ne8i"),f=r("0/R4"),s=r("dyZX").ArrayBuffer,l=r("69bn"),h=o.ArrayBuffer,v=o.DataView,p=i.ABV&&s.isView,y=h.prototype.slice,g=i.VIEW;e(e.G+e.W+e.F*(s!==h),{ArrayBuffer:h}),e(e.S+e.F*!i.CONSTR,"ArrayBuffer",{isView:function(t){return p&&p(t)||f(t)&&g in t}}),e(e.P+e.U+e.F*r("eeVq")((function(){return!new h(2).slice(1,void 0).byteLength})),"ArrayBuffer",{slice:function(t,n){if(void 0!==y&&void 0===n)return y.call(u(this),t);for(var r=u(this).byteLength,e=c(t,r),i=c(void 0===n?r:n,r),o=new(l(this,h))(a(i-e)),f=new v(this),s=new v(o),p=0;e<i;)s.setUint8(p++,f.getUint8(e++));return o}}),r("elZq")("ArrayBuffer")},xpiv:function(t,n,r){var e=r("XKFU");e(e.S,"Reflect",{ownKeys:r("mQtv")})},xpql:function(t,n,r){t.exports=!r("nh4g")&&!r("eeVq")((function(){return 7!=Object.defineProperty(r("Iw71")("div"),"a",{get:function(){return 7}}).a}))},y3w9:function(t,n,r){var e=r("0/R4");t.exports=function(t){if(!e(t))throw TypeError(t+" is not an object!");return t}},yM4b:function(t,n,r){var e=r("K0xU")("toPrimitive"),i=Date.prototype;e in i||r("Mukb")(i,e,r("g4EE"))},ylqs:function(t,n){var r=0,e=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+e).toString(36))}},yt8O:function(t,n,r){"use strict";var e=r("nGyu"),i=r("1TsA"),o=r("hPIQ"),u=r("aCFj");t.exports=r("Afnz")(Array,"Array",(function(t,n){this._t=u(t),this._i=0,this._k=n}),(function(){var t=this._t,n=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,i(1)):i(0,"keys"==n?r:"values"==n?t[r]:[r,t[r]])}),"values"),o.Arguments=o.Array,e("keys"),e("values"),e("entries")},z2o2:function(t,n,r){var e=r("0/R4"),i=r("Z6vF").onFreeze;r("Xtr8")("seal",(function(t){return function(n){return t&&e(n)?t(i(n)):n}}))},zFFn:function(t,n,r){r("hhXQ"),t.exports=r("g3g5").Object.values},zRwo:function(t,n,r){var e=r("6FMO");t.exports=function(t,n){return new(e(t))(n)}},zhAb:function(t,n,r){var e=r("aagx"),i=r("aCFj"),o=r("w2a5")(!1),u=r("YTvA")("IE_PROTO");t.exports=function(t,n){var r,c=i(t),a=0,f=[];for(r in c)r!=u&&e(c,r)&&f.push(r);for(;n.length>a;)e(c,r=n[a++])&&(~o(f,r)||f.push(r));return f}}});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/******/ (function(modules) { // webpackBootstrap
|
| 2 |
+
/******/ // The module cache
|
| 3 |
+
/******/ var installedModules = {};
|
| 4 |
+
/******/
|
| 5 |
+
/******/ // The require function
|
| 6 |
+
/******/ function __webpack_require__(moduleId) {
|
| 7 |
+
/******/
|
| 8 |
+
/******/ // Check if module is in cache
|
| 9 |
+
/******/ if(installedModules[moduleId]) {
|
| 10 |
+
/******/ return installedModules[moduleId].exports;
|
| 11 |
+
/******/ }
|
| 12 |
+
/******/ // Create a new module (and put it into the cache)
|
| 13 |
+
/******/ var module = installedModules[moduleId] = {
|
| 14 |
+
/******/ i: moduleId,
|
| 15 |
+
/******/ l: false,
|
| 16 |
+
/******/ exports: {}
|
| 17 |
+
/******/ };
|
| 18 |
+
/******/
|
| 19 |
+
/******/ // Execute the module function
|
| 20 |
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
| 21 |
+
/******/
|
| 22 |
+
/******/ // Flag the module as loaded
|
| 23 |
+
/******/ module.l = true;
|
| 24 |
+
/******/
|
| 25 |
+
/******/ // Return the exports of the module
|
| 26 |
+
/******/ return module.exports;
|
| 27 |
+
/******/ }
|
| 28 |
+
/******/
|
| 29 |
+
/******/
|
| 30 |
+
/******/ // expose the modules object (__webpack_modules__)
|
| 31 |
+
/******/ __webpack_require__.m = modules;
|
| 32 |
+
/******/
|
| 33 |
+
/******/ // expose the module cache
|
| 34 |
+
/******/ __webpack_require__.c = installedModules;
|
| 35 |
+
/******/
|
| 36 |
+
/******/ // define getter function for harmony exports
|
| 37 |
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
| 38 |
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
| 39 |
+
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
| 40 |
+
/******/ }
|
| 41 |
+
/******/ };
|
| 42 |
+
/******/
|
| 43 |
+
/******/ // define __esModule on exports
|
| 44 |
+
/******/ __webpack_require__.r = function(exports) {
|
| 45 |
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
| 46 |
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
| 47 |
+
/******/ }
|
| 48 |
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
| 49 |
+
/******/ };
|
| 50 |
+
/******/
|
| 51 |
+
/******/ // create a fake namespace object
|
| 52 |
+
/******/ // mode & 1: value is a module id, require it
|
| 53 |
+
/******/ // mode & 2: merge all properties of value into the ns
|
| 54 |
+
/******/ // mode & 4: return value when already ns object
|
| 55 |
+
/******/ // mode & 8|1: behave like require
|
| 56 |
+
/******/ __webpack_require__.t = function(value, mode) {
|
| 57 |
+
/******/ if(mode & 1) value = __webpack_require__(value);
|
| 58 |
+
/******/ if(mode & 8) return value;
|
| 59 |
+
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
| 60 |
+
/******/ var ns = Object.create(null);
|
| 61 |
+
/******/ __webpack_require__.r(ns);
|
| 62 |
+
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
| 63 |
+
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
| 64 |
+
/******/ return ns;
|
| 65 |
+
/******/ };
|
| 66 |
+
/******/
|
| 67 |
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
| 68 |
+
/******/ __webpack_require__.n = function(module) {
|
| 69 |
+
/******/ var getter = module && module.__esModule ?
|
| 70 |
+
/******/ function getDefault() { return module['default']; } :
|
| 71 |
+
/******/ function getModuleExports() { return module; };
|
| 72 |
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
| 73 |
+
/******/ return getter;
|
| 74 |
+
/******/ };
|
| 75 |
+
/******/
|
| 76 |
+
/******/ // Object.prototype.hasOwnProperty.call
|
| 77 |
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
| 78 |
+
/******/
|
| 79 |
+
/******/ // __webpack_public_path__
|
| 80 |
+
/******/ __webpack_require__.p = "/public/js/";
|
| 81 |
+
/******/
|
| 82 |
+
/******/
|
| 83 |
+
/******/ // Load entry module and return exports
|
| 84 |
+
/******/ return __webpack_require__(__webpack_require__.s = "./node_modules/@babel/polyfill/lib/index.js");
|
| 85 |
+
/******/ })
|
| 86 |
+
/************************************************************************/
|
| 87 |
+
/******/ ({
|
| 88 |
+
|
| 89 |
+
/***/ "./node_modules/@babel/polyfill/lib/index.js":
|
| 90 |
+
/*!***************************************************!*\
|
| 91 |
+
!*** ./node_modules/@babel/polyfill/lib/index.js ***!
|
| 92 |
+
\***************************************************/
|
| 93 |
+
/*! no static exports found */
|
| 94 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 95 |
+
|
| 96 |
+
"use strict";
|
| 97 |
+
|
| 98 |
+
|
| 99 |
+
__webpack_require__(/*! ./noConflict */ "./node_modules/@babel/polyfill/lib/noConflict.js");
|
| 100 |
+
|
| 101 |
+
var _global = _interopRequireDefault(__webpack_require__(/*! core-js/library/fn/global */ "./node_modules/core-js/library/fn/global.js"));
|
| 102 |
+
|
| 103 |
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
| 104 |
+
|
| 105 |
+
if (_global["default"]._babelPolyfill && typeof console !== "undefined" && console.warn) {
|
| 106 |
+
console.warn("@babel/polyfill is loaded more than once on this page. This is probably not desirable/intended " + "and may have consequences if different versions of the polyfills are applied sequentially. " + "If you do need to load the polyfill more than once, use @babel/polyfill/noConflict " + "instead to bypass the warning.");
|
| 107 |
+
}
|
| 108 |
+
|
| 109 |
+
_global["default"]._babelPolyfill = true;
|
| 110 |
+
|
| 111 |
+
/***/ }),
|
| 112 |
+
|
| 113 |
+
/***/ "./node_modules/@babel/polyfill/lib/noConflict.js":
|
| 114 |
+
/*!********************************************************!*\
|
| 115 |
+
!*** ./node_modules/@babel/polyfill/lib/noConflict.js ***!
|
| 116 |
+
\********************************************************/
|
| 117 |
+
/*! no static exports found */
|
| 118 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 119 |
+
|
| 120 |
+
"use strict";
|
| 121 |
+
|
| 122 |
+
|
| 123 |
+
__webpack_require__(/*! core-js/es6 */ "./node_modules/core-js/es6/index.js");
|
| 124 |
+
|
| 125 |
+
__webpack_require__(/*! core-js/fn/array/includes */ "./node_modules/core-js/fn/array/includes.js");
|
| 126 |
+
|
| 127 |
+
__webpack_require__(/*! core-js/fn/array/flat-map */ "./node_modules/core-js/fn/array/flat-map.js");
|
| 128 |
+
|
| 129 |
+
__webpack_require__(/*! core-js/fn/string/pad-start */ "./node_modules/core-js/fn/string/pad-start.js");
|
| 130 |
+
|
| 131 |
+
__webpack_require__(/*! core-js/fn/string/pad-end */ "./node_modules/core-js/fn/string/pad-end.js");
|
| 132 |
+
|
| 133 |
+
__webpack_require__(/*! core-js/fn/string/trim-start */ "./node_modules/core-js/fn/string/trim-start.js");
|
| 134 |
+
|
| 135 |
+
__webpack_require__(/*! core-js/fn/string/trim-end */ "./node_modules/core-js/fn/string/trim-end.js");
|
| 136 |
+
|
| 137 |
+
__webpack_require__(/*! core-js/fn/symbol/async-iterator */ "./node_modules/core-js/fn/symbol/async-iterator.js");
|
| 138 |
+
|
| 139 |
+
__webpack_require__(/*! core-js/fn/object/get-own-property-descriptors */ "./node_modules/core-js/fn/object/get-own-property-descriptors.js");
|
| 140 |
+
|
| 141 |
+
__webpack_require__(/*! core-js/fn/object/values */ "./node_modules/core-js/fn/object/values.js");
|
| 142 |
+
|
| 143 |
+
__webpack_require__(/*! core-js/fn/object/entries */ "./node_modules/core-js/fn/object/entries.js");
|
| 144 |
+
|
| 145 |
+
__webpack_require__(/*! core-js/fn/promise/finally */ "./node_modules/core-js/fn/promise/finally.js");
|
| 146 |
+
|
| 147 |
+
__webpack_require__(/*! core-js/web */ "./node_modules/core-js/web/index.js");
|
| 148 |
+
|
| 149 |
+
__webpack_require__(/*! regenerator-runtime/runtime */ "./node_modules/regenerator-runtime/runtime.js");
|
| 150 |
+
|
| 151 |
+
/***/ }),
|
| 152 |
+
|
| 153 |
+
/***/ "./node_modules/core-js/es6/index.js":
|
| 154 |
+
/*!*******************************************!*\
|
| 155 |
+
!*** ./node_modules/core-js/es6/index.js ***!
|
| 156 |
+
\*******************************************/
|
| 157 |
+
/*! no static exports found */
|
| 158 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 159 |
+
|
| 160 |
+
__webpack_require__(/*! ../modules/es6.symbol */ "./node_modules/core-js/modules/es6.symbol.js");
|
| 161 |
+
__webpack_require__(/*! ../modules/es6.object.create */ "./node_modules/core-js/modules/es6.object.create.js");
|
| 162 |
+
__webpack_require__(/*! ../modules/es6.object.define-property */ "./node_modules/core-js/modules/es6.object.define-property.js");
|
| 163 |
+
__webpack_require__(/*! ../modules/es6.object.define-properties */ "./node_modules/core-js/modules/es6.object.define-properties.js");
|
| 164 |
+
__webpack_require__(/*! ../modules/es6.object.get-own-property-descriptor */ "./node_modules/core-js/modules/es6.object.get-own-property-descriptor.js");
|
| 165 |
+
__webpack_require__(/*! ../modules/es6.object.get-prototype-of */ "./node_modules/core-js/modules/es6.object.get-prototype-of.js");
|
| 166 |
+
__webpack_require__(/*! ../modules/es6.object.keys */ "./node_modules/core-js/modules/es6.object.keys.js");
|
| 167 |
+
__webpack_require__(/*! ../modules/es6.object.get-own-property-names */ "./node_modules/core-js/modules/es6.object.get-own-property-names.js");
|
| 168 |
+
__webpack_require__(/*! ../modules/es6.object.freeze */ "./node_modules/core-js/modules/es6.object.freeze.js");
|
| 169 |
+
__webpack_require__(/*! ../modules/es6.object.seal */ "./node_modules/core-js/modules/es6.object.seal.js");
|
| 170 |
+
__webpack_require__(/*! ../modules/es6.object.prevent-extensions */ "./node_modules/core-js/modules/es6.object.prevent-extensions.js");
|
| 171 |
+
__webpack_require__(/*! ../modules/es6.object.is-frozen */ "./node_modules/core-js/modules/es6.object.is-frozen.js");
|
| 172 |
+
__webpack_require__(/*! ../modules/es6.object.is-sealed */ "./node_modules/core-js/modules/es6.object.is-sealed.js");
|
| 173 |
+
__webpack_require__(/*! ../modules/es6.object.is-extensible */ "./node_modules/core-js/modules/es6.object.is-extensible.js");
|
| 174 |
+
__webpack_require__(/*! ../modules/es6.object.assign */ "./node_modules/core-js/modules/es6.object.assign.js");
|
| 175 |
+
__webpack_require__(/*! ../modules/es6.object.is */ "./node_modules/core-js/modules/es6.object.is.js");
|
| 176 |
+
__webpack_require__(/*! ../modules/es6.object.set-prototype-of */ "./node_modules/core-js/modules/es6.object.set-prototype-of.js");
|
| 177 |
+
__webpack_require__(/*! ../modules/es6.object.to-string */ "./node_modules/core-js/modules/es6.object.to-string.js");
|
| 178 |
+
__webpack_require__(/*! ../modules/es6.function.bind */ "./node_modules/core-js/modules/es6.function.bind.js");
|
| 179 |
+
__webpack_require__(/*! ../modules/es6.function.name */ "./node_modules/core-js/modules/es6.function.name.js");
|
| 180 |
+
__webpack_require__(/*! ../modules/es6.function.has-instance */ "./node_modules/core-js/modules/es6.function.has-instance.js");
|
| 181 |
+
__webpack_require__(/*! ../modules/es6.parse-int */ "./node_modules/core-js/modules/es6.parse-int.js");
|
| 182 |
+
__webpack_require__(/*! ../modules/es6.parse-float */ "./node_modules/core-js/modules/es6.parse-float.js");
|
| 183 |
+
__webpack_require__(/*! ../modules/es6.number.constructor */ "./node_modules/core-js/modules/es6.number.constructor.js");
|
| 184 |
+
__webpack_require__(/*! ../modules/es6.number.to-fixed */ "./node_modules/core-js/modules/es6.number.to-fixed.js");
|
| 185 |
+
__webpack_require__(/*! ../modules/es6.number.to-precision */ "./node_modules/core-js/modules/es6.number.to-precision.js");
|
| 186 |
+
__webpack_require__(/*! ../modules/es6.number.epsilon */ "./node_modules/core-js/modules/es6.number.epsilon.js");
|
| 187 |
+
__webpack_require__(/*! ../modules/es6.number.is-finite */ "./node_modules/core-js/modules/es6.number.is-finite.js");
|
| 188 |
+
__webpack_require__(/*! ../modules/es6.number.is-integer */ "./node_modules/core-js/modules/es6.number.is-integer.js");
|
| 189 |
+
__webpack_require__(/*! ../modules/es6.number.is-nan */ "./node_modules/core-js/modules/es6.number.is-nan.js");
|
| 190 |
+
__webpack_require__(/*! ../modules/es6.number.is-safe-integer */ "./node_modules/core-js/modules/es6.number.is-safe-integer.js");
|
| 191 |
+
__webpack_require__(/*! ../modules/es6.number.max-safe-integer */ "./node_modules/core-js/modules/es6.number.max-safe-integer.js");
|
| 192 |
+
__webpack_require__(/*! ../modules/es6.number.min-safe-integer */ "./node_modules/core-js/modules/es6.number.min-safe-integer.js");
|
| 193 |
+
__webpack_require__(/*! ../modules/es6.number.parse-float */ "./node_modules/core-js/modules/es6.number.parse-float.js");
|
| 194 |
+
__webpack_require__(/*! ../modules/es6.number.parse-int */ "./node_modules/core-js/modules/es6.number.parse-int.js");
|
| 195 |
+
__webpack_require__(/*! ../modules/es6.math.acosh */ "./node_modules/core-js/modules/es6.math.acosh.js");
|
| 196 |
+
__webpack_require__(/*! ../modules/es6.math.asinh */ "./node_modules/core-js/modules/es6.math.asinh.js");
|
| 197 |
+
__webpack_require__(/*! ../modules/es6.math.atanh */ "./node_modules/core-js/modules/es6.math.atanh.js");
|
| 198 |
+
__webpack_require__(/*! ../modules/es6.math.cbrt */ "./node_modules/core-js/modules/es6.math.cbrt.js");
|
| 199 |
+
__webpack_require__(/*! ../modules/es6.math.clz32 */ "./node_modules/core-js/modules/es6.math.clz32.js");
|
| 200 |
+
__webpack_require__(/*! ../modules/es6.math.cosh */ "./node_modules/core-js/modules/es6.math.cosh.js");
|
| 201 |
+
__webpack_require__(/*! ../modules/es6.math.expm1 */ "./node_modules/core-js/modules/es6.math.expm1.js");
|
| 202 |
+
__webpack_require__(/*! ../modules/es6.math.fround */ "./node_modules/core-js/modules/es6.math.fround.js");
|
| 203 |
+
__webpack_require__(/*! ../modules/es6.math.hypot */ "./node_modules/core-js/modules/es6.math.hypot.js");
|
| 204 |
+
__webpack_require__(/*! ../modules/es6.math.imul */ "./node_modules/core-js/modules/es6.math.imul.js");
|
| 205 |
+
__webpack_require__(/*! ../modules/es6.math.log10 */ "./node_modules/core-js/modules/es6.math.log10.js");
|
| 206 |
+
__webpack_require__(/*! ../modules/es6.math.log1p */ "./node_modules/core-js/modules/es6.math.log1p.js");
|
| 207 |
+
__webpack_require__(/*! ../modules/es6.math.log2 */ "./node_modules/core-js/modules/es6.math.log2.js");
|
| 208 |
+
__webpack_require__(/*! ../modules/es6.math.sign */ "./node_modules/core-js/modules/es6.math.sign.js");
|
| 209 |
+
__webpack_require__(/*! ../modules/es6.math.sinh */ "./node_modules/core-js/modules/es6.math.sinh.js");
|
| 210 |
+
__webpack_require__(/*! ../modules/es6.math.tanh */ "./node_modules/core-js/modules/es6.math.tanh.js");
|
| 211 |
+
__webpack_require__(/*! ../modules/es6.math.trunc */ "./node_modules/core-js/modules/es6.math.trunc.js");
|
| 212 |
+
__webpack_require__(/*! ../modules/es6.string.from-code-point */ "./node_modules/core-js/modules/es6.string.from-code-point.js");
|
| 213 |
+
__webpack_require__(/*! ../modules/es6.string.raw */ "./node_modules/core-js/modules/es6.string.raw.js");
|
| 214 |
+
__webpack_require__(/*! ../modules/es6.string.trim */ "./node_modules/core-js/modules/es6.string.trim.js");
|
| 215 |
+
__webpack_require__(/*! ../modules/es6.string.iterator */ "./node_modules/core-js/modules/es6.string.iterator.js");
|
| 216 |
+
__webpack_require__(/*! ../modules/es6.string.code-point-at */ "./node_modules/core-js/modules/es6.string.code-point-at.js");
|
| 217 |
+
__webpack_require__(/*! ../modules/es6.string.ends-with */ "./node_modules/core-js/modules/es6.string.ends-with.js");
|
| 218 |
+
__webpack_require__(/*! ../modules/es6.string.includes */ "./node_modules/core-js/modules/es6.string.includes.js");
|
| 219 |
+
__webpack_require__(/*! ../modules/es6.string.repeat */ "./node_modules/core-js/modules/es6.string.repeat.js");
|
| 220 |
+
__webpack_require__(/*! ../modules/es6.string.starts-with */ "./node_modules/core-js/modules/es6.string.starts-with.js");
|
| 221 |
+
__webpack_require__(/*! ../modules/es6.string.anchor */ "./node_modules/core-js/modules/es6.string.anchor.js");
|
| 222 |
+
__webpack_require__(/*! ../modules/es6.string.big */ "./node_modules/core-js/modules/es6.string.big.js");
|
| 223 |
+
__webpack_require__(/*! ../modules/es6.string.blink */ "./node_modules/core-js/modules/es6.string.blink.js");
|
| 224 |
+
__webpack_require__(/*! ../modules/es6.string.bold */ "./node_modules/core-js/modules/es6.string.bold.js");
|
| 225 |
+
__webpack_require__(/*! ../modules/es6.string.fixed */ "./node_modules/core-js/modules/es6.string.fixed.js");
|
| 226 |
+
__webpack_require__(/*! ../modules/es6.string.fontcolor */ "./node_modules/core-js/modules/es6.string.fontcolor.js");
|
| 227 |
+
__webpack_require__(/*! ../modules/es6.string.fontsize */ "./node_modules/core-js/modules/es6.string.fontsize.js");
|
| 228 |
+
__webpack_require__(/*! ../modules/es6.string.italics */ "./node_modules/core-js/modules/es6.string.italics.js");
|
| 229 |
+
__webpack_require__(/*! ../modules/es6.string.link */ "./node_modules/core-js/modules/es6.string.link.js");
|
| 230 |
+
__webpack_require__(/*! ../modules/es6.string.small */ "./node_modules/core-js/modules/es6.string.small.js");
|
| 231 |
+
__webpack_require__(/*! ../modules/es6.string.strike */ "./node_modules/core-js/modules/es6.string.strike.js");
|
| 232 |
+
__webpack_require__(/*! ../modules/es6.string.sub */ "./node_modules/core-js/modules/es6.string.sub.js");
|
| 233 |
+
__webpack_require__(/*! ../modules/es6.string.sup */ "./node_modules/core-js/modules/es6.string.sup.js");
|
| 234 |
+
__webpack_require__(/*! ../modules/es6.date.now */ "./node_modules/core-js/modules/es6.date.now.js");
|
| 235 |
+
__webpack_require__(/*! ../modules/es6.date.to-json */ "./node_modules/core-js/modules/es6.date.to-json.js");
|
| 236 |
+
__webpack_require__(/*! ../modules/es6.date.to-iso-string */ "./node_modules/core-js/modules/es6.date.to-iso-string.js");
|
| 237 |
+
__webpack_require__(/*! ../modules/es6.date.to-string */ "./node_modules/core-js/modules/es6.date.to-string.js");
|
| 238 |
+
__webpack_require__(/*! ../modules/es6.date.to-primitive */ "./node_modules/core-js/modules/es6.date.to-primitive.js");
|
| 239 |
+
__webpack_require__(/*! ../modules/es6.array.is-array */ "./node_modules/core-js/modules/es6.array.is-array.js");
|
| 240 |
+
__webpack_require__(/*! ../modules/es6.array.from */ "./node_modules/core-js/modules/es6.array.from.js");
|
| 241 |
+
__webpack_require__(/*! ../modules/es6.array.of */ "./node_modules/core-js/modules/es6.array.of.js");
|
| 242 |
+
__webpack_require__(/*! ../modules/es6.array.join */ "./node_modules/core-js/modules/es6.array.join.js");
|
| 243 |
+
__webpack_require__(/*! ../modules/es6.array.slice */ "./node_modules/core-js/modules/es6.array.slice.js");
|
| 244 |
+
__webpack_require__(/*! ../modules/es6.array.sort */ "./node_modules/core-js/modules/es6.array.sort.js");
|
| 245 |
+
__webpack_require__(/*! ../modules/es6.array.for-each */ "./node_modules/core-js/modules/es6.array.for-each.js");
|
| 246 |
+
__webpack_require__(/*! ../modules/es6.array.map */ "./node_modules/core-js/modules/es6.array.map.js");
|
| 247 |
+
__webpack_require__(/*! ../modules/es6.array.filter */ "./node_modules/core-js/modules/es6.array.filter.js");
|
| 248 |
+
__webpack_require__(/*! ../modules/es6.array.some */ "./node_modules/core-js/modules/es6.array.some.js");
|
| 249 |
+
__webpack_require__(/*! ../modules/es6.array.every */ "./node_modules/core-js/modules/es6.array.every.js");
|
| 250 |
+
__webpack_require__(/*! ../modules/es6.array.reduce */ "./node_modules/core-js/modules/es6.array.reduce.js");
|
| 251 |
+
__webpack_require__(/*! ../modules/es6.array.reduce-right */ "./node_modules/core-js/modules/es6.array.reduce-right.js");
|
| 252 |
+
__webpack_require__(/*! ../modules/es6.array.index-of */ "./node_modules/core-js/modules/es6.array.index-of.js");
|
| 253 |
+
__webpack_require__(/*! ../modules/es6.array.last-index-of */ "./node_modules/core-js/modules/es6.array.last-index-of.js");
|
| 254 |
+
__webpack_require__(/*! ../modules/es6.array.copy-within */ "./node_modules/core-js/modules/es6.array.copy-within.js");
|
| 255 |
+
__webpack_require__(/*! ../modules/es6.array.fill */ "./node_modules/core-js/modules/es6.array.fill.js");
|
| 256 |
+
__webpack_require__(/*! ../modules/es6.array.find */ "./node_modules/core-js/modules/es6.array.find.js");
|
| 257 |
+
__webpack_require__(/*! ../modules/es6.array.find-index */ "./node_modules/core-js/modules/es6.array.find-index.js");
|
| 258 |
+
__webpack_require__(/*! ../modules/es6.array.species */ "./node_modules/core-js/modules/es6.array.species.js");
|
| 259 |
+
__webpack_require__(/*! ../modules/es6.array.iterator */ "./node_modules/core-js/modules/es6.array.iterator.js");
|
| 260 |
+
__webpack_require__(/*! ../modules/es6.regexp.constructor */ "./node_modules/core-js/modules/es6.regexp.constructor.js");
|
| 261 |
+
__webpack_require__(/*! ../modules/es6.regexp.exec */ "./node_modules/core-js/modules/es6.regexp.exec.js");
|
| 262 |
+
__webpack_require__(/*! ../modules/es6.regexp.to-string */ "./node_modules/core-js/modules/es6.regexp.to-string.js");
|
| 263 |
+
__webpack_require__(/*! ../modules/es6.regexp.flags */ "./node_modules/core-js/modules/es6.regexp.flags.js");
|
| 264 |
+
__webpack_require__(/*! ../modules/es6.regexp.match */ "./node_modules/core-js/modules/es6.regexp.match.js");
|
| 265 |
+
__webpack_require__(/*! ../modules/es6.regexp.replace */ "./node_modules/core-js/modules/es6.regexp.replace.js");
|
| 266 |
+
__webpack_require__(/*! ../modules/es6.regexp.search */ "./node_modules/core-js/modules/es6.regexp.search.js");
|
| 267 |
+
__webpack_require__(/*! ../modules/es6.regexp.split */ "./node_modules/core-js/modules/es6.regexp.split.js");
|
| 268 |
+
__webpack_require__(/*! ../modules/es6.promise */ "./node_modules/core-js/modules/es6.promise.js");
|
| 269 |
+
__webpack_require__(/*! ../modules/es6.map */ "./node_modules/core-js/modules/es6.map.js");
|
| 270 |
+
__webpack_require__(/*! ../modules/es6.set */ "./node_modules/core-js/modules/es6.set.js");
|
| 271 |
+
__webpack_require__(/*! ../modules/es6.weak-map */ "./node_modules/core-js/modules/es6.weak-map.js");
|
| 272 |
+
__webpack_require__(/*! ../modules/es6.weak-set */ "./node_modules/core-js/modules/es6.weak-set.js");
|
| 273 |
+
__webpack_require__(/*! ../modules/es6.typed.array-buffer */ "./node_modules/core-js/modules/es6.typed.array-buffer.js");
|
| 274 |
+
__webpack_require__(/*! ../modules/es6.typed.data-view */ "./node_modules/core-js/modules/es6.typed.data-view.js");
|
| 275 |
+
__webpack_require__(/*! ../modules/es6.typed.int8-array */ "./node_modules/core-js/modules/es6.typed.int8-array.js");
|
| 276 |
+
__webpack_require__(/*! ../modules/es6.typed.uint8-array */ "./node_modules/core-js/modules/es6.typed.uint8-array.js");
|
| 277 |
+
__webpack_require__(/*! ../modules/es6.typed.uint8-clamped-array */ "./node_modules/core-js/modules/es6.typed.uint8-clamped-array.js");
|
| 278 |
+
__webpack_require__(/*! ../modules/es6.typed.int16-array */ "./node_modules/core-js/modules/es6.typed.int16-array.js");
|
| 279 |
+
__webpack_require__(/*! ../modules/es6.typed.uint16-array */ "./node_modules/core-js/modules/es6.typed.uint16-array.js");
|
| 280 |
+
__webpack_require__(/*! ../modules/es6.typed.int32-array */ "./node_modules/core-js/modules/es6.typed.int32-array.js");
|
| 281 |
+
__webpack_require__(/*! ../modules/es6.typed.uint32-array */ "./node_modules/core-js/modules/es6.typed.uint32-array.js");
|
| 282 |
+
__webpack_require__(/*! ../modules/es6.typed.float32-array */ "./node_modules/core-js/modules/es6.typed.float32-array.js");
|
| 283 |
+
__webpack_require__(/*! ../modules/es6.typed.float64-array */ "./node_modules/core-js/modules/es6.typed.float64-array.js");
|
| 284 |
+
__webpack_require__(/*! ../modules/es6.reflect.apply */ "./node_modules/core-js/modules/es6.reflect.apply.js");
|
| 285 |
+
__webpack_require__(/*! ../modules/es6.reflect.construct */ "./node_modules/core-js/modules/es6.reflect.construct.js");
|
| 286 |
+
__webpack_require__(/*! ../modules/es6.reflect.define-property */ "./node_modules/core-js/modules/es6.reflect.define-property.js");
|
| 287 |
+
__webpack_require__(/*! ../modules/es6.reflect.delete-property */ "./node_modules/core-js/modules/es6.reflect.delete-property.js");
|
| 288 |
+
__webpack_require__(/*! ../modules/es6.reflect.enumerate */ "./node_modules/core-js/modules/es6.reflect.enumerate.js");
|
| 289 |
+
__webpack_require__(/*! ../modules/es6.reflect.get */ "./node_modules/core-js/modules/es6.reflect.get.js");
|
| 290 |
+
__webpack_require__(/*! ../modules/es6.reflect.get-own-property-descriptor */ "./node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js");
|
| 291 |
+
__webpack_require__(/*! ../modules/es6.reflect.get-prototype-of */ "./node_modules/core-js/modules/es6.reflect.get-prototype-of.js");
|
| 292 |
+
__webpack_require__(/*! ../modules/es6.reflect.has */ "./node_modules/core-js/modules/es6.reflect.has.js");
|
| 293 |
+
__webpack_require__(/*! ../modules/es6.reflect.is-extensible */ "./node_modules/core-js/modules/es6.reflect.is-extensible.js");
|
| 294 |
+
__webpack_require__(/*! ../modules/es6.reflect.own-keys */ "./node_modules/core-js/modules/es6.reflect.own-keys.js");
|
| 295 |
+
__webpack_require__(/*! ../modules/es6.reflect.prevent-extensions */ "./node_modules/core-js/modules/es6.reflect.prevent-extensions.js");
|
| 296 |
+
__webpack_require__(/*! ../modules/es6.reflect.set */ "./node_modules/core-js/modules/es6.reflect.set.js");
|
| 297 |
+
__webpack_require__(/*! ../modules/es6.reflect.set-prototype-of */ "./node_modules/core-js/modules/es6.reflect.set-prototype-of.js");
|
| 298 |
+
module.exports = __webpack_require__(/*! ../modules/_core */ "./node_modules/core-js/modules/_core.js");
|
| 299 |
+
|
| 300 |
+
|
| 301 |
+
/***/ }),
|
| 302 |
+
|
| 303 |
+
/***/ "./node_modules/core-js/fn/array/flat-map.js":
|
| 304 |
+
/*!***************************************************!*\
|
| 305 |
+
!*** ./node_modules/core-js/fn/array/flat-map.js ***!
|
| 306 |
+
\***************************************************/
|
| 307 |
+
/*! no static exports found */
|
| 308 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 309 |
+
|
| 310 |
+
__webpack_require__(/*! ../../modules/es7.array.flat-map */ "./node_modules/core-js/modules/es7.array.flat-map.js");
|
| 311 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").Array.flatMap;
|
| 312 |
+
|
| 313 |
+
|
| 314 |
+
/***/ }),
|
| 315 |
+
|
| 316 |
+
/***/ "./node_modules/core-js/fn/array/includes.js":
|
| 317 |
+
/*!***************************************************!*\
|
| 318 |
+
!*** ./node_modules/core-js/fn/array/includes.js ***!
|
| 319 |
+
\***************************************************/
|
| 320 |
+
/*! no static exports found */
|
| 321 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 322 |
+
|
| 323 |
+
__webpack_require__(/*! ../../modules/es7.array.includes */ "./node_modules/core-js/modules/es7.array.includes.js");
|
| 324 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").Array.includes;
|
| 325 |
+
|
| 326 |
+
|
| 327 |
+
/***/ }),
|
| 328 |
+
|
| 329 |
+
/***/ "./node_modules/core-js/fn/object/entries.js":
|
| 330 |
+
/*!***************************************************!*\
|
| 331 |
+
!*** ./node_modules/core-js/fn/object/entries.js ***!
|
| 332 |
+
\***************************************************/
|
| 333 |
+
/*! no static exports found */
|
| 334 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 335 |
+
|
| 336 |
+
__webpack_require__(/*! ../../modules/es7.object.entries */ "./node_modules/core-js/modules/es7.object.entries.js");
|
| 337 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").Object.entries;
|
| 338 |
+
|
| 339 |
+
|
| 340 |
+
/***/ }),
|
| 341 |
+
|
| 342 |
+
/***/ "./node_modules/core-js/fn/object/get-own-property-descriptors.js":
|
| 343 |
+
/*!************************************************************************!*\
|
| 344 |
+
!*** ./node_modules/core-js/fn/object/get-own-property-descriptors.js ***!
|
| 345 |
+
\************************************************************************/
|
| 346 |
+
/*! no static exports found */
|
| 347 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 348 |
+
|
| 349 |
+
__webpack_require__(/*! ../../modules/es7.object.get-own-property-descriptors */ "./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js");
|
| 350 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").Object.getOwnPropertyDescriptors;
|
| 351 |
+
|
| 352 |
+
|
| 353 |
+
/***/ }),
|
| 354 |
+
|
| 355 |
+
/***/ "./node_modules/core-js/fn/object/values.js":
|
| 356 |
+
/*!**************************************************!*\
|
| 357 |
+
!*** ./node_modules/core-js/fn/object/values.js ***!
|
| 358 |
+
\**************************************************/
|
| 359 |
+
/*! no static exports found */
|
| 360 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 361 |
+
|
| 362 |
+
__webpack_require__(/*! ../../modules/es7.object.values */ "./node_modules/core-js/modules/es7.object.values.js");
|
| 363 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").Object.values;
|
| 364 |
+
|
| 365 |
+
|
| 366 |
+
/***/ }),
|
| 367 |
+
|
| 368 |
+
/***/ "./node_modules/core-js/fn/promise/finally.js":
|
| 369 |
+
/*!****************************************************!*\
|
| 370 |
+
!*** ./node_modules/core-js/fn/promise/finally.js ***!
|
| 371 |
+
\****************************************************/
|
| 372 |
+
/*! no static exports found */
|
| 373 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 374 |
+
|
| 375 |
+
"use strict";
|
| 376 |
+
|
| 377 |
+
__webpack_require__(/*! ../../modules/es6.promise */ "./node_modules/core-js/modules/es6.promise.js");
|
| 378 |
+
__webpack_require__(/*! ../../modules/es7.promise.finally */ "./node_modules/core-js/modules/es7.promise.finally.js");
|
| 379 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").Promise['finally'];
|
| 380 |
+
|
| 381 |
+
|
| 382 |
+
/***/ }),
|
| 383 |
+
|
| 384 |
+
/***/ "./node_modules/core-js/fn/string/pad-end.js":
|
| 385 |
+
/*!***************************************************!*\
|
| 386 |
+
!*** ./node_modules/core-js/fn/string/pad-end.js ***!
|
| 387 |
+
\***************************************************/
|
| 388 |
+
/*! no static exports found */
|
| 389 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 390 |
+
|
| 391 |
+
__webpack_require__(/*! ../../modules/es7.string.pad-end */ "./node_modules/core-js/modules/es7.string.pad-end.js");
|
| 392 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").String.padEnd;
|
| 393 |
+
|
| 394 |
+
|
| 395 |
+
/***/ }),
|
| 396 |
+
|
| 397 |
+
/***/ "./node_modules/core-js/fn/string/pad-start.js":
|
| 398 |
+
/*!*****************************************************!*\
|
| 399 |
+
!*** ./node_modules/core-js/fn/string/pad-start.js ***!
|
| 400 |
+
\*****************************************************/
|
| 401 |
+
/*! no static exports found */
|
| 402 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 403 |
+
|
| 404 |
+
__webpack_require__(/*! ../../modules/es7.string.pad-start */ "./node_modules/core-js/modules/es7.string.pad-start.js");
|
| 405 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").String.padStart;
|
| 406 |
+
|
| 407 |
+
|
| 408 |
+
/***/ }),
|
| 409 |
+
|
| 410 |
+
/***/ "./node_modules/core-js/fn/string/trim-end.js":
|
| 411 |
+
/*!****************************************************!*\
|
| 412 |
+
!*** ./node_modules/core-js/fn/string/trim-end.js ***!
|
| 413 |
+
\****************************************************/
|
| 414 |
+
/*! no static exports found */
|
| 415 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 416 |
+
|
| 417 |
+
__webpack_require__(/*! ../../modules/es7.string.trim-right */ "./node_modules/core-js/modules/es7.string.trim-right.js");
|
| 418 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").String.trimRight;
|
| 419 |
+
|
| 420 |
+
|
| 421 |
+
/***/ }),
|
| 422 |
+
|
| 423 |
+
/***/ "./node_modules/core-js/fn/string/trim-start.js":
|
| 424 |
+
/*!******************************************************!*\
|
| 425 |
+
!*** ./node_modules/core-js/fn/string/trim-start.js ***!
|
| 426 |
+
\******************************************************/
|
| 427 |
+
/*! no static exports found */
|
| 428 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 429 |
+
|
| 430 |
+
__webpack_require__(/*! ../../modules/es7.string.trim-left */ "./node_modules/core-js/modules/es7.string.trim-left.js");
|
| 431 |
+
module.exports = __webpack_require__(/*! ../../modules/_core */ "./node_modules/core-js/modules/_core.js").String.trimLeft;
|
| 432 |
+
|
| 433 |
+
|
| 434 |
+
/***/ }),
|
| 435 |
+
|
| 436 |
+
/***/ "./node_modules/core-js/fn/symbol/async-iterator.js":
|
| 437 |
+
/*!**********************************************************!*\
|
| 438 |
+
!*** ./node_modules/core-js/fn/symbol/async-iterator.js ***!
|
| 439 |
+
\**********************************************************/
|
| 440 |
+
/*! no static exports found */
|
| 441 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 442 |
+
|
| 443 |
+
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "./node_modules/core-js/modules/es7.symbol.async-iterator.js");
|
| 444 |
+
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "./node_modules/core-js/modules/_wks-ext.js").f('asyncIterator');
|
| 445 |
+
|
| 446 |
+
|
| 447 |
+
/***/ }),
|
| 448 |
+
|
| 449 |
+
/***/ "./node_modules/core-js/library/fn/global.js":
|
| 450 |
+
/*!***************************************************!*\
|
| 451 |
+
!*** ./node_modules/core-js/library/fn/global.js ***!
|
| 452 |
+
\***************************************************/
|
| 453 |
+
/*! no static exports found */
|
| 454 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 455 |
+
|
| 456 |
+
__webpack_require__(/*! ../modules/es7.global */ "./node_modules/core-js/library/modules/es7.global.js");
|
| 457 |
+
module.exports = __webpack_require__(/*! ../modules/_core */ "./node_modules/core-js/library/modules/_core.js").global;
|
| 458 |
+
|
| 459 |
+
|
| 460 |
+
/***/ }),
|
| 461 |
+
|
| 462 |
+
/***/ "./node_modules/core-js/library/modules/_a-function.js":
|
| 463 |
+
/*!*************************************************************!*\
|
| 464 |
+
!*** ./node_modules/core-js/library/modules/_a-function.js ***!
|
| 465 |
+
\*************************************************************/
|
| 466 |
+
/*! no static exports found */
|
| 467 |
+
/***/ (function(module, exports) {
|
| 468 |
+
|
| 469 |
+
module.exports = function (it) {
|
| 470 |
+
if (typeof it != 'function') throw TypeError(it + ' is not a function!');
|
| 471 |
+
return it;
|
| 472 |
+
};
|
| 473 |
+
|
| 474 |
+
|
| 475 |
+
/***/ }),
|
| 476 |
+
|
| 477 |
+
/***/ "./node_modules/core-js/library/modules/_an-object.js":
|
| 478 |
+
/*!************************************************************!*\
|
| 479 |
+
!*** ./node_modules/core-js/library/modules/_an-object.js ***!
|
| 480 |
+
\************************************************************/
|
| 481 |
+
/*! no static exports found */
|
| 482 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 483 |
+
|
| 484 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/library/modules/_is-object.js");
|
| 485 |
+
module.exports = function (it) {
|
| 486 |
+
if (!isObject(it)) throw TypeError(it + ' is not an object!');
|
| 487 |
+
return it;
|
| 488 |
+
};
|
| 489 |
+
|
| 490 |
+
|
| 491 |
+
/***/ }),
|
| 492 |
+
|
| 493 |
+
/***/ "./node_modules/core-js/library/modules/_core.js":
|
| 494 |
+
/*!*******************************************************!*\
|
| 495 |
+
!*** ./node_modules/core-js/library/modules/_core.js ***!
|
| 496 |
+
\*******************************************************/
|
| 497 |
+
/*! no static exports found */
|
| 498 |
+
/***/ (function(module, exports) {
|
| 499 |
+
|
| 500 |
+
var core = module.exports = { version: '2.6.12' };
|
| 501 |
+
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
|
| 502 |
+
|
| 503 |
+
|
| 504 |
+
/***/ }),
|
| 505 |
+
|
| 506 |
+
/***/ "./node_modules/core-js/library/modules/_ctx.js":
|
| 507 |
+
/*!******************************************************!*\
|
| 508 |
+
!*** ./node_modules/core-js/library/modules/_ctx.js ***!
|
| 509 |
+
\******************************************************/
|
| 510 |
+
/*! no static exports found */
|
| 511 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 512 |
+
|
| 513 |
+
// optional / simple context binding
|
| 514 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/library/modules/_a-function.js");
|
| 515 |
+
module.exports = function (fn, that, length) {
|
| 516 |
+
aFunction(fn);
|
| 517 |
+
if (that === undefined) return fn;
|
| 518 |
+
switch (length) {
|
| 519 |
+
case 1: return function (a) {
|
| 520 |
+
return fn.call(that, a);
|
| 521 |
+
};
|
| 522 |
+
case 2: return function (a, b) {
|
| 523 |
+
return fn.call(that, a, b);
|
| 524 |
+
};
|
| 525 |
+
case 3: return function (a, b, c) {
|
| 526 |
+
return fn.call(that, a, b, c);
|
| 527 |
+
};
|
| 528 |
+
}
|
| 529 |
+
return function (/* ...args */) {
|
| 530 |
+
return fn.apply(that, arguments);
|
| 531 |
+
};
|
| 532 |
+
};
|
| 533 |
+
|
| 534 |
+
|
| 535 |
+
/***/ }),
|
| 536 |
+
|
| 537 |
+
/***/ "./node_modules/core-js/library/modules/_descriptors.js":
|
| 538 |
+
/*!**************************************************************!*\
|
| 539 |
+
!*** ./node_modules/core-js/library/modules/_descriptors.js ***!
|
| 540 |
+
\**************************************************************/
|
| 541 |
+
/*! no static exports found */
|
| 542 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 543 |
+
|
| 544 |
+
// Thank's IE8 for his funny defineProperty
|
| 545 |
+
module.exports = !__webpack_require__(/*! ./_fails */ "./node_modules/core-js/library/modules/_fails.js")(function () {
|
| 546 |
+
return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
|
| 547 |
+
});
|
| 548 |
+
|
| 549 |
+
|
| 550 |
+
/***/ }),
|
| 551 |
+
|
| 552 |
+
/***/ "./node_modules/core-js/library/modules/_dom-create.js":
|
| 553 |
+
/*!*************************************************************!*\
|
| 554 |
+
!*** ./node_modules/core-js/library/modules/_dom-create.js ***!
|
| 555 |
+
\*************************************************************/
|
| 556 |
+
/*! no static exports found */
|
| 557 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 558 |
+
|
| 559 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/library/modules/_is-object.js");
|
| 560 |
+
var document = __webpack_require__(/*! ./_global */ "./node_modules/core-js/library/modules/_global.js").document;
|
| 561 |
+
// typeof document.createElement is 'object' in old IE
|
| 562 |
+
var is = isObject(document) && isObject(document.createElement);
|
| 563 |
+
module.exports = function (it) {
|
| 564 |
+
return is ? document.createElement(it) : {};
|
| 565 |
+
};
|
| 566 |
+
|
| 567 |
+
|
| 568 |
+
/***/ }),
|
| 569 |
+
|
| 570 |
+
/***/ "./node_modules/core-js/library/modules/_export.js":
|
| 571 |
+
/*!*********************************************************!*\
|
| 572 |
+
!*** ./node_modules/core-js/library/modules/_export.js ***!
|
| 573 |
+
\*********************************************************/
|
| 574 |
+
/*! no static exports found */
|
| 575 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 576 |
+
|
| 577 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/library/modules/_global.js");
|
| 578 |
+
var core = __webpack_require__(/*! ./_core */ "./node_modules/core-js/library/modules/_core.js");
|
| 579 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/library/modules/_ctx.js");
|
| 580 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/library/modules/_hide.js");
|
| 581 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/library/modules/_has.js");
|
| 582 |
+
var PROTOTYPE = 'prototype';
|
| 583 |
+
|
| 584 |
+
var $export = function (type, name, source) {
|
| 585 |
+
var IS_FORCED = type & $export.F;
|
| 586 |
+
var IS_GLOBAL = type & $export.G;
|
| 587 |
+
var IS_STATIC = type & $export.S;
|
| 588 |
+
var IS_PROTO = type & $export.P;
|
| 589 |
+
var IS_BIND = type & $export.B;
|
| 590 |
+
var IS_WRAP = type & $export.W;
|
| 591 |
+
var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
|
| 592 |
+
var expProto = exports[PROTOTYPE];
|
| 593 |
+
var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
|
| 594 |
+
var key, own, out;
|
| 595 |
+
if (IS_GLOBAL) source = name;
|
| 596 |
+
for (key in source) {
|
| 597 |
+
// contains in native
|
| 598 |
+
own = !IS_FORCED && target && target[key] !== undefined;
|
| 599 |
+
if (own && has(exports, key)) continue;
|
| 600 |
+
// export native or passed
|
| 601 |
+
out = own ? target[key] : source[key];
|
| 602 |
+
// prevent global pollution for namespaces
|
| 603 |
+
exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
|
| 604 |
+
// bind timers to global for call from export context
|
| 605 |
+
: IS_BIND && own ? ctx(out, global)
|
| 606 |
+
// wrap global constructors for prevent change them in library
|
| 607 |
+
: IS_WRAP && target[key] == out ? (function (C) {
|
| 608 |
+
var F = function (a, b, c) {
|
| 609 |
+
if (this instanceof C) {
|
| 610 |
+
switch (arguments.length) {
|
| 611 |
+
case 0: return new C();
|
| 612 |
+
case 1: return new C(a);
|
| 613 |
+
case 2: return new C(a, b);
|
| 614 |
+
} return new C(a, b, c);
|
| 615 |
+
} return C.apply(this, arguments);
|
| 616 |
+
};
|
| 617 |
+
F[PROTOTYPE] = C[PROTOTYPE];
|
| 618 |
+
return F;
|
| 619 |
+
// make static versions for prototype methods
|
| 620 |
+
})(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
|
| 621 |
+
// export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
|
| 622 |
+
if (IS_PROTO) {
|
| 623 |
+
(exports.virtual || (exports.virtual = {}))[key] = out;
|
| 624 |
+
// export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
|
| 625 |
+
if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
|
| 626 |
+
}
|
| 627 |
+
}
|
| 628 |
+
};
|
| 629 |
+
// type bitmap
|
| 630 |
+
$export.F = 1; // forced
|
| 631 |
+
$export.G = 2; // global
|
| 632 |
+
$export.S = 4; // static
|
| 633 |
+
$export.P = 8; // proto
|
| 634 |
+
$export.B = 16; // bind
|
| 635 |
+
$export.W = 32; // wrap
|
| 636 |
+
$export.U = 64; // safe
|
| 637 |
+
$export.R = 128; // real proto method for `library`
|
| 638 |
+
module.exports = $export;
|
| 639 |
+
|
| 640 |
+
|
| 641 |
+
/***/ }),
|
| 642 |
+
|
| 643 |
+
/***/ "./node_modules/core-js/library/modules/_fails.js":
|
| 644 |
+
/*!********************************************************!*\
|
| 645 |
+
!*** ./node_modules/core-js/library/modules/_fails.js ***!
|
| 646 |
+
\********************************************************/
|
| 647 |
+
/*! no static exports found */
|
| 648 |
+
/***/ (function(module, exports) {
|
| 649 |
+
|
| 650 |
+
module.exports = function (exec) {
|
| 651 |
+
try {
|
| 652 |
+
return !!exec();
|
| 653 |
+
} catch (e) {
|
| 654 |
+
return true;
|
| 655 |
+
}
|
| 656 |
+
};
|
| 657 |
+
|
| 658 |
+
|
| 659 |
+
/***/ }),
|
| 660 |
+
|
| 661 |
+
/***/ "./node_modules/core-js/library/modules/_global.js":
|
| 662 |
+
/*!*********************************************************!*\
|
| 663 |
+
!*** ./node_modules/core-js/library/modules/_global.js ***!
|
| 664 |
+
\*********************************************************/
|
| 665 |
+
/*! no static exports found */
|
| 666 |
+
/***/ (function(module, exports) {
|
| 667 |
+
|
| 668 |
+
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
|
| 669 |
+
var global = module.exports = typeof window != 'undefined' && window.Math == Math
|
| 670 |
+
? window : typeof self != 'undefined' && self.Math == Math ? self
|
| 671 |
+
// eslint-disable-next-line no-new-func
|
| 672 |
+
: Function('return this')();
|
| 673 |
+
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
|
| 674 |
+
|
| 675 |
+
|
| 676 |
+
/***/ }),
|
| 677 |
+
|
| 678 |
+
/***/ "./node_modules/core-js/library/modules/_has.js":
|
| 679 |
+
/*!******************************************************!*\
|
| 680 |
+
!*** ./node_modules/core-js/library/modules/_has.js ***!
|
| 681 |
+
\******************************************************/
|
| 682 |
+
/*! no static exports found */
|
| 683 |
+
/***/ (function(module, exports) {
|
| 684 |
+
|
| 685 |
+
var hasOwnProperty = {}.hasOwnProperty;
|
| 686 |
+
module.exports = function (it, key) {
|
| 687 |
+
return hasOwnProperty.call(it, key);
|
| 688 |
+
};
|
| 689 |
+
|
| 690 |
+
|
| 691 |
+
/***/ }),
|
| 692 |
+
|
| 693 |
+
/***/ "./node_modules/core-js/library/modules/_hide.js":
|
| 694 |
+
/*!*******************************************************!*\
|
| 695 |
+
!*** ./node_modules/core-js/library/modules/_hide.js ***!
|
| 696 |
+
\*******************************************************/
|
| 697 |
+
/*! no static exports found */
|
| 698 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 699 |
+
|
| 700 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/library/modules/_object-dp.js");
|
| 701 |
+
var createDesc = __webpack_require__(/*! ./_property-desc */ "./node_modules/core-js/library/modules/_property-desc.js");
|
| 702 |
+
module.exports = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
|
| 703 |
+
return dP.f(object, key, createDesc(1, value));
|
| 704 |
+
} : function (object, key, value) {
|
| 705 |
+
object[key] = value;
|
| 706 |
+
return object;
|
| 707 |
+
};
|
| 708 |
+
|
| 709 |
+
|
| 710 |
+
/***/ }),
|
| 711 |
+
|
| 712 |
+
/***/ "./node_modules/core-js/library/modules/_ie8-dom-define.js":
|
| 713 |
+
/*!*****************************************************************!*\
|
| 714 |
+
!*** ./node_modules/core-js/library/modules/_ie8-dom-define.js ***!
|
| 715 |
+
\*****************************************************************/
|
| 716 |
+
/*! no static exports found */
|
| 717 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 718 |
+
|
| 719 |
+
module.exports = !__webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "./node_modules/core-js/library/modules/_fails.js")(function () {
|
| 720 |
+
return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "./node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
|
| 721 |
+
});
|
| 722 |
+
|
| 723 |
+
|
| 724 |
+
/***/ }),
|
| 725 |
+
|
| 726 |
+
/***/ "./node_modules/core-js/library/modules/_is-object.js":
|
| 727 |
+
/*!************************************************************!*\
|
| 728 |
+
!*** ./node_modules/core-js/library/modules/_is-object.js ***!
|
| 729 |
+
\************************************************************/
|
| 730 |
+
/*! no static exports found */
|
| 731 |
+
/***/ (function(module, exports) {
|
| 732 |
+
|
| 733 |
+
module.exports = function (it) {
|
| 734 |
+
return typeof it === 'object' ? it !== null : typeof it === 'function';
|
| 735 |
+
};
|
| 736 |
+
|
| 737 |
+
|
| 738 |
+
/***/ }),
|
| 739 |
+
|
| 740 |
+
/***/ "./node_modules/core-js/library/modules/_object-dp.js":
|
| 741 |
+
/*!************************************************************!*\
|
| 742 |
+
!*** ./node_modules/core-js/library/modules/_object-dp.js ***!
|
| 743 |
+
\************************************************************/
|
| 744 |
+
/*! no static exports found */
|
| 745 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 746 |
+
|
| 747 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/library/modules/_an-object.js");
|
| 748 |
+
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "./node_modules/core-js/library/modules/_ie8-dom-define.js");
|
| 749 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/library/modules/_to-primitive.js");
|
| 750 |
+
var dP = Object.defineProperty;
|
| 751 |
+
|
| 752 |
+
exports.f = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
|
| 753 |
+
anObject(O);
|
| 754 |
+
P = toPrimitive(P, true);
|
| 755 |
+
anObject(Attributes);
|
| 756 |
+
if (IE8_DOM_DEFINE) try {
|
| 757 |
+
return dP(O, P, Attributes);
|
| 758 |
+
} catch (e) { /* empty */ }
|
| 759 |
+
if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
|
| 760 |
+
if ('value' in Attributes) O[P] = Attributes.value;
|
| 761 |
+
return O;
|
| 762 |
+
};
|
| 763 |
+
|
| 764 |
+
|
| 765 |
+
/***/ }),
|
| 766 |
+
|
| 767 |
+
/***/ "./node_modules/core-js/library/modules/_property-desc.js":
|
| 768 |
+
/*!****************************************************************!*\
|
| 769 |
+
!*** ./node_modules/core-js/library/modules/_property-desc.js ***!
|
| 770 |
+
\****************************************************************/
|
| 771 |
+
/*! no static exports found */
|
| 772 |
+
/***/ (function(module, exports) {
|
| 773 |
+
|
| 774 |
+
module.exports = function (bitmap, value) {
|
| 775 |
+
return {
|
| 776 |
+
enumerable: !(bitmap & 1),
|
| 777 |
+
configurable: !(bitmap & 2),
|
| 778 |
+
writable: !(bitmap & 4),
|
| 779 |
+
value: value
|
| 780 |
+
};
|
| 781 |
+
};
|
| 782 |
+
|
| 783 |
+
|
| 784 |
+
/***/ }),
|
| 785 |
+
|
| 786 |
+
/***/ "./node_modules/core-js/library/modules/_to-primitive.js":
|
| 787 |
+
/*!***************************************************************!*\
|
| 788 |
+
!*** ./node_modules/core-js/library/modules/_to-primitive.js ***!
|
| 789 |
+
\***************************************************************/
|
| 790 |
+
/*! no static exports found */
|
| 791 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 792 |
+
|
| 793 |
+
// 7.1.1 ToPrimitive(input [, PreferredType])
|
| 794 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/library/modules/_is-object.js");
|
| 795 |
+
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
|
| 796 |
+
// and the second argument - flag - preferred type is a string
|
| 797 |
+
module.exports = function (it, S) {
|
| 798 |
+
if (!isObject(it)) return it;
|
| 799 |
+
var fn, val;
|
| 800 |
+
if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
|
| 801 |
+
if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
|
| 802 |
+
if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
|
| 803 |
+
throw TypeError("Can't convert object to primitive value");
|
| 804 |
+
};
|
| 805 |
+
|
| 806 |
+
|
| 807 |
+
/***/ }),
|
| 808 |
+
|
| 809 |
+
/***/ "./node_modules/core-js/library/modules/es7.global.js":
|
| 810 |
+
/*!************************************************************!*\
|
| 811 |
+
!*** ./node_modules/core-js/library/modules/es7.global.js ***!
|
| 812 |
+
\************************************************************/
|
| 813 |
+
/*! no static exports found */
|
| 814 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 815 |
+
|
| 816 |
+
// https://github.com/tc39/proposal-global
|
| 817 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/library/modules/_export.js");
|
| 818 |
+
|
| 819 |
+
$export($export.G, { global: __webpack_require__(/*! ./_global */ "./node_modules/core-js/library/modules/_global.js") });
|
| 820 |
+
|
| 821 |
+
|
| 822 |
+
/***/ }),
|
| 823 |
+
|
| 824 |
+
/***/ "./node_modules/core-js/modules/_a-function.js":
|
| 825 |
+
/*!*****************************************************!*\
|
| 826 |
+
!*** ./node_modules/core-js/modules/_a-function.js ***!
|
| 827 |
+
\*****************************************************/
|
| 828 |
+
/*! no static exports found */
|
| 829 |
+
/***/ (function(module, exports) {
|
| 830 |
+
|
| 831 |
+
module.exports = function (it) {
|
| 832 |
+
if (typeof it != 'function') throw TypeError(it + ' is not a function!');
|
| 833 |
+
return it;
|
| 834 |
+
};
|
| 835 |
+
|
| 836 |
+
|
| 837 |
+
/***/ }),
|
| 838 |
+
|
| 839 |
+
/***/ "./node_modules/core-js/modules/_a-number-value.js":
|
| 840 |
+
/*!*********************************************************!*\
|
| 841 |
+
!*** ./node_modules/core-js/modules/_a-number-value.js ***!
|
| 842 |
+
\*********************************************************/
|
| 843 |
+
/*! no static exports found */
|
| 844 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 845 |
+
|
| 846 |
+
var cof = __webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js");
|
| 847 |
+
module.exports = function (it, msg) {
|
| 848 |
+
if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg);
|
| 849 |
+
return +it;
|
| 850 |
+
};
|
| 851 |
+
|
| 852 |
+
|
| 853 |
+
/***/ }),
|
| 854 |
+
|
| 855 |
+
/***/ "./node_modules/core-js/modules/_add-to-unscopables.js":
|
| 856 |
+
/*!*************************************************************!*\
|
| 857 |
+
!*** ./node_modules/core-js/modules/_add-to-unscopables.js ***!
|
| 858 |
+
\*************************************************************/
|
| 859 |
+
/*! no static exports found */
|
| 860 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 861 |
+
|
| 862 |
+
// 22.1.3.31 Array.prototype[@@unscopables]
|
| 863 |
+
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('unscopables');
|
| 864 |
+
var ArrayProto = Array.prototype;
|
| 865 |
+
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
|
| 866 |
+
module.exports = function (key) {
|
| 867 |
+
ArrayProto[UNSCOPABLES][key] = true;
|
| 868 |
+
};
|
| 869 |
+
|
| 870 |
+
|
| 871 |
+
/***/ }),
|
| 872 |
+
|
| 873 |
+
/***/ "./node_modules/core-js/modules/_advance-string-index.js":
|
| 874 |
+
/*!***************************************************************!*\
|
| 875 |
+
!*** ./node_modules/core-js/modules/_advance-string-index.js ***!
|
| 876 |
+
\***************************************************************/
|
| 877 |
+
/*! no static exports found */
|
| 878 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 879 |
+
|
| 880 |
+
"use strict";
|
| 881 |
+
|
| 882 |
+
var at = __webpack_require__(/*! ./_string-at */ "./node_modules/core-js/modules/_string-at.js")(true);
|
| 883 |
+
|
| 884 |
+
// `AdvanceStringIndex` abstract operation
|
| 885 |
+
// https://tc39.github.io/ecma262/#sec-advancestringindex
|
| 886 |
+
module.exports = function (S, index, unicode) {
|
| 887 |
+
return index + (unicode ? at(S, index).length : 1);
|
| 888 |
+
};
|
| 889 |
+
|
| 890 |
+
|
| 891 |
+
/***/ }),
|
| 892 |
+
|
| 893 |
+
/***/ "./node_modules/core-js/modules/_an-instance.js":
|
| 894 |
+
/*!******************************************************!*\
|
| 895 |
+
!*** ./node_modules/core-js/modules/_an-instance.js ***!
|
| 896 |
+
\******************************************************/
|
| 897 |
+
/*! no static exports found */
|
| 898 |
+
/***/ (function(module, exports) {
|
| 899 |
+
|
| 900 |
+
module.exports = function (it, Constructor, name, forbiddenField) {
|
| 901 |
+
if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
|
| 902 |
+
throw TypeError(name + ': incorrect invocation!');
|
| 903 |
+
} return it;
|
| 904 |
+
};
|
| 905 |
+
|
| 906 |
+
|
| 907 |
+
/***/ }),
|
| 908 |
+
|
| 909 |
+
/***/ "./node_modules/core-js/modules/_an-object.js":
|
| 910 |
+
/*!****************************************************!*\
|
| 911 |
+
!*** ./node_modules/core-js/modules/_an-object.js ***!
|
| 912 |
+
\****************************************************/
|
| 913 |
+
/*! no static exports found */
|
| 914 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 915 |
+
|
| 916 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 917 |
+
module.exports = function (it) {
|
| 918 |
+
if (!isObject(it)) throw TypeError(it + ' is not an object!');
|
| 919 |
+
return it;
|
| 920 |
+
};
|
| 921 |
+
|
| 922 |
+
|
| 923 |
+
/***/ }),
|
| 924 |
+
|
| 925 |
+
/***/ "./node_modules/core-js/modules/_array-copy-within.js":
|
| 926 |
+
/*!************************************************************!*\
|
| 927 |
+
!*** ./node_modules/core-js/modules/_array-copy-within.js ***!
|
| 928 |
+
\************************************************************/
|
| 929 |
+
/*! no static exports found */
|
| 930 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 931 |
+
|
| 932 |
+
"use strict";
|
| 933 |
+
// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
|
| 934 |
+
|
| 935 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 936 |
+
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "./node_modules/core-js/modules/_to-absolute-index.js");
|
| 937 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 938 |
+
|
| 939 |
+
module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {
|
| 940 |
+
var O = toObject(this);
|
| 941 |
+
var len = toLength(O.length);
|
| 942 |
+
var to = toAbsoluteIndex(target, len);
|
| 943 |
+
var from = toAbsoluteIndex(start, len);
|
| 944 |
+
var end = arguments.length > 2 ? arguments[2] : undefined;
|
| 945 |
+
var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);
|
| 946 |
+
var inc = 1;
|
| 947 |
+
if (from < to && to < from + count) {
|
| 948 |
+
inc = -1;
|
| 949 |
+
from += count - 1;
|
| 950 |
+
to += count - 1;
|
| 951 |
+
}
|
| 952 |
+
while (count-- > 0) {
|
| 953 |
+
if (from in O) O[to] = O[from];
|
| 954 |
+
else delete O[to];
|
| 955 |
+
to += inc;
|
| 956 |
+
from += inc;
|
| 957 |
+
} return O;
|
| 958 |
+
};
|
| 959 |
+
|
| 960 |
+
|
| 961 |
+
/***/ }),
|
| 962 |
+
|
| 963 |
+
/***/ "./node_modules/core-js/modules/_array-fill.js":
|
| 964 |
+
/*!*****************************************************!*\
|
| 965 |
+
!*** ./node_modules/core-js/modules/_array-fill.js ***!
|
| 966 |
+
\*****************************************************/
|
| 967 |
+
/*! no static exports found */
|
| 968 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 969 |
+
|
| 970 |
+
"use strict";
|
| 971 |
+
// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
|
| 972 |
+
|
| 973 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 974 |
+
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "./node_modules/core-js/modules/_to-absolute-index.js");
|
| 975 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 976 |
+
module.exports = function fill(value /* , start = 0, end = @length */) {
|
| 977 |
+
var O = toObject(this);
|
| 978 |
+
var length = toLength(O.length);
|
| 979 |
+
var aLen = arguments.length;
|
| 980 |
+
var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);
|
| 981 |
+
var end = aLen > 2 ? arguments[2] : undefined;
|
| 982 |
+
var endPos = end === undefined ? length : toAbsoluteIndex(end, length);
|
| 983 |
+
while (endPos > index) O[index++] = value;
|
| 984 |
+
return O;
|
| 985 |
+
};
|
| 986 |
+
|
| 987 |
+
|
| 988 |
+
/***/ }),
|
| 989 |
+
|
| 990 |
+
/***/ "./node_modules/core-js/modules/_array-includes.js":
|
| 991 |
+
/*!*********************************************************!*\
|
| 992 |
+
!*** ./node_modules/core-js/modules/_array-includes.js ***!
|
| 993 |
+
\*********************************************************/
|
| 994 |
+
/*! no static exports found */
|
| 995 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 996 |
+
|
| 997 |
+
// false -> Array#indexOf
|
| 998 |
+
// true -> Array#includes
|
| 999 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 1000 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 1001 |
+
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "./node_modules/core-js/modules/_to-absolute-index.js");
|
| 1002 |
+
module.exports = function (IS_INCLUDES) {
|
| 1003 |
+
return function ($this, el, fromIndex) {
|
| 1004 |
+
var O = toIObject($this);
|
| 1005 |
+
var length = toLength(O.length);
|
| 1006 |
+
var index = toAbsoluteIndex(fromIndex, length);
|
| 1007 |
+
var value;
|
| 1008 |
+
// Array#includes uses SameValueZero equality algorithm
|
| 1009 |
+
// eslint-disable-next-line no-self-compare
|
| 1010 |
+
if (IS_INCLUDES && el != el) while (length > index) {
|
| 1011 |
+
value = O[index++];
|
| 1012 |
+
// eslint-disable-next-line no-self-compare
|
| 1013 |
+
if (value != value) return true;
|
| 1014 |
+
// Array#indexOf ignores holes, Array#includes - not
|
| 1015 |
+
} else for (;length > index; index++) if (IS_INCLUDES || index in O) {
|
| 1016 |
+
if (O[index] === el) return IS_INCLUDES || index || 0;
|
| 1017 |
+
} return !IS_INCLUDES && -1;
|
| 1018 |
+
};
|
| 1019 |
+
};
|
| 1020 |
+
|
| 1021 |
+
|
| 1022 |
+
/***/ }),
|
| 1023 |
+
|
| 1024 |
+
/***/ "./node_modules/core-js/modules/_array-methods.js":
|
| 1025 |
+
/*!********************************************************!*\
|
| 1026 |
+
!*** ./node_modules/core-js/modules/_array-methods.js ***!
|
| 1027 |
+
\********************************************************/
|
| 1028 |
+
/*! no static exports found */
|
| 1029 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1030 |
+
|
| 1031 |
+
// 0 -> Array#forEach
|
| 1032 |
+
// 1 -> Array#map
|
| 1033 |
+
// 2 -> Array#filter
|
| 1034 |
+
// 3 -> Array#some
|
| 1035 |
+
// 4 -> Array#every
|
| 1036 |
+
// 5 -> Array#find
|
| 1037 |
+
// 6 -> Array#findIndex
|
| 1038 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 1039 |
+
var IObject = __webpack_require__(/*! ./_iobject */ "./node_modules/core-js/modules/_iobject.js");
|
| 1040 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 1041 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 1042 |
+
var asc = __webpack_require__(/*! ./_array-species-create */ "./node_modules/core-js/modules/_array-species-create.js");
|
| 1043 |
+
module.exports = function (TYPE, $create) {
|
| 1044 |
+
var IS_MAP = TYPE == 1;
|
| 1045 |
+
var IS_FILTER = TYPE == 2;
|
| 1046 |
+
var IS_SOME = TYPE == 3;
|
| 1047 |
+
var IS_EVERY = TYPE == 4;
|
| 1048 |
+
var IS_FIND_INDEX = TYPE == 6;
|
| 1049 |
+
var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
|
| 1050 |
+
var create = $create || asc;
|
| 1051 |
+
return function ($this, callbackfn, that) {
|
| 1052 |
+
var O = toObject($this);
|
| 1053 |
+
var self = IObject(O);
|
| 1054 |
+
var f = ctx(callbackfn, that, 3);
|
| 1055 |
+
var length = toLength(self.length);
|
| 1056 |
+
var index = 0;
|
| 1057 |
+
var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
|
| 1058 |
+
var val, res;
|
| 1059 |
+
for (;length > index; index++) if (NO_HOLES || index in self) {
|
| 1060 |
+
val = self[index];
|
| 1061 |
+
res = f(val, index, O);
|
| 1062 |
+
if (TYPE) {
|
| 1063 |
+
if (IS_MAP) result[index] = res; // map
|
| 1064 |
+
else if (res) switch (TYPE) {
|
| 1065 |
+
case 3: return true; // some
|
| 1066 |
+
case 5: return val; // find
|
| 1067 |
+
case 6: return index; // findIndex
|
| 1068 |
+
case 2: result.push(val); // filter
|
| 1069 |
+
} else if (IS_EVERY) return false; // every
|
| 1070 |
+
}
|
| 1071 |
+
}
|
| 1072 |
+
return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
|
| 1073 |
+
};
|
| 1074 |
+
};
|
| 1075 |
+
|
| 1076 |
+
|
| 1077 |
+
/***/ }),
|
| 1078 |
+
|
| 1079 |
+
/***/ "./node_modules/core-js/modules/_array-reduce.js":
|
| 1080 |
+
/*!*******************************************************!*\
|
| 1081 |
+
!*** ./node_modules/core-js/modules/_array-reduce.js ***!
|
| 1082 |
+
\*******************************************************/
|
| 1083 |
+
/*! no static exports found */
|
| 1084 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1085 |
+
|
| 1086 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 1087 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 1088 |
+
var IObject = __webpack_require__(/*! ./_iobject */ "./node_modules/core-js/modules/_iobject.js");
|
| 1089 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 1090 |
+
|
| 1091 |
+
module.exports = function (that, callbackfn, aLen, memo, isRight) {
|
| 1092 |
+
aFunction(callbackfn);
|
| 1093 |
+
var O = toObject(that);
|
| 1094 |
+
var self = IObject(O);
|
| 1095 |
+
var length = toLength(O.length);
|
| 1096 |
+
var index = isRight ? length - 1 : 0;
|
| 1097 |
+
var i = isRight ? -1 : 1;
|
| 1098 |
+
if (aLen < 2) for (;;) {
|
| 1099 |
+
if (index in self) {
|
| 1100 |
+
memo = self[index];
|
| 1101 |
+
index += i;
|
| 1102 |
+
break;
|
| 1103 |
+
}
|
| 1104 |
+
index += i;
|
| 1105 |
+
if (isRight ? index < 0 : length <= index) {
|
| 1106 |
+
throw TypeError('Reduce of empty array with no initial value');
|
| 1107 |
+
}
|
| 1108 |
+
}
|
| 1109 |
+
for (;isRight ? index >= 0 : length > index; index += i) if (index in self) {
|
| 1110 |
+
memo = callbackfn(memo, self[index], index, O);
|
| 1111 |
+
}
|
| 1112 |
+
return memo;
|
| 1113 |
+
};
|
| 1114 |
+
|
| 1115 |
+
|
| 1116 |
+
/***/ }),
|
| 1117 |
+
|
| 1118 |
+
/***/ "./node_modules/core-js/modules/_array-species-constructor.js":
|
| 1119 |
+
/*!********************************************************************!*\
|
| 1120 |
+
!*** ./node_modules/core-js/modules/_array-species-constructor.js ***!
|
| 1121 |
+
\********************************************************************/
|
| 1122 |
+
/*! no static exports found */
|
| 1123 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1124 |
+
|
| 1125 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 1126 |
+
var isArray = __webpack_require__(/*! ./_is-array */ "./node_modules/core-js/modules/_is-array.js");
|
| 1127 |
+
var SPECIES = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('species');
|
| 1128 |
+
|
| 1129 |
+
module.exports = function (original) {
|
| 1130 |
+
var C;
|
| 1131 |
+
if (isArray(original)) {
|
| 1132 |
+
C = original.constructor;
|
| 1133 |
+
// cross-realm fallback
|
| 1134 |
+
if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
|
| 1135 |
+
if (isObject(C)) {
|
| 1136 |
+
C = C[SPECIES];
|
| 1137 |
+
if (C === null) C = undefined;
|
| 1138 |
+
}
|
| 1139 |
+
} return C === undefined ? Array : C;
|
| 1140 |
+
};
|
| 1141 |
+
|
| 1142 |
+
|
| 1143 |
+
/***/ }),
|
| 1144 |
+
|
| 1145 |
+
/***/ "./node_modules/core-js/modules/_array-species-create.js":
|
| 1146 |
+
/*!***************************************************************!*\
|
| 1147 |
+
!*** ./node_modules/core-js/modules/_array-species-create.js ***!
|
| 1148 |
+
\***************************************************************/
|
| 1149 |
+
/*! no static exports found */
|
| 1150 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1151 |
+
|
| 1152 |
+
// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
|
| 1153 |
+
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "./node_modules/core-js/modules/_array-species-constructor.js");
|
| 1154 |
+
|
| 1155 |
+
module.exports = function (original, length) {
|
| 1156 |
+
return new (speciesConstructor(original))(length);
|
| 1157 |
+
};
|
| 1158 |
+
|
| 1159 |
+
|
| 1160 |
+
/***/ }),
|
| 1161 |
+
|
| 1162 |
+
/***/ "./node_modules/core-js/modules/_bind.js":
|
| 1163 |
+
/*!***********************************************!*\
|
| 1164 |
+
!*** ./node_modules/core-js/modules/_bind.js ***!
|
| 1165 |
+
\***********************************************/
|
| 1166 |
+
/*! no static exports found */
|
| 1167 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1168 |
+
|
| 1169 |
+
"use strict";
|
| 1170 |
+
|
| 1171 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 1172 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 1173 |
+
var invoke = __webpack_require__(/*! ./_invoke */ "./node_modules/core-js/modules/_invoke.js");
|
| 1174 |
+
var arraySlice = [].slice;
|
| 1175 |
+
var factories = {};
|
| 1176 |
+
|
| 1177 |
+
var construct = function (F, len, args) {
|
| 1178 |
+
if (!(len in factories)) {
|
| 1179 |
+
for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
|
| 1180 |
+
// eslint-disable-next-line no-new-func
|
| 1181 |
+
factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
|
| 1182 |
+
} return factories[len](F, args);
|
| 1183 |
+
};
|
| 1184 |
+
|
| 1185 |
+
module.exports = Function.bind || function bind(that /* , ...args */) {
|
| 1186 |
+
var fn = aFunction(this);
|
| 1187 |
+
var partArgs = arraySlice.call(arguments, 1);
|
| 1188 |
+
var bound = function (/* args... */) {
|
| 1189 |
+
var args = partArgs.concat(arraySlice.call(arguments));
|
| 1190 |
+
return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
|
| 1191 |
+
};
|
| 1192 |
+
if (isObject(fn.prototype)) bound.prototype = fn.prototype;
|
| 1193 |
+
return bound;
|
| 1194 |
+
};
|
| 1195 |
+
|
| 1196 |
+
|
| 1197 |
+
/***/ }),
|
| 1198 |
+
|
| 1199 |
+
/***/ "./node_modules/core-js/modules/_classof.js":
|
| 1200 |
+
/*!**************************************************!*\
|
| 1201 |
+
!*** ./node_modules/core-js/modules/_classof.js ***!
|
| 1202 |
+
\**************************************************/
|
| 1203 |
+
/*! no static exports found */
|
| 1204 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1205 |
+
|
| 1206 |
+
// getting tag from 19.1.3.6 Object.prototype.toString()
|
| 1207 |
+
var cof = __webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js");
|
| 1208 |
+
var TAG = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('toStringTag');
|
| 1209 |
+
// ES3 wrong here
|
| 1210 |
+
var ARG = cof(function () { return arguments; }()) == 'Arguments';
|
| 1211 |
+
|
| 1212 |
+
// fallback for IE11 Script Access Denied error
|
| 1213 |
+
var tryGet = function (it, key) {
|
| 1214 |
+
try {
|
| 1215 |
+
return it[key];
|
| 1216 |
+
} catch (e) { /* empty */ }
|
| 1217 |
+
};
|
| 1218 |
+
|
| 1219 |
+
module.exports = function (it) {
|
| 1220 |
+
var O, T, B;
|
| 1221 |
+
return it === undefined ? 'Undefined' : it === null ? 'Null'
|
| 1222 |
+
// @@toStringTag case
|
| 1223 |
+
: typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
|
| 1224 |
+
// builtinTag case
|
| 1225 |
+
: ARG ? cof(O)
|
| 1226 |
+
// ES3 arguments fallback
|
| 1227 |
+
: (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
|
| 1228 |
+
};
|
| 1229 |
+
|
| 1230 |
+
|
| 1231 |
+
/***/ }),
|
| 1232 |
+
|
| 1233 |
+
/***/ "./node_modules/core-js/modules/_cof.js":
|
| 1234 |
+
/*!**********************************************!*\
|
| 1235 |
+
!*** ./node_modules/core-js/modules/_cof.js ***!
|
| 1236 |
+
\**********************************************/
|
| 1237 |
+
/*! no static exports found */
|
| 1238 |
+
/***/ (function(module, exports) {
|
| 1239 |
+
|
| 1240 |
+
var toString = {}.toString;
|
| 1241 |
+
|
| 1242 |
+
module.exports = function (it) {
|
| 1243 |
+
return toString.call(it).slice(8, -1);
|
| 1244 |
+
};
|
| 1245 |
+
|
| 1246 |
+
|
| 1247 |
+
/***/ }),
|
| 1248 |
+
|
| 1249 |
+
/***/ "./node_modules/core-js/modules/_collection-strong.js":
|
| 1250 |
+
/*!************************************************************!*\
|
| 1251 |
+
!*** ./node_modules/core-js/modules/_collection-strong.js ***!
|
| 1252 |
+
\************************************************************/
|
| 1253 |
+
/*! no static exports found */
|
| 1254 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1255 |
+
|
| 1256 |
+
"use strict";
|
| 1257 |
+
|
| 1258 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f;
|
| 1259 |
+
var create = __webpack_require__(/*! ./_object-create */ "./node_modules/core-js/modules/_object-create.js");
|
| 1260 |
+
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "./node_modules/core-js/modules/_redefine-all.js");
|
| 1261 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 1262 |
+
var anInstance = __webpack_require__(/*! ./_an-instance */ "./node_modules/core-js/modules/_an-instance.js");
|
| 1263 |
+
var forOf = __webpack_require__(/*! ./_for-of */ "./node_modules/core-js/modules/_for-of.js");
|
| 1264 |
+
var $iterDefine = __webpack_require__(/*! ./_iter-define */ "./node_modules/core-js/modules/_iter-define.js");
|
| 1265 |
+
var step = __webpack_require__(/*! ./_iter-step */ "./node_modules/core-js/modules/_iter-step.js");
|
| 1266 |
+
var setSpecies = __webpack_require__(/*! ./_set-species */ "./node_modules/core-js/modules/_set-species.js");
|
| 1267 |
+
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js");
|
| 1268 |
+
var fastKey = __webpack_require__(/*! ./_meta */ "./node_modules/core-js/modules/_meta.js").fastKey;
|
| 1269 |
+
var validate = __webpack_require__(/*! ./_validate-collection */ "./node_modules/core-js/modules/_validate-collection.js");
|
| 1270 |
+
var SIZE = DESCRIPTORS ? '_s' : 'size';
|
| 1271 |
+
|
| 1272 |
+
var getEntry = function (that, key) {
|
| 1273 |
+
// fast case
|
| 1274 |
+
var index = fastKey(key);
|
| 1275 |
+
var entry;
|
| 1276 |
+
if (index !== 'F') return that._i[index];
|
| 1277 |
+
// frozen object case
|
| 1278 |
+
for (entry = that._f; entry; entry = entry.n) {
|
| 1279 |
+
if (entry.k == key) return entry;
|
| 1280 |
+
}
|
| 1281 |
+
};
|
| 1282 |
+
|
| 1283 |
+
module.exports = {
|
| 1284 |
+
getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
|
| 1285 |
+
var C = wrapper(function (that, iterable) {
|
| 1286 |
+
anInstance(that, C, NAME, '_i');
|
| 1287 |
+
that._t = NAME; // collection type
|
| 1288 |
+
that._i = create(null); // index
|
| 1289 |
+
that._f = undefined; // first entry
|
| 1290 |
+
that._l = undefined; // last entry
|
| 1291 |
+
that[SIZE] = 0; // size
|
| 1292 |
+
if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
|
| 1293 |
+
});
|
| 1294 |
+
redefineAll(C.prototype, {
|
| 1295 |
+
// 23.1.3.1 Map.prototype.clear()
|
| 1296 |
+
// 23.2.3.2 Set.prototype.clear()
|
| 1297 |
+
clear: function clear() {
|
| 1298 |
+
for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
|
| 1299 |
+
entry.r = true;
|
| 1300 |
+
if (entry.p) entry.p = entry.p.n = undefined;
|
| 1301 |
+
delete data[entry.i];
|
| 1302 |
+
}
|
| 1303 |
+
that._f = that._l = undefined;
|
| 1304 |
+
that[SIZE] = 0;
|
| 1305 |
+
},
|
| 1306 |
+
// 23.1.3.3 Map.prototype.delete(key)
|
| 1307 |
+
// 23.2.3.4 Set.prototype.delete(value)
|
| 1308 |
+
'delete': function (key) {
|
| 1309 |
+
var that = validate(this, NAME);
|
| 1310 |
+
var entry = getEntry(that, key);
|
| 1311 |
+
if (entry) {
|
| 1312 |
+
var next = entry.n;
|
| 1313 |
+
var prev = entry.p;
|
| 1314 |
+
delete that._i[entry.i];
|
| 1315 |
+
entry.r = true;
|
| 1316 |
+
if (prev) prev.n = next;
|
| 1317 |
+
if (next) next.p = prev;
|
| 1318 |
+
if (that._f == entry) that._f = next;
|
| 1319 |
+
if (that._l == entry) that._l = prev;
|
| 1320 |
+
that[SIZE]--;
|
| 1321 |
+
} return !!entry;
|
| 1322 |
+
},
|
| 1323 |
+
// 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
|
| 1324 |
+
// 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
|
| 1325 |
+
forEach: function forEach(callbackfn /* , that = undefined */) {
|
| 1326 |
+
validate(this, NAME);
|
| 1327 |
+
var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
|
| 1328 |
+
var entry;
|
| 1329 |
+
while (entry = entry ? entry.n : this._f) {
|
| 1330 |
+
f(entry.v, entry.k, this);
|
| 1331 |
+
// revert to the last existing entry
|
| 1332 |
+
while (entry && entry.r) entry = entry.p;
|
| 1333 |
+
}
|
| 1334 |
+
},
|
| 1335 |
+
// 23.1.3.7 Map.prototype.has(key)
|
| 1336 |
+
// 23.2.3.7 Set.prototype.has(value)
|
| 1337 |
+
has: function has(key) {
|
| 1338 |
+
return !!getEntry(validate(this, NAME), key);
|
| 1339 |
+
}
|
| 1340 |
+
});
|
| 1341 |
+
if (DESCRIPTORS) dP(C.prototype, 'size', {
|
| 1342 |
+
get: function () {
|
| 1343 |
+
return validate(this, NAME)[SIZE];
|
| 1344 |
+
}
|
| 1345 |
+
});
|
| 1346 |
+
return C;
|
| 1347 |
+
},
|
| 1348 |
+
def: function (that, key, value) {
|
| 1349 |
+
var entry = getEntry(that, key);
|
| 1350 |
+
var prev, index;
|
| 1351 |
+
// change existing entry
|
| 1352 |
+
if (entry) {
|
| 1353 |
+
entry.v = value;
|
| 1354 |
+
// create new entry
|
| 1355 |
+
} else {
|
| 1356 |
+
that._l = entry = {
|
| 1357 |
+
i: index = fastKey(key, true), // <- index
|
| 1358 |
+
k: key, // <- key
|
| 1359 |
+
v: value, // <- value
|
| 1360 |
+
p: prev = that._l, // <- previous entry
|
| 1361 |
+
n: undefined, // <- next entry
|
| 1362 |
+
r: false // <- removed
|
| 1363 |
+
};
|
| 1364 |
+
if (!that._f) that._f = entry;
|
| 1365 |
+
if (prev) prev.n = entry;
|
| 1366 |
+
that[SIZE]++;
|
| 1367 |
+
// add to index
|
| 1368 |
+
if (index !== 'F') that._i[index] = entry;
|
| 1369 |
+
} return that;
|
| 1370 |
+
},
|
| 1371 |
+
getEntry: getEntry,
|
| 1372 |
+
setStrong: function (C, NAME, IS_MAP) {
|
| 1373 |
+
// add .keys, .values, .entries, [@@iterator]
|
| 1374 |
+
// 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
|
| 1375 |
+
$iterDefine(C, NAME, function (iterated, kind) {
|
| 1376 |
+
this._t = validate(iterated, NAME); // target
|
| 1377 |
+
this._k = kind; // kind
|
| 1378 |
+
this._l = undefined; // previous
|
| 1379 |
+
}, function () {
|
| 1380 |
+
var that = this;
|
| 1381 |
+
var kind = that._k;
|
| 1382 |
+
var entry = that._l;
|
| 1383 |
+
// revert to the last existing entry
|
| 1384 |
+
while (entry && entry.r) entry = entry.p;
|
| 1385 |
+
// get next entry
|
| 1386 |
+
if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
|
| 1387 |
+
// or finish the iteration
|
| 1388 |
+
that._t = undefined;
|
| 1389 |
+
return step(1);
|
| 1390 |
+
}
|
| 1391 |
+
// return step by kind
|
| 1392 |
+
if (kind == 'keys') return step(0, entry.k);
|
| 1393 |
+
if (kind == 'values') return step(0, entry.v);
|
| 1394 |
+
return step(0, [entry.k, entry.v]);
|
| 1395 |
+
}, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
|
| 1396 |
+
|
| 1397 |
+
// add [@@species], 23.1.2.2, 23.2.2.2
|
| 1398 |
+
setSpecies(NAME);
|
| 1399 |
+
}
|
| 1400 |
+
};
|
| 1401 |
+
|
| 1402 |
+
|
| 1403 |
+
/***/ }),
|
| 1404 |
+
|
| 1405 |
+
/***/ "./node_modules/core-js/modules/_collection-weak.js":
|
| 1406 |
+
/*!**********************************************************!*\
|
| 1407 |
+
!*** ./node_modules/core-js/modules/_collection-weak.js ***!
|
| 1408 |
+
\**********************************************************/
|
| 1409 |
+
/*! no static exports found */
|
| 1410 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1411 |
+
|
| 1412 |
+
"use strict";
|
| 1413 |
+
|
| 1414 |
+
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "./node_modules/core-js/modules/_redefine-all.js");
|
| 1415 |
+
var getWeak = __webpack_require__(/*! ./_meta */ "./node_modules/core-js/modules/_meta.js").getWeak;
|
| 1416 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 1417 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 1418 |
+
var anInstance = __webpack_require__(/*! ./_an-instance */ "./node_modules/core-js/modules/_an-instance.js");
|
| 1419 |
+
var forOf = __webpack_require__(/*! ./_for-of */ "./node_modules/core-js/modules/_for-of.js");
|
| 1420 |
+
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js");
|
| 1421 |
+
var $has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 1422 |
+
var validate = __webpack_require__(/*! ./_validate-collection */ "./node_modules/core-js/modules/_validate-collection.js");
|
| 1423 |
+
var arrayFind = createArrayMethod(5);
|
| 1424 |
+
var arrayFindIndex = createArrayMethod(6);
|
| 1425 |
+
var id = 0;
|
| 1426 |
+
|
| 1427 |
+
// fallback for uncaught frozen keys
|
| 1428 |
+
var uncaughtFrozenStore = function (that) {
|
| 1429 |
+
return that._l || (that._l = new UncaughtFrozenStore());
|
| 1430 |
+
};
|
| 1431 |
+
var UncaughtFrozenStore = function () {
|
| 1432 |
+
this.a = [];
|
| 1433 |
+
};
|
| 1434 |
+
var findUncaughtFrozen = function (store, key) {
|
| 1435 |
+
return arrayFind(store.a, function (it) {
|
| 1436 |
+
return it[0] === key;
|
| 1437 |
+
});
|
| 1438 |
+
};
|
| 1439 |
+
UncaughtFrozenStore.prototype = {
|
| 1440 |
+
get: function (key) {
|
| 1441 |
+
var entry = findUncaughtFrozen(this, key);
|
| 1442 |
+
if (entry) return entry[1];
|
| 1443 |
+
},
|
| 1444 |
+
has: function (key) {
|
| 1445 |
+
return !!findUncaughtFrozen(this, key);
|
| 1446 |
+
},
|
| 1447 |
+
set: function (key, value) {
|
| 1448 |
+
var entry = findUncaughtFrozen(this, key);
|
| 1449 |
+
if (entry) entry[1] = value;
|
| 1450 |
+
else this.a.push([key, value]);
|
| 1451 |
+
},
|
| 1452 |
+
'delete': function (key) {
|
| 1453 |
+
var index = arrayFindIndex(this.a, function (it) {
|
| 1454 |
+
return it[0] === key;
|
| 1455 |
+
});
|
| 1456 |
+
if (~index) this.a.splice(index, 1);
|
| 1457 |
+
return !!~index;
|
| 1458 |
+
}
|
| 1459 |
+
};
|
| 1460 |
+
|
| 1461 |
+
module.exports = {
|
| 1462 |
+
getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
|
| 1463 |
+
var C = wrapper(function (that, iterable) {
|
| 1464 |
+
anInstance(that, C, NAME, '_i');
|
| 1465 |
+
that._t = NAME; // collection type
|
| 1466 |
+
that._i = id++; // collection id
|
| 1467 |
+
that._l = undefined; // leak store for uncaught frozen objects
|
| 1468 |
+
if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
|
| 1469 |
+
});
|
| 1470 |
+
redefineAll(C.prototype, {
|
| 1471 |
+
// 23.3.3.2 WeakMap.prototype.delete(key)
|
| 1472 |
+
// 23.4.3.3 WeakSet.prototype.delete(value)
|
| 1473 |
+
'delete': function (key) {
|
| 1474 |
+
if (!isObject(key)) return false;
|
| 1475 |
+
var data = getWeak(key);
|
| 1476 |
+
if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
|
| 1477 |
+
return data && $has(data, this._i) && delete data[this._i];
|
| 1478 |
+
},
|
| 1479 |
+
// 23.3.3.4 WeakMap.prototype.has(key)
|
| 1480 |
+
// 23.4.3.4 WeakSet.prototype.has(value)
|
| 1481 |
+
has: function has(key) {
|
| 1482 |
+
if (!isObject(key)) return false;
|
| 1483 |
+
var data = getWeak(key);
|
| 1484 |
+
if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
|
| 1485 |
+
return data && $has(data, this._i);
|
| 1486 |
+
}
|
| 1487 |
+
});
|
| 1488 |
+
return C;
|
| 1489 |
+
},
|
| 1490 |
+
def: function (that, key, value) {
|
| 1491 |
+
var data = getWeak(anObject(key), true);
|
| 1492 |
+
if (data === true) uncaughtFrozenStore(that).set(key, value);
|
| 1493 |
+
else data[that._i] = value;
|
| 1494 |
+
return that;
|
| 1495 |
+
},
|
| 1496 |
+
ufstore: uncaughtFrozenStore
|
| 1497 |
+
};
|
| 1498 |
+
|
| 1499 |
+
|
| 1500 |
+
/***/ }),
|
| 1501 |
+
|
| 1502 |
+
/***/ "./node_modules/core-js/modules/_collection.js":
|
| 1503 |
+
/*!*****************************************************!*\
|
| 1504 |
+
!*** ./node_modules/core-js/modules/_collection.js ***!
|
| 1505 |
+
\*****************************************************/
|
| 1506 |
+
/*! no static exports found */
|
| 1507 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1508 |
+
|
| 1509 |
+
"use strict";
|
| 1510 |
+
|
| 1511 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 1512 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 1513 |
+
var redefine = __webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js");
|
| 1514 |
+
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "./node_modules/core-js/modules/_redefine-all.js");
|
| 1515 |
+
var meta = __webpack_require__(/*! ./_meta */ "./node_modules/core-js/modules/_meta.js");
|
| 1516 |
+
var forOf = __webpack_require__(/*! ./_for-of */ "./node_modules/core-js/modules/_for-of.js");
|
| 1517 |
+
var anInstance = __webpack_require__(/*! ./_an-instance */ "./node_modules/core-js/modules/_an-instance.js");
|
| 1518 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 1519 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 1520 |
+
var $iterDetect = __webpack_require__(/*! ./_iter-detect */ "./node_modules/core-js/modules/_iter-detect.js");
|
| 1521 |
+
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "./node_modules/core-js/modules/_set-to-string-tag.js");
|
| 1522 |
+
var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "./node_modules/core-js/modules/_inherit-if-required.js");
|
| 1523 |
+
|
| 1524 |
+
module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
|
| 1525 |
+
var Base = global[NAME];
|
| 1526 |
+
var C = Base;
|
| 1527 |
+
var ADDER = IS_MAP ? 'set' : 'add';
|
| 1528 |
+
var proto = C && C.prototype;
|
| 1529 |
+
var O = {};
|
| 1530 |
+
var fixMethod = function (KEY) {
|
| 1531 |
+
var fn = proto[KEY];
|
| 1532 |
+
redefine(proto, KEY,
|
| 1533 |
+
KEY == 'delete' ? function (a) {
|
| 1534 |
+
return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
|
| 1535 |
+
} : KEY == 'has' ? function has(a) {
|
| 1536 |
+
return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
|
| 1537 |
+
} : KEY == 'get' ? function get(a) {
|
| 1538 |
+
return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);
|
| 1539 |
+
} : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; }
|
| 1540 |
+
: function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; }
|
| 1541 |
+
);
|
| 1542 |
+
};
|
| 1543 |
+
if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
|
| 1544 |
+
new C().entries().next();
|
| 1545 |
+
}))) {
|
| 1546 |
+
// create collection constructor
|
| 1547 |
+
C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
|
| 1548 |
+
redefineAll(C.prototype, methods);
|
| 1549 |
+
meta.NEED = true;
|
| 1550 |
+
} else {
|
| 1551 |
+
var instance = new C();
|
| 1552 |
+
// early implementations not supports chaining
|
| 1553 |
+
var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;
|
| 1554 |
+
// V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
|
| 1555 |
+
var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });
|
| 1556 |
+
// most early implementations doesn't supports iterables, most modern - not close it correctly
|
| 1557 |
+
var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new
|
| 1558 |
+
// for early implementations -0 and +0 not the same
|
| 1559 |
+
var BUGGY_ZERO = !IS_WEAK && fails(function () {
|
| 1560 |
+
// V8 ~ Chromium 42- fails only with 5+ elements
|
| 1561 |
+
var $instance = new C();
|
| 1562 |
+
var index = 5;
|
| 1563 |
+
while (index--) $instance[ADDER](index, index);
|
| 1564 |
+
return !$instance.has(-0);
|
| 1565 |
+
});
|
| 1566 |
+
if (!ACCEPT_ITERABLES) {
|
| 1567 |
+
C = wrapper(function (target, iterable) {
|
| 1568 |
+
anInstance(target, C, NAME);
|
| 1569 |
+
var that = inheritIfRequired(new Base(), target, C);
|
| 1570 |
+
if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
|
| 1571 |
+
return that;
|
| 1572 |
+
});
|
| 1573 |
+
C.prototype = proto;
|
| 1574 |
+
proto.constructor = C;
|
| 1575 |
+
}
|
| 1576 |
+
if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {
|
| 1577 |
+
fixMethod('delete');
|
| 1578 |
+
fixMethod('has');
|
| 1579 |
+
IS_MAP && fixMethod('get');
|
| 1580 |
+
}
|
| 1581 |
+
if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);
|
| 1582 |
+
// weak collections should not contains .clear method
|
| 1583 |
+
if (IS_WEAK && proto.clear) delete proto.clear;
|
| 1584 |
+
}
|
| 1585 |
+
|
| 1586 |
+
setToStringTag(C, NAME);
|
| 1587 |
+
|
| 1588 |
+
O[NAME] = C;
|
| 1589 |
+
$export($export.G + $export.W + $export.F * (C != Base), O);
|
| 1590 |
+
|
| 1591 |
+
if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);
|
| 1592 |
+
|
| 1593 |
+
return C;
|
| 1594 |
+
};
|
| 1595 |
+
|
| 1596 |
+
|
| 1597 |
+
/***/ }),
|
| 1598 |
+
|
| 1599 |
+
/***/ "./node_modules/core-js/modules/_core.js":
|
| 1600 |
+
/*!***********************************************!*\
|
| 1601 |
+
!*** ./node_modules/core-js/modules/_core.js ***!
|
| 1602 |
+
\***********************************************/
|
| 1603 |
+
/*! no static exports found */
|
| 1604 |
+
/***/ (function(module, exports) {
|
| 1605 |
+
|
| 1606 |
+
var core = module.exports = { version: '2.6.12' };
|
| 1607 |
+
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
|
| 1608 |
+
|
| 1609 |
+
|
| 1610 |
+
/***/ }),
|
| 1611 |
+
|
| 1612 |
+
/***/ "./node_modules/core-js/modules/_create-property.js":
|
| 1613 |
+
/*!**********************************************************!*\
|
| 1614 |
+
!*** ./node_modules/core-js/modules/_create-property.js ***!
|
| 1615 |
+
\**********************************************************/
|
| 1616 |
+
/*! no static exports found */
|
| 1617 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1618 |
+
|
| 1619 |
+
"use strict";
|
| 1620 |
+
|
| 1621 |
+
var $defineProperty = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js");
|
| 1622 |
+
var createDesc = __webpack_require__(/*! ./_property-desc */ "./node_modules/core-js/modules/_property-desc.js");
|
| 1623 |
+
|
| 1624 |
+
module.exports = function (object, index, value) {
|
| 1625 |
+
if (index in object) $defineProperty.f(object, index, createDesc(0, value));
|
| 1626 |
+
else object[index] = value;
|
| 1627 |
+
};
|
| 1628 |
+
|
| 1629 |
+
|
| 1630 |
+
/***/ }),
|
| 1631 |
+
|
| 1632 |
+
/***/ "./node_modules/core-js/modules/_ctx.js":
|
| 1633 |
+
/*!**********************************************!*\
|
| 1634 |
+
!*** ./node_modules/core-js/modules/_ctx.js ***!
|
| 1635 |
+
\**********************************************/
|
| 1636 |
+
/*! no static exports found */
|
| 1637 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1638 |
+
|
| 1639 |
+
// optional / simple context binding
|
| 1640 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 1641 |
+
module.exports = function (fn, that, length) {
|
| 1642 |
+
aFunction(fn);
|
| 1643 |
+
if (that === undefined) return fn;
|
| 1644 |
+
switch (length) {
|
| 1645 |
+
case 1: return function (a) {
|
| 1646 |
+
return fn.call(that, a);
|
| 1647 |
+
};
|
| 1648 |
+
case 2: return function (a, b) {
|
| 1649 |
+
return fn.call(that, a, b);
|
| 1650 |
+
};
|
| 1651 |
+
case 3: return function (a, b, c) {
|
| 1652 |
+
return fn.call(that, a, b, c);
|
| 1653 |
+
};
|
| 1654 |
+
}
|
| 1655 |
+
return function (/* ...args */) {
|
| 1656 |
+
return fn.apply(that, arguments);
|
| 1657 |
+
};
|
| 1658 |
+
};
|
| 1659 |
+
|
| 1660 |
+
|
| 1661 |
+
/***/ }),
|
| 1662 |
+
|
| 1663 |
+
/***/ "./node_modules/core-js/modules/_date-to-iso-string.js":
|
| 1664 |
+
/*!*************************************************************!*\
|
| 1665 |
+
!*** ./node_modules/core-js/modules/_date-to-iso-string.js ***!
|
| 1666 |
+
\*************************************************************/
|
| 1667 |
+
/*! no static exports found */
|
| 1668 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1669 |
+
|
| 1670 |
+
"use strict";
|
| 1671 |
+
|
| 1672 |
+
// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
|
| 1673 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 1674 |
+
var getTime = Date.prototype.getTime;
|
| 1675 |
+
var $toISOString = Date.prototype.toISOString;
|
| 1676 |
+
|
| 1677 |
+
var lz = function (num) {
|
| 1678 |
+
return num > 9 ? num : '0' + num;
|
| 1679 |
+
};
|
| 1680 |
+
|
| 1681 |
+
// PhantomJS / old WebKit has a broken implementations
|
| 1682 |
+
module.exports = (fails(function () {
|
| 1683 |
+
return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z';
|
| 1684 |
+
}) || !fails(function () {
|
| 1685 |
+
$toISOString.call(new Date(NaN));
|
| 1686 |
+
})) ? function toISOString() {
|
| 1687 |
+
if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value');
|
| 1688 |
+
var d = this;
|
| 1689 |
+
var y = d.getUTCFullYear();
|
| 1690 |
+
var m = d.getUTCMilliseconds();
|
| 1691 |
+
var s = y < 0 ? '-' : y > 9999 ? '+' : '';
|
| 1692 |
+
return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +
|
| 1693 |
+
'-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +
|
| 1694 |
+
'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +
|
| 1695 |
+
':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';
|
| 1696 |
+
} : $toISOString;
|
| 1697 |
+
|
| 1698 |
+
|
| 1699 |
+
/***/ }),
|
| 1700 |
+
|
| 1701 |
+
/***/ "./node_modules/core-js/modules/_date-to-primitive.js":
|
| 1702 |
+
/*!************************************************************!*\
|
| 1703 |
+
!*** ./node_modules/core-js/modules/_date-to-primitive.js ***!
|
| 1704 |
+
\************************************************************/
|
| 1705 |
+
/*! no static exports found */
|
| 1706 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1707 |
+
|
| 1708 |
+
"use strict";
|
| 1709 |
+
|
| 1710 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 1711 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/modules/_to-primitive.js");
|
| 1712 |
+
var NUMBER = 'number';
|
| 1713 |
+
|
| 1714 |
+
module.exports = function (hint) {
|
| 1715 |
+
if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint');
|
| 1716 |
+
return toPrimitive(anObject(this), hint != NUMBER);
|
| 1717 |
+
};
|
| 1718 |
+
|
| 1719 |
+
|
| 1720 |
+
/***/ }),
|
| 1721 |
+
|
| 1722 |
+
/***/ "./node_modules/core-js/modules/_defined.js":
|
| 1723 |
+
/*!**************************************************!*\
|
| 1724 |
+
!*** ./node_modules/core-js/modules/_defined.js ***!
|
| 1725 |
+
\**************************************************/
|
| 1726 |
+
/*! no static exports found */
|
| 1727 |
+
/***/ (function(module, exports) {
|
| 1728 |
+
|
| 1729 |
+
// 7.2.1 RequireObjectCoercible(argument)
|
| 1730 |
+
module.exports = function (it) {
|
| 1731 |
+
if (it == undefined) throw TypeError("Can't call method on " + it);
|
| 1732 |
+
return it;
|
| 1733 |
+
};
|
| 1734 |
+
|
| 1735 |
+
|
| 1736 |
+
/***/ }),
|
| 1737 |
+
|
| 1738 |
+
/***/ "./node_modules/core-js/modules/_descriptors.js":
|
| 1739 |
+
/*!******************************************************!*\
|
| 1740 |
+
!*** ./node_modules/core-js/modules/_descriptors.js ***!
|
| 1741 |
+
\******************************************************/
|
| 1742 |
+
/*! no static exports found */
|
| 1743 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1744 |
+
|
| 1745 |
+
// Thank's IE8 for his funny defineProperty
|
| 1746 |
+
module.exports = !__webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 1747 |
+
return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
|
| 1748 |
+
});
|
| 1749 |
+
|
| 1750 |
+
|
| 1751 |
+
/***/ }),
|
| 1752 |
+
|
| 1753 |
+
/***/ "./node_modules/core-js/modules/_dom-create.js":
|
| 1754 |
+
/*!*****************************************************!*\
|
| 1755 |
+
!*** ./node_modules/core-js/modules/_dom-create.js ***!
|
| 1756 |
+
\*****************************************************/
|
| 1757 |
+
/*! no static exports found */
|
| 1758 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1759 |
+
|
| 1760 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 1761 |
+
var document = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").document;
|
| 1762 |
+
// typeof document.createElement is 'object' in old IE
|
| 1763 |
+
var is = isObject(document) && isObject(document.createElement);
|
| 1764 |
+
module.exports = function (it) {
|
| 1765 |
+
return is ? document.createElement(it) : {};
|
| 1766 |
+
};
|
| 1767 |
+
|
| 1768 |
+
|
| 1769 |
+
/***/ }),
|
| 1770 |
+
|
| 1771 |
+
/***/ "./node_modules/core-js/modules/_enum-bug-keys.js":
|
| 1772 |
+
/*!********************************************************!*\
|
| 1773 |
+
!*** ./node_modules/core-js/modules/_enum-bug-keys.js ***!
|
| 1774 |
+
\********************************************************/
|
| 1775 |
+
/*! no static exports found */
|
| 1776 |
+
/***/ (function(module, exports) {
|
| 1777 |
+
|
| 1778 |
+
// IE 8- don't enum bug keys
|
| 1779 |
+
module.exports = (
|
| 1780 |
+
'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
|
| 1781 |
+
).split(',');
|
| 1782 |
+
|
| 1783 |
+
|
| 1784 |
+
/***/ }),
|
| 1785 |
+
|
| 1786 |
+
/***/ "./node_modules/core-js/modules/_enum-keys.js":
|
| 1787 |
+
/*!****************************************************!*\
|
| 1788 |
+
!*** ./node_modules/core-js/modules/_enum-keys.js ***!
|
| 1789 |
+
\****************************************************/
|
| 1790 |
+
/*! no static exports found */
|
| 1791 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1792 |
+
|
| 1793 |
+
// all enumerable object keys, includes symbols
|
| 1794 |
+
var getKeys = __webpack_require__(/*! ./_object-keys */ "./node_modules/core-js/modules/_object-keys.js");
|
| 1795 |
+
var gOPS = __webpack_require__(/*! ./_object-gops */ "./node_modules/core-js/modules/_object-gops.js");
|
| 1796 |
+
var pIE = __webpack_require__(/*! ./_object-pie */ "./node_modules/core-js/modules/_object-pie.js");
|
| 1797 |
+
module.exports = function (it) {
|
| 1798 |
+
var result = getKeys(it);
|
| 1799 |
+
var getSymbols = gOPS.f;
|
| 1800 |
+
if (getSymbols) {
|
| 1801 |
+
var symbols = getSymbols(it);
|
| 1802 |
+
var isEnum = pIE.f;
|
| 1803 |
+
var i = 0;
|
| 1804 |
+
var key;
|
| 1805 |
+
while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
|
| 1806 |
+
} return result;
|
| 1807 |
+
};
|
| 1808 |
+
|
| 1809 |
+
|
| 1810 |
+
/***/ }),
|
| 1811 |
+
|
| 1812 |
+
/***/ "./node_modules/core-js/modules/_export.js":
|
| 1813 |
+
/*!*************************************************!*\
|
| 1814 |
+
!*** ./node_modules/core-js/modules/_export.js ***!
|
| 1815 |
+
\*************************************************/
|
| 1816 |
+
/*! no static exports found */
|
| 1817 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1818 |
+
|
| 1819 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 1820 |
+
var core = __webpack_require__(/*! ./_core */ "./node_modules/core-js/modules/_core.js");
|
| 1821 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js");
|
| 1822 |
+
var redefine = __webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js");
|
| 1823 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 1824 |
+
var PROTOTYPE = 'prototype';
|
| 1825 |
+
|
| 1826 |
+
var $export = function (type, name, source) {
|
| 1827 |
+
var IS_FORCED = type & $export.F;
|
| 1828 |
+
var IS_GLOBAL = type & $export.G;
|
| 1829 |
+
var IS_STATIC = type & $export.S;
|
| 1830 |
+
var IS_PROTO = type & $export.P;
|
| 1831 |
+
var IS_BIND = type & $export.B;
|
| 1832 |
+
var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
|
| 1833 |
+
var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
|
| 1834 |
+
var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
|
| 1835 |
+
var key, own, out, exp;
|
| 1836 |
+
if (IS_GLOBAL) source = name;
|
| 1837 |
+
for (key in source) {
|
| 1838 |
+
// contains in native
|
| 1839 |
+
own = !IS_FORCED && target && target[key] !== undefined;
|
| 1840 |
+
// export native or passed
|
| 1841 |
+
out = (own ? target : source)[key];
|
| 1842 |
+
// bind timers to global for call from export context
|
| 1843 |
+
exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
|
| 1844 |
+
// extend global
|
| 1845 |
+
if (target) redefine(target, key, out, type & $export.U);
|
| 1846 |
+
// export
|
| 1847 |
+
if (exports[key] != out) hide(exports, key, exp);
|
| 1848 |
+
if (IS_PROTO && expProto[key] != out) expProto[key] = out;
|
| 1849 |
+
}
|
| 1850 |
+
};
|
| 1851 |
+
global.core = core;
|
| 1852 |
+
// type bitmap
|
| 1853 |
+
$export.F = 1; // forced
|
| 1854 |
+
$export.G = 2; // global
|
| 1855 |
+
$export.S = 4; // static
|
| 1856 |
+
$export.P = 8; // proto
|
| 1857 |
+
$export.B = 16; // bind
|
| 1858 |
+
$export.W = 32; // wrap
|
| 1859 |
+
$export.U = 64; // safe
|
| 1860 |
+
$export.R = 128; // real proto method for `library`
|
| 1861 |
+
module.exports = $export;
|
| 1862 |
+
|
| 1863 |
+
|
| 1864 |
+
/***/ }),
|
| 1865 |
+
|
| 1866 |
+
/***/ "./node_modules/core-js/modules/_fails-is-regexp.js":
|
| 1867 |
+
/*!**********************************************************!*\
|
| 1868 |
+
!*** ./node_modules/core-js/modules/_fails-is-regexp.js ***!
|
| 1869 |
+
\**********************************************************/
|
| 1870 |
+
/*! no static exports found */
|
| 1871 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1872 |
+
|
| 1873 |
+
var MATCH = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('match');
|
| 1874 |
+
module.exports = function (KEY) {
|
| 1875 |
+
var re = /./;
|
| 1876 |
+
try {
|
| 1877 |
+
'/./'[KEY](re);
|
| 1878 |
+
} catch (e) {
|
| 1879 |
+
try {
|
| 1880 |
+
re[MATCH] = false;
|
| 1881 |
+
return !'/./'[KEY](re);
|
| 1882 |
+
} catch (f) { /* empty */ }
|
| 1883 |
+
} return true;
|
| 1884 |
+
};
|
| 1885 |
+
|
| 1886 |
+
|
| 1887 |
+
/***/ }),
|
| 1888 |
+
|
| 1889 |
+
/***/ "./node_modules/core-js/modules/_fails.js":
|
| 1890 |
+
/*!************************************************!*\
|
| 1891 |
+
!*** ./node_modules/core-js/modules/_fails.js ***!
|
| 1892 |
+
\************************************************/
|
| 1893 |
+
/*! no static exports found */
|
| 1894 |
+
/***/ (function(module, exports) {
|
| 1895 |
+
|
| 1896 |
+
module.exports = function (exec) {
|
| 1897 |
+
try {
|
| 1898 |
+
return !!exec();
|
| 1899 |
+
} catch (e) {
|
| 1900 |
+
return true;
|
| 1901 |
+
}
|
| 1902 |
+
};
|
| 1903 |
+
|
| 1904 |
+
|
| 1905 |
+
/***/ }),
|
| 1906 |
+
|
| 1907 |
+
/***/ "./node_modules/core-js/modules/_fix-re-wks.js":
|
| 1908 |
+
/*!*****************************************************!*\
|
| 1909 |
+
!*** ./node_modules/core-js/modules/_fix-re-wks.js ***!
|
| 1910 |
+
\*****************************************************/
|
| 1911 |
+
/*! no static exports found */
|
| 1912 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 1913 |
+
|
| 1914 |
+
"use strict";
|
| 1915 |
+
|
| 1916 |
+
__webpack_require__(/*! ./es6.regexp.exec */ "./node_modules/core-js/modules/es6.regexp.exec.js");
|
| 1917 |
+
var redefine = __webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js");
|
| 1918 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js");
|
| 1919 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 1920 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 1921 |
+
var wks = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js");
|
| 1922 |
+
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "./node_modules/core-js/modules/_regexp-exec.js");
|
| 1923 |
+
|
| 1924 |
+
var SPECIES = wks('species');
|
| 1925 |
+
|
| 1926 |
+
var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
|
| 1927 |
+
// #replace needs built-in support for named groups.
|
| 1928 |
+
// #match works fine because it just return the exec results, even if it has
|
| 1929 |
+
// a "grops" property.
|
| 1930 |
+
var re = /./;
|
| 1931 |
+
re.exec = function () {
|
| 1932 |
+
var result = [];
|
| 1933 |
+
result.groups = { a: '7' };
|
| 1934 |
+
return result;
|
| 1935 |
+
};
|
| 1936 |
+
return ''.replace(re, '$<a>') !== '7';
|
| 1937 |
+
});
|
| 1938 |
+
|
| 1939 |
+
var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
|
| 1940 |
+
// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
|
| 1941 |
+
var re = /(?:)/;
|
| 1942 |
+
var originalExec = re.exec;
|
| 1943 |
+
re.exec = function () { return originalExec.apply(this, arguments); };
|
| 1944 |
+
var result = 'ab'.split(re);
|
| 1945 |
+
return result.length === 2 && result[0] === 'a' && result[1] === 'b';
|
| 1946 |
+
})();
|
| 1947 |
+
|
| 1948 |
+
module.exports = function (KEY, length, exec) {
|
| 1949 |
+
var SYMBOL = wks(KEY);
|
| 1950 |
+
|
| 1951 |
+
var DELEGATES_TO_SYMBOL = !fails(function () {
|
| 1952 |
+
// String methods call symbol-named RegEp methods
|
| 1953 |
+
var O = {};
|
| 1954 |
+
O[SYMBOL] = function () { return 7; };
|
| 1955 |
+
return ''[KEY](O) != 7;
|
| 1956 |
+
});
|
| 1957 |
+
|
| 1958 |
+
var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
|
| 1959 |
+
// Symbol-named RegExp methods call .exec
|
| 1960 |
+
var execCalled = false;
|
| 1961 |
+
var re = /a/;
|
| 1962 |
+
re.exec = function () { execCalled = true; return null; };
|
| 1963 |
+
if (KEY === 'split') {
|
| 1964 |
+
// RegExp[@@split] doesn't call the regex's exec method, but first creates
|
| 1965 |
+
// a new one. We need to return the patched regex when creating the new one.
|
| 1966 |
+
re.constructor = {};
|
| 1967 |
+
re.constructor[SPECIES] = function () { return re; };
|
| 1968 |
+
}
|
| 1969 |
+
re[SYMBOL]('');
|
| 1970 |
+
return !execCalled;
|
| 1971 |
+
}) : undefined;
|
| 1972 |
+
|
| 1973 |
+
if (
|
| 1974 |
+
!DELEGATES_TO_SYMBOL ||
|
| 1975 |
+
!DELEGATES_TO_EXEC ||
|
| 1976 |
+
(KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
|
| 1977 |
+
(KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
|
| 1978 |
+
) {
|
| 1979 |
+
var nativeRegExpMethod = /./[SYMBOL];
|
| 1980 |
+
var fns = exec(
|
| 1981 |
+
defined,
|
| 1982 |
+
SYMBOL,
|
| 1983 |
+
''[KEY],
|
| 1984 |
+
function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
|
| 1985 |
+
if (regexp.exec === regexpExec) {
|
| 1986 |
+
if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
|
| 1987 |
+
// The native String method already delegates to @@method (this
|
| 1988 |
+
// polyfilled function), leasing to infinite recursion.
|
| 1989 |
+
// We avoid it by directly calling the native @@method method.
|
| 1990 |
+
return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
|
| 1991 |
+
}
|
| 1992 |
+
return { done: true, value: nativeMethod.call(str, regexp, arg2) };
|
| 1993 |
+
}
|
| 1994 |
+
return { done: false };
|
| 1995 |
+
}
|
| 1996 |
+
);
|
| 1997 |
+
var strfn = fns[0];
|
| 1998 |
+
var rxfn = fns[1];
|
| 1999 |
+
|
| 2000 |
+
redefine(String.prototype, KEY, strfn);
|
| 2001 |
+
hide(RegExp.prototype, SYMBOL, length == 2
|
| 2002 |
+
// 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
|
| 2003 |
+
// 21.2.5.11 RegExp.prototype[@@split](string, limit)
|
| 2004 |
+
? function (string, arg) { return rxfn.call(string, this, arg); }
|
| 2005 |
+
// 21.2.5.6 RegExp.prototype[@@match](string)
|
| 2006 |
+
// 21.2.5.9 RegExp.prototype[@@search](string)
|
| 2007 |
+
: function (string) { return rxfn.call(string, this); }
|
| 2008 |
+
);
|
| 2009 |
+
}
|
| 2010 |
+
};
|
| 2011 |
+
|
| 2012 |
+
|
| 2013 |
+
/***/ }),
|
| 2014 |
+
|
| 2015 |
+
/***/ "./node_modules/core-js/modules/_flags.js":
|
| 2016 |
+
/*!************************************************!*\
|
| 2017 |
+
!*** ./node_modules/core-js/modules/_flags.js ***!
|
| 2018 |
+
\************************************************/
|
| 2019 |
+
/*! no static exports found */
|
| 2020 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2021 |
+
|
| 2022 |
+
"use strict";
|
| 2023 |
+
|
| 2024 |
+
// 21.2.5.3 get RegExp.prototype.flags
|
| 2025 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 2026 |
+
module.exports = function () {
|
| 2027 |
+
var that = anObject(this);
|
| 2028 |
+
var result = '';
|
| 2029 |
+
if (that.global) result += 'g';
|
| 2030 |
+
if (that.ignoreCase) result += 'i';
|
| 2031 |
+
if (that.multiline) result += 'm';
|
| 2032 |
+
if (that.unicode) result += 'u';
|
| 2033 |
+
if (that.sticky) result += 'y';
|
| 2034 |
+
return result;
|
| 2035 |
+
};
|
| 2036 |
+
|
| 2037 |
+
|
| 2038 |
+
/***/ }),
|
| 2039 |
+
|
| 2040 |
+
/***/ "./node_modules/core-js/modules/_flatten-into-array.js":
|
| 2041 |
+
/*!*************************************************************!*\
|
| 2042 |
+
!*** ./node_modules/core-js/modules/_flatten-into-array.js ***!
|
| 2043 |
+
\*************************************************************/
|
| 2044 |
+
/*! no static exports found */
|
| 2045 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2046 |
+
|
| 2047 |
+
"use strict";
|
| 2048 |
+
|
| 2049 |
+
// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray
|
| 2050 |
+
var isArray = __webpack_require__(/*! ./_is-array */ "./node_modules/core-js/modules/_is-array.js");
|
| 2051 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 2052 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 2053 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 2054 |
+
var IS_CONCAT_SPREADABLE = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('isConcatSpreadable');
|
| 2055 |
+
|
| 2056 |
+
function flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) {
|
| 2057 |
+
var targetIndex = start;
|
| 2058 |
+
var sourceIndex = 0;
|
| 2059 |
+
var mapFn = mapper ? ctx(mapper, thisArg, 3) : false;
|
| 2060 |
+
var element, spreadable;
|
| 2061 |
+
|
| 2062 |
+
while (sourceIndex < sourceLen) {
|
| 2063 |
+
if (sourceIndex in source) {
|
| 2064 |
+
element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];
|
| 2065 |
+
|
| 2066 |
+
spreadable = false;
|
| 2067 |
+
if (isObject(element)) {
|
| 2068 |
+
spreadable = element[IS_CONCAT_SPREADABLE];
|
| 2069 |
+
spreadable = spreadable !== undefined ? !!spreadable : isArray(element);
|
| 2070 |
+
}
|
| 2071 |
+
|
| 2072 |
+
if (spreadable && depth > 0) {
|
| 2073 |
+
targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1;
|
| 2074 |
+
} else {
|
| 2075 |
+
if (targetIndex >= 0x1fffffffffffff) throw TypeError();
|
| 2076 |
+
target[targetIndex] = element;
|
| 2077 |
+
}
|
| 2078 |
+
|
| 2079 |
+
targetIndex++;
|
| 2080 |
+
}
|
| 2081 |
+
sourceIndex++;
|
| 2082 |
+
}
|
| 2083 |
+
return targetIndex;
|
| 2084 |
+
}
|
| 2085 |
+
|
| 2086 |
+
module.exports = flattenIntoArray;
|
| 2087 |
+
|
| 2088 |
+
|
| 2089 |
+
/***/ }),
|
| 2090 |
+
|
| 2091 |
+
/***/ "./node_modules/core-js/modules/_for-of.js":
|
| 2092 |
+
/*!*************************************************!*\
|
| 2093 |
+
!*** ./node_modules/core-js/modules/_for-of.js ***!
|
| 2094 |
+
\*************************************************/
|
| 2095 |
+
/*! no static exports found */
|
| 2096 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2097 |
+
|
| 2098 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 2099 |
+
var call = __webpack_require__(/*! ./_iter-call */ "./node_modules/core-js/modules/_iter-call.js");
|
| 2100 |
+
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "./node_modules/core-js/modules/_is-array-iter.js");
|
| 2101 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 2102 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 2103 |
+
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "./node_modules/core-js/modules/core.get-iterator-method.js");
|
| 2104 |
+
var BREAK = {};
|
| 2105 |
+
var RETURN = {};
|
| 2106 |
+
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
|
| 2107 |
+
var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
|
| 2108 |
+
var f = ctx(fn, that, entries ? 2 : 1);
|
| 2109 |
+
var index = 0;
|
| 2110 |
+
var length, step, iterator, result;
|
| 2111 |
+
if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
|
| 2112 |
+
// fast case for arrays with default iterator
|
| 2113 |
+
if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
|
| 2114 |
+
result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
|
| 2115 |
+
if (result === BREAK || result === RETURN) return result;
|
| 2116 |
+
} else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
|
| 2117 |
+
result = call(iterator, f, step.value, entries);
|
| 2118 |
+
if (result === BREAK || result === RETURN) return result;
|
| 2119 |
+
}
|
| 2120 |
+
};
|
| 2121 |
+
exports.BREAK = BREAK;
|
| 2122 |
+
exports.RETURN = RETURN;
|
| 2123 |
+
|
| 2124 |
+
|
| 2125 |
+
/***/ }),
|
| 2126 |
+
|
| 2127 |
+
/***/ "./node_modules/core-js/modules/_function-to-string.js":
|
| 2128 |
+
/*!*************************************************************!*\
|
| 2129 |
+
!*** ./node_modules/core-js/modules/_function-to-string.js ***!
|
| 2130 |
+
\*************************************************************/
|
| 2131 |
+
/*! no static exports found */
|
| 2132 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2133 |
+
|
| 2134 |
+
module.exports = __webpack_require__(/*! ./_shared */ "./node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);
|
| 2135 |
+
|
| 2136 |
+
|
| 2137 |
+
/***/ }),
|
| 2138 |
+
|
| 2139 |
+
/***/ "./node_modules/core-js/modules/_global.js":
|
| 2140 |
+
/*!*************************************************!*\
|
| 2141 |
+
!*** ./node_modules/core-js/modules/_global.js ***!
|
| 2142 |
+
\*************************************************/
|
| 2143 |
+
/*! no static exports found */
|
| 2144 |
+
/***/ (function(module, exports) {
|
| 2145 |
+
|
| 2146 |
+
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
|
| 2147 |
+
var global = module.exports = typeof window != 'undefined' && window.Math == Math
|
| 2148 |
+
? window : typeof self != 'undefined' && self.Math == Math ? self
|
| 2149 |
+
// eslint-disable-next-line no-new-func
|
| 2150 |
+
: Function('return this')();
|
| 2151 |
+
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
|
| 2152 |
+
|
| 2153 |
+
|
| 2154 |
+
/***/ }),
|
| 2155 |
+
|
| 2156 |
+
/***/ "./node_modules/core-js/modules/_has.js":
|
| 2157 |
+
/*!**********************************************!*\
|
| 2158 |
+
!*** ./node_modules/core-js/modules/_has.js ***!
|
| 2159 |
+
\**********************************************/
|
| 2160 |
+
/*! no static exports found */
|
| 2161 |
+
/***/ (function(module, exports) {
|
| 2162 |
+
|
| 2163 |
+
var hasOwnProperty = {}.hasOwnProperty;
|
| 2164 |
+
module.exports = function (it, key) {
|
| 2165 |
+
return hasOwnProperty.call(it, key);
|
| 2166 |
+
};
|
| 2167 |
+
|
| 2168 |
+
|
| 2169 |
+
/***/ }),
|
| 2170 |
+
|
| 2171 |
+
/***/ "./node_modules/core-js/modules/_hide.js":
|
| 2172 |
+
/*!***********************************************!*\
|
| 2173 |
+
!*** ./node_modules/core-js/modules/_hide.js ***!
|
| 2174 |
+
\***********************************************/
|
| 2175 |
+
/*! no static exports found */
|
| 2176 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2177 |
+
|
| 2178 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js");
|
| 2179 |
+
var createDesc = __webpack_require__(/*! ./_property-desc */ "./node_modules/core-js/modules/_property-desc.js");
|
| 2180 |
+
module.exports = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
|
| 2181 |
+
return dP.f(object, key, createDesc(1, value));
|
| 2182 |
+
} : function (object, key, value) {
|
| 2183 |
+
object[key] = value;
|
| 2184 |
+
return object;
|
| 2185 |
+
};
|
| 2186 |
+
|
| 2187 |
+
|
| 2188 |
+
/***/ }),
|
| 2189 |
+
|
| 2190 |
+
/***/ "./node_modules/core-js/modules/_html.js":
|
| 2191 |
+
/*!***********************************************!*\
|
| 2192 |
+
!*** ./node_modules/core-js/modules/_html.js ***!
|
| 2193 |
+
\***********************************************/
|
| 2194 |
+
/*! no static exports found */
|
| 2195 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2196 |
+
|
| 2197 |
+
var document = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").document;
|
| 2198 |
+
module.exports = document && document.documentElement;
|
| 2199 |
+
|
| 2200 |
+
|
| 2201 |
+
/***/ }),
|
| 2202 |
+
|
| 2203 |
+
/***/ "./node_modules/core-js/modules/_ie8-dom-define.js":
|
| 2204 |
+
/*!*********************************************************!*\
|
| 2205 |
+
!*** ./node_modules/core-js/modules/_ie8-dom-define.js ***!
|
| 2206 |
+
\*********************************************************/
|
| 2207 |
+
/*! no static exports found */
|
| 2208 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2209 |
+
|
| 2210 |
+
module.exports = !__webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 2211 |
+
return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "./node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
|
| 2212 |
+
});
|
| 2213 |
+
|
| 2214 |
+
|
| 2215 |
+
/***/ }),
|
| 2216 |
+
|
| 2217 |
+
/***/ "./node_modules/core-js/modules/_inherit-if-required.js":
|
| 2218 |
+
/*!**************************************************************!*\
|
| 2219 |
+
!*** ./node_modules/core-js/modules/_inherit-if-required.js ***!
|
| 2220 |
+
\**************************************************************/
|
| 2221 |
+
/*! no static exports found */
|
| 2222 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2223 |
+
|
| 2224 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 2225 |
+
var setPrototypeOf = __webpack_require__(/*! ./_set-proto */ "./node_modules/core-js/modules/_set-proto.js").set;
|
| 2226 |
+
module.exports = function (that, target, C) {
|
| 2227 |
+
var S = target.constructor;
|
| 2228 |
+
var P;
|
| 2229 |
+
if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {
|
| 2230 |
+
setPrototypeOf(that, P);
|
| 2231 |
+
} return that;
|
| 2232 |
+
};
|
| 2233 |
+
|
| 2234 |
+
|
| 2235 |
+
/***/ }),
|
| 2236 |
+
|
| 2237 |
+
/***/ "./node_modules/core-js/modules/_invoke.js":
|
| 2238 |
+
/*!*************************************************!*\
|
| 2239 |
+
!*** ./node_modules/core-js/modules/_invoke.js ***!
|
| 2240 |
+
\*************************************************/
|
| 2241 |
+
/*! no static exports found */
|
| 2242 |
+
/***/ (function(module, exports) {
|
| 2243 |
+
|
| 2244 |
+
// fast apply, http://jsperf.lnkit.com/fast-apply/5
|
| 2245 |
+
module.exports = function (fn, args, that) {
|
| 2246 |
+
var un = that === undefined;
|
| 2247 |
+
switch (args.length) {
|
| 2248 |
+
case 0: return un ? fn()
|
| 2249 |
+
: fn.call(that);
|
| 2250 |
+
case 1: return un ? fn(args[0])
|
| 2251 |
+
: fn.call(that, args[0]);
|
| 2252 |
+
case 2: return un ? fn(args[0], args[1])
|
| 2253 |
+
: fn.call(that, args[0], args[1]);
|
| 2254 |
+
case 3: return un ? fn(args[0], args[1], args[2])
|
| 2255 |
+
: fn.call(that, args[0], args[1], args[2]);
|
| 2256 |
+
case 4: return un ? fn(args[0], args[1], args[2], args[3])
|
| 2257 |
+
: fn.call(that, args[0], args[1], args[2], args[3]);
|
| 2258 |
+
} return fn.apply(that, args);
|
| 2259 |
+
};
|
| 2260 |
+
|
| 2261 |
+
|
| 2262 |
+
/***/ }),
|
| 2263 |
+
|
| 2264 |
+
/***/ "./node_modules/core-js/modules/_iobject.js":
|
| 2265 |
+
/*!**************************************************!*\
|
| 2266 |
+
!*** ./node_modules/core-js/modules/_iobject.js ***!
|
| 2267 |
+
\**************************************************/
|
| 2268 |
+
/*! no static exports found */
|
| 2269 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2270 |
+
|
| 2271 |
+
// fallback for non-array-like ES3 and non-enumerable old V8 strings
|
| 2272 |
+
var cof = __webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js");
|
| 2273 |
+
// eslint-disable-next-line no-prototype-builtins
|
| 2274 |
+
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
|
| 2275 |
+
return cof(it) == 'String' ? it.split('') : Object(it);
|
| 2276 |
+
};
|
| 2277 |
+
|
| 2278 |
+
|
| 2279 |
+
/***/ }),
|
| 2280 |
+
|
| 2281 |
+
/***/ "./node_modules/core-js/modules/_is-array-iter.js":
|
| 2282 |
+
/*!********************************************************!*\
|
| 2283 |
+
!*** ./node_modules/core-js/modules/_is-array-iter.js ***!
|
| 2284 |
+
\********************************************************/
|
| 2285 |
+
/*! no static exports found */
|
| 2286 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2287 |
+
|
| 2288 |
+
// check on default Array iterator
|
| 2289 |
+
var Iterators = __webpack_require__(/*! ./_iterators */ "./node_modules/core-js/modules/_iterators.js");
|
| 2290 |
+
var ITERATOR = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('iterator');
|
| 2291 |
+
var ArrayProto = Array.prototype;
|
| 2292 |
+
|
| 2293 |
+
module.exports = function (it) {
|
| 2294 |
+
return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
|
| 2295 |
+
};
|
| 2296 |
+
|
| 2297 |
+
|
| 2298 |
+
/***/ }),
|
| 2299 |
+
|
| 2300 |
+
/***/ "./node_modules/core-js/modules/_is-array.js":
|
| 2301 |
+
/*!***************************************************!*\
|
| 2302 |
+
!*** ./node_modules/core-js/modules/_is-array.js ***!
|
| 2303 |
+
\***************************************************/
|
| 2304 |
+
/*! no static exports found */
|
| 2305 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2306 |
+
|
| 2307 |
+
// 7.2.2 IsArray(argument)
|
| 2308 |
+
var cof = __webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js");
|
| 2309 |
+
module.exports = Array.isArray || function isArray(arg) {
|
| 2310 |
+
return cof(arg) == 'Array';
|
| 2311 |
+
};
|
| 2312 |
+
|
| 2313 |
+
|
| 2314 |
+
/***/ }),
|
| 2315 |
+
|
| 2316 |
+
/***/ "./node_modules/core-js/modules/_is-integer.js":
|
| 2317 |
+
/*!*****************************************************!*\
|
| 2318 |
+
!*** ./node_modules/core-js/modules/_is-integer.js ***!
|
| 2319 |
+
\*****************************************************/
|
| 2320 |
+
/*! no static exports found */
|
| 2321 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2322 |
+
|
| 2323 |
+
// 20.1.2.3 Number.isInteger(number)
|
| 2324 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 2325 |
+
var floor = Math.floor;
|
| 2326 |
+
module.exports = function isInteger(it) {
|
| 2327 |
+
return !isObject(it) && isFinite(it) && floor(it) === it;
|
| 2328 |
+
};
|
| 2329 |
+
|
| 2330 |
+
|
| 2331 |
+
/***/ }),
|
| 2332 |
+
|
| 2333 |
+
/***/ "./node_modules/core-js/modules/_is-object.js":
|
| 2334 |
+
/*!****************************************************!*\
|
| 2335 |
+
!*** ./node_modules/core-js/modules/_is-object.js ***!
|
| 2336 |
+
\****************************************************/
|
| 2337 |
+
/*! no static exports found */
|
| 2338 |
+
/***/ (function(module, exports) {
|
| 2339 |
+
|
| 2340 |
+
module.exports = function (it) {
|
| 2341 |
+
return typeof it === 'object' ? it !== null : typeof it === 'function';
|
| 2342 |
+
};
|
| 2343 |
+
|
| 2344 |
+
|
| 2345 |
+
/***/ }),
|
| 2346 |
+
|
| 2347 |
+
/***/ "./node_modules/core-js/modules/_is-regexp.js":
|
| 2348 |
+
/*!****************************************************!*\
|
| 2349 |
+
!*** ./node_modules/core-js/modules/_is-regexp.js ***!
|
| 2350 |
+
\****************************************************/
|
| 2351 |
+
/*! no static exports found */
|
| 2352 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2353 |
+
|
| 2354 |
+
// 7.2.8 IsRegExp(argument)
|
| 2355 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 2356 |
+
var cof = __webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js");
|
| 2357 |
+
var MATCH = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('match');
|
| 2358 |
+
module.exports = function (it) {
|
| 2359 |
+
var isRegExp;
|
| 2360 |
+
return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
|
| 2361 |
+
};
|
| 2362 |
+
|
| 2363 |
+
|
| 2364 |
+
/***/ }),
|
| 2365 |
+
|
| 2366 |
+
/***/ "./node_modules/core-js/modules/_iter-call.js":
|
| 2367 |
+
/*!****************************************************!*\
|
| 2368 |
+
!*** ./node_modules/core-js/modules/_iter-call.js ***!
|
| 2369 |
+
\****************************************************/
|
| 2370 |
+
/*! no static exports found */
|
| 2371 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2372 |
+
|
| 2373 |
+
// call something on iterator step with safe closing on error
|
| 2374 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 2375 |
+
module.exports = function (iterator, fn, value, entries) {
|
| 2376 |
+
try {
|
| 2377 |
+
return entries ? fn(anObject(value)[0], value[1]) : fn(value);
|
| 2378 |
+
// 7.4.6 IteratorClose(iterator, completion)
|
| 2379 |
+
} catch (e) {
|
| 2380 |
+
var ret = iterator['return'];
|
| 2381 |
+
if (ret !== undefined) anObject(ret.call(iterator));
|
| 2382 |
+
throw e;
|
| 2383 |
+
}
|
| 2384 |
+
};
|
| 2385 |
+
|
| 2386 |
+
|
| 2387 |
+
/***/ }),
|
| 2388 |
+
|
| 2389 |
+
/***/ "./node_modules/core-js/modules/_iter-create.js":
|
| 2390 |
+
/*!******************************************************!*\
|
| 2391 |
+
!*** ./node_modules/core-js/modules/_iter-create.js ***!
|
| 2392 |
+
\******************************************************/
|
| 2393 |
+
/*! no static exports found */
|
| 2394 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2395 |
+
|
| 2396 |
+
"use strict";
|
| 2397 |
+
|
| 2398 |
+
var create = __webpack_require__(/*! ./_object-create */ "./node_modules/core-js/modules/_object-create.js");
|
| 2399 |
+
var descriptor = __webpack_require__(/*! ./_property-desc */ "./node_modules/core-js/modules/_property-desc.js");
|
| 2400 |
+
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "./node_modules/core-js/modules/_set-to-string-tag.js");
|
| 2401 |
+
var IteratorPrototype = {};
|
| 2402 |
+
|
| 2403 |
+
// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
|
| 2404 |
+
__webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });
|
| 2405 |
+
|
| 2406 |
+
module.exports = function (Constructor, NAME, next) {
|
| 2407 |
+
Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
|
| 2408 |
+
setToStringTag(Constructor, NAME + ' Iterator');
|
| 2409 |
+
};
|
| 2410 |
+
|
| 2411 |
+
|
| 2412 |
+
/***/ }),
|
| 2413 |
+
|
| 2414 |
+
/***/ "./node_modules/core-js/modules/_iter-define.js":
|
| 2415 |
+
/*!******************************************************!*\
|
| 2416 |
+
!*** ./node_modules/core-js/modules/_iter-define.js ***!
|
| 2417 |
+
\******************************************************/
|
| 2418 |
+
/*! no static exports found */
|
| 2419 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2420 |
+
|
| 2421 |
+
"use strict";
|
| 2422 |
+
|
| 2423 |
+
var LIBRARY = __webpack_require__(/*! ./_library */ "./node_modules/core-js/modules/_library.js");
|
| 2424 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 2425 |
+
var redefine = __webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js");
|
| 2426 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js");
|
| 2427 |
+
var Iterators = __webpack_require__(/*! ./_iterators */ "./node_modules/core-js/modules/_iterators.js");
|
| 2428 |
+
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "./node_modules/core-js/modules/_iter-create.js");
|
| 2429 |
+
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "./node_modules/core-js/modules/_set-to-string-tag.js");
|
| 2430 |
+
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "./node_modules/core-js/modules/_object-gpo.js");
|
| 2431 |
+
var ITERATOR = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('iterator');
|
| 2432 |
+
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
|
| 2433 |
+
var FF_ITERATOR = '@@iterator';
|
| 2434 |
+
var KEYS = 'keys';
|
| 2435 |
+
var VALUES = 'values';
|
| 2436 |
+
|
| 2437 |
+
var returnThis = function () { return this; };
|
| 2438 |
+
|
| 2439 |
+
module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
|
| 2440 |
+
$iterCreate(Constructor, NAME, next);
|
| 2441 |
+
var getMethod = function (kind) {
|
| 2442 |
+
if (!BUGGY && kind in proto) return proto[kind];
|
| 2443 |
+
switch (kind) {
|
| 2444 |
+
case KEYS: return function keys() { return new Constructor(this, kind); };
|
| 2445 |
+
case VALUES: return function values() { return new Constructor(this, kind); };
|
| 2446 |
+
} return function entries() { return new Constructor(this, kind); };
|
| 2447 |
+
};
|
| 2448 |
+
var TAG = NAME + ' Iterator';
|
| 2449 |
+
var DEF_VALUES = DEFAULT == VALUES;
|
| 2450 |
+
var VALUES_BUG = false;
|
| 2451 |
+
var proto = Base.prototype;
|
| 2452 |
+
var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
|
| 2453 |
+
var $default = $native || getMethod(DEFAULT);
|
| 2454 |
+
var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
|
| 2455 |
+
var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
|
| 2456 |
+
var methods, key, IteratorPrototype;
|
| 2457 |
+
// Fix native
|
| 2458 |
+
if ($anyNative) {
|
| 2459 |
+
IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
|
| 2460 |
+
if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
|
| 2461 |
+
// Set @@toStringTag to native iterators
|
| 2462 |
+
setToStringTag(IteratorPrototype, TAG, true);
|
| 2463 |
+
// fix for some old engines
|
| 2464 |
+
if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
|
| 2465 |
+
}
|
| 2466 |
+
}
|
| 2467 |
+
// fix Array#{values, @@iterator}.name in V8 / FF
|
| 2468 |
+
if (DEF_VALUES && $native && $native.name !== VALUES) {
|
| 2469 |
+
VALUES_BUG = true;
|
| 2470 |
+
$default = function values() { return $native.call(this); };
|
| 2471 |
+
}
|
| 2472 |
+
// Define iterator
|
| 2473 |
+
if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
|
| 2474 |
+
hide(proto, ITERATOR, $default);
|
| 2475 |
+
}
|
| 2476 |
+
// Plug for library
|
| 2477 |
+
Iterators[NAME] = $default;
|
| 2478 |
+
Iterators[TAG] = returnThis;
|
| 2479 |
+
if (DEFAULT) {
|
| 2480 |
+
methods = {
|
| 2481 |
+
values: DEF_VALUES ? $default : getMethod(VALUES),
|
| 2482 |
+
keys: IS_SET ? $default : getMethod(KEYS),
|
| 2483 |
+
entries: $entries
|
| 2484 |
+
};
|
| 2485 |
+
if (FORCED) for (key in methods) {
|
| 2486 |
+
if (!(key in proto)) redefine(proto, key, methods[key]);
|
| 2487 |
+
} else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
|
| 2488 |
+
}
|
| 2489 |
+
return methods;
|
| 2490 |
+
};
|
| 2491 |
+
|
| 2492 |
+
|
| 2493 |
+
/***/ }),
|
| 2494 |
+
|
| 2495 |
+
/***/ "./node_modules/core-js/modules/_iter-detect.js":
|
| 2496 |
+
/*!******************************************************!*\
|
| 2497 |
+
!*** ./node_modules/core-js/modules/_iter-detect.js ***!
|
| 2498 |
+
\******************************************************/
|
| 2499 |
+
/*! no static exports found */
|
| 2500 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2501 |
+
|
| 2502 |
+
var ITERATOR = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('iterator');
|
| 2503 |
+
var SAFE_CLOSING = false;
|
| 2504 |
+
|
| 2505 |
+
try {
|
| 2506 |
+
var riter = [7][ITERATOR]();
|
| 2507 |
+
riter['return'] = function () { SAFE_CLOSING = true; };
|
| 2508 |
+
// eslint-disable-next-line no-throw-literal
|
| 2509 |
+
Array.from(riter, function () { throw 2; });
|
| 2510 |
+
} catch (e) { /* empty */ }
|
| 2511 |
+
|
| 2512 |
+
module.exports = function (exec, skipClosing) {
|
| 2513 |
+
if (!skipClosing && !SAFE_CLOSING) return false;
|
| 2514 |
+
var safe = false;
|
| 2515 |
+
try {
|
| 2516 |
+
var arr = [7];
|
| 2517 |
+
var iter = arr[ITERATOR]();
|
| 2518 |
+
iter.next = function () { return { done: safe = true }; };
|
| 2519 |
+
arr[ITERATOR] = function () { return iter; };
|
| 2520 |
+
exec(arr);
|
| 2521 |
+
} catch (e) { /* empty */ }
|
| 2522 |
+
return safe;
|
| 2523 |
+
};
|
| 2524 |
+
|
| 2525 |
+
|
| 2526 |
+
/***/ }),
|
| 2527 |
+
|
| 2528 |
+
/***/ "./node_modules/core-js/modules/_iter-step.js":
|
| 2529 |
+
/*!****************************************************!*\
|
| 2530 |
+
!*** ./node_modules/core-js/modules/_iter-step.js ***!
|
| 2531 |
+
\****************************************************/
|
| 2532 |
+
/*! no static exports found */
|
| 2533 |
+
/***/ (function(module, exports) {
|
| 2534 |
+
|
| 2535 |
+
module.exports = function (done, value) {
|
| 2536 |
+
return { value: value, done: !!done };
|
| 2537 |
+
};
|
| 2538 |
+
|
| 2539 |
+
|
| 2540 |
+
/***/ }),
|
| 2541 |
+
|
| 2542 |
+
/***/ "./node_modules/core-js/modules/_iterators.js":
|
| 2543 |
+
/*!****************************************************!*\
|
| 2544 |
+
!*** ./node_modules/core-js/modules/_iterators.js ***!
|
| 2545 |
+
\****************************************************/
|
| 2546 |
+
/*! no static exports found */
|
| 2547 |
+
/***/ (function(module, exports) {
|
| 2548 |
+
|
| 2549 |
+
module.exports = {};
|
| 2550 |
+
|
| 2551 |
+
|
| 2552 |
+
/***/ }),
|
| 2553 |
+
|
| 2554 |
+
/***/ "./node_modules/core-js/modules/_library.js":
|
| 2555 |
+
/*!**************************************************!*\
|
| 2556 |
+
!*** ./node_modules/core-js/modules/_library.js ***!
|
| 2557 |
+
\**************************************************/
|
| 2558 |
+
/*! no static exports found */
|
| 2559 |
+
/***/ (function(module, exports) {
|
| 2560 |
+
|
| 2561 |
+
module.exports = false;
|
| 2562 |
+
|
| 2563 |
+
|
| 2564 |
+
/***/ }),
|
| 2565 |
+
|
| 2566 |
+
/***/ "./node_modules/core-js/modules/_math-expm1.js":
|
| 2567 |
+
/*!*****************************************************!*\
|
| 2568 |
+
!*** ./node_modules/core-js/modules/_math-expm1.js ***!
|
| 2569 |
+
\*****************************************************/
|
| 2570 |
+
/*! no static exports found */
|
| 2571 |
+
/***/ (function(module, exports) {
|
| 2572 |
+
|
| 2573 |
+
// 20.2.2.14 Math.expm1(x)
|
| 2574 |
+
var $expm1 = Math.expm1;
|
| 2575 |
+
module.exports = (!$expm1
|
| 2576 |
+
// Old FF bug
|
| 2577 |
+
|| $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168
|
| 2578 |
+
// Tor Browser bug
|
| 2579 |
+
|| $expm1(-2e-17) != -2e-17
|
| 2580 |
+
) ? function expm1(x) {
|
| 2581 |
+
return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
|
| 2582 |
+
} : $expm1;
|
| 2583 |
+
|
| 2584 |
+
|
| 2585 |
+
/***/ }),
|
| 2586 |
+
|
| 2587 |
+
/***/ "./node_modules/core-js/modules/_math-fround.js":
|
| 2588 |
+
/*!******************************************************!*\
|
| 2589 |
+
!*** ./node_modules/core-js/modules/_math-fround.js ***!
|
| 2590 |
+
\******************************************************/
|
| 2591 |
+
/*! no static exports found */
|
| 2592 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2593 |
+
|
| 2594 |
+
// 20.2.2.16 Math.fround(x)
|
| 2595 |
+
var sign = __webpack_require__(/*! ./_math-sign */ "./node_modules/core-js/modules/_math-sign.js");
|
| 2596 |
+
var pow = Math.pow;
|
| 2597 |
+
var EPSILON = pow(2, -52);
|
| 2598 |
+
var EPSILON32 = pow(2, -23);
|
| 2599 |
+
var MAX32 = pow(2, 127) * (2 - EPSILON32);
|
| 2600 |
+
var MIN32 = pow(2, -126);
|
| 2601 |
+
|
| 2602 |
+
var roundTiesToEven = function (n) {
|
| 2603 |
+
return n + 1 / EPSILON - 1 / EPSILON;
|
| 2604 |
+
};
|
| 2605 |
+
|
| 2606 |
+
module.exports = Math.fround || function fround(x) {
|
| 2607 |
+
var $abs = Math.abs(x);
|
| 2608 |
+
var $sign = sign(x);
|
| 2609 |
+
var a, result;
|
| 2610 |
+
if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;
|
| 2611 |
+
a = (1 + EPSILON32 / EPSILON) * $abs;
|
| 2612 |
+
result = a - (a - $abs);
|
| 2613 |
+
// eslint-disable-next-line no-self-compare
|
| 2614 |
+
if (result > MAX32 || result != result) return $sign * Infinity;
|
| 2615 |
+
return $sign * result;
|
| 2616 |
+
};
|
| 2617 |
+
|
| 2618 |
+
|
| 2619 |
+
/***/ }),
|
| 2620 |
+
|
| 2621 |
+
/***/ "./node_modules/core-js/modules/_math-log1p.js":
|
| 2622 |
+
/*!*****************************************************!*\
|
| 2623 |
+
!*** ./node_modules/core-js/modules/_math-log1p.js ***!
|
| 2624 |
+
\*****************************************************/
|
| 2625 |
+
/*! no static exports found */
|
| 2626 |
+
/***/ (function(module, exports) {
|
| 2627 |
+
|
| 2628 |
+
// 20.2.2.20 Math.log1p(x)
|
| 2629 |
+
module.exports = Math.log1p || function log1p(x) {
|
| 2630 |
+
return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);
|
| 2631 |
+
};
|
| 2632 |
+
|
| 2633 |
+
|
| 2634 |
+
/***/ }),
|
| 2635 |
+
|
| 2636 |
+
/***/ "./node_modules/core-js/modules/_math-sign.js":
|
| 2637 |
+
/*!****************************************************!*\
|
| 2638 |
+
!*** ./node_modules/core-js/modules/_math-sign.js ***!
|
| 2639 |
+
\****************************************************/
|
| 2640 |
+
/*! no static exports found */
|
| 2641 |
+
/***/ (function(module, exports) {
|
| 2642 |
+
|
| 2643 |
+
// 20.2.2.28 Math.sign(x)
|
| 2644 |
+
module.exports = Math.sign || function sign(x) {
|
| 2645 |
+
// eslint-disable-next-line no-self-compare
|
| 2646 |
+
return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;
|
| 2647 |
+
};
|
| 2648 |
+
|
| 2649 |
+
|
| 2650 |
+
/***/ }),
|
| 2651 |
+
|
| 2652 |
+
/***/ "./node_modules/core-js/modules/_meta.js":
|
| 2653 |
+
/*!***********************************************!*\
|
| 2654 |
+
!*** ./node_modules/core-js/modules/_meta.js ***!
|
| 2655 |
+
\***********************************************/
|
| 2656 |
+
/*! no static exports found */
|
| 2657 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2658 |
+
|
| 2659 |
+
var META = __webpack_require__(/*! ./_uid */ "./node_modules/core-js/modules/_uid.js")('meta');
|
| 2660 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 2661 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 2662 |
+
var setDesc = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f;
|
| 2663 |
+
var id = 0;
|
| 2664 |
+
var isExtensible = Object.isExtensible || function () {
|
| 2665 |
+
return true;
|
| 2666 |
+
};
|
| 2667 |
+
var FREEZE = !__webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 2668 |
+
return isExtensible(Object.preventExtensions({}));
|
| 2669 |
+
});
|
| 2670 |
+
var setMeta = function (it) {
|
| 2671 |
+
setDesc(it, META, { value: {
|
| 2672 |
+
i: 'O' + ++id, // object ID
|
| 2673 |
+
w: {} // weak collections IDs
|
| 2674 |
+
} });
|
| 2675 |
+
};
|
| 2676 |
+
var fastKey = function (it, create) {
|
| 2677 |
+
// return primitive with prefix
|
| 2678 |
+
if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
|
| 2679 |
+
if (!has(it, META)) {
|
| 2680 |
+
// can't set metadata to uncaught frozen object
|
| 2681 |
+
if (!isExtensible(it)) return 'F';
|
| 2682 |
+
// not necessary to add metadata
|
| 2683 |
+
if (!create) return 'E';
|
| 2684 |
+
// add missing metadata
|
| 2685 |
+
setMeta(it);
|
| 2686 |
+
// return object ID
|
| 2687 |
+
} return it[META].i;
|
| 2688 |
+
};
|
| 2689 |
+
var getWeak = function (it, create) {
|
| 2690 |
+
if (!has(it, META)) {
|
| 2691 |
+
// can't set metadata to uncaught frozen object
|
| 2692 |
+
if (!isExtensible(it)) return true;
|
| 2693 |
+
// not necessary to add metadata
|
| 2694 |
+
if (!create) return false;
|
| 2695 |
+
// add missing metadata
|
| 2696 |
+
setMeta(it);
|
| 2697 |
+
// return hash weak collections IDs
|
| 2698 |
+
} return it[META].w;
|
| 2699 |
+
};
|
| 2700 |
+
// add metadata on freeze-family methods calling
|
| 2701 |
+
var onFreeze = function (it) {
|
| 2702 |
+
if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
|
| 2703 |
+
return it;
|
| 2704 |
+
};
|
| 2705 |
+
var meta = module.exports = {
|
| 2706 |
+
KEY: META,
|
| 2707 |
+
NEED: false,
|
| 2708 |
+
fastKey: fastKey,
|
| 2709 |
+
getWeak: getWeak,
|
| 2710 |
+
onFreeze: onFreeze
|
| 2711 |
+
};
|
| 2712 |
+
|
| 2713 |
+
|
| 2714 |
+
/***/ }),
|
| 2715 |
+
|
| 2716 |
+
/***/ "./node_modules/core-js/modules/_microtask.js":
|
| 2717 |
+
/*!****************************************************!*\
|
| 2718 |
+
!*** ./node_modules/core-js/modules/_microtask.js ***!
|
| 2719 |
+
\****************************************************/
|
| 2720 |
+
/*! no static exports found */
|
| 2721 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2722 |
+
|
| 2723 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 2724 |
+
var macrotask = __webpack_require__(/*! ./_task */ "./node_modules/core-js/modules/_task.js").set;
|
| 2725 |
+
var Observer = global.MutationObserver || global.WebKitMutationObserver;
|
| 2726 |
+
var process = global.process;
|
| 2727 |
+
var Promise = global.Promise;
|
| 2728 |
+
var isNode = __webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js")(process) == 'process';
|
| 2729 |
+
|
| 2730 |
+
module.exports = function () {
|
| 2731 |
+
var head, last, notify;
|
| 2732 |
+
|
| 2733 |
+
var flush = function () {
|
| 2734 |
+
var parent, fn;
|
| 2735 |
+
if (isNode && (parent = process.domain)) parent.exit();
|
| 2736 |
+
while (head) {
|
| 2737 |
+
fn = head.fn;
|
| 2738 |
+
head = head.next;
|
| 2739 |
+
try {
|
| 2740 |
+
fn();
|
| 2741 |
+
} catch (e) {
|
| 2742 |
+
if (head) notify();
|
| 2743 |
+
else last = undefined;
|
| 2744 |
+
throw e;
|
| 2745 |
+
}
|
| 2746 |
+
} last = undefined;
|
| 2747 |
+
if (parent) parent.enter();
|
| 2748 |
+
};
|
| 2749 |
+
|
| 2750 |
+
// Node.js
|
| 2751 |
+
if (isNode) {
|
| 2752 |
+
notify = function () {
|
| 2753 |
+
process.nextTick(flush);
|
| 2754 |
+
};
|
| 2755 |
+
// browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
|
| 2756 |
+
} else if (Observer && !(global.navigator && global.navigator.standalone)) {
|
| 2757 |
+
var toggle = true;
|
| 2758 |
+
var node = document.createTextNode('');
|
| 2759 |
+
new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
|
| 2760 |
+
notify = function () {
|
| 2761 |
+
node.data = toggle = !toggle;
|
| 2762 |
+
};
|
| 2763 |
+
// environments with maybe non-completely correct, but existent Promise
|
| 2764 |
+
} else if (Promise && Promise.resolve) {
|
| 2765 |
+
// Promise.resolve without an argument throws an error in LG WebOS 2
|
| 2766 |
+
var promise = Promise.resolve(undefined);
|
| 2767 |
+
notify = function () {
|
| 2768 |
+
promise.then(flush);
|
| 2769 |
+
};
|
| 2770 |
+
// for other environments - macrotask based on:
|
| 2771 |
+
// - setImmediate
|
| 2772 |
+
// - MessageChannel
|
| 2773 |
+
// - window.postMessag
|
| 2774 |
+
// - onreadystatechange
|
| 2775 |
+
// - setTimeout
|
| 2776 |
+
} else {
|
| 2777 |
+
notify = function () {
|
| 2778 |
+
// strange IE + webpack dev server bug - use .call(global)
|
| 2779 |
+
macrotask.call(global, flush);
|
| 2780 |
+
};
|
| 2781 |
+
}
|
| 2782 |
+
|
| 2783 |
+
return function (fn) {
|
| 2784 |
+
var task = { fn: fn, next: undefined };
|
| 2785 |
+
if (last) last.next = task;
|
| 2786 |
+
if (!head) {
|
| 2787 |
+
head = task;
|
| 2788 |
+
notify();
|
| 2789 |
+
} last = task;
|
| 2790 |
+
};
|
| 2791 |
+
};
|
| 2792 |
+
|
| 2793 |
+
|
| 2794 |
+
/***/ }),
|
| 2795 |
+
|
| 2796 |
+
/***/ "./node_modules/core-js/modules/_new-promise-capability.js":
|
| 2797 |
+
/*!*****************************************************************!*\
|
| 2798 |
+
!*** ./node_modules/core-js/modules/_new-promise-capability.js ***!
|
| 2799 |
+
\*****************************************************************/
|
| 2800 |
+
/*! no static exports found */
|
| 2801 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2802 |
+
|
| 2803 |
+
"use strict";
|
| 2804 |
+
|
| 2805 |
+
// 25.4.1.5 NewPromiseCapability(C)
|
| 2806 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 2807 |
+
|
| 2808 |
+
function PromiseCapability(C) {
|
| 2809 |
+
var resolve, reject;
|
| 2810 |
+
this.promise = new C(function ($$resolve, $$reject) {
|
| 2811 |
+
if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
|
| 2812 |
+
resolve = $$resolve;
|
| 2813 |
+
reject = $$reject;
|
| 2814 |
+
});
|
| 2815 |
+
this.resolve = aFunction(resolve);
|
| 2816 |
+
this.reject = aFunction(reject);
|
| 2817 |
+
}
|
| 2818 |
+
|
| 2819 |
+
module.exports.f = function (C) {
|
| 2820 |
+
return new PromiseCapability(C);
|
| 2821 |
+
};
|
| 2822 |
+
|
| 2823 |
+
|
| 2824 |
+
/***/ }),
|
| 2825 |
+
|
| 2826 |
+
/***/ "./node_modules/core-js/modules/_object-assign.js":
|
| 2827 |
+
/*!********************************************************!*\
|
| 2828 |
+
!*** ./node_modules/core-js/modules/_object-assign.js ***!
|
| 2829 |
+
\********************************************************/
|
| 2830 |
+
/*! no static exports found */
|
| 2831 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2832 |
+
|
| 2833 |
+
"use strict";
|
| 2834 |
+
|
| 2835 |
+
// 19.1.2.1 Object.assign(target, source, ...)
|
| 2836 |
+
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js");
|
| 2837 |
+
var getKeys = __webpack_require__(/*! ./_object-keys */ "./node_modules/core-js/modules/_object-keys.js");
|
| 2838 |
+
var gOPS = __webpack_require__(/*! ./_object-gops */ "./node_modules/core-js/modules/_object-gops.js");
|
| 2839 |
+
var pIE = __webpack_require__(/*! ./_object-pie */ "./node_modules/core-js/modules/_object-pie.js");
|
| 2840 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 2841 |
+
var IObject = __webpack_require__(/*! ./_iobject */ "./node_modules/core-js/modules/_iobject.js");
|
| 2842 |
+
var $assign = Object.assign;
|
| 2843 |
+
|
| 2844 |
+
// should work with symbols and should have deterministic property order (V8 bug)
|
| 2845 |
+
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 2846 |
+
var A = {};
|
| 2847 |
+
var B = {};
|
| 2848 |
+
// eslint-disable-next-line no-undef
|
| 2849 |
+
var S = Symbol();
|
| 2850 |
+
var K = 'abcdefghijklmnopqrst';
|
| 2851 |
+
A[S] = 7;
|
| 2852 |
+
K.split('').forEach(function (k) { B[k] = k; });
|
| 2853 |
+
return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
|
| 2854 |
+
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
|
| 2855 |
+
var T = toObject(target);
|
| 2856 |
+
var aLen = arguments.length;
|
| 2857 |
+
var index = 1;
|
| 2858 |
+
var getSymbols = gOPS.f;
|
| 2859 |
+
var isEnum = pIE.f;
|
| 2860 |
+
while (aLen > index) {
|
| 2861 |
+
var S = IObject(arguments[index++]);
|
| 2862 |
+
var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
|
| 2863 |
+
var length = keys.length;
|
| 2864 |
+
var j = 0;
|
| 2865 |
+
var key;
|
| 2866 |
+
while (length > j) {
|
| 2867 |
+
key = keys[j++];
|
| 2868 |
+
if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
|
| 2869 |
+
}
|
| 2870 |
+
} return T;
|
| 2871 |
+
} : $assign;
|
| 2872 |
+
|
| 2873 |
+
|
| 2874 |
+
/***/ }),
|
| 2875 |
+
|
| 2876 |
+
/***/ "./node_modules/core-js/modules/_object-create.js":
|
| 2877 |
+
/*!********************************************************!*\
|
| 2878 |
+
!*** ./node_modules/core-js/modules/_object-create.js ***!
|
| 2879 |
+
\********************************************************/
|
| 2880 |
+
/*! no static exports found */
|
| 2881 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2882 |
+
|
| 2883 |
+
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
|
| 2884 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 2885 |
+
var dPs = __webpack_require__(/*! ./_object-dps */ "./node_modules/core-js/modules/_object-dps.js");
|
| 2886 |
+
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "./node_modules/core-js/modules/_enum-bug-keys.js");
|
| 2887 |
+
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "./node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
|
| 2888 |
+
var Empty = function () { /* empty */ };
|
| 2889 |
+
var PROTOTYPE = 'prototype';
|
| 2890 |
+
|
| 2891 |
+
// Create object with fake `null` prototype: use iframe Object with cleared prototype
|
| 2892 |
+
var createDict = function () {
|
| 2893 |
+
// Thrash, waste and sodomy: IE GC bug
|
| 2894 |
+
var iframe = __webpack_require__(/*! ./_dom-create */ "./node_modules/core-js/modules/_dom-create.js")('iframe');
|
| 2895 |
+
var i = enumBugKeys.length;
|
| 2896 |
+
var lt = '<';
|
| 2897 |
+
var gt = '>';
|
| 2898 |
+
var iframeDocument;
|
| 2899 |
+
iframe.style.display = 'none';
|
| 2900 |
+
__webpack_require__(/*! ./_html */ "./node_modules/core-js/modules/_html.js").appendChild(iframe);
|
| 2901 |
+
iframe.src = 'javascript:'; // eslint-disable-line no-script-url
|
| 2902 |
+
// createDict = iframe.contentWindow.Object;
|
| 2903 |
+
// html.removeChild(iframe);
|
| 2904 |
+
iframeDocument = iframe.contentWindow.document;
|
| 2905 |
+
iframeDocument.open();
|
| 2906 |
+
iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
|
| 2907 |
+
iframeDocument.close();
|
| 2908 |
+
createDict = iframeDocument.F;
|
| 2909 |
+
while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
|
| 2910 |
+
return createDict();
|
| 2911 |
+
};
|
| 2912 |
+
|
| 2913 |
+
module.exports = Object.create || function create(O, Properties) {
|
| 2914 |
+
var result;
|
| 2915 |
+
if (O !== null) {
|
| 2916 |
+
Empty[PROTOTYPE] = anObject(O);
|
| 2917 |
+
result = new Empty();
|
| 2918 |
+
Empty[PROTOTYPE] = null;
|
| 2919 |
+
// add "__proto__" for Object.getPrototypeOf polyfill
|
| 2920 |
+
result[IE_PROTO] = O;
|
| 2921 |
+
} else result = createDict();
|
| 2922 |
+
return Properties === undefined ? result : dPs(result, Properties);
|
| 2923 |
+
};
|
| 2924 |
+
|
| 2925 |
+
|
| 2926 |
+
/***/ }),
|
| 2927 |
+
|
| 2928 |
+
/***/ "./node_modules/core-js/modules/_object-dp.js":
|
| 2929 |
+
/*!****************************************************!*\
|
| 2930 |
+
!*** ./node_modules/core-js/modules/_object-dp.js ***!
|
| 2931 |
+
\****************************************************/
|
| 2932 |
+
/*! no static exports found */
|
| 2933 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2934 |
+
|
| 2935 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 2936 |
+
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "./node_modules/core-js/modules/_ie8-dom-define.js");
|
| 2937 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/modules/_to-primitive.js");
|
| 2938 |
+
var dP = Object.defineProperty;
|
| 2939 |
+
|
| 2940 |
+
exports.f = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
|
| 2941 |
+
anObject(O);
|
| 2942 |
+
P = toPrimitive(P, true);
|
| 2943 |
+
anObject(Attributes);
|
| 2944 |
+
if (IE8_DOM_DEFINE) try {
|
| 2945 |
+
return dP(O, P, Attributes);
|
| 2946 |
+
} catch (e) { /* empty */ }
|
| 2947 |
+
if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
|
| 2948 |
+
if ('value' in Attributes) O[P] = Attributes.value;
|
| 2949 |
+
return O;
|
| 2950 |
+
};
|
| 2951 |
+
|
| 2952 |
+
|
| 2953 |
+
/***/ }),
|
| 2954 |
+
|
| 2955 |
+
/***/ "./node_modules/core-js/modules/_object-dps.js":
|
| 2956 |
+
/*!*****************************************************!*\
|
| 2957 |
+
!*** ./node_modules/core-js/modules/_object-dps.js ***!
|
| 2958 |
+
\*****************************************************/
|
| 2959 |
+
/*! no static exports found */
|
| 2960 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2961 |
+
|
| 2962 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js");
|
| 2963 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 2964 |
+
var getKeys = __webpack_require__(/*! ./_object-keys */ "./node_modules/core-js/modules/_object-keys.js");
|
| 2965 |
+
|
| 2966 |
+
module.exports = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
|
| 2967 |
+
anObject(O);
|
| 2968 |
+
var keys = getKeys(Properties);
|
| 2969 |
+
var length = keys.length;
|
| 2970 |
+
var i = 0;
|
| 2971 |
+
var P;
|
| 2972 |
+
while (length > i) dP.f(O, P = keys[i++], Properties[P]);
|
| 2973 |
+
return O;
|
| 2974 |
+
};
|
| 2975 |
+
|
| 2976 |
+
|
| 2977 |
+
/***/ }),
|
| 2978 |
+
|
| 2979 |
+
/***/ "./node_modules/core-js/modules/_object-gopd.js":
|
| 2980 |
+
/*!******************************************************!*\
|
| 2981 |
+
!*** ./node_modules/core-js/modules/_object-gopd.js ***!
|
| 2982 |
+
\******************************************************/
|
| 2983 |
+
/*! no static exports found */
|
| 2984 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 2985 |
+
|
| 2986 |
+
var pIE = __webpack_require__(/*! ./_object-pie */ "./node_modules/core-js/modules/_object-pie.js");
|
| 2987 |
+
var createDesc = __webpack_require__(/*! ./_property-desc */ "./node_modules/core-js/modules/_property-desc.js");
|
| 2988 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 2989 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/modules/_to-primitive.js");
|
| 2990 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 2991 |
+
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "./node_modules/core-js/modules/_ie8-dom-define.js");
|
| 2992 |
+
var gOPD = Object.getOwnPropertyDescriptor;
|
| 2993 |
+
|
| 2994 |
+
exports.f = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
|
| 2995 |
+
O = toIObject(O);
|
| 2996 |
+
P = toPrimitive(P, true);
|
| 2997 |
+
if (IE8_DOM_DEFINE) try {
|
| 2998 |
+
return gOPD(O, P);
|
| 2999 |
+
} catch (e) { /* empty */ }
|
| 3000 |
+
if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
|
| 3001 |
+
};
|
| 3002 |
+
|
| 3003 |
+
|
| 3004 |
+
/***/ }),
|
| 3005 |
+
|
| 3006 |
+
/***/ "./node_modules/core-js/modules/_object-gopn-ext.js":
|
| 3007 |
+
/*!**********************************************************!*\
|
| 3008 |
+
!*** ./node_modules/core-js/modules/_object-gopn-ext.js ***!
|
| 3009 |
+
\**********************************************************/
|
| 3010 |
+
/*! no static exports found */
|
| 3011 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3012 |
+
|
| 3013 |
+
// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
|
| 3014 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 3015 |
+
var gOPN = __webpack_require__(/*! ./_object-gopn */ "./node_modules/core-js/modules/_object-gopn.js").f;
|
| 3016 |
+
var toString = {}.toString;
|
| 3017 |
+
|
| 3018 |
+
var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
|
| 3019 |
+
? Object.getOwnPropertyNames(window) : [];
|
| 3020 |
+
|
| 3021 |
+
var getWindowNames = function (it) {
|
| 3022 |
+
try {
|
| 3023 |
+
return gOPN(it);
|
| 3024 |
+
} catch (e) {
|
| 3025 |
+
return windowNames.slice();
|
| 3026 |
+
}
|
| 3027 |
+
};
|
| 3028 |
+
|
| 3029 |
+
module.exports.f = function getOwnPropertyNames(it) {
|
| 3030 |
+
return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
|
| 3031 |
+
};
|
| 3032 |
+
|
| 3033 |
+
|
| 3034 |
+
/***/ }),
|
| 3035 |
+
|
| 3036 |
+
/***/ "./node_modules/core-js/modules/_object-gopn.js":
|
| 3037 |
+
/*!******************************************************!*\
|
| 3038 |
+
!*** ./node_modules/core-js/modules/_object-gopn.js ***!
|
| 3039 |
+
\******************************************************/
|
| 3040 |
+
/*! no static exports found */
|
| 3041 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3042 |
+
|
| 3043 |
+
// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
|
| 3044 |
+
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "./node_modules/core-js/modules/_object-keys-internal.js");
|
| 3045 |
+
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "./node_modules/core-js/modules/_enum-bug-keys.js").concat('length', 'prototype');
|
| 3046 |
+
|
| 3047 |
+
exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
|
| 3048 |
+
return $keys(O, hiddenKeys);
|
| 3049 |
+
};
|
| 3050 |
+
|
| 3051 |
+
|
| 3052 |
+
/***/ }),
|
| 3053 |
+
|
| 3054 |
+
/***/ "./node_modules/core-js/modules/_object-gops.js":
|
| 3055 |
+
/*!******************************************************!*\
|
| 3056 |
+
!*** ./node_modules/core-js/modules/_object-gops.js ***!
|
| 3057 |
+
\******************************************************/
|
| 3058 |
+
/*! no static exports found */
|
| 3059 |
+
/***/ (function(module, exports) {
|
| 3060 |
+
|
| 3061 |
+
exports.f = Object.getOwnPropertySymbols;
|
| 3062 |
+
|
| 3063 |
+
|
| 3064 |
+
/***/ }),
|
| 3065 |
+
|
| 3066 |
+
/***/ "./node_modules/core-js/modules/_object-gpo.js":
|
| 3067 |
+
/*!*****************************************************!*\
|
| 3068 |
+
!*** ./node_modules/core-js/modules/_object-gpo.js ***!
|
| 3069 |
+
\*****************************************************/
|
| 3070 |
+
/*! no static exports found */
|
| 3071 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3072 |
+
|
| 3073 |
+
// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
|
| 3074 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 3075 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 3076 |
+
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "./node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
|
| 3077 |
+
var ObjectProto = Object.prototype;
|
| 3078 |
+
|
| 3079 |
+
module.exports = Object.getPrototypeOf || function (O) {
|
| 3080 |
+
O = toObject(O);
|
| 3081 |
+
if (has(O, IE_PROTO)) return O[IE_PROTO];
|
| 3082 |
+
if (typeof O.constructor == 'function' && O instanceof O.constructor) {
|
| 3083 |
+
return O.constructor.prototype;
|
| 3084 |
+
} return O instanceof Object ? ObjectProto : null;
|
| 3085 |
+
};
|
| 3086 |
+
|
| 3087 |
+
|
| 3088 |
+
/***/ }),
|
| 3089 |
+
|
| 3090 |
+
/***/ "./node_modules/core-js/modules/_object-keys-internal.js":
|
| 3091 |
+
/*!***************************************************************!*\
|
| 3092 |
+
!*** ./node_modules/core-js/modules/_object-keys-internal.js ***!
|
| 3093 |
+
\***************************************************************/
|
| 3094 |
+
/*! no static exports found */
|
| 3095 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3096 |
+
|
| 3097 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 3098 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 3099 |
+
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "./node_modules/core-js/modules/_array-includes.js")(false);
|
| 3100 |
+
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "./node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
|
| 3101 |
+
|
| 3102 |
+
module.exports = function (object, names) {
|
| 3103 |
+
var O = toIObject(object);
|
| 3104 |
+
var i = 0;
|
| 3105 |
+
var result = [];
|
| 3106 |
+
var key;
|
| 3107 |
+
for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
|
| 3108 |
+
// Don't enum bug & hidden keys
|
| 3109 |
+
while (names.length > i) if (has(O, key = names[i++])) {
|
| 3110 |
+
~arrayIndexOf(result, key) || result.push(key);
|
| 3111 |
+
}
|
| 3112 |
+
return result;
|
| 3113 |
+
};
|
| 3114 |
+
|
| 3115 |
+
|
| 3116 |
+
/***/ }),
|
| 3117 |
+
|
| 3118 |
+
/***/ "./node_modules/core-js/modules/_object-keys.js":
|
| 3119 |
+
/*!******************************************************!*\
|
| 3120 |
+
!*** ./node_modules/core-js/modules/_object-keys.js ***!
|
| 3121 |
+
\******************************************************/
|
| 3122 |
+
/*! no static exports found */
|
| 3123 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3124 |
+
|
| 3125 |
+
// 19.1.2.14 / 15.2.3.14 Object.keys(O)
|
| 3126 |
+
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "./node_modules/core-js/modules/_object-keys-internal.js");
|
| 3127 |
+
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "./node_modules/core-js/modules/_enum-bug-keys.js");
|
| 3128 |
+
|
| 3129 |
+
module.exports = Object.keys || function keys(O) {
|
| 3130 |
+
return $keys(O, enumBugKeys);
|
| 3131 |
+
};
|
| 3132 |
+
|
| 3133 |
+
|
| 3134 |
+
/***/ }),
|
| 3135 |
+
|
| 3136 |
+
/***/ "./node_modules/core-js/modules/_object-pie.js":
|
| 3137 |
+
/*!*****************************************************!*\
|
| 3138 |
+
!*** ./node_modules/core-js/modules/_object-pie.js ***!
|
| 3139 |
+
\*****************************************************/
|
| 3140 |
+
/*! no static exports found */
|
| 3141 |
+
/***/ (function(module, exports) {
|
| 3142 |
+
|
| 3143 |
+
exports.f = {}.propertyIsEnumerable;
|
| 3144 |
+
|
| 3145 |
+
|
| 3146 |
+
/***/ }),
|
| 3147 |
+
|
| 3148 |
+
/***/ "./node_modules/core-js/modules/_object-sap.js":
|
| 3149 |
+
/*!*****************************************************!*\
|
| 3150 |
+
!*** ./node_modules/core-js/modules/_object-sap.js ***!
|
| 3151 |
+
\*****************************************************/
|
| 3152 |
+
/*! no static exports found */
|
| 3153 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3154 |
+
|
| 3155 |
+
// most Object methods by ES6 should accept primitives
|
| 3156 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 3157 |
+
var core = __webpack_require__(/*! ./_core */ "./node_modules/core-js/modules/_core.js");
|
| 3158 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 3159 |
+
module.exports = function (KEY, exec) {
|
| 3160 |
+
var fn = (core.Object || {})[KEY] || Object[KEY];
|
| 3161 |
+
var exp = {};
|
| 3162 |
+
exp[KEY] = exec(fn);
|
| 3163 |
+
$export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
|
| 3164 |
+
};
|
| 3165 |
+
|
| 3166 |
+
|
| 3167 |
+
/***/ }),
|
| 3168 |
+
|
| 3169 |
+
/***/ "./node_modules/core-js/modules/_object-to-array.js":
|
| 3170 |
+
/*!**********************************************************!*\
|
| 3171 |
+
!*** ./node_modules/core-js/modules/_object-to-array.js ***!
|
| 3172 |
+
\**********************************************************/
|
| 3173 |
+
/*! no static exports found */
|
| 3174 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3175 |
+
|
| 3176 |
+
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js");
|
| 3177 |
+
var getKeys = __webpack_require__(/*! ./_object-keys */ "./node_modules/core-js/modules/_object-keys.js");
|
| 3178 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 3179 |
+
var isEnum = __webpack_require__(/*! ./_object-pie */ "./node_modules/core-js/modules/_object-pie.js").f;
|
| 3180 |
+
module.exports = function (isEntries) {
|
| 3181 |
+
return function (it) {
|
| 3182 |
+
var O = toIObject(it);
|
| 3183 |
+
var keys = getKeys(O);
|
| 3184 |
+
var length = keys.length;
|
| 3185 |
+
var i = 0;
|
| 3186 |
+
var result = [];
|
| 3187 |
+
var key;
|
| 3188 |
+
while (length > i) {
|
| 3189 |
+
key = keys[i++];
|
| 3190 |
+
if (!DESCRIPTORS || isEnum.call(O, key)) {
|
| 3191 |
+
result.push(isEntries ? [key, O[key]] : O[key]);
|
| 3192 |
+
}
|
| 3193 |
+
}
|
| 3194 |
+
return result;
|
| 3195 |
+
};
|
| 3196 |
+
};
|
| 3197 |
+
|
| 3198 |
+
|
| 3199 |
+
/***/ }),
|
| 3200 |
+
|
| 3201 |
+
/***/ "./node_modules/core-js/modules/_own-keys.js":
|
| 3202 |
+
/*!***************************************************!*\
|
| 3203 |
+
!*** ./node_modules/core-js/modules/_own-keys.js ***!
|
| 3204 |
+
\***************************************************/
|
| 3205 |
+
/*! no static exports found */
|
| 3206 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3207 |
+
|
| 3208 |
+
// all object keys, includes non-enumerable and symbols
|
| 3209 |
+
var gOPN = __webpack_require__(/*! ./_object-gopn */ "./node_modules/core-js/modules/_object-gopn.js");
|
| 3210 |
+
var gOPS = __webpack_require__(/*! ./_object-gops */ "./node_modules/core-js/modules/_object-gops.js");
|
| 3211 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 3212 |
+
var Reflect = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").Reflect;
|
| 3213 |
+
module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {
|
| 3214 |
+
var keys = gOPN.f(anObject(it));
|
| 3215 |
+
var getSymbols = gOPS.f;
|
| 3216 |
+
return getSymbols ? keys.concat(getSymbols(it)) : keys;
|
| 3217 |
+
};
|
| 3218 |
+
|
| 3219 |
+
|
| 3220 |
+
/***/ }),
|
| 3221 |
+
|
| 3222 |
+
/***/ "./node_modules/core-js/modules/_parse-float.js":
|
| 3223 |
+
/*!******************************************************!*\
|
| 3224 |
+
!*** ./node_modules/core-js/modules/_parse-float.js ***!
|
| 3225 |
+
\******************************************************/
|
| 3226 |
+
/*! no static exports found */
|
| 3227 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3228 |
+
|
| 3229 |
+
var $parseFloat = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").parseFloat;
|
| 3230 |
+
var $trim = __webpack_require__(/*! ./_string-trim */ "./node_modules/core-js/modules/_string-trim.js").trim;
|
| 3231 |
+
|
| 3232 |
+
module.exports = 1 / $parseFloat(__webpack_require__(/*! ./_string-ws */ "./node_modules/core-js/modules/_string-ws.js") + '-0') !== -Infinity ? function parseFloat(str) {
|
| 3233 |
+
var string = $trim(String(str), 3);
|
| 3234 |
+
var result = $parseFloat(string);
|
| 3235 |
+
return result === 0 && string.charAt(0) == '-' ? -0 : result;
|
| 3236 |
+
} : $parseFloat;
|
| 3237 |
+
|
| 3238 |
+
|
| 3239 |
+
/***/ }),
|
| 3240 |
+
|
| 3241 |
+
/***/ "./node_modules/core-js/modules/_parse-int.js":
|
| 3242 |
+
/*!****************************************************!*\
|
| 3243 |
+
!*** ./node_modules/core-js/modules/_parse-int.js ***!
|
| 3244 |
+
\****************************************************/
|
| 3245 |
+
/*! no static exports found */
|
| 3246 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3247 |
+
|
| 3248 |
+
var $parseInt = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").parseInt;
|
| 3249 |
+
var $trim = __webpack_require__(/*! ./_string-trim */ "./node_modules/core-js/modules/_string-trim.js").trim;
|
| 3250 |
+
var ws = __webpack_require__(/*! ./_string-ws */ "./node_modules/core-js/modules/_string-ws.js");
|
| 3251 |
+
var hex = /^[-+]?0[xX]/;
|
| 3252 |
+
|
| 3253 |
+
module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {
|
| 3254 |
+
var string = $trim(String(str), 3);
|
| 3255 |
+
return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
|
| 3256 |
+
} : $parseInt;
|
| 3257 |
+
|
| 3258 |
+
|
| 3259 |
+
/***/ }),
|
| 3260 |
+
|
| 3261 |
+
/***/ "./node_modules/core-js/modules/_perform.js":
|
| 3262 |
+
/*!**************************************************!*\
|
| 3263 |
+
!*** ./node_modules/core-js/modules/_perform.js ***!
|
| 3264 |
+
\**************************************************/
|
| 3265 |
+
/*! no static exports found */
|
| 3266 |
+
/***/ (function(module, exports) {
|
| 3267 |
+
|
| 3268 |
+
module.exports = function (exec) {
|
| 3269 |
+
try {
|
| 3270 |
+
return { e: false, v: exec() };
|
| 3271 |
+
} catch (e) {
|
| 3272 |
+
return { e: true, v: e };
|
| 3273 |
+
}
|
| 3274 |
+
};
|
| 3275 |
+
|
| 3276 |
+
|
| 3277 |
+
/***/ }),
|
| 3278 |
+
|
| 3279 |
+
/***/ "./node_modules/core-js/modules/_promise-resolve.js":
|
| 3280 |
+
/*!**********************************************************!*\
|
| 3281 |
+
!*** ./node_modules/core-js/modules/_promise-resolve.js ***!
|
| 3282 |
+
\**********************************************************/
|
| 3283 |
+
/*! no static exports found */
|
| 3284 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3285 |
+
|
| 3286 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 3287 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 3288 |
+
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "./node_modules/core-js/modules/_new-promise-capability.js");
|
| 3289 |
+
|
| 3290 |
+
module.exports = function (C, x) {
|
| 3291 |
+
anObject(C);
|
| 3292 |
+
if (isObject(x) && x.constructor === C) return x;
|
| 3293 |
+
var promiseCapability = newPromiseCapability.f(C);
|
| 3294 |
+
var resolve = promiseCapability.resolve;
|
| 3295 |
+
resolve(x);
|
| 3296 |
+
return promiseCapability.promise;
|
| 3297 |
+
};
|
| 3298 |
+
|
| 3299 |
+
|
| 3300 |
+
/***/ }),
|
| 3301 |
+
|
| 3302 |
+
/***/ "./node_modules/core-js/modules/_property-desc.js":
|
| 3303 |
+
/*!********************************************************!*\
|
| 3304 |
+
!*** ./node_modules/core-js/modules/_property-desc.js ***!
|
| 3305 |
+
\********************************************************/
|
| 3306 |
+
/*! no static exports found */
|
| 3307 |
+
/***/ (function(module, exports) {
|
| 3308 |
+
|
| 3309 |
+
module.exports = function (bitmap, value) {
|
| 3310 |
+
return {
|
| 3311 |
+
enumerable: !(bitmap & 1),
|
| 3312 |
+
configurable: !(bitmap & 2),
|
| 3313 |
+
writable: !(bitmap & 4),
|
| 3314 |
+
value: value
|
| 3315 |
+
};
|
| 3316 |
+
};
|
| 3317 |
+
|
| 3318 |
+
|
| 3319 |
+
/***/ }),
|
| 3320 |
+
|
| 3321 |
+
/***/ "./node_modules/core-js/modules/_redefine-all.js":
|
| 3322 |
+
/*!*******************************************************!*\
|
| 3323 |
+
!*** ./node_modules/core-js/modules/_redefine-all.js ***!
|
| 3324 |
+
\*******************************************************/
|
| 3325 |
+
/*! no static exports found */
|
| 3326 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3327 |
+
|
| 3328 |
+
var redefine = __webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js");
|
| 3329 |
+
module.exports = function (target, src, safe) {
|
| 3330 |
+
for (var key in src) redefine(target, key, src[key], safe);
|
| 3331 |
+
return target;
|
| 3332 |
+
};
|
| 3333 |
+
|
| 3334 |
+
|
| 3335 |
+
/***/ }),
|
| 3336 |
+
|
| 3337 |
+
/***/ "./node_modules/core-js/modules/_redefine.js":
|
| 3338 |
+
/*!***************************************************!*\
|
| 3339 |
+
!*** ./node_modules/core-js/modules/_redefine.js ***!
|
| 3340 |
+
\***************************************************/
|
| 3341 |
+
/*! no static exports found */
|
| 3342 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3343 |
+
|
| 3344 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 3345 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js");
|
| 3346 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 3347 |
+
var SRC = __webpack_require__(/*! ./_uid */ "./node_modules/core-js/modules/_uid.js")('src');
|
| 3348 |
+
var $toString = __webpack_require__(/*! ./_function-to-string */ "./node_modules/core-js/modules/_function-to-string.js");
|
| 3349 |
+
var TO_STRING = 'toString';
|
| 3350 |
+
var TPL = ('' + $toString).split(TO_STRING);
|
| 3351 |
+
|
| 3352 |
+
__webpack_require__(/*! ./_core */ "./node_modules/core-js/modules/_core.js").inspectSource = function (it) {
|
| 3353 |
+
return $toString.call(it);
|
| 3354 |
+
};
|
| 3355 |
+
|
| 3356 |
+
(module.exports = function (O, key, val, safe) {
|
| 3357 |
+
var isFunction = typeof val == 'function';
|
| 3358 |
+
if (isFunction) has(val, 'name') || hide(val, 'name', key);
|
| 3359 |
+
if (O[key] === val) return;
|
| 3360 |
+
if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
|
| 3361 |
+
if (O === global) {
|
| 3362 |
+
O[key] = val;
|
| 3363 |
+
} else if (!safe) {
|
| 3364 |
+
delete O[key];
|
| 3365 |
+
hide(O, key, val);
|
| 3366 |
+
} else if (O[key]) {
|
| 3367 |
+
O[key] = val;
|
| 3368 |
+
} else {
|
| 3369 |
+
hide(O, key, val);
|
| 3370 |
+
}
|
| 3371 |
+
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
|
| 3372 |
+
})(Function.prototype, TO_STRING, function toString() {
|
| 3373 |
+
return typeof this == 'function' && this[SRC] || $toString.call(this);
|
| 3374 |
+
});
|
| 3375 |
+
|
| 3376 |
+
|
| 3377 |
+
/***/ }),
|
| 3378 |
+
|
| 3379 |
+
/***/ "./node_modules/core-js/modules/_regexp-exec-abstract.js":
|
| 3380 |
+
/*!***************************************************************!*\
|
| 3381 |
+
!*** ./node_modules/core-js/modules/_regexp-exec-abstract.js ***!
|
| 3382 |
+
\***************************************************************/
|
| 3383 |
+
/*! no static exports found */
|
| 3384 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3385 |
+
|
| 3386 |
+
"use strict";
|
| 3387 |
+
|
| 3388 |
+
|
| 3389 |
+
var classof = __webpack_require__(/*! ./_classof */ "./node_modules/core-js/modules/_classof.js");
|
| 3390 |
+
var builtinExec = RegExp.prototype.exec;
|
| 3391 |
+
|
| 3392 |
+
// `RegExpExec` abstract operation
|
| 3393 |
+
// https://tc39.github.io/ecma262/#sec-regexpexec
|
| 3394 |
+
module.exports = function (R, S) {
|
| 3395 |
+
var exec = R.exec;
|
| 3396 |
+
if (typeof exec === 'function') {
|
| 3397 |
+
var result = exec.call(R, S);
|
| 3398 |
+
if (typeof result !== 'object') {
|
| 3399 |
+
throw new TypeError('RegExp exec method returned something other than an Object or null');
|
| 3400 |
+
}
|
| 3401 |
+
return result;
|
| 3402 |
+
}
|
| 3403 |
+
if (classof(R) !== 'RegExp') {
|
| 3404 |
+
throw new TypeError('RegExp#exec called on incompatible receiver');
|
| 3405 |
+
}
|
| 3406 |
+
return builtinExec.call(R, S);
|
| 3407 |
+
};
|
| 3408 |
+
|
| 3409 |
+
|
| 3410 |
+
/***/ }),
|
| 3411 |
+
|
| 3412 |
+
/***/ "./node_modules/core-js/modules/_regexp-exec.js":
|
| 3413 |
+
/*!******************************************************!*\
|
| 3414 |
+
!*** ./node_modules/core-js/modules/_regexp-exec.js ***!
|
| 3415 |
+
\******************************************************/
|
| 3416 |
+
/*! no static exports found */
|
| 3417 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3418 |
+
|
| 3419 |
+
"use strict";
|
| 3420 |
+
|
| 3421 |
+
|
| 3422 |
+
var regexpFlags = __webpack_require__(/*! ./_flags */ "./node_modules/core-js/modules/_flags.js");
|
| 3423 |
+
|
| 3424 |
+
var nativeExec = RegExp.prototype.exec;
|
| 3425 |
+
// This always refers to the native implementation, because the
|
| 3426 |
+
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
|
| 3427 |
+
// which loads this file before patching the method.
|
| 3428 |
+
var nativeReplace = String.prototype.replace;
|
| 3429 |
+
|
| 3430 |
+
var patchedExec = nativeExec;
|
| 3431 |
+
|
| 3432 |
+
var LAST_INDEX = 'lastIndex';
|
| 3433 |
+
|
| 3434 |
+
var UPDATES_LAST_INDEX_WRONG = (function () {
|
| 3435 |
+
var re1 = /a/,
|
| 3436 |
+
re2 = /b*/g;
|
| 3437 |
+
nativeExec.call(re1, 'a');
|
| 3438 |
+
nativeExec.call(re2, 'a');
|
| 3439 |
+
return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
|
| 3440 |
+
})();
|
| 3441 |
+
|
| 3442 |
+
// nonparticipating capturing group, copied from es5-shim's String#split patch.
|
| 3443 |
+
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
|
| 3444 |
+
|
| 3445 |
+
var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;
|
| 3446 |
+
|
| 3447 |
+
if (PATCH) {
|
| 3448 |
+
patchedExec = function exec(str) {
|
| 3449 |
+
var re = this;
|
| 3450 |
+
var lastIndex, reCopy, match, i;
|
| 3451 |
+
|
| 3452 |
+
if (NPCG_INCLUDED) {
|
| 3453 |
+
reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
|
| 3454 |
+
}
|
| 3455 |
+
if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];
|
| 3456 |
+
|
| 3457 |
+
match = nativeExec.call(re, str);
|
| 3458 |
+
|
| 3459 |
+
if (UPDATES_LAST_INDEX_WRONG && match) {
|
| 3460 |
+
re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
|
| 3461 |
+
}
|
| 3462 |
+
if (NPCG_INCLUDED && match && match.length > 1) {
|
| 3463 |
+
// Fix browsers whose `exec` methods don't consistently return `undefined`
|
| 3464 |
+
// for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
|
| 3465 |
+
// eslint-disable-next-line no-loop-func
|
| 3466 |
+
nativeReplace.call(match[0], reCopy, function () {
|
| 3467 |
+
for (i = 1; i < arguments.length - 2; i++) {
|
| 3468 |
+
if (arguments[i] === undefined) match[i] = undefined;
|
| 3469 |
+
}
|
| 3470 |
+
});
|
| 3471 |
+
}
|
| 3472 |
+
|
| 3473 |
+
return match;
|
| 3474 |
+
};
|
| 3475 |
+
}
|
| 3476 |
+
|
| 3477 |
+
module.exports = patchedExec;
|
| 3478 |
+
|
| 3479 |
+
|
| 3480 |
+
/***/ }),
|
| 3481 |
+
|
| 3482 |
+
/***/ "./node_modules/core-js/modules/_same-value.js":
|
| 3483 |
+
/*!*****************************************************!*\
|
| 3484 |
+
!*** ./node_modules/core-js/modules/_same-value.js ***!
|
| 3485 |
+
\*****************************************************/
|
| 3486 |
+
/*! no static exports found */
|
| 3487 |
+
/***/ (function(module, exports) {
|
| 3488 |
+
|
| 3489 |
+
// 7.2.9 SameValue(x, y)
|
| 3490 |
+
module.exports = Object.is || function is(x, y) {
|
| 3491 |
+
// eslint-disable-next-line no-self-compare
|
| 3492 |
+
return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
|
| 3493 |
+
};
|
| 3494 |
+
|
| 3495 |
+
|
| 3496 |
+
/***/ }),
|
| 3497 |
+
|
| 3498 |
+
/***/ "./node_modules/core-js/modules/_set-proto.js":
|
| 3499 |
+
/*!****************************************************!*\
|
| 3500 |
+
!*** ./node_modules/core-js/modules/_set-proto.js ***!
|
| 3501 |
+
\****************************************************/
|
| 3502 |
+
/*! no static exports found */
|
| 3503 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3504 |
+
|
| 3505 |
+
// Works with __proto__ only. Old v8 can't work with null proto objects.
|
| 3506 |
+
/* eslint-disable no-proto */
|
| 3507 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 3508 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 3509 |
+
var check = function (O, proto) {
|
| 3510 |
+
anObject(O);
|
| 3511 |
+
if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
|
| 3512 |
+
};
|
| 3513 |
+
module.exports = {
|
| 3514 |
+
set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
|
| 3515 |
+
function (test, buggy, set) {
|
| 3516 |
+
try {
|
| 3517 |
+
set = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
|
| 3518 |
+
set(test, []);
|
| 3519 |
+
buggy = !(test instanceof Array);
|
| 3520 |
+
} catch (e) { buggy = true; }
|
| 3521 |
+
return function setPrototypeOf(O, proto) {
|
| 3522 |
+
check(O, proto);
|
| 3523 |
+
if (buggy) O.__proto__ = proto;
|
| 3524 |
+
else set(O, proto);
|
| 3525 |
+
return O;
|
| 3526 |
+
};
|
| 3527 |
+
}({}, false) : undefined),
|
| 3528 |
+
check: check
|
| 3529 |
+
};
|
| 3530 |
+
|
| 3531 |
+
|
| 3532 |
+
/***/ }),
|
| 3533 |
+
|
| 3534 |
+
/***/ "./node_modules/core-js/modules/_set-species.js":
|
| 3535 |
+
/*!******************************************************!*\
|
| 3536 |
+
!*** ./node_modules/core-js/modules/_set-species.js ***!
|
| 3537 |
+
\******************************************************/
|
| 3538 |
+
/*! no static exports found */
|
| 3539 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3540 |
+
|
| 3541 |
+
"use strict";
|
| 3542 |
+
|
| 3543 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 3544 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js");
|
| 3545 |
+
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js");
|
| 3546 |
+
var SPECIES = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('species');
|
| 3547 |
+
|
| 3548 |
+
module.exports = function (KEY) {
|
| 3549 |
+
var C = global[KEY];
|
| 3550 |
+
if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
|
| 3551 |
+
configurable: true,
|
| 3552 |
+
get: function () { return this; }
|
| 3553 |
+
});
|
| 3554 |
+
};
|
| 3555 |
+
|
| 3556 |
+
|
| 3557 |
+
/***/ }),
|
| 3558 |
+
|
| 3559 |
+
/***/ "./node_modules/core-js/modules/_set-to-string-tag.js":
|
| 3560 |
+
/*!************************************************************!*\
|
| 3561 |
+
!*** ./node_modules/core-js/modules/_set-to-string-tag.js ***!
|
| 3562 |
+
\************************************************************/
|
| 3563 |
+
/*! no static exports found */
|
| 3564 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3565 |
+
|
| 3566 |
+
var def = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f;
|
| 3567 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 3568 |
+
var TAG = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('toStringTag');
|
| 3569 |
+
|
| 3570 |
+
module.exports = function (it, tag, stat) {
|
| 3571 |
+
if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
|
| 3572 |
+
};
|
| 3573 |
+
|
| 3574 |
+
|
| 3575 |
+
/***/ }),
|
| 3576 |
+
|
| 3577 |
+
/***/ "./node_modules/core-js/modules/_shared-key.js":
|
| 3578 |
+
/*!*****************************************************!*\
|
| 3579 |
+
!*** ./node_modules/core-js/modules/_shared-key.js ***!
|
| 3580 |
+
\*****************************************************/
|
| 3581 |
+
/*! no static exports found */
|
| 3582 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3583 |
+
|
| 3584 |
+
var shared = __webpack_require__(/*! ./_shared */ "./node_modules/core-js/modules/_shared.js")('keys');
|
| 3585 |
+
var uid = __webpack_require__(/*! ./_uid */ "./node_modules/core-js/modules/_uid.js");
|
| 3586 |
+
module.exports = function (key) {
|
| 3587 |
+
return shared[key] || (shared[key] = uid(key));
|
| 3588 |
+
};
|
| 3589 |
+
|
| 3590 |
+
|
| 3591 |
+
/***/ }),
|
| 3592 |
+
|
| 3593 |
+
/***/ "./node_modules/core-js/modules/_shared.js":
|
| 3594 |
+
/*!*************************************************!*\
|
| 3595 |
+
!*** ./node_modules/core-js/modules/_shared.js ***!
|
| 3596 |
+
\*************************************************/
|
| 3597 |
+
/*! no static exports found */
|
| 3598 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3599 |
+
|
| 3600 |
+
var core = __webpack_require__(/*! ./_core */ "./node_modules/core-js/modules/_core.js");
|
| 3601 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 3602 |
+
var SHARED = '__core-js_shared__';
|
| 3603 |
+
var store = global[SHARED] || (global[SHARED] = {});
|
| 3604 |
+
|
| 3605 |
+
(module.exports = function (key, value) {
|
| 3606 |
+
return store[key] || (store[key] = value !== undefined ? value : {});
|
| 3607 |
+
})('versions', []).push({
|
| 3608 |
+
version: core.version,
|
| 3609 |
+
mode: __webpack_require__(/*! ./_library */ "./node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
|
| 3610 |
+
copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
|
| 3611 |
+
});
|
| 3612 |
+
|
| 3613 |
+
|
| 3614 |
+
/***/ }),
|
| 3615 |
+
|
| 3616 |
+
/***/ "./node_modules/core-js/modules/_species-constructor.js":
|
| 3617 |
+
/*!**************************************************************!*\
|
| 3618 |
+
!*** ./node_modules/core-js/modules/_species-constructor.js ***!
|
| 3619 |
+
\**************************************************************/
|
| 3620 |
+
/*! no static exports found */
|
| 3621 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3622 |
+
|
| 3623 |
+
// 7.3.20 SpeciesConstructor(O, defaultConstructor)
|
| 3624 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 3625 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 3626 |
+
var SPECIES = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('species');
|
| 3627 |
+
module.exports = function (O, D) {
|
| 3628 |
+
var C = anObject(O).constructor;
|
| 3629 |
+
var S;
|
| 3630 |
+
return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
|
| 3631 |
+
};
|
| 3632 |
+
|
| 3633 |
+
|
| 3634 |
+
/***/ }),
|
| 3635 |
+
|
| 3636 |
+
/***/ "./node_modules/core-js/modules/_strict-method.js":
|
| 3637 |
+
/*!********************************************************!*\
|
| 3638 |
+
!*** ./node_modules/core-js/modules/_strict-method.js ***!
|
| 3639 |
+
\********************************************************/
|
| 3640 |
+
/*! no static exports found */
|
| 3641 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3642 |
+
|
| 3643 |
+
"use strict";
|
| 3644 |
+
|
| 3645 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 3646 |
+
|
| 3647 |
+
module.exports = function (method, arg) {
|
| 3648 |
+
return !!method && fails(function () {
|
| 3649 |
+
// eslint-disable-next-line no-useless-call
|
| 3650 |
+
arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
|
| 3651 |
+
});
|
| 3652 |
+
};
|
| 3653 |
+
|
| 3654 |
+
|
| 3655 |
+
/***/ }),
|
| 3656 |
+
|
| 3657 |
+
/***/ "./node_modules/core-js/modules/_string-at.js":
|
| 3658 |
+
/*!****************************************************!*\
|
| 3659 |
+
!*** ./node_modules/core-js/modules/_string-at.js ***!
|
| 3660 |
+
\****************************************************/
|
| 3661 |
+
/*! no static exports found */
|
| 3662 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3663 |
+
|
| 3664 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 3665 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 3666 |
+
// true -> String#at
|
| 3667 |
+
// false -> String#codePointAt
|
| 3668 |
+
module.exports = function (TO_STRING) {
|
| 3669 |
+
return function (that, pos) {
|
| 3670 |
+
var s = String(defined(that));
|
| 3671 |
+
var i = toInteger(pos);
|
| 3672 |
+
var l = s.length;
|
| 3673 |
+
var a, b;
|
| 3674 |
+
if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
|
| 3675 |
+
a = s.charCodeAt(i);
|
| 3676 |
+
return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
|
| 3677 |
+
? TO_STRING ? s.charAt(i) : a
|
| 3678 |
+
: TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
|
| 3679 |
+
};
|
| 3680 |
+
};
|
| 3681 |
+
|
| 3682 |
+
|
| 3683 |
+
/***/ }),
|
| 3684 |
+
|
| 3685 |
+
/***/ "./node_modules/core-js/modules/_string-context.js":
|
| 3686 |
+
/*!*********************************************************!*\
|
| 3687 |
+
!*** ./node_modules/core-js/modules/_string-context.js ***!
|
| 3688 |
+
\*********************************************************/
|
| 3689 |
+
/*! no static exports found */
|
| 3690 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3691 |
+
|
| 3692 |
+
// helper for String#{startsWith, endsWith, includes}
|
| 3693 |
+
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "./node_modules/core-js/modules/_is-regexp.js");
|
| 3694 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 3695 |
+
|
| 3696 |
+
module.exports = function (that, searchString, NAME) {
|
| 3697 |
+
if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
|
| 3698 |
+
return String(defined(that));
|
| 3699 |
+
};
|
| 3700 |
+
|
| 3701 |
+
|
| 3702 |
+
/***/ }),
|
| 3703 |
+
|
| 3704 |
+
/***/ "./node_modules/core-js/modules/_string-html.js":
|
| 3705 |
+
/*!******************************************************!*\
|
| 3706 |
+
!*** ./node_modules/core-js/modules/_string-html.js ***!
|
| 3707 |
+
\******************************************************/
|
| 3708 |
+
/*! no static exports found */
|
| 3709 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3710 |
+
|
| 3711 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 3712 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 3713 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 3714 |
+
var quot = /"/g;
|
| 3715 |
+
// B.2.3.2.1 CreateHTML(string, tag, attribute, value)
|
| 3716 |
+
var createHTML = function (string, tag, attribute, value) {
|
| 3717 |
+
var S = String(defined(string));
|
| 3718 |
+
var p1 = '<' + tag;
|
| 3719 |
+
if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '"') + '"';
|
| 3720 |
+
return p1 + '>' + S + '</' + tag + '>';
|
| 3721 |
+
};
|
| 3722 |
+
module.exports = function (NAME, exec) {
|
| 3723 |
+
var O = {};
|
| 3724 |
+
O[NAME] = exec(createHTML);
|
| 3725 |
+
$export($export.P + $export.F * fails(function () {
|
| 3726 |
+
var test = ''[NAME]('"');
|
| 3727 |
+
return test !== test.toLowerCase() || test.split('"').length > 3;
|
| 3728 |
+
}), 'String', O);
|
| 3729 |
+
};
|
| 3730 |
+
|
| 3731 |
+
|
| 3732 |
+
/***/ }),
|
| 3733 |
+
|
| 3734 |
+
/***/ "./node_modules/core-js/modules/_string-pad.js":
|
| 3735 |
+
/*!*****************************************************!*\
|
| 3736 |
+
!*** ./node_modules/core-js/modules/_string-pad.js ***!
|
| 3737 |
+
\*****************************************************/
|
| 3738 |
+
/*! no static exports found */
|
| 3739 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3740 |
+
|
| 3741 |
+
// https://github.com/tc39/proposal-string-pad-start-end
|
| 3742 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 3743 |
+
var repeat = __webpack_require__(/*! ./_string-repeat */ "./node_modules/core-js/modules/_string-repeat.js");
|
| 3744 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 3745 |
+
|
| 3746 |
+
module.exports = function (that, maxLength, fillString, left) {
|
| 3747 |
+
var S = String(defined(that));
|
| 3748 |
+
var stringLength = S.length;
|
| 3749 |
+
var fillStr = fillString === undefined ? ' ' : String(fillString);
|
| 3750 |
+
var intMaxLength = toLength(maxLength);
|
| 3751 |
+
if (intMaxLength <= stringLength || fillStr == '') return S;
|
| 3752 |
+
var fillLen = intMaxLength - stringLength;
|
| 3753 |
+
var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));
|
| 3754 |
+
if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen);
|
| 3755 |
+
return left ? stringFiller + S : S + stringFiller;
|
| 3756 |
+
};
|
| 3757 |
+
|
| 3758 |
+
|
| 3759 |
+
/***/ }),
|
| 3760 |
+
|
| 3761 |
+
/***/ "./node_modules/core-js/modules/_string-repeat.js":
|
| 3762 |
+
/*!********************************************************!*\
|
| 3763 |
+
!*** ./node_modules/core-js/modules/_string-repeat.js ***!
|
| 3764 |
+
\********************************************************/
|
| 3765 |
+
/*! no static exports found */
|
| 3766 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3767 |
+
|
| 3768 |
+
"use strict";
|
| 3769 |
+
|
| 3770 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 3771 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 3772 |
+
|
| 3773 |
+
module.exports = function repeat(count) {
|
| 3774 |
+
var str = String(defined(this));
|
| 3775 |
+
var res = '';
|
| 3776 |
+
var n = toInteger(count);
|
| 3777 |
+
if (n < 0 || n == Infinity) throw RangeError("Count can't be negative");
|
| 3778 |
+
for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str;
|
| 3779 |
+
return res;
|
| 3780 |
+
};
|
| 3781 |
+
|
| 3782 |
+
|
| 3783 |
+
/***/ }),
|
| 3784 |
+
|
| 3785 |
+
/***/ "./node_modules/core-js/modules/_string-trim.js":
|
| 3786 |
+
/*!******************************************************!*\
|
| 3787 |
+
!*** ./node_modules/core-js/modules/_string-trim.js ***!
|
| 3788 |
+
\******************************************************/
|
| 3789 |
+
/*! no static exports found */
|
| 3790 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3791 |
+
|
| 3792 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 3793 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 3794 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 3795 |
+
var spaces = __webpack_require__(/*! ./_string-ws */ "./node_modules/core-js/modules/_string-ws.js");
|
| 3796 |
+
var space = '[' + spaces + ']';
|
| 3797 |
+
var non = '\u200b\u0085';
|
| 3798 |
+
var ltrim = RegExp('^' + space + space + '*');
|
| 3799 |
+
var rtrim = RegExp(space + space + '*$');
|
| 3800 |
+
|
| 3801 |
+
var exporter = function (KEY, exec, ALIAS) {
|
| 3802 |
+
var exp = {};
|
| 3803 |
+
var FORCE = fails(function () {
|
| 3804 |
+
return !!spaces[KEY]() || non[KEY]() != non;
|
| 3805 |
+
});
|
| 3806 |
+
var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
|
| 3807 |
+
if (ALIAS) exp[ALIAS] = fn;
|
| 3808 |
+
$export($export.P + $export.F * FORCE, 'String', exp);
|
| 3809 |
+
};
|
| 3810 |
+
|
| 3811 |
+
// 1 -> String#trimLeft
|
| 3812 |
+
// 2 -> String#trimRight
|
| 3813 |
+
// 3 -> String#trim
|
| 3814 |
+
var trim = exporter.trim = function (string, TYPE) {
|
| 3815 |
+
string = String(defined(string));
|
| 3816 |
+
if (TYPE & 1) string = string.replace(ltrim, '');
|
| 3817 |
+
if (TYPE & 2) string = string.replace(rtrim, '');
|
| 3818 |
+
return string;
|
| 3819 |
+
};
|
| 3820 |
+
|
| 3821 |
+
module.exports = exporter;
|
| 3822 |
+
|
| 3823 |
+
|
| 3824 |
+
/***/ }),
|
| 3825 |
+
|
| 3826 |
+
/***/ "./node_modules/core-js/modules/_string-ws.js":
|
| 3827 |
+
/*!****************************************************!*\
|
| 3828 |
+
!*** ./node_modules/core-js/modules/_string-ws.js ***!
|
| 3829 |
+
\****************************************************/
|
| 3830 |
+
/*! no static exports found */
|
| 3831 |
+
/***/ (function(module, exports) {
|
| 3832 |
+
|
| 3833 |
+
module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
|
| 3834 |
+
'\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
|
| 3835 |
+
|
| 3836 |
+
|
| 3837 |
+
/***/ }),
|
| 3838 |
+
|
| 3839 |
+
/***/ "./node_modules/core-js/modules/_task.js":
|
| 3840 |
+
/*!***********************************************!*\
|
| 3841 |
+
!*** ./node_modules/core-js/modules/_task.js ***!
|
| 3842 |
+
\***********************************************/
|
| 3843 |
+
/*! no static exports found */
|
| 3844 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3845 |
+
|
| 3846 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 3847 |
+
var invoke = __webpack_require__(/*! ./_invoke */ "./node_modules/core-js/modules/_invoke.js");
|
| 3848 |
+
var html = __webpack_require__(/*! ./_html */ "./node_modules/core-js/modules/_html.js");
|
| 3849 |
+
var cel = __webpack_require__(/*! ./_dom-create */ "./node_modules/core-js/modules/_dom-create.js");
|
| 3850 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 3851 |
+
var process = global.process;
|
| 3852 |
+
var setTask = global.setImmediate;
|
| 3853 |
+
var clearTask = global.clearImmediate;
|
| 3854 |
+
var MessageChannel = global.MessageChannel;
|
| 3855 |
+
var Dispatch = global.Dispatch;
|
| 3856 |
+
var counter = 0;
|
| 3857 |
+
var queue = {};
|
| 3858 |
+
var ONREADYSTATECHANGE = 'onreadystatechange';
|
| 3859 |
+
var defer, channel, port;
|
| 3860 |
+
var run = function () {
|
| 3861 |
+
var id = +this;
|
| 3862 |
+
// eslint-disable-next-line no-prototype-builtins
|
| 3863 |
+
if (queue.hasOwnProperty(id)) {
|
| 3864 |
+
var fn = queue[id];
|
| 3865 |
+
delete queue[id];
|
| 3866 |
+
fn();
|
| 3867 |
+
}
|
| 3868 |
+
};
|
| 3869 |
+
var listener = function (event) {
|
| 3870 |
+
run.call(event.data);
|
| 3871 |
+
};
|
| 3872 |
+
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
|
| 3873 |
+
if (!setTask || !clearTask) {
|
| 3874 |
+
setTask = function setImmediate(fn) {
|
| 3875 |
+
var args = [];
|
| 3876 |
+
var i = 1;
|
| 3877 |
+
while (arguments.length > i) args.push(arguments[i++]);
|
| 3878 |
+
queue[++counter] = function () {
|
| 3879 |
+
// eslint-disable-next-line no-new-func
|
| 3880 |
+
invoke(typeof fn == 'function' ? fn : Function(fn), args);
|
| 3881 |
+
};
|
| 3882 |
+
defer(counter);
|
| 3883 |
+
return counter;
|
| 3884 |
+
};
|
| 3885 |
+
clearTask = function clearImmediate(id) {
|
| 3886 |
+
delete queue[id];
|
| 3887 |
+
};
|
| 3888 |
+
// Node.js 0.8-
|
| 3889 |
+
if (__webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js")(process) == 'process') {
|
| 3890 |
+
defer = function (id) {
|
| 3891 |
+
process.nextTick(ctx(run, id, 1));
|
| 3892 |
+
};
|
| 3893 |
+
// Sphere (JS game engine) Dispatch API
|
| 3894 |
+
} else if (Dispatch && Dispatch.now) {
|
| 3895 |
+
defer = function (id) {
|
| 3896 |
+
Dispatch.now(ctx(run, id, 1));
|
| 3897 |
+
};
|
| 3898 |
+
// Browsers with MessageChannel, includes WebWorkers
|
| 3899 |
+
} else if (MessageChannel) {
|
| 3900 |
+
channel = new MessageChannel();
|
| 3901 |
+
port = channel.port2;
|
| 3902 |
+
channel.port1.onmessage = listener;
|
| 3903 |
+
defer = ctx(port.postMessage, port, 1);
|
| 3904 |
+
// Browsers with postMessage, skip WebWorkers
|
| 3905 |
+
// IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
|
| 3906 |
+
} else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
|
| 3907 |
+
defer = function (id) {
|
| 3908 |
+
global.postMessage(id + '', '*');
|
| 3909 |
+
};
|
| 3910 |
+
global.addEventListener('message', listener, false);
|
| 3911 |
+
// IE8-
|
| 3912 |
+
} else if (ONREADYSTATECHANGE in cel('script')) {
|
| 3913 |
+
defer = function (id) {
|
| 3914 |
+
html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
|
| 3915 |
+
html.removeChild(this);
|
| 3916 |
+
run.call(id);
|
| 3917 |
+
};
|
| 3918 |
+
};
|
| 3919 |
+
// Rest old browsers
|
| 3920 |
+
} else {
|
| 3921 |
+
defer = function (id) {
|
| 3922 |
+
setTimeout(ctx(run, id, 1), 0);
|
| 3923 |
+
};
|
| 3924 |
+
}
|
| 3925 |
+
}
|
| 3926 |
+
module.exports = {
|
| 3927 |
+
set: setTask,
|
| 3928 |
+
clear: clearTask
|
| 3929 |
+
};
|
| 3930 |
+
|
| 3931 |
+
|
| 3932 |
+
/***/ }),
|
| 3933 |
+
|
| 3934 |
+
/***/ "./node_modules/core-js/modules/_to-absolute-index.js":
|
| 3935 |
+
/*!************************************************************!*\
|
| 3936 |
+
!*** ./node_modules/core-js/modules/_to-absolute-index.js ***!
|
| 3937 |
+
\************************************************************/
|
| 3938 |
+
/*! no static exports found */
|
| 3939 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3940 |
+
|
| 3941 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 3942 |
+
var max = Math.max;
|
| 3943 |
+
var min = Math.min;
|
| 3944 |
+
module.exports = function (index, length) {
|
| 3945 |
+
index = toInteger(index);
|
| 3946 |
+
return index < 0 ? max(index + length, 0) : min(index, length);
|
| 3947 |
+
};
|
| 3948 |
+
|
| 3949 |
+
|
| 3950 |
+
/***/ }),
|
| 3951 |
+
|
| 3952 |
+
/***/ "./node_modules/core-js/modules/_to-index.js":
|
| 3953 |
+
/*!***************************************************!*\
|
| 3954 |
+
!*** ./node_modules/core-js/modules/_to-index.js ***!
|
| 3955 |
+
\***************************************************/
|
| 3956 |
+
/*! no static exports found */
|
| 3957 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3958 |
+
|
| 3959 |
+
// https://tc39.github.io/ecma262/#sec-toindex
|
| 3960 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 3961 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 3962 |
+
module.exports = function (it) {
|
| 3963 |
+
if (it === undefined) return 0;
|
| 3964 |
+
var number = toInteger(it);
|
| 3965 |
+
var length = toLength(number);
|
| 3966 |
+
if (number !== length) throw RangeError('Wrong length!');
|
| 3967 |
+
return length;
|
| 3968 |
+
};
|
| 3969 |
+
|
| 3970 |
+
|
| 3971 |
+
/***/ }),
|
| 3972 |
+
|
| 3973 |
+
/***/ "./node_modules/core-js/modules/_to-integer.js":
|
| 3974 |
+
/*!*****************************************************!*\
|
| 3975 |
+
!*** ./node_modules/core-js/modules/_to-integer.js ***!
|
| 3976 |
+
\*****************************************************/
|
| 3977 |
+
/*! no static exports found */
|
| 3978 |
+
/***/ (function(module, exports) {
|
| 3979 |
+
|
| 3980 |
+
// 7.1.4 ToInteger
|
| 3981 |
+
var ceil = Math.ceil;
|
| 3982 |
+
var floor = Math.floor;
|
| 3983 |
+
module.exports = function (it) {
|
| 3984 |
+
return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
|
| 3985 |
+
};
|
| 3986 |
+
|
| 3987 |
+
|
| 3988 |
+
/***/ }),
|
| 3989 |
+
|
| 3990 |
+
/***/ "./node_modules/core-js/modules/_to-iobject.js":
|
| 3991 |
+
/*!*****************************************************!*\
|
| 3992 |
+
!*** ./node_modules/core-js/modules/_to-iobject.js ***!
|
| 3993 |
+
\*****************************************************/
|
| 3994 |
+
/*! no static exports found */
|
| 3995 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 3996 |
+
|
| 3997 |
+
// to indexed object, toObject with fallback for non-array-like ES3 strings
|
| 3998 |
+
var IObject = __webpack_require__(/*! ./_iobject */ "./node_modules/core-js/modules/_iobject.js");
|
| 3999 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 4000 |
+
module.exports = function (it) {
|
| 4001 |
+
return IObject(defined(it));
|
| 4002 |
+
};
|
| 4003 |
+
|
| 4004 |
+
|
| 4005 |
+
/***/ }),
|
| 4006 |
+
|
| 4007 |
+
/***/ "./node_modules/core-js/modules/_to-length.js":
|
| 4008 |
+
/*!****************************************************!*\
|
| 4009 |
+
!*** ./node_modules/core-js/modules/_to-length.js ***!
|
| 4010 |
+
\****************************************************/
|
| 4011 |
+
/*! no static exports found */
|
| 4012 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4013 |
+
|
| 4014 |
+
// 7.1.15 ToLength
|
| 4015 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 4016 |
+
var min = Math.min;
|
| 4017 |
+
module.exports = function (it) {
|
| 4018 |
+
return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
|
| 4019 |
+
};
|
| 4020 |
+
|
| 4021 |
+
|
| 4022 |
+
/***/ }),
|
| 4023 |
+
|
| 4024 |
+
/***/ "./node_modules/core-js/modules/_to-object.js":
|
| 4025 |
+
/*!****************************************************!*\
|
| 4026 |
+
!*** ./node_modules/core-js/modules/_to-object.js ***!
|
| 4027 |
+
\****************************************************/
|
| 4028 |
+
/*! no static exports found */
|
| 4029 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4030 |
+
|
| 4031 |
+
// 7.1.13 ToObject(argument)
|
| 4032 |
+
var defined = __webpack_require__(/*! ./_defined */ "./node_modules/core-js/modules/_defined.js");
|
| 4033 |
+
module.exports = function (it) {
|
| 4034 |
+
return Object(defined(it));
|
| 4035 |
+
};
|
| 4036 |
+
|
| 4037 |
+
|
| 4038 |
+
/***/ }),
|
| 4039 |
+
|
| 4040 |
+
/***/ "./node_modules/core-js/modules/_to-primitive.js":
|
| 4041 |
+
/*!*******************************************************!*\
|
| 4042 |
+
!*** ./node_modules/core-js/modules/_to-primitive.js ***!
|
| 4043 |
+
\*******************************************************/
|
| 4044 |
+
/*! no static exports found */
|
| 4045 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4046 |
+
|
| 4047 |
+
// 7.1.1 ToPrimitive(input [, PreferredType])
|
| 4048 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 4049 |
+
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
|
| 4050 |
+
// and the second argument - flag - preferred type is a string
|
| 4051 |
+
module.exports = function (it, S) {
|
| 4052 |
+
if (!isObject(it)) return it;
|
| 4053 |
+
var fn, val;
|
| 4054 |
+
if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
|
| 4055 |
+
if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
|
| 4056 |
+
if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
|
| 4057 |
+
throw TypeError("Can't convert object to primitive value");
|
| 4058 |
+
};
|
| 4059 |
+
|
| 4060 |
+
|
| 4061 |
+
/***/ }),
|
| 4062 |
+
|
| 4063 |
+
/***/ "./node_modules/core-js/modules/_typed-array.js":
|
| 4064 |
+
/*!******************************************************!*\
|
| 4065 |
+
!*** ./node_modules/core-js/modules/_typed-array.js ***!
|
| 4066 |
+
\******************************************************/
|
| 4067 |
+
/*! no static exports found */
|
| 4068 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4069 |
+
|
| 4070 |
+
"use strict";
|
| 4071 |
+
|
| 4072 |
+
if (__webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js")) {
|
| 4073 |
+
var LIBRARY = __webpack_require__(/*! ./_library */ "./node_modules/core-js/modules/_library.js");
|
| 4074 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 4075 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 4076 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 4077 |
+
var $typed = __webpack_require__(/*! ./_typed */ "./node_modules/core-js/modules/_typed.js");
|
| 4078 |
+
var $buffer = __webpack_require__(/*! ./_typed-buffer */ "./node_modules/core-js/modules/_typed-buffer.js");
|
| 4079 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 4080 |
+
var anInstance = __webpack_require__(/*! ./_an-instance */ "./node_modules/core-js/modules/_an-instance.js");
|
| 4081 |
+
var propertyDesc = __webpack_require__(/*! ./_property-desc */ "./node_modules/core-js/modules/_property-desc.js");
|
| 4082 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js");
|
| 4083 |
+
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "./node_modules/core-js/modules/_redefine-all.js");
|
| 4084 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 4085 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 4086 |
+
var toIndex = __webpack_require__(/*! ./_to-index */ "./node_modules/core-js/modules/_to-index.js");
|
| 4087 |
+
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "./node_modules/core-js/modules/_to-absolute-index.js");
|
| 4088 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/modules/_to-primitive.js");
|
| 4089 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 4090 |
+
var classof = __webpack_require__(/*! ./_classof */ "./node_modules/core-js/modules/_classof.js");
|
| 4091 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 4092 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 4093 |
+
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "./node_modules/core-js/modules/_is-array-iter.js");
|
| 4094 |
+
var create = __webpack_require__(/*! ./_object-create */ "./node_modules/core-js/modules/_object-create.js");
|
| 4095 |
+
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "./node_modules/core-js/modules/_object-gpo.js");
|
| 4096 |
+
var gOPN = __webpack_require__(/*! ./_object-gopn */ "./node_modules/core-js/modules/_object-gopn.js").f;
|
| 4097 |
+
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "./node_modules/core-js/modules/core.get-iterator-method.js");
|
| 4098 |
+
var uid = __webpack_require__(/*! ./_uid */ "./node_modules/core-js/modules/_uid.js");
|
| 4099 |
+
var wks = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js");
|
| 4100 |
+
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js");
|
| 4101 |
+
var createArrayIncludes = __webpack_require__(/*! ./_array-includes */ "./node_modules/core-js/modules/_array-includes.js");
|
| 4102 |
+
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "./node_modules/core-js/modules/_species-constructor.js");
|
| 4103 |
+
var ArrayIterators = __webpack_require__(/*! ./es6.array.iterator */ "./node_modules/core-js/modules/es6.array.iterator.js");
|
| 4104 |
+
var Iterators = __webpack_require__(/*! ./_iterators */ "./node_modules/core-js/modules/_iterators.js");
|
| 4105 |
+
var $iterDetect = __webpack_require__(/*! ./_iter-detect */ "./node_modules/core-js/modules/_iter-detect.js");
|
| 4106 |
+
var setSpecies = __webpack_require__(/*! ./_set-species */ "./node_modules/core-js/modules/_set-species.js");
|
| 4107 |
+
var arrayFill = __webpack_require__(/*! ./_array-fill */ "./node_modules/core-js/modules/_array-fill.js");
|
| 4108 |
+
var arrayCopyWithin = __webpack_require__(/*! ./_array-copy-within */ "./node_modules/core-js/modules/_array-copy-within.js");
|
| 4109 |
+
var $DP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js");
|
| 4110 |
+
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js");
|
| 4111 |
+
var dP = $DP.f;
|
| 4112 |
+
var gOPD = $GOPD.f;
|
| 4113 |
+
var RangeError = global.RangeError;
|
| 4114 |
+
var TypeError = global.TypeError;
|
| 4115 |
+
var Uint8Array = global.Uint8Array;
|
| 4116 |
+
var ARRAY_BUFFER = 'ArrayBuffer';
|
| 4117 |
+
var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;
|
| 4118 |
+
var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
|
| 4119 |
+
var PROTOTYPE = 'prototype';
|
| 4120 |
+
var ArrayProto = Array[PROTOTYPE];
|
| 4121 |
+
var $ArrayBuffer = $buffer.ArrayBuffer;
|
| 4122 |
+
var $DataView = $buffer.DataView;
|
| 4123 |
+
var arrayForEach = createArrayMethod(0);
|
| 4124 |
+
var arrayFilter = createArrayMethod(2);
|
| 4125 |
+
var arraySome = createArrayMethod(3);
|
| 4126 |
+
var arrayEvery = createArrayMethod(4);
|
| 4127 |
+
var arrayFind = createArrayMethod(5);
|
| 4128 |
+
var arrayFindIndex = createArrayMethod(6);
|
| 4129 |
+
var arrayIncludes = createArrayIncludes(true);
|
| 4130 |
+
var arrayIndexOf = createArrayIncludes(false);
|
| 4131 |
+
var arrayValues = ArrayIterators.values;
|
| 4132 |
+
var arrayKeys = ArrayIterators.keys;
|
| 4133 |
+
var arrayEntries = ArrayIterators.entries;
|
| 4134 |
+
var arrayLastIndexOf = ArrayProto.lastIndexOf;
|
| 4135 |
+
var arrayReduce = ArrayProto.reduce;
|
| 4136 |
+
var arrayReduceRight = ArrayProto.reduceRight;
|
| 4137 |
+
var arrayJoin = ArrayProto.join;
|
| 4138 |
+
var arraySort = ArrayProto.sort;
|
| 4139 |
+
var arraySlice = ArrayProto.slice;
|
| 4140 |
+
var arrayToString = ArrayProto.toString;
|
| 4141 |
+
var arrayToLocaleString = ArrayProto.toLocaleString;
|
| 4142 |
+
var ITERATOR = wks('iterator');
|
| 4143 |
+
var TAG = wks('toStringTag');
|
| 4144 |
+
var TYPED_CONSTRUCTOR = uid('typed_constructor');
|
| 4145 |
+
var DEF_CONSTRUCTOR = uid('def_constructor');
|
| 4146 |
+
var ALL_CONSTRUCTORS = $typed.CONSTR;
|
| 4147 |
+
var TYPED_ARRAY = $typed.TYPED;
|
| 4148 |
+
var VIEW = $typed.VIEW;
|
| 4149 |
+
var WRONG_LENGTH = 'Wrong length!';
|
| 4150 |
+
|
| 4151 |
+
var $map = createArrayMethod(1, function (O, length) {
|
| 4152 |
+
return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
|
| 4153 |
+
});
|
| 4154 |
+
|
| 4155 |
+
var LITTLE_ENDIAN = fails(function () {
|
| 4156 |
+
// eslint-disable-next-line no-undef
|
| 4157 |
+
return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
|
| 4158 |
+
});
|
| 4159 |
+
|
| 4160 |
+
var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {
|
| 4161 |
+
new Uint8Array(1).set({});
|
| 4162 |
+
});
|
| 4163 |
+
|
| 4164 |
+
var toOffset = function (it, BYTES) {
|
| 4165 |
+
var offset = toInteger(it);
|
| 4166 |
+
if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');
|
| 4167 |
+
return offset;
|
| 4168 |
+
};
|
| 4169 |
+
|
| 4170 |
+
var validate = function (it) {
|
| 4171 |
+
if (isObject(it) && TYPED_ARRAY in it) return it;
|
| 4172 |
+
throw TypeError(it + ' is not a typed array!');
|
| 4173 |
+
};
|
| 4174 |
+
|
| 4175 |
+
var allocate = function (C, length) {
|
| 4176 |
+
if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {
|
| 4177 |
+
throw TypeError('It is not a typed array constructor!');
|
| 4178 |
+
} return new C(length);
|
| 4179 |
+
};
|
| 4180 |
+
|
| 4181 |
+
var speciesFromList = function (O, list) {
|
| 4182 |
+
return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);
|
| 4183 |
+
};
|
| 4184 |
+
|
| 4185 |
+
var fromList = function (C, list) {
|
| 4186 |
+
var index = 0;
|
| 4187 |
+
var length = list.length;
|
| 4188 |
+
var result = allocate(C, length);
|
| 4189 |
+
while (length > index) result[index] = list[index++];
|
| 4190 |
+
return result;
|
| 4191 |
+
};
|
| 4192 |
+
|
| 4193 |
+
var addGetter = function (it, key, internal) {
|
| 4194 |
+
dP(it, key, { get: function () { return this._d[internal]; } });
|
| 4195 |
+
};
|
| 4196 |
+
|
| 4197 |
+
var $from = function from(source /* , mapfn, thisArg */) {
|
| 4198 |
+
var O = toObject(source);
|
| 4199 |
+
var aLen = arguments.length;
|
| 4200 |
+
var mapfn = aLen > 1 ? arguments[1] : undefined;
|
| 4201 |
+
var mapping = mapfn !== undefined;
|
| 4202 |
+
var iterFn = getIterFn(O);
|
| 4203 |
+
var i, length, values, result, step, iterator;
|
| 4204 |
+
if (iterFn != undefined && !isArrayIter(iterFn)) {
|
| 4205 |
+
for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {
|
| 4206 |
+
values.push(step.value);
|
| 4207 |
+
} O = values;
|
| 4208 |
+
}
|
| 4209 |
+
if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);
|
| 4210 |
+
for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {
|
| 4211 |
+
result[i] = mapping ? mapfn(O[i], i) : O[i];
|
| 4212 |
+
}
|
| 4213 |
+
return result;
|
| 4214 |
+
};
|
| 4215 |
+
|
| 4216 |
+
var $of = function of(/* ...items */) {
|
| 4217 |
+
var index = 0;
|
| 4218 |
+
var length = arguments.length;
|
| 4219 |
+
var result = allocate(this, length);
|
| 4220 |
+
while (length > index) result[index] = arguments[index++];
|
| 4221 |
+
return result;
|
| 4222 |
+
};
|
| 4223 |
+
|
| 4224 |
+
// iOS Safari 6.x fails here
|
| 4225 |
+
var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });
|
| 4226 |
+
|
| 4227 |
+
var $toLocaleString = function toLocaleString() {
|
| 4228 |
+
return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);
|
| 4229 |
+
};
|
| 4230 |
+
|
| 4231 |
+
var proto = {
|
| 4232 |
+
copyWithin: function copyWithin(target, start /* , end */) {
|
| 4233 |
+
return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
|
| 4234 |
+
},
|
| 4235 |
+
every: function every(callbackfn /* , thisArg */) {
|
| 4236 |
+
return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
| 4237 |
+
},
|
| 4238 |
+
fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars
|
| 4239 |
+
return arrayFill.apply(validate(this), arguments);
|
| 4240 |
+
},
|
| 4241 |
+
filter: function filter(callbackfn /* , thisArg */) {
|
| 4242 |
+
return speciesFromList(this, arrayFilter(validate(this), callbackfn,
|
| 4243 |
+
arguments.length > 1 ? arguments[1] : undefined));
|
| 4244 |
+
},
|
| 4245 |
+
find: function find(predicate /* , thisArg */) {
|
| 4246 |
+
return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
| 4247 |
+
},
|
| 4248 |
+
findIndex: function findIndex(predicate /* , thisArg */) {
|
| 4249 |
+
return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
| 4250 |
+
},
|
| 4251 |
+
forEach: function forEach(callbackfn /* , thisArg */) {
|
| 4252 |
+
arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
| 4253 |
+
},
|
| 4254 |
+
indexOf: function indexOf(searchElement /* , fromIndex */) {
|
| 4255 |
+
return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
|
| 4256 |
+
},
|
| 4257 |
+
includes: function includes(searchElement /* , fromIndex */) {
|
| 4258 |
+
return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
|
| 4259 |
+
},
|
| 4260 |
+
join: function join(separator) { // eslint-disable-line no-unused-vars
|
| 4261 |
+
return arrayJoin.apply(validate(this), arguments);
|
| 4262 |
+
},
|
| 4263 |
+
lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars
|
| 4264 |
+
return arrayLastIndexOf.apply(validate(this), arguments);
|
| 4265 |
+
},
|
| 4266 |
+
map: function map(mapfn /* , thisArg */) {
|
| 4267 |
+
return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);
|
| 4268 |
+
},
|
| 4269 |
+
reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars
|
| 4270 |
+
return arrayReduce.apply(validate(this), arguments);
|
| 4271 |
+
},
|
| 4272 |
+
reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars
|
| 4273 |
+
return arrayReduceRight.apply(validate(this), arguments);
|
| 4274 |
+
},
|
| 4275 |
+
reverse: function reverse() {
|
| 4276 |
+
var that = this;
|
| 4277 |
+
var length = validate(that).length;
|
| 4278 |
+
var middle = Math.floor(length / 2);
|
| 4279 |
+
var index = 0;
|
| 4280 |
+
var value;
|
| 4281 |
+
while (index < middle) {
|
| 4282 |
+
value = that[index];
|
| 4283 |
+
that[index++] = that[--length];
|
| 4284 |
+
that[length] = value;
|
| 4285 |
+
} return that;
|
| 4286 |
+
},
|
| 4287 |
+
some: function some(callbackfn /* , thisArg */) {
|
| 4288 |
+
return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
| 4289 |
+
},
|
| 4290 |
+
sort: function sort(comparefn) {
|
| 4291 |
+
return arraySort.call(validate(this), comparefn);
|
| 4292 |
+
},
|
| 4293 |
+
subarray: function subarray(begin, end) {
|
| 4294 |
+
var O = validate(this);
|
| 4295 |
+
var length = O.length;
|
| 4296 |
+
var $begin = toAbsoluteIndex(begin, length);
|
| 4297 |
+
return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
|
| 4298 |
+
O.buffer,
|
| 4299 |
+
O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
|
| 4300 |
+
toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)
|
| 4301 |
+
);
|
| 4302 |
+
}
|
| 4303 |
+
};
|
| 4304 |
+
|
| 4305 |
+
var $slice = function slice(start, end) {
|
| 4306 |
+
return speciesFromList(this, arraySlice.call(validate(this), start, end));
|
| 4307 |
+
};
|
| 4308 |
+
|
| 4309 |
+
var $set = function set(arrayLike /* , offset */) {
|
| 4310 |
+
validate(this);
|
| 4311 |
+
var offset = toOffset(arguments[1], 1);
|
| 4312 |
+
var length = this.length;
|
| 4313 |
+
var src = toObject(arrayLike);
|
| 4314 |
+
var len = toLength(src.length);
|
| 4315 |
+
var index = 0;
|
| 4316 |
+
if (len + offset > length) throw RangeError(WRONG_LENGTH);
|
| 4317 |
+
while (index < len) this[offset + index] = src[index++];
|
| 4318 |
+
};
|
| 4319 |
+
|
| 4320 |
+
var $iterators = {
|
| 4321 |
+
entries: function entries() {
|
| 4322 |
+
return arrayEntries.call(validate(this));
|
| 4323 |
+
},
|
| 4324 |
+
keys: function keys() {
|
| 4325 |
+
return arrayKeys.call(validate(this));
|
| 4326 |
+
},
|
| 4327 |
+
values: function values() {
|
| 4328 |
+
return arrayValues.call(validate(this));
|
| 4329 |
+
}
|
| 4330 |
+
};
|
| 4331 |
+
|
| 4332 |
+
var isTAIndex = function (target, key) {
|
| 4333 |
+
return isObject(target)
|
| 4334 |
+
&& target[TYPED_ARRAY]
|
| 4335 |
+
&& typeof key != 'symbol'
|
| 4336 |
+
&& key in target
|
| 4337 |
+
&& String(+key) == String(key);
|
| 4338 |
+
};
|
| 4339 |
+
var $getDesc = function getOwnPropertyDescriptor(target, key) {
|
| 4340 |
+
return isTAIndex(target, key = toPrimitive(key, true))
|
| 4341 |
+
? propertyDesc(2, target[key])
|
| 4342 |
+
: gOPD(target, key);
|
| 4343 |
+
};
|
| 4344 |
+
var $setDesc = function defineProperty(target, key, desc) {
|
| 4345 |
+
if (isTAIndex(target, key = toPrimitive(key, true))
|
| 4346 |
+
&& isObject(desc)
|
| 4347 |
+
&& has(desc, 'value')
|
| 4348 |
+
&& !has(desc, 'get')
|
| 4349 |
+
&& !has(desc, 'set')
|
| 4350 |
+
// TODO: add validation descriptor w/o calling accessors
|
| 4351 |
+
&& !desc.configurable
|
| 4352 |
+
&& (!has(desc, 'writable') || desc.writable)
|
| 4353 |
+
&& (!has(desc, 'enumerable') || desc.enumerable)
|
| 4354 |
+
) {
|
| 4355 |
+
target[key] = desc.value;
|
| 4356 |
+
return target;
|
| 4357 |
+
} return dP(target, key, desc);
|
| 4358 |
+
};
|
| 4359 |
+
|
| 4360 |
+
if (!ALL_CONSTRUCTORS) {
|
| 4361 |
+
$GOPD.f = $getDesc;
|
| 4362 |
+
$DP.f = $setDesc;
|
| 4363 |
+
}
|
| 4364 |
+
|
| 4365 |
+
$export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {
|
| 4366 |
+
getOwnPropertyDescriptor: $getDesc,
|
| 4367 |
+
defineProperty: $setDesc
|
| 4368 |
+
});
|
| 4369 |
+
|
| 4370 |
+
if (fails(function () { arrayToString.call({}); })) {
|
| 4371 |
+
arrayToString = arrayToLocaleString = function toString() {
|
| 4372 |
+
return arrayJoin.call(this);
|
| 4373 |
+
};
|
| 4374 |
+
}
|
| 4375 |
+
|
| 4376 |
+
var $TypedArrayPrototype$ = redefineAll({}, proto);
|
| 4377 |
+
redefineAll($TypedArrayPrototype$, $iterators);
|
| 4378 |
+
hide($TypedArrayPrototype$, ITERATOR, $iterators.values);
|
| 4379 |
+
redefineAll($TypedArrayPrototype$, {
|
| 4380 |
+
slice: $slice,
|
| 4381 |
+
set: $set,
|
| 4382 |
+
constructor: function () { /* noop */ },
|
| 4383 |
+
toString: arrayToString,
|
| 4384 |
+
toLocaleString: $toLocaleString
|
| 4385 |
+
});
|
| 4386 |
+
addGetter($TypedArrayPrototype$, 'buffer', 'b');
|
| 4387 |
+
addGetter($TypedArrayPrototype$, 'byteOffset', 'o');
|
| 4388 |
+
addGetter($TypedArrayPrototype$, 'byteLength', 'l');
|
| 4389 |
+
addGetter($TypedArrayPrototype$, 'length', 'e');
|
| 4390 |
+
dP($TypedArrayPrototype$, TAG, {
|
| 4391 |
+
get: function () { return this[TYPED_ARRAY]; }
|
| 4392 |
+
});
|
| 4393 |
+
|
| 4394 |
+
// eslint-disable-next-line max-statements
|
| 4395 |
+
module.exports = function (KEY, BYTES, wrapper, CLAMPED) {
|
| 4396 |
+
CLAMPED = !!CLAMPED;
|
| 4397 |
+
var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';
|
| 4398 |
+
var GETTER = 'get' + KEY;
|
| 4399 |
+
var SETTER = 'set' + KEY;
|
| 4400 |
+
var TypedArray = global[NAME];
|
| 4401 |
+
var Base = TypedArray || {};
|
| 4402 |
+
var TAC = TypedArray && getPrototypeOf(TypedArray);
|
| 4403 |
+
var FORCED = !TypedArray || !$typed.ABV;
|
| 4404 |
+
var O = {};
|
| 4405 |
+
var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];
|
| 4406 |
+
var getter = function (that, index) {
|
| 4407 |
+
var data = that._d;
|
| 4408 |
+
return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
|
| 4409 |
+
};
|
| 4410 |
+
var setter = function (that, index, value) {
|
| 4411 |
+
var data = that._d;
|
| 4412 |
+
if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;
|
| 4413 |
+
data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);
|
| 4414 |
+
};
|
| 4415 |
+
var addElement = function (that, index) {
|
| 4416 |
+
dP(that, index, {
|
| 4417 |
+
get: function () {
|
| 4418 |
+
return getter(this, index);
|
| 4419 |
+
},
|
| 4420 |
+
set: function (value) {
|
| 4421 |
+
return setter(this, index, value);
|
| 4422 |
+
},
|
| 4423 |
+
enumerable: true
|
| 4424 |
+
});
|
| 4425 |
+
};
|
| 4426 |
+
if (FORCED) {
|
| 4427 |
+
TypedArray = wrapper(function (that, data, $offset, $length) {
|
| 4428 |
+
anInstance(that, TypedArray, NAME, '_d');
|
| 4429 |
+
var index = 0;
|
| 4430 |
+
var offset = 0;
|
| 4431 |
+
var buffer, byteLength, length, klass;
|
| 4432 |
+
if (!isObject(data)) {
|
| 4433 |
+
length = toIndex(data);
|
| 4434 |
+
byteLength = length * BYTES;
|
| 4435 |
+
buffer = new $ArrayBuffer(byteLength);
|
| 4436 |
+
} else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {
|
| 4437 |
+
buffer = data;
|
| 4438 |
+
offset = toOffset($offset, BYTES);
|
| 4439 |
+
var $len = data.byteLength;
|
| 4440 |
+
if ($length === undefined) {
|
| 4441 |
+
if ($len % BYTES) throw RangeError(WRONG_LENGTH);
|
| 4442 |
+
byteLength = $len - offset;
|
| 4443 |
+
if (byteLength < 0) throw RangeError(WRONG_LENGTH);
|
| 4444 |
+
} else {
|
| 4445 |
+
byteLength = toLength($length) * BYTES;
|
| 4446 |
+
if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);
|
| 4447 |
+
}
|
| 4448 |
+
length = byteLength / BYTES;
|
| 4449 |
+
} else if (TYPED_ARRAY in data) {
|
| 4450 |
+
return fromList(TypedArray, data);
|
| 4451 |
+
} else {
|
| 4452 |
+
return $from.call(TypedArray, data);
|
| 4453 |
+
}
|
| 4454 |
+
hide(that, '_d', {
|
| 4455 |
+
b: buffer,
|
| 4456 |
+
o: offset,
|
| 4457 |
+
l: byteLength,
|
| 4458 |
+
e: length,
|
| 4459 |
+
v: new $DataView(buffer)
|
| 4460 |
+
});
|
| 4461 |
+
while (index < length) addElement(that, index++);
|
| 4462 |
+
});
|
| 4463 |
+
TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);
|
| 4464 |
+
hide(TypedArrayPrototype, 'constructor', TypedArray);
|
| 4465 |
+
} else if (!fails(function () {
|
| 4466 |
+
TypedArray(1);
|
| 4467 |
+
}) || !fails(function () {
|
| 4468 |
+
new TypedArray(-1); // eslint-disable-line no-new
|
| 4469 |
+
}) || !$iterDetect(function (iter) {
|
| 4470 |
+
new TypedArray(); // eslint-disable-line no-new
|
| 4471 |
+
new TypedArray(null); // eslint-disable-line no-new
|
| 4472 |
+
new TypedArray(1.5); // eslint-disable-line no-new
|
| 4473 |
+
new TypedArray(iter); // eslint-disable-line no-new
|
| 4474 |
+
}, true)) {
|
| 4475 |
+
TypedArray = wrapper(function (that, data, $offset, $length) {
|
| 4476 |
+
anInstance(that, TypedArray, NAME);
|
| 4477 |
+
var klass;
|
| 4478 |
+
// `ws` module bug, temporarily remove validation length for Uint8Array
|
| 4479 |
+
// https://github.com/websockets/ws/pull/645
|
| 4480 |
+
if (!isObject(data)) return new Base(toIndex(data));
|
| 4481 |
+
if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {
|
| 4482 |
+
return $length !== undefined
|
| 4483 |
+
? new Base(data, toOffset($offset, BYTES), $length)
|
| 4484 |
+
: $offset !== undefined
|
| 4485 |
+
? new Base(data, toOffset($offset, BYTES))
|
| 4486 |
+
: new Base(data);
|
| 4487 |
+
}
|
| 4488 |
+
if (TYPED_ARRAY in data) return fromList(TypedArray, data);
|
| 4489 |
+
return $from.call(TypedArray, data);
|
| 4490 |
+
});
|
| 4491 |
+
arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {
|
| 4492 |
+
if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);
|
| 4493 |
+
});
|
| 4494 |
+
TypedArray[PROTOTYPE] = TypedArrayPrototype;
|
| 4495 |
+
if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;
|
| 4496 |
+
}
|
| 4497 |
+
var $nativeIterator = TypedArrayPrototype[ITERATOR];
|
| 4498 |
+
var CORRECT_ITER_NAME = !!$nativeIterator
|
| 4499 |
+
&& ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);
|
| 4500 |
+
var $iterator = $iterators.values;
|
| 4501 |
+
hide(TypedArray, TYPED_CONSTRUCTOR, true);
|
| 4502 |
+
hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
|
| 4503 |
+
hide(TypedArrayPrototype, VIEW, true);
|
| 4504 |
+
hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
|
| 4505 |
+
|
| 4506 |
+
if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {
|
| 4507 |
+
dP(TypedArrayPrototype, TAG, {
|
| 4508 |
+
get: function () { return NAME; }
|
| 4509 |
+
});
|
| 4510 |
+
}
|
| 4511 |
+
|
| 4512 |
+
O[NAME] = TypedArray;
|
| 4513 |
+
|
| 4514 |
+
$export($export.G + $export.W + $export.F * (TypedArray != Base), O);
|
| 4515 |
+
|
| 4516 |
+
$export($export.S, NAME, {
|
| 4517 |
+
BYTES_PER_ELEMENT: BYTES
|
| 4518 |
+
});
|
| 4519 |
+
|
| 4520 |
+
$export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {
|
| 4521 |
+
from: $from,
|
| 4522 |
+
of: $of
|
| 4523 |
+
});
|
| 4524 |
+
|
| 4525 |
+
if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);
|
| 4526 |
+
|
| 4527 |
+
$export($export.P, NAME, proto);
|
| 4528 |
+
|
| 4529 |
+
setSpecies(NAME);
|
| 4530 |
+
|
| 4531 |
+
$export($export.P + $export.F * FORCED_SET, NAME, { set: $set });
|
| 4532 |
+
|
| 4533 |
+
$export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);
|
| 4534 |
+
|
| 4535 |
+
if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;
|
| 4536 |
+
|
| 4537 |
+
$export($export.P + $export.F * fails(function () {
|
| 4538 |
+
new TypedArray(1).slice();
|
| 4539 |
+
}), NAME, { slice: $slice });
|
| 4540 |
+
|
| 4541 |
+
$export($export.P + $export.F * (fails(function () {
|
| 4542 |
+
return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();
|
| 4543 |
+
}) || !fails(function () {
|
| 4544 |
+
TypedArrayPrototype.toLocaleString.call([1, 2]);
|
| 4545 |
+
})), NAME, { toLocaleString: $toLocaleString });
|
| 4546 |
+
|
| 4547 |
+
Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;
|
| 4548 |
+
if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);
|
| 4549 |
+
};
|
| 4550 |
+
} else module.exports = function () { /* empty */ };
|
| 4551 |
+
|
| 4552 |
+
|
| 4553 |
+
/***/ }),
|
| 4554 |
+
|
| 4555 |
+
/***/ "./node_modules/core-js/modules/_typed-buffer.js":
|
| 4556 |
+
/*!*******************************************************!*\
|
| 4557 |
+
!*** ./node_modules/core-js/modules/_typed-buffer.js ***!
|
| 4558 |
+
\*******************************************************/
|
| 4559 |
+
/*! no static exports found */
|
| 4560 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4561 |
+
|
| 4562 |
+
"use strict";
|
| 4563 |
+
|
| 4564 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 4565 |
+
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js");
|
| 4566 |
+
var LIBRARY = __webpack_require__(/*! ./_library */ "./node_modules/core-js/modules/_library.js");
|
| 4567 |
+
var $typed = __webpack_require__(/*! ./_typed */ "./node_modules/core-js/modules/_typed.js");
|
| 4568 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js");
|
| 4569 |
+
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "./node_modules/core-js/modules/_redefine-all.js");
|
| 4570 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 4571 |
+
var anInstance = __webpack_require__(/*! ./_an-instance */ "./node_modules/core-js/modules/_an-instance.js");
|
| 4572 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 4573 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 4574 |
+
var toIndex = __webpack_require__(/*! ./_to-index */ "./node_modules/core-js/modules/_to-index.js");
|
| 4575 |
+
var gOPN = __webpack_require__(/*! ./_object-gopn */ "./node_modules/core-js/modules/_object-gopn.js").f;
|
| 4576 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f;
|
| 4577 |
+
var arrayFill = __webpack_require__(/*! ./_array-fill */ "./node_modules/core-js/modules/_array-fill.js");
|
| 4578 |
+
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "./node_modules/core-js/modules/_set-to-string-tag.js");
|
| 4579 |
+
var ARRAY_BUFFER = 'ArrayBuffer';
|
| 4580 |
+
var DATA_VIEW = 'DataView';
|
| 4581 |
+
var PROTOTYPE = 'prototype';
|
| 4582 |
+
var WRONG_LENGTH = 'Wrong length!';
|
| 4583 |
+
var WRONG_INDEX = 'Wrong index!';
|
| 4584 |
+
var $ArrayBuffer = global[ARRAY_BUFFER];
|
| 4585 |
+
var $DataView = global[DATA_VIEW];
|
| 4586 |
+
var Math = global.Math;
|
| 4587 |
+
var RangeError = global.RangeError;
|
| 4588 |
+
// eslint-disable-next-line no-shadow-restricted-names
|
| 4589 |
+
var Infinity = global.Infinity;
|
| 4590 |
+
var BaseBuffer = $ArrayBuffer;
|
| 4591 |
+
var abs = Math.abs;
|
| 4592 |
+
var pow = Math.pow;
|
| 4593 |
+
var floor = Math.floor;
|
| 4594 |
+
var log = Math.log;
|
| 4595 |
+
var LN2 = Math.LN2;
|
| 4596 |
+
var BUFFER = 'buffer';
|
| 4597 |
+
var BYTE_LENGTH = 'byteLength';
|
| 4598 |
+
var BYTE_OFFSET = 'byteOffset';
|
| 4599 |
+
var $BUFFER = DESCRIPTORS ? '_b' : BUFFER;
|
| 4600 |
+
var $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH;
|
| 4601 |
+
var $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;
|
| 4602 |
+
|
| 4603 |
+
// IEEE754 conversions based on https://github.com/feross/ieee754
|
| 4604 |
+
function packIEEE754(value, mLen, nBytes) {
|
| 4605 |
+
var buffer = new Array(nBytes);
|
| 4606 |
+
var eLen = nBytes * 8 - mLen - 1;
|
| 4607 |
+
var eMax = (1 << eLen) - 1;
|
| 4608 |
+
var eBias = eMax >> 1;
|
| 4609 |
+
var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0;
|
| 4610 |
+
var i = 0;
|
| 4611 |
+
var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;
|
| 4612 |
+
var e, m, c;
|
| 4613 |
+
value = abs(value);
|
| 4614 |
+
// eslint-disable-next-line no-self-compare
|
| 4615 |
+
if (value != value || value === Infinity) {
|
| 4616 |
+
// eslint-disable-next-line no-self-compare
|
| 4617 |
+
m = value != value ? 1 : 0;
|
| 4618 |
+
e = eMax;
|
| 4619 |
+
} else {
|
| 4620 |
+
e = floor(log(value) / LN2);
|
| 4621 |
+
if (value * (c = pow(2, -e)) < 1) {
|
| 4622 |
+
e--;
|
| 4623 |
+
c *= 2;
|
| 4624 |
+
}
|
| 4625 |
+
if (e + eBias >= 1) {
|
| 4626 |
+
value += rt / c;
|
| 4627 |
+
} else {
|
| 4628 |
+
value += rt * pow(2, 1 - eBias);
|
| 4629 |
+
}
|
| 4630 |
+
if (value * c >= 2) {
|
| 4631 |
+
e++;
|
| 4632 |
+
c /= 2;
|
| 4633 |
+
}
|
| 4634 |
+
if (e + eBias >= eMax) {
|
| 4635 |
+
m = 0;
|
| 4636 |
+
e = eMax;
|
| 4637 |
+
} else if (e + eBias >= 1) {
|
| 4638 |
+
m = (value * c - 1) * pow(2, mLen);
|
| 4639 |
+
e = e + eBias;
|
| 4640 |
+
} else {
|
| 4641 |
+
m = value * pow(2, eBias - 1) * pow(2, mLen);
|
| 4642 |
+
e = 0;
|
| 4643 |
+
}
|
| 4644 |
+
}
|
| 4645 |
+
for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);
|
| 4646 |
+
e = e << mLen | m;
|
| 4647 |
+
eLen += mLen;
|
| 4648 |
+
for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);
|
| 4649 |
+
buffer[--i] |= s * 128;
|
| 4650 |
+
return buffer;
|
| 4651 |
+
}
|
| 4652 |
+
function unpackIEEE754(buffer, mLen, nBytes) {
|
| 4653 |
+
var eLen = nBytes * 8 - mLen - 1;
|
| 4654 |
+
var eMax = (1 << eLen) - 1;
|
| 4655 |
+
var eBias = eMax >> 1;
|
| 4656 |
+
var nBits = eLen - 7;
|
| 4657 |
+
var i = nBytes - 1;
|
| 4658 |
+
var s = buffer[i--];
|
| 4659 |
+
var e = s & 127;
|
| 4660 |
+
var m;
|
| 4661 |
+
s >>= 7;
|
| 4662 |
+
for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);
|
| 4663 |
+
m = e & (1 << -nBits) - 1;
|
| 4664 |
+
e >>= -nBits;
|
| 4665 |
+
nBits += mLen;
|
| 4666 |
+
for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);
|
| 4667 |
+
if (e === 0) {
|
| 4668 |
+
e = 1 - eBias;
|
| 4669 |
+
} else if (e === eMax) {
|
| 4670 |
+
return m ? NaN : s ? -Infinity : Infinity;
|
| 4671 |
+
} else {
|
| 4672 |
+
m = m + pow(2, mLen);
|
| 4673 |
+
e = e - eBias;
|
| 4674 |
+
} return (s ? -1 : 1) * m * pow(2, e - mLen);
|
| 4675 |
+
}
|
| 4676 |
+
|
| 4677 |
+
function unpackI32(bytes) {
|
| 4678 |
+
return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];
|
| 4679 |
+
}
|
| 4680 |
+
function packI8(it) {
|
| 4681 |
+
return [it & 0xff];
|
| 4682 |
+
}
|
| 4683 |
+
function packI16(it) {
|
| 4684 |
+
return [it & 0xff, it >> 8 & 0xff];
|
| 4685 |
+
}
|
| 4686 |
+
function packI32(it) {
|
| 4687 |
+
return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];
|
| 4688 |
+
}
|
| 4689 |
+
function packF64(it) {
|
| 4690 |
+
return packIEEE754(it, 52, 8);
|
| 4691 |
+
}
|
| 4692 |
+
function packF32(it) {
|
| 4693 |
+
return packIEEE754(it, 23, 4);
|
| 4694 |
+
}
|
| 4695 |
+
|
| 4696 |
+
function addGetter(C, key, internal) {
|
| 4697 |
+
dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } });
|
| 4698 |
+
}
|
| 4699 |
+
|
| 4700 |
+
function get(view, bytes, index, isLittleEndian) {
|
| 4701 |
+
var numIndex = +index;
|
| 4702 |
+
var intIndex = toIndex(numIndex);
|
| 4703 |
+
if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);
|
| 4704 |
+
var store = view[$BUFFER]._b;
|
| 4705 |
+
var start = intIndex + view[$OFFSET];
|
| 4706 |
+
var pack = store.slice(start, start + bytes);
|
| 4707 |
+
return isLittleEndian ? pack : pack.reverse();
|
| 4708 |
+
}
|
| 4709 |
+
function set(view, bytes, index, conversion, value, isLittleEndian) {
|
| 4710 |
+
var numIndex = +index;
|
| 4711 |
+
var intIndex = toIndex(numIndex);
|
| 4712 |
+
if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);
|
| 4713 |
+
var store = view[$BUFFER]._b;
|
| 4714 |
+
var start = intIndex + view[$OFFSET];
|
| 4715 |
+
var pack = conversion(+value);
|
| 4716 |
+
for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];
|
| 4717 |
+
}
|
| 4718 |
+
|
| 4719 |
+
if (!$typed.ABV) {
|
| 4720 |
+
$ArrayBuffer = function ArrayBuffer(length) {
|
| 4721 |
+
anInstance(this, $ArrayBuffer, ARRAY_BUFFER);
|
| 4722 |
+
var byteLength = toIndex(length);
|
| 4723 |
+
this._b = arrayFill.call(new Array(byteLength), 0);
|
| 4724 |
+
this[$LENGTH] = byteLength;
|
| 4725 |
+
};
|
| 4726 |
+
|
| 4727 |
+
$DataView = function DataView(buffer, byteOffset, byteLength) {
|
| 4728 |
+
anInstance(this, $DataView, DATA_VIEW);
|
| 4729 |
+
anInstance(buffer, $ArrayBuffer, DATA_VIEW);
|
| 4730 |
+
var bufferLength = buffer[$LENGTH];
|
| 4731 |
+
var offset = toInteger(byteOffset);
|
| 4732 |
+
if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!');
|
| 4733 |
+
byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
|
| 4734 |
+
if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);
|
| 4735 |
+
this[$BUFFER] = buffer;
|
| 4736 |
+
this[$OFFSET] = offset;
|
| 4737 |
+
this[$LENGTH] = byteLength;
|
| 4738 |
+
};
|
| 4739 |
+
|
| 4740 |
+
if (DESCRIPTORS) {
|
| 4741 |
+
addGetter($ArrayBuffer, BYTE_LENGTH, '_l');
|
| 4742 |
+
addGetter($DataView, BUFFER, '_b');
|
| 4743 |
+
addGetter($DataView, BYTE_LENGTH, '_l');
|
| 4744 |
+
addGetter($DataView, BYTE_OFFSET, '_o');
|
| 4745 |
+
}
|
| 4746 |
+
|
| 4747 |
+
redefineAll($DataView[PROTOTYPE], {
|
| 4748 |
+
getInt8: function getInt8(byteOffset) {
|
| 4749 |
+
return get(this, 1, byteOffset)[0] << 24 >> 24;
|
| 4750 |
+
},
|
| 4751 |
+
getUint8: function getUint8(byteOffset) {
|
| 4752 |
+
return get(this, 1, byteOffset)[0];
|
| 4753 |
+
},
|
| 4754 |
+
getInt16: function getInt16(byteOffset /* , littleEndian */) {
|
| 4755 |
+
var bytes = get(this, 2, byteOffset, arguments[1]);
|
| 4756 |
+
return (bytes[1] << 8 | bytes[0]) << 16 >> 16;
|
| 4757 |
+
},
|
| 4758 |
+
getUint16: function getUint16(byteOffset /* , littleEndian */) {
|
| 4759 |
+
var bytes = get(this, 2, byteOffset, arguments[1]);
|
| 4760 |
+
return bytes[1] << 8 | bytes[0];
|
| 4761 |
+
},
|
| 4762 |
+
getInt32: function getInt32(byteOffset /* , littleEndian */) {
|
| 4763 |
+
return unpackI32(get(this, 4, byteOffset, arguments[1]));
|
| 4764 |
+
},
|
| 4765 |
+
getUint32: function getUint32(byteOffset /* , littleEndian */) {
|
| 4766 |
+
return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;
|
| 4767 |
+
},
|
| 4768 |
+
getFloat32: function getFloat32(byteOffset /* , littleEndian */) {
|
| 4769 |
+
return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);
|
| 4770 |
+
},
|
| 4771 |
+
getFloat64: function getFloat64(byteOffset /* , littleEndian */) {
|
| 4772 |
+
return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);
|
| 4773 |
+
},
|
| 4774 |
+
setInt8: function setInt8(byteOffset, value) {
|
| 4775 |
+
set(this, 1, byteOffset, packI8, value);
|
| 4776 |
+
},
|
| 4777 |
+
setUint8: function setUint8(byteOffset, value) {
|
| 4778 |
+
set(this, 1, byteOffset, packI8, value);
|
| 4779 |
+
},
|
| 4780 |
+
setInt16: function setInt16(byteOffset, value /* , littleEndian */) {
|
| 4781 |
+
set(this, 2, byteOffset, packI16, value, arguments[2]);
|
| 4782 |
+
},
|
| 4783 |
+
setUint16: function setUint16(byteOffset, value /* , littleEndian */) {
|
| 4784 |
+
set(this, 2, byteOffset, packI16, value, arguments[2]);
|
| 4785 |
+
},
|
| 4786 |
+
setInt32: function setInt32(byteOffset, value /* , littleEndian */) {
|
| 4787 |
+
set(this, 4, byteOffset, packI32, value, arguments[2]);
|
| 4788 |
+
},
|
| 4789 |
+
setUint32: function setUint32(byteOffset, value /* , littleEndian */) {
|
| 4790 |
+
set(this, 4, byteOffset, packI32, value, arguments[2]);
|
| 4791 |
+
},
|
| 4792 |
+
setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {
|
| 4793 |
+
set(this, 4, byteOffset, packF32, value, arguments[2]);
|
| 4794 |
+
},
|
| 4795 |
+
setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {
|
| 4796 |
+
set(this, 8, byteOffset, packF64, value, arguments[2]);
|
| 4797 |
+
}
|
| 4798 |
+
});
|
| 4799 |
+
} else {
|
| 4800 |
+
if (!fails(function () {
|
| 4801 |
+
$ArrayBuffer(1);
|
| 4802 |
+
}) || !fails(function () {
|
| 4803 |
+
new $ArrayBuffer(-1); // eslint-disable-line no-new
|
| 4804 |
+
}) || fails(function () {
|
| 4805 |
+
new $ArrayBuffer(); // eslint-disable-line no-new
|
| 4806 |
+
new $ArrayBuffer(1.5); // eslint-disable-line no-new
|
| 4807 |
+
new $ArrayBuffer(NaN); // eslint-disable-line no-new
|
| 4808 |
+
return $ArrayBuffer.name != ARRAY_BUFFER;
|
| 4809 |
+
})) {
|
| 4810 |
+
$ArrayBuffer = function ArrayBuffer(length) {
|
| 4811 |
+
anInstance(this, $ArrayBuffer);
|
| 4812 |
+
return new BaseBuffer(toIndex(length));
|
| 4813 |
+
};
|
| 4814 |
+
var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];
|
| 4815 |
+
for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) {
|
| 4816 |
+
if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]);
|
| 4817 |
+
}
|
| 4818 |
+
if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer;
|
| 4819 |
+
}
|
| 4820 |
+
// iOS Safari 7.x bug
|
| 4821 |
+
var view = new $DataView(new $ArrayBuffer(2));
|
| 4822 |
+
var $setInt8 = $DataView[PROTOTYPE].setInt8;
|
| 4823 |
+
view.setInt8(0, 2147483648);
|
| 4824 |
+
view.setInt8(1, 2147483649);
|
| 4825 |
+
if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], {
|
| 4826 |
+
setInt8: function setInt8(byteOffset, value) {
|
| 4827 |
+
$setInt8.call(this, byteOffset, value << 24 >> 24);
|
| 4828 |
+
},
|
| 4829 |
+
setUint8: function setUint8(byteOffset, value) {
|
| 4830 |
+
$setInt8.call(this, byteOffset, value << 24 >> 24);
|
| 4831 |
+
}
|
| 4832 |
+
}, true);
|
| 4833 |
+
}
|
| 4834 |
+
setToStringTag($ArrayBuffer, ARRAY_BUFFER);
|
| 4835 |
+
setToStringTag($DataView, DATA_VIEW);
|
| 4836 |
+
hide($DataView[PROTOTYPE], $typed.VIEW, true);
|
| 4837 |
+
exports[ARRAY_BUFFER] = $ArrayBuffer;
|
| 4838 |
+
exports[DATA_VIEW] = $DataView;
|
| 4839 |
+
|
| 4840 |
+
|
| 4841 |
+
/***/ }),
|
| 4842 |
+
|
| 4843 |
+
/***/ "./node_modules/core-js/modules/_typed.js":
|
| 4844 |
+
/*!************************************************!*\
|
| 4845 |
+
!*** ./node_modules/core-js/modules/_typed.js ***!
|
| 4846 |
+
\************************************************/
|
| 4847 |
+
/*! no static exports found */
|
| 4848 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4849 |
+
|
| 4850 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 4851 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js");
|
| 4852 |
+
var uid = __webpack_require__(/*! ./_uid */ "./node_modules/core-js/modules/_uid.js");
|
| 4853 |
+
var TYPED = uid('typed_array');
|
| 4854 |
+
var VIEW = uid('view');
|
| 4855 |
+
var ABV = !!(global.ArrayBuffer && global.DataView);
|
| 4856 |
+
var CONSTR = ABV;
|
| 4857 |
+
var i = 0;
|
| 4858 |
+
var l = 9;
|
| 4859 |
+
var Typed;
|
| 4860 |
+
|
| 4861 |
+
var TypedArrayConstructors = (
|
| 4862 |
+
'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'
|
| 4863 |
+
).split(',');
|
| 4864 |
+
|
| 4865 |
+
while (i < l) {
|
| 4866 |
+
if (Typed = global[TypedArrayConstructors[i++]]) {
|
| 4867 |
+
hide(Typed.prototype, TYPED, true);
|
| 4868 |
+
hide(Typed.prototype, VIEW, true);
|
| 4869 |
+
} else CONSTR = false;
|
| 4870 |
+
}
|
| 4871 |
+
|
| 4872 |
+
module.exports = {
|
| 4873 |
+
ABV: ABV,
|
| 4874 |
+
CONSTR: CONSTR,
|
| 4875 |
+
TYPED: TYPED,
|
| 4876 |
+
VIEW: VIEW
|
| 4877 |
+
};
|
| 4878 |
+
|
| 4879 |
+
|
| 4880 |
+
/***/ }),
|
| 4881 |
+
|
| 4882 |
+
/***/ "./node_modules/core-js/modules/_uid.js":
|
| 4883 |
+
/*!**********************************************!*\
|
| 4884 |
+
!*** ./node_modules/core-js/modules/_uid.js ***!
|
| 4885 |
+
\**********************************************/
|
| 4886 |
+
/*! no static exports found */
|
| 4887 |
+
/***/ (function(module, exports) {
|
| 4888 |
+
|
| 4889 |
+
var id = 0;
|
| 4890 |
+
var px = Math.random();
|
| 4891 |
+
module.exports = function (key) {
|
| 4892 |
+
return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
|
| 4893 |
+
};
|
| 4894 |
+
|
| 4895 |
+
|
| 4896 |
+
/***/ }),
|
| 4897 |
+
|
| 4898 |
+
/***/ "./node_modules/core-js/modules/_user-agent.js":
|
| 4899 |
+
/*!*****************************************************!*\
|
| 4900 |
+
!*** ./node_modules/core-js/modules/_user-agent.js ***!
|
| 4901 |
+
\*****************************************************/
|
| 4902 |
+
/*! no static exports found */
|
| 4903 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4904 |
+
|
| 4905 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 4906 |
+
var navigator = global.navigator;
|
| 4907 |
+
|
| 4908 |
+
module.exports = navigator && navigator.userAgent || '';
|
| 4909 |
+
|
| 4910 |
+
|
| 4911 |
+
/***/ }),
|
| 4912 |
+
|
| 4913 |
+
/***/ "./node_modules/core-js/modules/_validate-collection.js":
|
| 4914 |
+
/*!**************************************************************!*\
|
| 4915 |
+
!*** ./node_modules/core-js/modules/_validate-collection.js ***!
|
| 4916 |
+
\**************************************************************/
|
| 4917 |
+
/*! no static exports found */
|
| 4918 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4919 |
+
|
| 4920 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 4921 |
+
module.exports = function (it, TYPE) {
|
| 4922 |
+
if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
|
| 4923 |
+
return it;
|
| 4924 |
+
};
|
| 4925 |
+
|
| 4926 |
+
|
| 4927 |
+
/***/ }),
|
| 4928 |
+
|
| 4929 |
+
/***/ "./node_modules/core-js/modules/_wks-define.js":
|
| 4930 |
+
/*!*****************************************************!*\
|
| 4931 |
+
!*** ./node_modules/core-js/modules/_wks-define.js ***!
|
| 4932 |
+
\*****************************************************/
|
| 4933 |
+
/*! no static exports found */
|
| 4934 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4935 |
+
|
| 4936 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 4937 |
+
var core = __webpack_require__(/*! ./_core */ "./node_modules/core-js/modules/_core.js");
|
| 4938 |
+
var LIBRARY = __webpack_require__(/*! ./_library */ "./node_modules/core-js/modules/_library.js");
|
| 4939 |
+
var wksExt = __webpack_require__(/*! ./_wks-ext */ "./node_modules/core-js/modules/_wks-ext.js");
|
| 4940 |
+
var defineProperty = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f;
|
| 4941 |
+
module.exports = function (name) {
|
| 4942 |
+
var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
|
| 4943 |
+
if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
|
| 4944 |
+
};
|
| 4945 |
+
|
| 4946 |
+
|
| 4947 |
+
/***/ }),
|
| 4948 |
+
|
| 4949 |
+
/***/ "./node_modules/core-js/modules/_wks-ext.js":
|
| 4950 |
+
/*!**************************************************!*\
|
| 4951 |
+
!*** ./node_modules/core-js/modules/_wks-ext.js ***!
|
| 4952 |
+
\**************************************************/
|
| 4953 |
+
/*! no static exports found */
|
| 4954 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4955 |
+
|
| 4956 |
+
exports.f = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js");
|
| 4957 |
+
|
| 4958 |
+
|
| 4959 |
+
/***/ }),
|
| 4960 |
+
|
| 4961 |
+
/***/ "./node_modules/core-js/modules/_wks.js":
|
| 4962 |
+
/*!**********************************************!*\
|
| 4963 |
+
!*** ./node_modules/core-js/modules/_wks.js ***!
|
| 4964 |
+
\**********************************************/
|
| 4965 |
+
/*! no static exports found */
|
| 4966 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4967 |
+
|
| 4968 |
+
var store = __webpack_require__(/*! ./_shared */ "./node_modules/core-js/modules/_shared.js")('wks');
|
| 4969 |
+
var uid = __webpack_require__(/*! ./_uid */ "./node_modules/core-js/modules/_uid.js");
|
| 4970 |
+
var Symbol = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").Symbol;
|
| 4971 |
+
var USE_SYMBOL = typeof Symbol == 'function';
|
| 4972 |
+
|
| 4973 |
+
var $exports = module.exports = function (name) {
|
| 4974 |
+
return store[name] || (store[name] =
|
| 4975 |
+
USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
|
| 4976 |
+
};
|
| 4977 |
+
|
| 4978 |
+
$exports.store = store;
|
| 4979 |
+
|
| 4980 |
+
|
| 4981 |
+
/***/ }),
|
| 4982 |
+
|
| 4983 |
+
/***/ "./node_modules/core-js/modules/core.get-iterator-method.js":
|
| 4984 |
+
/*!******************************************************************!*\
|
| 4985 |
+
!*** ./node_modules/core-js/modules/core.get-iterator-method.js ***!
|
| 4986 |
+
\******************************************************************/
|
| 4987 |
+
/*! no static exports found */
|
| 4988 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 4989 |
+
|
| 4990 |
+
var classof = __webpack_require__(/*! ./_classof */ "./node_modules/core-js/modules/_classof.js");
|
| 4991 |
+
var ITERATOR = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('iterator');
|
| 4992 |
+
var Iterators = __webpack_require__(/*! ./_iterators */ "./node_modules/core-js/modules/_iterators.js");
|
| 4993 |
+
module.exports = __webpack_require__(/*! ./_core */ "./node_modules/core-js/modules/_core.js").getIteratorMethod = function (it) {
|
| 4994 |
+
if (it != undefined) return it[ITERATOR]
|
| 4995 |
+
|| it['@@iterator']
|
| 4996 |
+
|| Iterators[classof(it)];
|
| 4997 |
+
};
|
| 4998 |
+
|
| 4999 |
+
|
| 5000 |
+
/***/ }),
|
| 5001 |
+
|
| 5002 |
+
/***/ "./node_modules/core-js/modules/es6.array.copy-within.js":
|
| 5003 |
+
/*!***************************************************************!*\
|
| 5004 |
+
!*** ./node_modules/core-js/modules/es6.array.copy-within.js ***!
|
| 5005 |
+
\***************************************************************/
|
| 5006 |
+
/*! no static exports found */
|
| 5007 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5008 |
+
|
| 5009 |
+
// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
|
| 5010 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5011 |
+
|
| 5012 |
+
$export($export.P, 'Array', { copyWithin: __webpack_require__(/*! ./_array-copy-within */ "./node_modules/core-js/modules/_array-copy-within.js") });
|
| 5013 |
+
|
| 5014 |
+
__webpack_require__(/*! ./_add-to-unscopables */ "./node_modules/core-js/modules/_add-to-unscopables.js")('copyWithin');
|
| 5015 |
+
|
| 5016 |
+
|
| 5017 |
+
/***/ }),
|
| 5018 |
+
|
| 5019 |
+
/***/ "./node_modules/core-js/modules/es6.array.every.js":
|
| 5020 |
+
/*!*********************************************************!*\
|
| 5021 |
+
!*** ./node_modules/core-js/modules/es6.array.every.js ***!
|
| 5022 |
+
\*********************************************************/
|
| 5023 |
+
/*! no static exports found */
|
| 5024 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5025 |
+
|
| 5026 |
+
"use strict";
|
| 5027 |
+
|
| 5028 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5029 |
+
var $every = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js")(4);
|
| 5030 |
+
|
| 5031 |
+
$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")([].every, true), 'Array', {
|
| 5032 |
+
// 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
|
| 5033 |
+
every: function every(callbackfn /* , thisArg */) {
|
| 5034 |
+
return $every(this, callbackfn, arguments[1]);
|
| 5035 |
+
}
|
| 5036 |
+
});
|
| 5037 |
+
|
| 5038 |
+
|
| 5039 |
+
/***/ }),
|
| 5040 |
+
|
| 5041 |
+
/***/ "./node_modules/core-js/modules/es6.array.fill.js":
|
| 5042 |
+
/*!********************************************************!*\
|
| 5043 |
+
!*** ./node_modules/core-js/modules/es6.array.fill.js ***!
|
| 5044 |
+
\********************************************************/
|
| 5045 |
+
/*! no static exports found */
|
| 5046 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5047 |
+
|
| 5048 |
+
// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
|
| 5049 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5050 |
+
|
| 5051 |
+
$export($export.P, 'Array', { fill: __webpack_require__(/*! ./_array-fill */ "./node_modules/core-js/modules/_array-fill.js") });
|
| 5052 |
+
|
| 5053 |
+
__webpack_require__(/*! ./_add-to-unscopables */ "./node_modules/core-js/modules/_add-to-unscopables.js")('fill');
|
| 5054 |
+
|
| 5055 |
+
|
| 5056 |
+
/***/ }),
|
| 5057 |
+
|
| 5058 |
+
/***/ "./node_modules/core-js/modules/es6.array.filter.js":
|
| 5059 |
+
/*!**********************************************************!*\
|
| 5060 |
+
!*** ./node_modules/core-js/modules/es6.array.filter.js ***!
|
| 5061 |
+
\**********************************************************/
|
| 5062 |
+
/*! no static exports found */
|
| 5063 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5064 |
+
|
| 5065 |
+
"use strict";
|
| 5066 |
+
|
| 5067 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5068 |
+
var $filter = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js")(2);
|
| 5069 |
+
|
| 5070 |
+
$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
|
| 5071 |
+
// 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
|
| 5072 |
+
filter: function filter(callbackfn /* , thisArg */) {
|
| 5073 |
+
return $filter(this, callbackfn, arguments[1]);
|
| 5074 |
+
}
|
| 5075 |
+
});
|
| 5076 |
+
|
| 5077 |
+
|
| 5078 |
+
/***/ }),
|
| 5079 |
+
|
| 5080 |
+
/***/ "./node_modules/core-js/modules/es6.array.find-index.js":
|
| 5081 |
+
/*!**************************************************************!*\
|
| 5082 |
+
!*** ./node_modules/core-js/modules/es6.array.find-index.js ***!
|
| 5083 |
+
\**************************************************************/
|
| 5084 |
+
/*! no static exports found */
|
| 5085 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5086 |
+
|
| 5087 |
+
"use strict";
|
| 5088 |
+
|
| 5089 |
+
// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
|
| 5090 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5091 |
+
var $find = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js")(6);
|
| 5092 |
+
var KEY = 'findIndex';
|
| 5093 |
+
var forced = true;
|
| 5094 |
+
// Shouldn't skip holes
|
| 5095 |
+
if (KEY in []) Array(1)[KEY](function () { forced = false; });
|
| 5096 |
+
$export($export.P + $export.F * forced, 'Array', {
|
| 5097 |
+
findIndex: function findIndex(callbackfn /* , that = undefined */) {
|
| 5098 |
+
return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
| 5099 |
+
}
|
| 5100 |
+
});
|
| 5101 |
+
__webpack_require__(/*! ./_add-to-unscopables */ "./node_modules/core-js/modules/_add-to-unscopables.js")(KEY);
|
| 5102 |
+
|
| 5103 |
+
|
| 5104 |
+
/***/ }),
|
| 5105 |
+
|
| 5106 |
+
/***/ "./node_modules/core-js/modules/es6.array.find.js":
|
| 5107 |
+
/*!********************************************************!*\
|
| 5108 |
+
!*** ./node_modules/core-js/modules/es6.array.find.js ***!
|
| 5109 |
+
\********************************************************/
|
| 5110 |
+
/*! no static exports found */
|
| 5111 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5112 |
+
|
| 5113 |
+
"use strict";
|
| 5114 |
+
|
| 5115 |
+
// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
|
| 5116 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5117 |
+
var $find = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js")(5);
|
| 5118 |
+
var KEY = 'find';
|
| 5119 |
+
var forced = true;
|
| 5120 |
+
// Shouldn't skip holes
|
| 5121 |
+
if (KEY in []) Array(1)[KEY](function () { forced = false; });
|
| 5122 |
+
$export($export.P + $export.F * forced, 'Array', {
|
| 5123 |
+
find: function find(callbackfn /* , that = undefined */) {
|
| 5124 |
+
return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
| 5125 |
+
}
|
| 5126 |
+
});
|
| 5127 |
+
__webpack_require__(/*! ./_add-to-unscopables */ "./node_modules/core-js/modules/_add-to-unscopables.js")(KEY);
|
| 5128 |
+
|
| 5129 |
+
|
| 5130 |
+
/***/ }),
|
| 5131 |
+
|
| 5132 |
+
/***/ "./node_modules/core-js/modules/es6.array.for-each.js":
|
| 5133 |
+
/*!************************************************************!*\
|
| 5134 |
+
!*** ./node_modules/core-js/modules/es6.array.for-each.js ***!
|
| 5135 |
+
\************************************************************/
|
| 5136 |
+
/*! no static exports found */
|
| 5137 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5138 |
+
|
| 5139 |
+
"use strict";
|
| 5140 |
+
|
| 5141 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5142 |
+
var $forEach = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js")(0);
|
| 5143 |
+
var STRICT = __webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")([].forEach, true);
|
| 5144 |
+
|
| 5145 |
+
$export($export.P + $export.F * !STRICT, 'Array', {
|
| 5146 |
+
// 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
|
| 5147 |
+
forEach: function forEach(callbackfn /* , thisArg */) {
|
| 5148 |
+
return $forEach(this, callbackfn, arguments[1]);
|
| 5149 |
+
}
|
| 5150 |
+
});
|
| 5151 |
+
|
| 5152 |
+
|
| 5153 |
+
/***/ }),
|
| 5154 |
+
|
| 5155 |
+
/***/ "./node_modules/core-js/modules/es6.array.from.js":
|
| 5156 |
+
/*!********************************************************!*\
|
| 5157 |
+
!*** ./node_modules/core-js/modules/es6.array.from.js ***!
|
| 5158 |
+
\********************************************************/
|
| 5159 |
+
/*! no static exports found */
|
| 5160 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5161 |
+
|
| 5162 |
+
"use strict";
|
| 5163 |
+
|
| 5164 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 5165 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5166 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 5167 |
+
var call = __webpack_require__(/*! ./_iter-call */ "./node_modules/core-js/modules/_iter-call.js");
|
| 5168 |
+
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "./node_modules/core-js/modules/_is-array-iter.js");
|
| 5169 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 5170 |
+
var createProperty = __webpack_require__(/*! ./_create-property */ "./node_modules/core-js/modules/_create-property.js");
|
| 5171 |
+
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "./node_modules/core-js/modules/core.get-iterator-method.js");
|
| 5172 |
+
|
| 5173 |
+
$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "./node_modules/core-js/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
|
| 5174 |
+
// 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
|
| 5175 |
+
from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
|
| 5176 |
+
var O = toObject(arrayLike);
|
| 5177 |
+
var C = typeof this == 'function' ? this : Array;
|
| 5178 |
+
var aLen = arguments.length;
|
| 5179 |
+
var mapfn = aLen > 1 ? arguments[1] : undefined;
|
| 5180 |
+
var mapping = mapfn !== undefined;
|
| 5181 |
+
var index = 0;
|
| 5182 |
+
var iterFn = getIterFn(O);
|
| 5183 |
+
var length, result, step, iterator;
|
| 5184 |
+
if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
|
| 5185 |
+
// if object isn't iterable or it's array with default iterator - use simple case
|
| 5186 |
+
if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
|
| 5187 |
+
for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
|
| 5188 |
+
createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
|
| 5189 |
+
}
|
| 5190 |
+
} else {
|
| 5191 |
+
length = toLength(O.length);
|
| 5192 |
+
for (result = new C(length); length > index; index++) {
|
| 5193 |
+
createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
|
| 5194 |
+
}
|
| 5195 |
+
}
|
| 5196 |
+
result.length = index;
|
| 5197 |
+
return result;
|
| 5198 |
+
}
|
| 5199 |
+
});
|
| 5200 |
+
|
| 5201 |
+
|
| 5202 |
+
/***/ }),
|
| 5203 |
+
|
| 5204 |
+
/***/ "./node_modules/core-js/modules/es6.array.index-of.js":
|
| 5205 |
+
/*!************************************************************!*\
|
| 5206 |
+
!*** ./node_modules/core-js/modules/es6.array.index-of.js ***!
|
| 5207 |
+
\************************************************************/
|
| 5208 |
+
/*! no static exports found */
|
| 5209 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5210 |
+
|
| 5211 |
+
"use strict";
|
| 5212 |
+
|
| 5213 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5214 |
+
var $indexOf = __webpack_require__(/*! ./_array-includes */ "./node_modules/core-js/modules/_array-includes.js")(false);
|
| 5215 |
+
var $native = [].indexOf;
|
| 5216 |
+
var NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;
|
| 5217 |
+
|
| 5218 |
+
$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")($native)), 'Array', {
|
| 5219 |
+
// 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
|
| 5220 |
+
indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {
|
| 5221 |
+
return NEGATIVE_ZERO
|
| 5222 |
+
// convert -0 to +0
|
| 5223 |
+
? $native.apply(this, arguments) || 0
|
| 5224 |
+
: $indexOf(this, searchElement, arguments[1]);
|
| 5225 |
+
}
|
| 5226 |
+
});
|
| 5227 |
+
|
| 5228 |
+
|
| 5229 |
+
/***/ }),
|
| 5230 |
+
|
| 5231 |
+
/***/ "./node_modules/core-js/modules/es6.array.is-array.js":
|
| 5232 |
+
/*!************************************************************!*\
|
| 5233 |
+
!*** ./node_modules/core-js/modules/es6.array.is-array.js ***!
|
| 5234 |
+
\************************************************************/
|
| 5235 |
+
/*! no static exports found */
|
| 5236 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5237 |
+
|
| 5238 |
+
// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
|
| 5239 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5240 |
+
|
| 5241 |
+
$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "./node_modules/core-js/modules/_is-array.js") });
|
| 5242 |
+
|
| 5243 |
+
|
| 5244 |
+
/***/ }),
|
| 5245 |
+
|
| 5246 |
+
/***/ "./node_modules/core-js/modules/es6.array.iterator.js":
|
| 5247 |
+
/*!************************************************************!*\
|
| 5248 |
+
!*** ./node_modules/core-js/modules/es6.array.iterator.js ***!
|
| 5249 |
+
\************************************************************/
|
| 5250 |
+
/*! no static exports found */
|
| 5251 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5252 |
+
|
| 5253 |
+
"use strict";
|
| 5254 |
+
|
| 5255 |
+
var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "./node_modules/core-js/modules/_add-to-unscopables.js");
|
| 5256 |
+
var step = __webpack_require__(/*! ./_iter-step */ "./node_modules/core-js/modules/_iter-step.js");
|
| 5257 |
+
var Iterators = __webpack_require__(/*! ./_iterators */ "./node_modules/core-js/modules/_iterators.js");
|
| 5258 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 5259 |
+
|
| 5260 |
+
// 22.1.3.4 Array.prototype.entries()
|
| 5261 |
+
// 22.1.3.13 Array.prototype.keys()
|
| 5262 |
+
// 22.1.3.29 Array.prototype.values()
|
| 5263 |
+
// 22.1.3.30 Array.prototype[@@iterator]()
|
| 5264 |
+
module.exports = __webpack_require__(/*! ./_iter-define */ "./node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
|
| 5265 |
+
this._t = toIObject(iterated); // target
|
| 5266 |
+
this._i = 0; // next index
|
| 5267 |
+
this._k = kind; // kind
|
| 5268 |
+
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
|
| 5269 |
+
}, function () {
|
| 5270 |
+
var O = this._t;
|
| 5271 |
+
var kind = this._k;
|
| 5272 |
+
var index = this._i++;
|
| 5273 |
+
if (!O || index >= O.length) {
|
| 5274 |
+
this._t = undefined;
|
| 5275 |
+
return step(1);
|
| 5276 |
+
}
|
| 5277 |
+
if (kind == 'keys') return step(0, index);
|
| 5278 |
+
if (kind == 'values') return step(0, O[index]);
|
| 5279 |
+
return step(0, [index, O[index]]);
|
| 5280 |
+
}, 'values');
|
| 5281 |
+
|
| 5282 |
+
// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
|
| 5283 |
+
Iterators.Arguments = Iterators.Array;
|
| 5284 |
+
|
| 5285 |
+
addToUnscopables('keys');
|
| 5286 |
+
addToUnscopables('values');
|
| 5287 |
+
addToUnscopables('entries');
|
| 5288 |
+
|
| 5289 |
+
|
| 5290 |
+
/***/ }),
|
| 5291 |
+
|
| 5292 |
+
/***/ "./node_modules/core-js/modules/es6.array.join.js":
|
| 5293 |
+
/*!********************************************************!*\
|
| 5294 |
+
!*** ./node_modules/core-js/modules/es6.array.join.js ***!
|
| 5295 |
+
\********************************************************/
|
| 5296 |
+
/*! no static exports found */
|
| 5297 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5298 |
+
|
| 5299 |
+
"use strict";
|
| 5300 |
+
|
| 5301 |
+
// 22.1.3.13 Array.prototype.join(separator)
|
| 5302 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5303 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 5304 |
+
var arrayJoin = [].join;
|
| 5305 |
+
|
| 5306 |
+
// fallback for not array-like strings
|
| 5307 |
+
$export($export.P + $export.F * (__webpack_require__(/*! ./_iobject */ "./node_modules/core-js/modules/_iobject.js") != Object || !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")(arrayJoin)), 'Array', {
|
| 5308 |
+
join: function join(separator) {
|
| 5309 |
+
return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);
|
| 5310 |
+
}
|
| 5311 |
+
});
|
| 5312 |
+
|
| 5313 |
+
|
| 5314 |
+
/***/ }),
|
| 5315 |
+
|
| 5316 |
+
/***/ "./node_modules/core-js/modules/es6.array.last-index-of.js":
|
| 5317 |
+
/*!*****************************************************************!*\
|
| 5318 |
+
!*** ./node_modules/core-js/modules/es6.array.last-index-of.js ***!
|
| 5319 |
+
\*****************************************************************/
|
| 5320 |
+
/*! no static exports found */
|
| 5321 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5322 |
+
|
| 5323 |
+
"use strict";
|
| 5324 |
+
|
| 5325 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5326 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 5327 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 5328 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 5329 |
+
var $native = [].lastIndexOf;
|
| 5330 |
+
var NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;
|
| 5331 |
+
|
| 5332 |
+
$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")($native)), 'Array', {
|
| 5333 |
+
// 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
|
| 5334 |
+
lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {
|
| 5335 |
+
// convert -0 to +0
|
| 5336 |
+
if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0;
|
| 5337 |
+
var O = toIObject(this);
|
| 5338 |
+
var length = toLength(O.length);
|
| 5339 |
+
var index = length - 1;
|
| 5340 |
+
if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1]));
|
| 5341 |
+
if (index < 0) index = length + index;
|
| 5342 |
+
for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0;
|
| 5343 |
+
return -1;
|
| 5344 |
+
}
|
| 5345 |
+
});
|
| 5346 |
+
|
| 5347 |
+
|
| 5348 |
+
/***/ }),
|
| 5349 |
+
|
| 5350 |
+
/***/ "./node_modules/core-js/modules/es6.array.map.js":
|
| 5351 |
+
/*!*******************************************************!*\
|
| 5352 |
+
!*** ./node_modules/core-js/modules/es6.array.map.js ***!
|
| 5353 |
+
\*******************************************************/
|
| 5354 |
+
/*! no static exports found */
|
| 5355 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5356 |
+
|
| 5357 |
+
"use strict";
|
| 5358 |
+
|
| 5359 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5360 |
+
var $map = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js")(1);
|
| 5361 |
+
|
| 5362 |
+
$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
|
| 5363 |
+
// 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
|
| 5364 |
+
map: function map(callbackfn /* , thisArg */) {
|
| 5365 |
+
return $map(this, callbackfn, arguments[1]);
|
| 5366 |
+
}
|
| 5367 |
+
});
|
| 5368 |
+
|
| 5369 |
+
|
| 5370 |
+
/***/ }),
|
| 5371 |
+
|
| 5372 |
+
/***/ "./node_modules/core-js/modules/es6.array.of.js":
|
| 5373 |
+
/*!******************************************************!*\
|
| 5374 |
+
!*** ./node_modules/core-js/modules/es6.array.of.js ***!
|
| 5375 |
+
\******************************************************/
|
| 5376 |
+
/*! no static exports found */
|
| 5377 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5378 |
+
|
| 5379 |
+
"use strict";
|
| 5380 |
+
|
| 5381 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5382 |
+
var createProperty = __webpack_require__(/*! ./_create-property */ "./node_modules/core-js/modules/_create-property.js");
|
| 5383 |
+
|
| 5384 |
+
// WebKit Array.of isn't generic
|
| 5385 |
+
$export($export.S + $export.F * __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 5386 |
+
function F() { /* empty */ }
|
| 5387 |
+
return !(Array.of.call(F) instanceof F);
|
| 5388 |
+
}), 'Array', {
|
| 5389 |
+
// 22.1.2.3 Array.of( ...items)
|
| 5390 |
+
of: function of(/* ...args */) {
|
| 5391 |
+
var index = 0;
|
| 5392 |
+
var aLen = arguments.length;
|
| 5393 |
+
var result = new (typeof this == 'function' ? this : Array)(aLen);
|
| 5394 |
+
while (aLen > index) createProperty(result, index, arguments[index++]);
|
| 5395 |
+
result.length = aLen;
|
| 5396 |
+
return result;
|
| 5397 |
+
}
|
| 5398 |
+
});
|
| 5399 |
+
|
| 5400 |
+
|
| 5401 |
+
/***/ }),
|
| 5402 |
+
|
| 5403 |
+
/***/ "./node_modules/core-js/modules/es6.array.reduce-right.js":
|
| 5404 |
+
/*!****************************************************************!*\
|
| 5405 |
+
!*** ./node_modules/core-js/modules/es6.array.reduce-right.js ***!
|
| 5406 |
+
\****************************************************************/
|
| 5407 |
+
/*! no static exports found */
|
| 5408 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5409 |
+
|
| 5410 |
+
"use strict";
|
| 5411 |
+
|
| 5412 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5413 |
+
var $reduce = __webpack_require__(/*! ./_array-reduce */ "./node_modules/core-js/modules/_array-reduce.js");
|
| 5414 |
+
|
| 5415 |
+
$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")([].reduceRight, true), 'Array', {
|
| 5416 |
+
// 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
|
| 5417 |
+
reduceRight: function reduceRight(callbackfn /* , initialValue */) {
|
| 5418 |
+
return $reduce(this, callbackfn, arguments.length, arguments[1], true);
|
| 5419 |
+
}
|
| 5420 |
+
});
|
| 5421 |
+
|
| 5422 |
+
|
| 5423 |
+
/***/ }),
|
| 5424 |
+
|
| 5425 |
+
/***/ "./node_modules/core-js/modules/es6.array.reduce.js":
|
| 5426 |
+
/*!**********************************************************!*\
|
| 5427 |
+
!*** ./node_modules/core-js/modules/es6.array.reduce.js ***!
|
| 5428 |
+
\**********************************************************/
|
| 5429 |
+
/*! no static exports found */
|
| 5430 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5431 |
+
|
| 5432 |
+
"use strict";
|
| 5433 |
+
|
| 5434 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5435 |
+
var $reduce = __webpack_require__(/*! ./_array-reduce */ "./node_modules/core-js/modules/_array-reduce.js");
|
| 5436 |
+
|
| 5437 |
+
$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")([].reduce, true), 'Array', {
|
| 5438 |
+
// 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
|
| 5439 |
+
reduce: function reduce(callbackfn /* , initialValue */) {
|
| 5440 |
+
return $reduce(this, callbackfn, arguments.length, arguments[1], false);
|
| 5441 |
+
}
|
| 5442 |
+
});
|
| 5443 |
+
|
| 5444 |
+
|
| 5445 |
+
/***/ }),
|
| 5446 |
+
|
| 5447 |
+
/***/ "./node_modules/core-js/modules/es6.array.slice.js":
|
| 5448 |
+
/*!*********************************************************!*\
|
| 5449 |
+
!*** ./node_modules/core-js/modules/es6.array.slice.js ***!
|
| 5450 |
+
\*********************************************************/
|
| 5451 |
+
/*! no static exports found */
|
| 5452 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5453 |
+
|
| 5454 |
+
"use strict";
|
| 5455 |
+
|
| 5456 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5457 |
+
var html = __webpack_require__(/*! ./_html */ "./node_modules/core-js/modules/_html.js");
|
| 5458 |
+
var cof = __webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js");
|
| 5459 |
+
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "./node_modules/core-js/modules/_to-absolute-index.js");
|
| 5460 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 5461 |
+
var arraySlice = [].slice;
|
| 5462 |
+
|
| 5463 |
+
// fallback for not array-like ES3 strings and DOM objects
|
| 5464 |
+
$export($export.P + $export.F * __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 5465 |
+
if (html) arraySlice.call(html);
|
| 5466 |
+
}), 'Array', {
|
| 5467 |
+
slice: function slice(begin, end) {
|
| 5468 |
+
var len = toLength(this.length);
|
| 5469 |
+
var klass = cof(this);
|
| 5470 |
+
end = end === undefined ? len : end;
|
| 5471 |
+
if (klass == 'Array') return arraySlice.call(this, begin, end);
|
| 5472 |
+
var start = toAbsoluteIndex(begin, len);
|
| 5473 |
+
var upTo = toAbsoluteIndex(end, len);
|
| 5474 |
+
var size = toLength(upTo - start);
|
| 5475 |
+
var cloned = new Array(size);
|
| 5476 |
+
var i = 0;
|
| 5477 |
+
for (; i < size; i++) cloned[i] = klass == 'String'
|
| 5478 |
+
? this.charAt(start + i)
|
| 5479 |
+
: this[start + i];
|
| 5480 |
+
return cloned;
|
| 5481 |
+
}
|
| 5482 |
+
});
|
| 5483 |
+
|
| 5484 |
+
|
| 5485 |
+
/***/ }),
|
| 5486 |
+
|
| 5487 |
+
/***/ "./node_modules/core-js/modules/es6.array.some.js":
|
| 5488 |
+
/*!********************************************************!*\
|
| 5489 |
+
!*** ./node_modules/core-js/modules/es6.array.some.js ***!
|
| 5490 |
+
\********************************************************/
|
| 5491 |
+
/*! no static exports found */
|
| 5492 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5493 |
+
|
| 5494 |
+
"use strict";
|
| 5495 |
+
|
| 5496 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5497 |
+
var $some = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js")(3);
|
| 5498 |
+
|
| 5499 |
+
$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")([].some, true), 'Array', {
|
| 5500 |
+
// 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
|
| 5501 |
+
some: function some(callbackfn /* , thisArg */) {
|
| 5502 |
+
return $some(this, callbackfn, arguments[1]);
|
| 5503 |
+
}
|
| 5504 |
+
});
|
| 5505 |
+
|
| 5506 |
+
|
| 5507 |
+
/***/ }),
|
| 5508 |
+
|
| 5509 |
+
/***/ "./node_modules/core-js/modules/es6.array.sort.js":
|
| 5510 |
+
/*!********************************************************!*\
|
| 5511 |
+
!*** ./node_modules/core-js/modules/es6.array.sort.js ***!
|
| 5512 |
+
\********************************************************/
|
| 5513 |
+
/*! no static exports found */
|
| 5514 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5515 |
+
|
| 5516 |
+
"use strict";
|
| 5517 |
+
|
| 5518 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5519 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 5520 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 5521 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 5522 |
+
var $sort = [].sort;
|
| 5523 |
+
var test = [1, 2, 3];
|
| 5524 |
+
|
| 5525 |
+
$export($export.P + $export.F * (fails(function () {
|
| 5526 |
+
// IE8-
|
| 5527 |
+
test.sort(undefined);
|
| 5528 |
+
}) || !fails(function () {
|
| 5529 |
+
// V8 bug
|
| 5530 |
+
test.sort(null);
|
| 5531 |
+
// Old WebKit
|
| 5532 |
+
}) || !__webpack_require__(/*! ./_strict-method */ "./node_modules/core-js/modules/_strict-method.js")($sort)), 'Array', {
|
| 5533 |
+
// 22.1.3.25 Array.prototype.sort(comparefn)
|
| 5534 |
+
sort: function sort(comparefn) {
|
| 5535 |
+
return comparefn === undefined
|
| 5536 |
+
? $sort.call(toObject(this))
|
| 5537 |
+
: $sort.call(toObject(this), aFunction(comparefn));
|
| 5538 |
+
}
|
| 5539 |
+
});
|
| 5540 |
+
|
| 5541 |
+
|
| 5542 |
+
/***/ }),
|
| 5543 |
+
|
| 5544 |
+
/***/ "./node_modules/core-js/modules/es6.array.species.js":
|
| 5545 |
+
/*!***********************************************************!*\
|
| 5546 |
+
!*** ./node_modules/core-js/modules/es6.array.species.js ***!
|
| 5547 |
+
\***********************************************************/
|
| 5548 |
+
/*! no static exports found */
|
| 5549 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5550 |
+
|
| 5551 |
+
__webpack_require__(/*! ./_set-species */ "./node_modules/core-js/modules/_set-species.js")('Array');
|
| 5552 |
+
|
| 5553 |
+
|
| 5554 |
+
/***/ }),
|
| 5555 |
+
|
| 5556 |
+
/***/ "./node_modules/core-js/modules/es6.date.now.js":
|
| 5557 |
+
/*!******************************************************!*\
|
| 5558 |
+
!*** ./node_modules/core-js/modules/es6.date.now.js ***!
|
| 5559 |
+
\******************************************************/
|
| 5560 |
+
/*! no static exports found */
|
| 5561 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5562 |
+
|
| 5563 |
+
// 20.3.3.1 / 15.9.4.4 Date.now()
|
| 5564 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5565 |
+
|
| 5566 |
+
$export($export.S, 'Date', { now: function () { return new Date().getTime(); } });
|
| 5567 |
+
|
| 5568 |
+
|
| 5569 |
+
/***/ }),
|
| 5570 |
+
|
| 5571 |
+
/***/ "./node_modules/core-js/modules/es6.date.to-iso-string.js":
|
| 5572 |
+
/*!****************************************************************!*\
|
| 5573 |
+
!*** ./node_modules/core-js/modules/es6.date.to-iso-string.js ***!
|
| 5574 |
+
\****************************************************************/
|
| 5575 |
+
/*! no static exports found */
|
| 5576 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5577 |
+
|
| 5578 |
+
// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
|
| 5579 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5580 |
+
var toISOString = __webpack_require__(/*! ./_date-to-iso-string */ "./node_modules/core-js/modules/_date-to-iso-string.js");
|
| 5581 |
+
|
| 5582 |
+
// PhantomJS / old WebKit has a broken implementations
|
| 5583 |
+
$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', {
|
| 5584 |
+
toISOString: toISOString
|
| 5585 |
+
});
|
| 5586 |
+
|
| 5587 |
+
|
| 5588 |
+
/***/ }),
|
| 5589 |
+
|
| 5590 |
+
/***/ "./node_modules/core-js/modules/es6.date.to-json.js":
|
| 5591 |
+
/*!**********************************************************!*\
|
| 5592 |
+
!*** ./node_modules/core-js/modules/es6.date.to-json.js ***!
|
| 5593 |
+
\**********************************************************/
|
| 5594 |
+
/*! no static exports found */
|
| 5595 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5596 |
+
|
| 5597 |
+
"use strict";
|
| 5598 |
+
|
| 5599 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5600 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 5601 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/modules/_to-primitive.js");
|
| 5602 |
+
|
| 5603 |
+
$export($export.P + $export.F * __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 5604 |
+
return new Date(NaN).toJSON() !== null
|
| 5605 |
+
|| Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1;
|
| 5606 |
+
}), 'Date', {
|
| 5607 |
+
// eslint-disable-next-line no-unused-vars
|
| 5608 |
+
toJSON: function toJSON(key) {
|
| 5609 |
+
var O = toObject(this);
|
| 5610 |
+
var pv = toPrimitive(O);
|
| 5611 |
+
return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();
|
| 5612 |
+
}
|
| 5613 |
+
});
|
| 5614 |
+
|
| 5615 |
+
|
| 5616 |
+
/***/ }),
|
| 5617 |
+
|
| 5618 |
+
/***/ "./node_modules/core-js/modules/es6.date.to-primitive.js":
|
| 5619 |
+
/*!***************************************************************!*\
|
| 5620 |
+
!*** ./node_modules/core-js/modules/es6.date.to-primitive.js ***!
|
| 5621 |
+
\***************************************************************/
|
| 5622 |
+
/*! no static exports found */
|
| 5623 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5624 |
+
|
| 5625 |
+
var TO_PRIMITIVE = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('toPrimitive');
|
| 5626 |
+
var proto = Date.prototype;
|
| 5627 |
+
|
| 5628 |
+
if (!(TO_PRIMITIVE in proto)) __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js")(proto, TO_PRIMITIVE, __webpack_require__(/*! ./_date-to-primitive */ "./node_modules/core-js/modules/_date-to-primitive.js"));
|
| 5629 |
+
|
| 5630 |
+
|
| 5631 |
+
/***/ }),
|
| 5632 |
+
|
| 5633 |
+
/***/ "./node_modules/core-js/modules/es6.date.to-string.js":
|
| 5634 |
+
/*!************************************************************!*\
|
| 5635 |
+
!*** ./node_modules/core-js/modules/es6.date.to-string.js ***!
|
| 5636 |
+
\************************************************************/
|
| 5637 |
+
/*! no static exports found */
|
| 5638 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5639 |
+
|
| 5640 |
+
var DateProto = Date.prototype;
|
| 5641 |
+
var INVALID_DATE = 'Invalid Date';
|
| 5642 |
+
var TO_STRING = 'toString';
|
| 5643 |
+
var $toString = DateProto[TO_STRING];
|
| 5644 |
+
var getTime = DateProto.getTime;
|
| 5645 |
+
if (new Date(NaN) + '' != INVALID_DATE) {
|
| 5646 |
+
__webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js")(DateProto, TO_STRING, function toString() {
|
| 5647 |
+
var value = getTime.call(this);
|
| 5648 |
+
// eslint-disable-next-line no-self-compare
|
| 5649 |
+
return value === value ? $toString.call(this) : INVALID_DATE;
|
| 5650 |
+
});
|
| 5651 |
+
}
|
| 5652 |
+
|
| 5653 |
+
|
| 5654 |
+
/***/ }),
|
| 5655 |
+
|
| 5656 |
+
/***/ "./node_modules/core-js/modules/es6.function.bind.js":
|
| 5657 |
+
/*!***********************************************************!*\
|
| 5658 |
+
!*** ./node_modules/core-js/modules/es6.function.bind.js ***!
|
| 5659 |
+
\***********************************************************/
|
| 5660 |
+
/*! no static exports found */
|
| 5661 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5662 |
+
|
| 5663 |
+
// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
|
| 5664 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5665 |
+
|
| 5666 |
+
$export($export.P, 'Function', { bind: __webpack_require__(/*! ./_bind */ "./node_modules/core-js/modules/_bind.js") });
|
| 5667 |
+
|
| 5668 |
+
|
| 5669 |
+
/***/ }),
|
| 5670 |
+
|
| 5671 |
+
/***/ "./node_modules/core-js/modules/es6.function.has-instance.js":
|
| 5672 |
+
/*!*******************************************************************!*\
|
| 5673 |
+
!*** ./node_modules/core-js/modules/es6.function.has-instance.js ***!
|
| 5674 |
+
\*******************************************************************/
|
| 5675 |
+
/*! no static exports found */
|
| 5676 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5677 |
+
|
| 5678 |
+
"use strict";
|
| 5679 |
+
|
| 5680 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 5681 |
+
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "./node_modules/core-js/modules/_object-gpo.js");
|
| 5682 |
+
var HAS_INSTANCE = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('hasInstance');
|
| 5683 |
+
var FunctionProto = Function.prototype;
|
| 5684 |
+
// 19.2.3.6 Function.prototype[@@hasInstance](V)
|
| 5685 |
+
if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f(FunctionProto, HAS_INSTANCE, { value: function (O) {
|
| 5686 |
+
if (typeof this != 'function' || !isObject(O)) return false;
|
| 5687 |
+
if (!isObject(this.prototype)) return O instanceof this;
|
| 5688 |
+
// for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
|
| 5689 |
+
while (O = getPrototypeOf(O)) if (this.prototype === O) return true;
|
| 5690 |
+
return false;
|
| 5691 |
+
} });
|
| 5692 |
+
|
| 5693 |
+
|
| 5694 |
+
/***/ }),
|
| 5695 |
+
|
| 5696 |
+
/***/ "./node_modules/core-js/modules/es6.function.name.js":
|
| 5697 |
+
/*!***********************************************************!*\
|
| 5698 |
+
!*** ./node_modules/core-js/modules/es6.function.name.js ***!
|
| 5699 |
+
\***********************************************************/
|
| 5700 |
+
/*! no static exports found */
|
| 5701 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5702 |
+
|
| 5703 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f;
|
| 5704 |
+
var FProto = Function.prototype;
|
| 5705 |
+
var nameRE = /^\s*function ([^ (]*)/;
|
| 5706 |
+
var NAME = 'name';
|
| 5707 |
+
|
| 5708 |
+
// 19.2.4.2 name
|
| 5709 |
+
NAME in FProto || __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") && dP(FProto, NAME, {
|
| 5710 |
+
configurable: true,
|
| 5711 |
+
get: function () {
|
| 5712 |
+
try {
|
| 5713 |
+
return ('' + this).match(nameRE)[1];
|
| 5714 |
+
} catch (e) {
|
| 5715 |
+
return '';
|
| 5716 |
+
}
|
| 5717 |
+
}
|
| 5718 |
+
});
|
| 5719 |
+
|
| 5720 |
+
|
| 5721 |
+
/***/ }),
|
| 5722 |
+
|
| 5723 |
+
/***/ "./node_modules/core-js/modules/es6.map.js":
|
| 5724 |
+
/*!*************************************************!*\
|
| 5725 |
+
!*** ./node_modules/core-js/modules/es6.map.js ***!
|
| 5726 |
+
\*************************************************/
|
| 5727 |
+
/*! no static exports found */
|
| 5728 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5729 |
+
|
| 5730 |
+
"use strict";
|
| 5731 |
+
|
| 5732 |
+
var strong = __webpack_require__(/*! ./_collection-strong */ "./node_modules/core-js/modules/_collection-strong.js");
|
| 5733 |
+
var validate = __webpack_require__(/*! ./_validate-collection */ "./node_modules/core-js/modules/_validate-collection.js");
|
| 5734 |
+
var MAP = 'Map';
|
| 5735 |
+
|
| 5736 |
+
// 23.1 Map Objects
|
| 5737 |
+
module.exports = __webpack_require__(/*! ./_collection */ "./node_modules/core-js/modules/_collection.js")(MAP, function (get) {
|
| 5738 |
+
return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
|
| 5739 |
+
}, {
|
| 5740 |
+
// 23.1.3.6 Map.prototype.get(key)
|
| 5741 |
+
get: function get(key) {
|
| 5742 |
+
var entry = strong.getEntry(validate(this, MAP), key);
|
| 5743 |
+
return entry && entry.v;
|
| 5744 |
+
},
|
| 5745 |
+
// 23.1.3.9 Map.prototype.set(key, value)
|
| 5746 |
+
set: function set(key, value) {
|
| 5747 |
+
return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);
|
| 5748 |
+
}
|
| 5749 |
+
}, strong, true);
|
| 5750 |
+
|
| 5751 |
+
|
| 5752 |
+
/***/ }),
|
| 5753 |
+
|
| 5754 |
+
/***/ "./node_modules/core-js/modules/es6.math.acosh.js":
|
| 5755 |
+
/*!********************************************************!*\
|
| 5756 |
+
!*** ./node_modules/core-js/modules/es6.math.acosh.js ***!
|
| 5757 |
+
\********************************************************/
|
| 5758 |
+
/*! no static exports found */
|
| 5759 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5760 |
+
|
| 5761 |
+
// 20.2.2.3 Math.acosh(x)
|
| 5762 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5763 |
+
var log1p = __webpack_require__(/*! ./_math-log1p */ "./node_modules/core-js/modules/_math-log1p.js");
|
| 5764 |
+
var sqrt = Math.sqrt;
|
| 5765 |
+
var $acosh = Math.acosh;
|
| 5766 |
+
|
| 5767 |
+
$export($export.S + $export.F * !($acosh
|
| 5768 |
+
// V8 bug: https://code.google.com/p/v8/issues/detail?id=3509
|
| 5769 |
+
&& Math.floor($acosh(Number.MAX_VALUE)) == 710
|
| 5770 |
+
// Tor Browser bug: Math.acosh(Infinity) -> NaN
|
| 5771 |
+
&& $acosh(Infinity) == Infinity
|
| 5772 |
+
), 'Math', {
|
| 5773 |
+
acosh: function acosh(x) {
|
| 5774 |
+
return (x = +x) < 1 ? NaN : x > 94906265.62425156
|
| 5775 |
+
? Math.log(x) + Math.LN2
|
| 5776 |
+
: log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));
|
| 5777 |
+
}
|
| 5778 |
+
});
|
| 5779 |
+
|
| 5780 |
+
|
| 5781 |
+
/***/ }),
|
| 5782 |
+
|
| 5783 |
+
/***/ "./node_modules/core-js/modules/es6.math.asinh.js":
|
| 5784 |
+
/*!********************************************************!*\
|
| 5785 |
+
!*** ./node_modules/core-js/modules/es6.math.asinh.js ***!
|
| 5786 |
+
\********************************************************/
|
| 5787 |
+
/*! no static exports found */
|
| 5788 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5789 |
+
|
| 5790 |
+
// 20.2.2.5 Math.asinh(x)
|
| 5791 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5792 |
+
var $asinh = Math.asinh;
|
| 5793 |
+
|
| 5794 |
+
function asinh(x) {
|
| 5795 |
+
return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));
|
| 5796 |
+
}
|
| 5797 |
+
|
| 5798 |
+
// Tor Browser bug: Math.asinh(0) -> -0
|
| 5799 |
+
$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh });
|
| 5800 |
+
|
| 5801 |
+
|
| 5802 |
+
/***/ }),
|
| 5803 |
+
|
| 5804 |
+
/***/ "./node_modules/core-js/modules/es6.math.atanh.js":
|
| 5805 |
+
/*!********************************************************!*\
|
| 5806 |
+
!*** ./node_modules/core-js/modules/es6.math.atanh.js ***!
|
| 5807 |
+
\********************************************************/
|
| 5808 |
+
/*! no static exports found */
|
| 5809 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5810 |
+
|
| 5811 |
+
// 20.2.2.7 Math.atanh(x)
|
| 5812 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5813 |
+
var $atanh = Math.atanh;
|
| 5814 |
+
|
| 5815 |
+
// Tor Browser bug: Math.atanh(-0) -> 0
|
| 5816 |
+
$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {
|
| 5817 |
+
atanh: function atanh(x) {
|
| 5818 |
+
return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;
|
| 5819 |
+
}
|
| 5820 |
+
});
|
| 5821 |
+
|
| 5822 |
+
|
| 5823 |
+
/***/ }),
|
| 5824 |
+
|
| 5825 |
+
/***/ "./node_modules/core-js/modules/es6.math.cbrt.js":
|
| 5826 |
+
/*!*******************************************************!*\
|
| 5827 |
+
!*** ./node_modules/core-js/modules/es6.math.cbrt.js ***!
|
| 5828 |
+
\*******************************************************/
|
| 5829 |
+
/*! no static exports found */
|
| 5830 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5831 |
+
|
| 5832 |
+
// 20.2.2.9 Math.cbrt(x)
|
| 5833 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5834 |
+
var sign = __webpack_require__(/*! ./_math-sign */ "./node_modules/core-js/modules/_math-sign.js");
|
| 5835 |
+
|
| 5836 |
+
$export($export.S, 'Math', {
|
| 5837 |
+
cbrt: function cbrt(x) {
|
| 5838 |
+
return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);
|
| 5839 |
+
}
|
| 5840 |
+
});
|
| 5841 |
+
|
| 5842 |
+
|
| 5843 |
+
/***/ }),
|
| 5844 |
+
|
| 5845 |
+
/***/ "./node_modules/core-js/modules/es6.math.clz32.js":
|
| 5846 |
+
/*!********************************************************!*\
|
| 5847 |
+
!*** ./node_modules/core-js/modules/es6.math.clz32.js ***!
|
| 5848 |
+
\********************************************************/
|
| 5849 |
+
/*! no static exports found */
|
| 5850 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5851 |
+
|
| 5852 |
+
// 20.2.2.11 Math.clz32(x)
|
| 5853 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5854 |
+
|
| 5855 |
+
$export($export.S, 'Math', {
|
| 5856 |
+
clz32: function clz32(x) {
|
| 5857 |
+
return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;
|
| 5858 |
+
}
|
| 5859 |
+
});
|
| 5860 |
+
|
| 5861 |
+
|
| 5862 |
+
/***/ }),
|
| 5863 |
+
|
| 5864 |
+
/***/ "./node_modules/core-js/modules/es6.math.cosh.js":
|
| 5865 |
+
/*!*******************************************************!*\
|
| 5866 |
+
!*** ./node_modules/core-js/modules/es6.math.cosh.js ***!
|
| 5867 |
+
\*******************************************************/
|
| 5868 |
+
/*! no static exports found */
|
| 5869 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5870 |
+
|
| 5871 |
+
// 20.2.2.12 Math.cosh(x)
|
| 5872 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5873 |
+
var exp = Math.exp;
|
| 5874 |
+
|
| 5875 |
+
$export($export.S, 'Math', {
|
| 5876 |
+
cosh: function cosh(x) {
|
| 5877 |
+
return (exp(x = +x) + exp(-x)) / 2;
|
| 5878 |
+
}
|
| 5879 |
+
});
|
| 5880 |
+
|
| 5881 |
+
|
| 5882 |
+
/***/ }),
|
| 5883 |
+
|
| 5884 |
+
/***/ "./node_modules/core-js/modules/es6.math.expm1.js":
|
| 5885 |
+
/*!********************************************************!*\
|
| 5886 |
+
!*** ./node_modules/core-js/modules/es6.math.expm1.js ***!
|
| 5887 |
+
\********************************************************/
|
| 5888 |
+
/*! no static exports found */
|
| 5889 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5890 |
+
|
| 5891 |
+
// 20.2.2.14 Math.expm1(x)
|
| 5892 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5893 |
+
var $expm1 = __webpack_require__(/*! ./_math-expm1 */ "./node_modules/core-js/modules/_math-expm1.js");
|
| 5894 |
+
|
| 5895 |
+
$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 });
|
| 5896 |
+
|
| 5897 |
+
|
| 5898 |
+
/***/ }),
|
| 5899 |
+
|
| 5900 |
+
/***/ "./node_modules/core-js/modules/es6.math.fround.js":
|
| 5901 |
+
/*!*********************************************************!*\
|
| 5902 |
+
!*** ./node_modules/core-js/modules/es6.math.fround.js ***!
|
| 5903 |
+
\*********************************************************/
|
| 5904 |
+
/*! no static exports found */
|
| 5905 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5906 |
+
|
| 5907 |
+
// 20.2.2.16 Math.fround(x)
|
| 5908 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5909 |
+
|
| 5910 |
+
$export($export.S, 'Math', { fround: __webpack_require__(/*! ./_math-fround */ "./node_modules/core-js/modules/_math-fround.js") });
|
| 5911 |
+
|
| 5912 |
+
|
| 5913 |
+
/***/ }),
|
| 5914 |
+
|
| 5915 |
+
/***/ "./node_modules/core-js/modules/es6.math.hypot.js":
|
| 5916 |
+
/*!********************************************************!*\
|
| 5917 |
+
!*** ./node_modules/core-js/modules/es6.math.hypot.js ***!
|
| 5918 |
+
\********************************************************/
|
| 5919 |
+
/*! no static exports found */
|
| 5920 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5921 |
+
|
| 5922 |
+
// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])
|
| 5923 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5924 |
+
var abs = Math.abs;
|
| 5925 |
+
|
| 5926 |
+
$export($export.S, 'Math', {
|
| 5927 |
+
hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars
|
| 5928 |
+
var sum = 0;
|
| 5929 |
+
var i = 0;
|
| 5930 |
+
var aLen = arguments.length;
|
| 5931 |
+
var larg = 0;
|
| 5932 |
+
var arg, div;
|
| 5933 |
+
while (i < aLen) {
|
| 5934 |
+
arg = abs(arguments[i++]);
|
| 5935 |
+
if (larg < arg) {
|
| 5936 |
+
div = larg / arg;
|
| 5937 |
+
sum = sum * div * div + 1;
|
| 5938 |
+
larg = arg;
|
| 5939 |
+
} else if (arg > 0) {
|
| 5940 |
+
div = arg / larg;
|
| 5941 |
+
sum += div * div;
|
| 5942 |
+
} else sum += arg;
|
| 5943 |
+
}
|
| 5944 |
+
return larg === Infinity ? Infinity : larg * Math.sqrt(sum);
|
| 5945 |
+
}
|
| 5946 |
+
});
|
| 5947 |
+
|
| 5948 |
+
|
| 5949 |
+
/***/ }),
|
| 5950 |
+
|
| 5951 |
+
/***/ "./node_modules/core-js/modules/es6.math.imul.js":
|
| 5952 |
+
/*!*******************************************************!*\
|
| 5953 |
+
!*** ./node_modules/core-js/modules/es6.math.imul.js ***!
|
| 5954 |
+
\*******************************************************/
|
| 5955 |
+
/*! no static exports found */
|
| 5956 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5957 |
+
|
| 5958 |
+
// 20.2.2.18 Math.imul(x, y)
|
| 5959 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5960 |
+
var $imul = Math.imul;
|
| 5961 |
+
|
| 5962 |
+
// some WebKit versions fails with big numbers, some has wrong arity
|
| 5963 |
+
$export($export.S + $export.F * __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 5964 |
+
return $imul(0xffffffff, 5) != -5 || $imul.length != 2;
|
| 5965 |
+
}), 'Math', {
|
| 5966 |
+
imul: function imul(x, y) {
|
| 5967 |
+
var UINT16 = 0xffff;
|
| 5968 |
+
var xn = +x;
|
| 5969 |
+
var yn = +y;
|
| 5970 |
+
var xl = UINT16 & xn;
|
| 5971 |
+
var yl = UINT16 & yn;
|
| 5972 |
+
return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);
|
| 5973 |
+
}
|
| 5974 |
+
});
|
| 5975 |
+
|
| 5976 |
+
|
| 5977 |
+
/***/ }),
|
| 5978 |
+
|
| 5979 |
+
/***/ "./node_modules/core-js/modules/es6.math.log10.js":
|
| 5980 |
+
/*!********************************************************!*\
|
| 5981 |
+
!*** ./node_modules/core-js/modules/es6.math.log10.js ***!
|
| 5982 |
+
\********************************************************/
|
| 5983 |
+
/*! no static exports found */
|
| 5984 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 5985 |
+
|
| 5986 |
+
// 20.2.2.21 Math.log10(x)
|
| 5987 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 5988 |
+
|
| 5989 |
+
$export($export.S, 'Math', {
|
| 5990 |
+
log10: function log10(x) {
|
| 5991 |
+
return Math.log(x) * Math.LOG10E;
|
| 5992 |
+
}
|
| 5993 |
+
});
|
| 5994 |
+
|
| 5995 |
+
|
| 5996 |
+
/***/ }),
|
| 5997 |
+
|
| 5998 |
+
/***/ "./node_modules/core-js/modules/es6.math.log1p.js":
|
| 5999 |
+
/*!********************************************************!*\
|
| 6000 |
+
!*** ./node_modules/core-js/modules/es6.math.log1p.js ***!
|
| 6001 |
+
\********************************************************/
|
| 6002 |
+
/*! no static exports found */
|
| 6003 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6004 |
+
|
| 6005 |
+
// 20.2.2.20 Math.log1p(x)
|
| 6006 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6007 |
+
|
| 6008 |
+
$export($export.S, 'Math', { log1p: __webpack_require__(/*! ./_math-log1p */ "./node_modules/core-js/modules/_math-log1p.js") });
|
| 6009 |
+
|
| 6010 |
+
|
| 6011 |
+
/***/ }),
|
| 6012 |
+
|
| 6013 |
+
/***/ "./node_modules/core-js/modules/es6.math.log2.js":
|
| 6014 |
+
/*!*******************************************************!*\
|
| 6015 |
+
!*** ./node_modules/core-js/modules/es6.math.log2.js ***!
|
| 6016 |
+
\*******************************************************/
|
| 6017 |
+
/*! no static exports found */
|
| 6018 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6019 |
+
|
| 6020 |
+
// 20.2.2.22 Math.log2(x)
|
| 6021 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6022 |
+
|
| 6023 |
+
$export($export.S, 'Math', {
|
| 6024 |
+
log2: function log2(x) {
|
| 6025 |
+
return Math.log(x) / Math.LN2;
|
| 6026 |
+
}
|
| 6027 |
+
});
|
| 6028 |
+
|
| 6029 |
+
|
| 6030 |
+
/***/ }),
|
| 6031 |
+
|
| 6032 |
+
/***/ "./node_modules/core-js/modules/es6.math.sign.js":
|
| 6033 |
+
/*!*******************************************************!*\
|
| 6034 |
+
!*** ./node_modules/core-js/modules/es6.math.sign.js ***!
|
| 6035 |
+
\*******************************************************/
|
| 6036 |
+
/*! no static exports found */
|
| 6037 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6038 |
+
|
| 6039 |
+
// 20.2.2.28 Math.sign(x)
|
| 6040 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6041 |
+
|
| 6042 |
+
$export($export.S, 'Math', { sign: __webpack_require__(/*! ./_math-sign */ "./node_modules/core-js/modules/_math-sign.js") });
|
| 6043 |
+
|
| 6044 |
+
|
| 6045 |
+
/***/ }),
|
| 6046 |
+
|
| 6047 |
+
/***/ "./node_modules/core-js/modules/es6.math.sinh.js":
|
| 6048 |
+
/*!*******************************************************!*\
|
| 6049 |
+
!*** ./node_modules/core-js/modules/es6.math.sinh.js ***!
|
| 6050 |
+
\*******************************************************/
|
| 6051 |
+
/*! no static exports found */
|
| 6052 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6053 |
+
|
| 6054 |
+
// 20.2.2.30 Math.sinh(x)
|
| 6055 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6056 |
+
var expm1 = __webpack_require__(/*! ./_math-expm1 */ "./node_modules/core-js/modules/_math-expm1.js");
|
| 6057 |
+
var exp = Math.exp;
|
| 6058 |
+
|
| 6059 |
+
// V8 near Chromium 38 has a problem with very small numbers
|
| 6060 |
+
$export($export.S + $export.F * __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 6061 |
+
return !Math.sinh(-2e-17) != -2e-17;
|
| 6062 |
+
}), 'Math', {
|
| 6063 |
+
sinh: function sinh(x) {
|
| 6064 |
+
return Math.abs(x = +x) < 1
|
| 6065 |
+
? (expm1(x) - expm1(-x)) / 2
|
| 6066 |
+
: (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);
|
| 6067 |
+
}
|
| 6068 |
+
});
|
| 6069 |
+
|
| 6070 |
+
|
| 6071 |
+
/***/ }),
|
| 6072 |
+
|
| 6073 |
+
/***/ "./node_modules/core-js/modules/es6.math.tanh.js":
|
| 6074 |
+
/*!*******************************************************!*\
|
| 6075 |
+
!*** ./node_modules/core-js/modules/es6.math.tanh.js ***!
|
| 6076 |
+
\*******************************************************/
|
| 6077 |
+
/*! no static exports found */
|
| 6078 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6079 |
+
|
| 6080 |
+
// 20.2.2.33 Math.tanh(x)
|
| 6081 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6082 |
+
var expm1 = __webpack_require__(/*! ./_math-expm1 */ "./node_modules/core-js/modules/_math-expm1.js");
|
| 6083 |
+
var exp = Math.exp;
|
| 6084 |
+
|
| 6085 |
+
$export($export.S, 'Math', {
|
| 6086 |
+
tanh: function tanh(x) {
|
| 6087 |
+
var a = expm1(x = +x);
|
| 6088 |
+
var b = expm1(-x);
|
| 6089 |
+
return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));
|
| 6090 |
+
}
|
| 6091 |
+
});
|
| 6092 |
+
|
| 6093 |
+
|
| 6094 |
+
/***/ }),
|
| 6095 |
+
|
| 6096 |
+
/***/ "./node_modules/core-js/modules/es6.math.trunc.js":
|
| 6097 |
+
/*!********************************************************!*\
|
| 6098 |
+
!*** ./node_modules/core-js/modules/es6.math.trunc.js ***!
|
| 6099 |
+
\********************************************************/
|
| 6100 |
+
/*! no static exports found */
|
| 6101 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6102 |
+
|
| 6103 |
+
// 20.2.2.34 Math.trunc(x)
|
| 6104 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6105 |
+
|
| 6106 |
+
$export($export.S, 'Math', {
|
| 6107 |
+
trunc: function trunc(it) {
|
| 6108 |
+
return (it > 0 ? Math.floor : Math.ceil)(it);
|
| 6109 |
+
}
|
| 6110 |
+
});
|
| 6111 |
+
|
| 6112 |
+
|
| 6113 |
+
/***/ }),
|
| 6114 |
+
|
| 6115 |
+
/***/ "./node_modules/core-js/modules/es6.number.constructor.js":
|
| 6116 |
+
/*!****************************************************************!*\
|
| 6117 |
+
!*** ./node_modules/core-js/modules/es6.number.constructor.js ***!
|
| 6118 |
+
\****************************************************************/
|
| 6119 |
+
/*! no static exports found */
|
| 6120 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6121 |
+
|
| 6122 |
+
"use strict";
|
| 6123 |
+
|
| 6124 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 6125 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 6126 |
+
var cof = __webpack_require__(/*! ./_cof */ "./node_modules/core-js/modules/_cof.js");
|
| 6127 |
+
var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "./node_modules/core-js/modules/_inherit-if-required.js");
|
| 6128 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/modules/_to-primitive.js");
|
| 6129 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 6130 |
+
var gOPN = __webpack_require__(/*! ./_object-gopn */ "./node_modules/core-js/modules/_object-gopn.js").f;
|
| 6131 |
+
var gOPD = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js").f;
|
| 6132 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f;
|
| 6133 |
+
var $trim = __webpack_require__(/*! ./_string-trim */ "./node_modules/core-js/modules/_string-trim.js").trim;
|
| 6134 |
+
var NUMBER = 'Number';
|
| 6135 |
+
var $Number = global[NUMBER];
|
| 6136 |
+
var Base = $Number;
|
| 6137 |
+
var proto = $Number.prototype;
|
| 6138 |
+
// Opera ~12 has broken Object#toString
|
| 6139 |
+
var BROKEN_COF = cof(__webpack_require__(/*! ./_object-create */ "./node_modules/core-js/modules/_object-create.js")(proto)) == NUMBER;
|
| 6140 |
+
var TRIM = 'trim' in String.prototype;
|
| 6141 |
+
|
| 6142 |
+
// 7.1.3 ToNumber(argument)
|
| 6143 |
+
var toNumber = function (argument) {
|
| 6144 |
+
var it = toPrimitive(argument, false);
|
| 6145 |
+
if (typeof it == 'string' && it.length > 2) {
|
| 6146 |
+
it = TRIM ? it.trim() : $trim(it, 3);
|
| 6147 |
+
var first = it.charCodeAt(0);
|
| 6148 |
+
var third, radix, maxCode;
|
| 6149 |
+
if (first === 43 || first === 45) {
|
| 6150 |
+
third = it.charCodeAt(2);
|
| 6151 |
+
if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix
|
| 6152 |
+
} else if (first === 48) {
|
| 6153 |
+
switch (it.charCodeAt(1)) {
|
| 6154 |
+
case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
|
| 6155 |
+
case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
|
| 6156 |
+
default: return +it;
|
| 6157 |
+
}
|
| 6158 |
+
for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {
|
| 6159 |
+
code = digits.charCodeAt(i);
|
| 6160 |
+
// parseInt parses a string to a first unavailable symbol
|
| 6161 |
+
// but ToNumber should return NaN if a string contains unavailable symbols
|
| 6162 |
+
if (code < 48 || code > maxCode) return NaN;
|
| 6163 |
+
} return parseInt(digits, radix);
|
| 6164 |
+
}
|
| 6165 |
+
} return +it;
|
| 6166 |
+
};
|
| 6167 |
+
|
| 6168 |
+
if (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {
|
| 6169 |
+
$Number = function Number(value) {
|
| 6170 |
+
var it = arguments.length < 1 ? 0 : value;
|
| 6171 |
+
var that = this;
|
| 6172 |
+
return that instanceof $Number
|
| 6173 |
+
// check on 1..constructor(foo) case
|
| 6174 |
+
&& (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)
|
| 6175 |
+
? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);
|
| 6176 |
+
};
|
| 6177 |
+
for (var keys = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") ? gOPN(Base) : (
|
| 6178 |
+
// ES3:
|
| 6179 |
+
'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
|
| 6180 |
+
// ES6 (in case, if modules with ES6 Number statics required before):
|
| 6181 |
+
'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
|
| 6182 |
+
'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
|
| 6183 |
+
).split(','), j = 0, key; keys.length > j; j++) {
|
| 6184 |
+
if (has(Base, key = keys[j]) && !has($Number, key)) {
|
| 6185 |
+
dP($Number, key, gOPD(Base, key));
|
| 6186 |
+
}
|
| 6187 |
+
}
|
| 6188 |
+
$Number.prototype = proto;
|
| 6189 |
+
proto.constructor = $Number;
|
| 6190 |
+
__webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js")(global, NUMBER, $Number);
|
| 6191 |
+
}
|
| 6192 |
+
|
| 6193 |
+
|
| 6194 |
+
/***/ }),
|
| 6195 |
+
|
| 6196 |
+
/***/ "./node_modules/core-js/modules/es6.number.epsilon.js":
|
| 6197 |
+
/*!************************************************************!*\
|
| 6198 |
+
!*** ./node_modules/core-js/modules/es6.number.epsilon.js ***!
|
| 6199 |
+
\************************************************************/
|
| 6200 |
+
/*! no static exports found */
|
| 6201 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6202 |
+
|
| 6203 |
+
// 20.1.2.1 Number.EPSILON
|
| 6204 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6205 |
+
|
| 6206 |
+
$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) });
|
| 6207 |
+
|
| 6208 |
+
|
| 6209 |
+
/***/ }),
|
| 6210 |
+
|
| 6211 |
+
/***/ "./node_modules/core-js/modules/es6.number.is-finite.js":
|
| 6212 |
+
/*!**************************************************************!*\
|
| 6213 |
+
!*** ./node_modules/core-js/modules/es6.number.is-finite.js ***!
|
| 6214 |
+
\**************************************************************/
|
| 6215 |
+
/*! no static exports found */
|
| 6216 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6217 |
+
|
| 6218 |
+
// 20.1.2.2 Number.isFinite(number)
|
| 6219 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6220 |
+
var _isFinite = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").isFinite;
|
| 6221 |
+
|
| 6222 |
+
$export($export.S, 'Number', {
|
| 6223 |
+
isFinite: function isFinite(it) {
|
| 6224 |
+
return typeof it == 'number' && _isFinite(it);
|
| 6225 |
+
}
|
| 6226 |
+
});
|
| 6227 |
+
|
| 6228 |
+
|
| 6229 |
+
/***/ }),
|
| 6230 |
+
|
| 6231 |
+
/***/ "./node_modules/core-js/modules/es6.number.is-integer.js":
|
| 6232 |
+
/*!***************************************************************!*\
|
| 6233 |
+
!*** ./node_modules/core-js/modules/es6.number.is-integer.js ***!
|
| 6234 |
+
\***************************************************************/
|
| 6235 |
+
/*! no static exports found */
|
| 6236 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6237 |
+
|
| 6238 |
+
// 20.1.2.3 Number.isInteger(number)
|
| 6239 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6240 |
+
|
| 6241 |
+
$export($export.S, 'Number', { isInteger: __webpack_require__(/*! ./_is-integer */ "./node_modules/core-js/modules/_is-integer.js") });
|
| 6242 |
+
|
| 6243 |
+
|
| 6244 |
+
/***/ }),
|
| 6245 |
+
|
| 6246 |
+
/***/ "./node_modules/core-js/modules/es6.number.is-nan.js":
|
| 6247 |
+
/*!***********************************************************!*\
|
| 6248 |
+
!*** ./node_modules/core-js/modules/es6.number.is-nan.js ***!
|
| 6249 |
+
\***********************************************************/
|
| 6250 |
+
/*! no static exports found */
|
| 6251 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6252 |
+
|
| 6253 |
+
// 20.1.2.4 Number.isNaN(number)
|
| 6254 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6255 |
+
|
| 6256 |
+
$export($export.S, 'Number', {
|
| 6257 |
+
isNaN: function isNaN(number) {
|
| 6258 |
+
// eslint-disable-next-line no-self-compare
|
| 6259 |
+
return number != number;
|
| 6260 |
+
}
|
| 6261 |
+
});
|
| 6262 |
+
|
| 6263 |
+
|
| 6264 |
+
/***/ }),
|
| 6265 |
+
|
| 6266 |
+
/***/ "./node_modules/core-js/modules/es6.number.is-safe-integer.js":
|
| 6267 |
+
/*!********************************************************************!*\
|
| 6268 |
+
!*** ./node_modules/core-js/modules/es6.number.is-safe-integer.js ***!
|
| 6269 |
+
\********************************************************************/
|
| 6270 |
+
/*! no static exports found */
|
| 6271 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6272 |
+
|
| 6273 |
+
// 20.1.2.5 Number.isSafeInteger(number)
|
| 6274 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6275 |
+
var isInteger = __webpack_require__(/*! ./_is-integer */ "./node_modules/core-js/modules/_is-integer.js");
|
| 6276 |
+
var abs = Math.abs;
|
| 6277 |
+
|
| 6278 |
+
$export($export.S, 'Number', {
|
| 6279 |
+
isSafeInteger: function isSafeInteger(number) {
|
| 6280 |
+
return isInteger(number) && abs(number) <= 0x1fffffffffffff;
|
| 6281 |
+
}
|
| 6282 |
+
});
|
| 6283 |
+
|
| 6284 |
+
|
| 6285 |
+
/***/ }),
|
| 6286 |
+
|
| 6287 |
+
/***/ "./node_modules/core-js/modules/es6.number.max-safe-integer.js":
|
| 6288 |
+
/*!*********************************************************************!*\
|
| 6289 |
+
!*** ./node_modules/core-js/modules/es6.number.max-safe-integer.js ***!
|
| 6290 |
+
\*********************************************************************/
|
| 6291 |
+
/*! no static exports found */
|
| 6292 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6293 |
+
|
| 6294 |
+
// 20.1.2.6 Number.MAX_SAFE_INTEGER
|
| 6295 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6296 |
+
|
| 6297 |
+
$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff });
|
| 6298 |
+
|
| 6299 |
+
|
| 6300 |
+
/***/ }),
|
| 6301 |
+
|
| 6302 |
+
/***/ "./node_modules/core-js/modules/es6.number.min-safe-integer.js":
|
| 6303 |
+
/*!*********************************************************************!*\
|
| 6304 |
+
!*** ./node_modules/core-js/modules/es6.number.min-safe-integer.js ***!
|
| 6305 |
+
\*********************************************************************/
|
| 6306 |
+
/*! no static exports found */
|
| 6307 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6308 |
+
|
| 6309 |
+
// 20.1.2.10 Number.MIN_SAFE_INTEGER
|
| 6310 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6311 |
+
|
| 6312 |
+
$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff });
|
| 6313 |
+
|
| 6314 |
+
|
| 6315 |
+
/***/ }),
|
| 6316 |
+
|
| 6317 |
+
/***/ "./node_modules/core-js/modules/es6.number.parse-float.js":
|
| 6318 |
+
/*!****************************************************************!*\
|
| 6319 |
+
!*** ./node_modules/core-js/modules/es6.number.parse-float.js ***!
|
| 6320 |
+
\****************************************************************/
|
| 6321 |
+
/*! no static exports found */
|
| 6322 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6323 |
+
|
| 6324 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6325 |
+
var $parseFloat = __webpack_require__(/*! ./_parse-float */ "./node_modules/core-js/modules/_parse-float.js");
|
| 6326 |
+
// 20.1.2.12 Number.parseFloat(string)
|
| 6327 |
+
$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat });
|
| 6328 |
+
|
| 6329 |
+
|
| 6330 |
+
/***/ }),
|
| 6331 |
+
|
| 6332 |
+
/***/ "./node_modules/core-js/modules/es6.number.parse-int.js":
|
| 6333 |
+
/*!**************************************************************!*\
|
| 6334 |
+
!*** ./node_modules/core-js/modules/es6.number.parse-int.js ***!
|
| 6335 |
+
\**************************************************************/
|
| 6336 |
+
/*! no static exports found */
|
| 6337 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6338 |
+
|
| 6339 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6340 |
+
var $parseInt = __webpack_require__(/*! ./_parse-int */ "./node_modules/core-js/modules/_parse-int.js");
|
| 6341 |
+
// 20.1.2.13 Number.parseInt(string, radix)
|
| 6342 |
+
$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt });
|
| 6343 |
+
|
| 6344 |
+
|
| 6345 |
+
/***/ }),
|
| 6346 |
+
|
| 6347 |
+
/***/ "./node_modules/core-js/modules/es6.number.to-fixed.js":
|
| 6348 |
+
/*!*************************************************************!*\
|
| 6349 |
+
!*** ./node_modules/core-js/modules/es6.number.to-fixed.js ***!
|
| 6350 |
+
\*************************************************************/
|
| 6351 |
+
/*! no static exports found */
|
| 6352 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6353 |
+
|
| 6354 |
+
"use strict";
|
| 6355 |
+
|
| 6356 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6357 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 6358 |
+
var aNumberValue = __webpack_require__(/*! ./_a-number-value */ "./node_modules/core-js/modules/_a-number-value.js");
|
| 6359 |
+
var repeat = __webpack_require__(/*! ./_string-repeat */ "./node_modules/core-js/modules/_string-repeat.js");
|
| 6360 |
+
var $toFixed = 1.0.toFixed;
|
| 6361 |
+
var floor = Math.floor;
|
| 6362 |
+
var data = [0, 0, 0, 0, 0, 0];
|
| 6363 |
+
var ERROR = 'Number.toFixed: incorrect invocation!';
|
| 6364 |
+
var ZERO = '0';
|
| 6365 |
+
|
| 6366 |
+
var multiply = function (n, c) {
|
| 6367 |
+
var i = -1;
|
| 6368 |
+
var c2 = c;
|
| 6369 |
+
while (++i < 6) {
|
| 6370 |
+
c2 += n * data[i];
|
| 6371 |
+
data[i] = c2 % 1e7;
|
| 6372 |
+
c2 = floor(c2 / 1e7);
|
| 6373 |
+
}
|
| 6374 |
+
};
|
| 6375 |
+
var divide = function (n) {
|
| 6376 |
+
var i = 6;
|
| 6377 |
+
var c = 0;
|
| 6378 |
+
while (--i >= 0) {
|
| 6379 |
+
c += data[i];
|
| 6380 |
+
data[i] = floor(c / n);
|
| 6381 |
+
c = (c % n) * 1e7;
|
| 6382 |
+
}
|
| 6383 |
+
};
|
| 6384 |
+
var numToString = function () {
|
| 6385 |
+
var i = 6;
|
| 6386 |
+
var s = '';
|
| 6387 |
+
while (--i >= 0) {
|
| 6388 |
+
if (s !== '' || i === 0 || data[i] !== 0) {
|
| 6389 |
+
var t = String(data[i]);
|
| 6390 |
+
s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t;
|
| 6391 |
+
}
|
| 6392 |
+
} return s;
|
| 6393 |
+
};
|
| 6394 |
+
var pow = function (x, n, acc) {
|
| 6395 |
+
return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);
|
| 6396 |
+
};
|
| 6397 |
+
var log = function (x) {
|
| 6398 |
+
var n = 0;
|
| 6399 |
+
var x2 = x;
|
| 6400 |
+
while (x2 >= 4096) {
|
| 6401 |
+
n += 12;
|
| 6402 |
+
x2 /= 4096;
|
| 6403 |
+
}
|
| 6404 |
+
while (x2 >= 2) {
|
| 6405 |
+
n += 1;
|
| 6406 |
+
x2 /= 2;
|
| 6407 |
+
} return n;
|
| 6408 |
+
};
|
| 6409 |
+
|
| 6410 |
+
$export($export.P + $export.F * (!!$toFixed && (
|
| 6411 |
+
0.00008.toFixed(3) !== '0.000' ||
|
| 6412 |
+
0.9.toFixed(0) !== '1' ||
|
| 6413 |
+
1.255.toFixed(2) !== '1.25' ||
|
| 6414 |
+
1000000000000000128.0.toFixed(0) !== '1000000000000000128'
|
| 6415 |
+
) || !__webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 6416 |
+
// V8 ~ Android 4.3-
|
| 6417 |
+
$toFixed.call({});
|
| 6418 |
+
})), 'Number', {
|
| 6419 |
+
toFixed: function toFixed(fractionDigits) {
|
| 6420 |
+
var x = aNumberValue(this, ERROR);
|
| 6421 |
+
var f = toInteger(fractionDigits);
|
| 6422 |
+
var s = '';
|
| 6423 |
+
var m = ZERO;
|
| 6424 |
+
var e, z, j, k;
|
| 6425 |
+
if (f < 0 || f > 20) throw RangeError(ERROR);
|
| 6426 |
+
// eslint-disable-next-line no-self-compare
|
| 6427 |
+
if (x != x) return 'NaN';
|
| 6428 |
+
if (x <= -1e21 || x >= 1e21) return String(x);
|
| 6429 |
+
if (x < 0) {
|
| 6430 |
+
s = '-';
|
| 6431 |
+
x = -x;
|
| 6432 |
+
}
|
| 6433 |
+
if (x > 1e-21) {
|
| 6434 |
+
e = log(x * pow(2, 69, 1)) - 69;
|
| 6435 |
+
z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);
|
| 6436 |
+
z *= 0x10000000000000;
|
| 6437 |
+
e = 52 - e;
|
| 6438 |
+
if (e > 0) {
|
| 6439 |
+
multiply(0, z);
|
| 6440 |
+
j = f;
|
| 6441 |
+
while (j >= 7) {
|
| 6442 |
+
multiply(1e7, 0);
|
| 6443 |
+
j -= 7;
|
| 6444 |
+
}
|
| 6445 |
+
multiply(pow(10, j, 1), 0);
|
| 6446 |
+
j = e - 1;
|
| 6447 |
+
while (j >= 23) {
|
| 6448 |
+
divide(1 << 23);
|
| 6449 |
+
j -= 23;
|
| 6450 |
+
}
|
| 6451 |
+
divide(1 << j);
|
| 6452 |
+
multiply(1, 1);
|
| 6453 |
+
divide(2);
|
| 6454 |
+
m = numToString();
|
| 6455 |
+
} else {
|
| 6456 |
+
multiply(0, z);
|
| 6457 |
+
multiply(1 << -e, 0);
|
| 6458 |
+
m = numToString() + repeat.call(ZERO, f);
|
| 6459 |
+
}
|
| 6460 |
+
}
|
| 6461 |
+
if (f > 0) {
|
| 6462 |
+
k = m.length;
|
| 6463 |
+
m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));
|
| 6464 |
+
} else {
|
| 6465 |
+
m = s + m;
|
| 6466 |
+
} return m;
|
| 6467 |
+
}
|
| 6468 |
+
});
|
| 6469 |
+
|
| 6470 |
+
|
| 6471 |
+
/***/ }),
|
| 6472 |
+
|
| 6473 |
+
/***/ "./node_modules/core-js/modules/es6.number.to-precision.js":
|
| 6474 |
+
/*!*****************************************************************!*\
|
| 6475 |
+
!*** ./node_modules/core-js/modules/es6.number.to-precision.js ***!
|
| 6476 |
+
\*****************************************************************/
|
| 6477 |
+
/*! no static exports found */
|
| 6478 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6479 |
+
|
| 6480 |
+
"use strict";
|
| 6481 |
+
|
| 6482 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6483 |
+
var $fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 6484 |
+
var aNumberValue = __webpack_require__(/*! ./_a-number-value */ "./node_modules/core-js/modules/_a-number-value.js");
|
| 6485 |
+
var $toPrecision = 1.0.toPrecision;
|
| 6486 |
+
|
| 6487 |
+
$export($export.P + $export.F * ($fails(function () {
|
| 6488 |
+
// IE7-
|
| 6489 |
+
return $toPrecision.call(1, undefined) !== '1';
|
| 6490 |
+
}) || !$fails(function () {
|
| 6491 |
+
// V8 ~ Android 4.3-
|
| 6492 |
+
$toPrecision.call({});
|
| 6493 |
+
})), 'Number', {
|
| 6494 |
+
toPrecision: function toPrecision(precision) {
|
| 6495 |
+
var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');
|
| 6496 |
+
return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision);
|
| 6497 |
+
}
|
| 6498 |
+
});
|
| 6499 |
+
|
| 6500 |
+
|
| 6501 |
+
/***/ }),
|
| 6502 |
+
|
| 6503 |
+
/***/ "./node_modules/core-js/modules/es6.object.assign.js":
|
| 6504 |
+
/*!***********************************************************!*\
|
| 6505 |
+
!*** ./node_modules/core-js/modules/es6.object.assign.js ***!
|
| 6506 |
+
\***********************************************************/
|
| 6507 |
+
/*! no static exports found */
|
| 6508 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6509 |
+
|
| 6510 |
+
// 19.1.3.1 Object.assign(target, source)
|
| 6511 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6512 |
+
|
| 6513 |
+
$export($export.S + $export.F, 'Object', { assign: __webpack_require__(/*! ./_object-assign */ "./node_modules/core-js/modules/_object-assign.js") });
|
| 6514 |
+
|
| 6515 |
+
|
| 6516 |
+
/***/ }),
|
| 6517 |
+
|
| 6518 |
+
/***/ "./node_modules/core-js/modules/es6.object.create.js":
|
| 6519 |
+
/*!***********************************************************!*\
|
| 6520 |
+
!*** ./node_modules/core-js/modules/es6.object.create.js ***!
|
| 6521 |
+
\***********************************************************/
|
| 6522 |
+
/*! no static exports found */
|
| 6523 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6524 |
+
|
| 6525 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6526 |
+
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
|
| 6527 |
+
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "./node_modules/core-js/modules/_object-create.js") });
|
| 6528 |
+
|
| 6529 |
+
|
| 6530 |
+
/***/ }),
|
| 6531 |
+
|
| 6532 |
+
/***/ "./node_modules/core-js/modules/es6.object.define-properties.js":
|
| 6533 |
+
/*!**********************************************************************!*\
|
| 6534 |
+
!*** ./node_modules/core-js/modules/es6.object.define-properties.js ***!
|
| 6535 |
+
\**********************************************************************/
|
| 6536 |
+
/*! no static exports found */
|
| 6537 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6538 |
+
|
| 6539 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6540 |
+
// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
|
| 6541 |
+
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js"), 'Object', { defineProperties: __webpack_require__(/*! ./_object-dps */ "./node_modules/core-js/modules/_object-dps.js") });
|
| 6542 |
+
|
| 6543 |
+
|
| 6544 |
+
/***/ }),
|
| 6545 |
+
|
| 6546 |
+
/***/ "./node_modules/core-js/modules/es6.object.define-property.js":
|
| 6547 |
+
/*!********************************************************************!*\
|
| 6548 |
+
!*** ./node_modules/core-js/modules/es6.object.define-property.js ***!
|
| 6549 |
+
\********************************************************************/
|
| 6550 |
+
/*! no static exports found */
|
| 6551 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6552 |
+
|
| 6553 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6554 |
+
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
|
| 6555 |
+
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f });
|
| 6556 |
+
|
| 6557 |
+
|
| 6558 |
+
/***/ }),
|
| 6559 |
+
|
| 6560 |
+
/***/ "./node_modules/core-js/modules/es6.object.freeze.js":
|
| 6561 |
+
/*!***********************************************************!*\
|
| 6562 |
+
!*** ./node_modules/core-js/modules/es6.object.freeze.js ***!
|
| 6563 |
+
\***********************************************************/
|
| 6564 |
+
/*! no static exports found */
|
| 6565 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6566 |
+
|
| 6567 |
+
// 19.1.2.5 Object.freeze(O)
|
| 6568 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 6569 |
+
var meta = __webpack_require__(/*! ./_meta */ "./node_modules/core-js/modules/_meta.js").onFreeze;
|
| 6570 |
+
|
| 6571 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('freeze', function ($freeze) {
|
| 6572 |
+
return function freeze(it) {
|
| 6573 |
+
return $freeze && isObject(it) ? $freeze(meta(it)) : it;
|
| 6574 |
+
};
|
| 6575 |
+
});
|
| 6576 |
+
|
| 6577 |
+
|
| 6578 |
+
/***/ }),
|
| 6579 |
+
|
| 6580 |
+
/***/ "./node_modules/core-js/modules/es6.object.get-own-property-descriptor.js":
|
| 6581 |
+
/*!********************************************************************************!*\
|
| 6582 |
+
!*** ./node_modules/core-js/modules/es6.object.get-own-property-descriptor.js ***!
|
| 6583 |
+
\********************************************************************************/
|
| 6584 |
+
/*! no static exports found */
|
| 6585 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6586 |
+
|
| 6587 |
+
// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
|
| 6588 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 6589 |
+
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js").f;
|
| 6590 |
+
|
| 6591 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
|
| 6592 |
+
return function getOwnPropertyDescriptor(it, key) {
|
| 6593 |
+
return $getOwnPropertyDescriptor(toIObject(it), key);
|
| 6594 |
+
};
|
| 6595 |
+
});
|
| 6596 |
+
|
| 6597 |
+
|
| 6598 |
+
/***/ }),
|
| 6599 |
+
|
| 6600 |
+
/***/ "./node_modules/core-js/modules/es6.object.get-own-property-names.js":
|
| 6601 |
+
/*!***************************************************************************!*\
|
| 6602 |
+
!*** ./node_modules/core-js/modules/es6.object.get-own-property-names.js ***!
|
| 6603 |
+
\***************************************************************************/
|
| 6604 |
+
/*! no static exports found */
|
| 6605 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6606 |
+
|
| 6607 |
+
// 19.1.2.7 Object.getOwnPropertyNames(O)
|
| 6608 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('getOwnPropertyNames', function () {
|
| 6609 |
+
return __webpack_require__(/*! ./_object-gopn-ext */ "./node_modules/core-js/modules/_object-gopn-ext.js").f;
|
| 6610 |
+
});
|
| 6611 |
+
|
| 6612 |
+
|
| 6613 |
+
/***/ }),
|
| 6614 |
+
|
| 6615 |
+
/***/ "./node_modules/core-js/modules/es6.object.get-prototype-of.js":
|
| 6616 |
+
/*!*********************************************************************!*\
|
| 6617 |
+
!*** ./node_modules/core-js/modules/es6.object.get-prototype-of.js ***!
|
| 6618 |
+
\*********************************************************************/
|
| 6619 |
+
/*! no static exports found */
|
| 6620 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6621 |
+
|
| 6622 |
+
// 19.1.2.9 Object.getPrototypeOf(O)
|
| 6623 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 6624 |
+
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "./node_modules/core-js/modules/_object-gpo.js");
|
| 6625 |
+
|
| 6626 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('getPrototypeOf', function () {
|
| 6627 |
+
return function getPrototypeOf(it) {
|
| 6628 |
+
return $getPrototypeOf(toObject(it));
|
| 6629 |
+
};
|
| 6630 |
+
});
|
| 6631 |
+
|
| 6632 |
+
|
| 6633 |
+
/***/ }),
|
| 6634 |
+
|
| 6635 |
+
/***/ "./node_modules/core-js/modules/es6.object.is-extensible.js":
|
| 6636 |
+
/*!******************************************************************!*\
|
| 6637 |
+
!*** ./node_modules/core-js/modules/es6.object.is-extensible.js ***!
|
| 6638 |
+
\******************************************************************/
|
| 6639 |
+
/*! no static exports found */
|
| 6640 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6641 |
+
|
| 6642 |
+
// 19.1.2.11 Object.isExtensible(O)
|
| 6643 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 6644 |
+
|
| 6645 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('isExtensible', function ($isExtensible) {
|
| 6646 |
+
return function isExtensible(it) {
|
| 6647 |
+
return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;
|
| 6648 |
+
};
|
| 6649 |
+
});
|
| 6650 |
+
|
| 6651 |
+
|
| 6652 |
+
/***/ }),
|
| 6653 |
+
|
| 6654 |
+
/***/ "./node_modules/core-js/modules/es6.object.is-frozen.js":
|
| 6655 |
+
/*!**************************************************************!*\
|
| 6656 |
+
!*** ./node_modules/core-js/modules/es6.object.is-frozen.js ***!
|
| 6657 |
+
\**************************************************************/
|
| 6658 |
+
/*! no static exports found */
|
| 6659 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6660 |
+
|
| 6661 |
+
// 19.1.2.12 Object.isFrozen(O)
|
| 6662 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 6663 |
+
|
| 6664 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('isFrozen', function ($isFrozen) {
|
| 6665 |
+
return function isFrozen(it) {
|
| 6666 |
+
return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;
|
| 6667 |
+
};
|
| 6668 |
+
});
|
| 6669 |
+
|
| 6670 |
+
|
| 6671 |
+
/***/ }),
|
| 6672 |
+
|
| 6673 |
+
/***/ "./node_modules/core-js/modules/es6.object.is-sealed.js":
|
| 6674 |
+
/*!**************************************************************!*\
|
| 6675 |
+
!*** ./node_modules/core-js/modules/es6.object.is-sealed.js ***!
|
| 6676 |
+
\**************************************************************/
|
| 6677 |
+
/*! no static exports found */
|
| 6678 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6679 |
+
|
| 6680 |
+
// 19.1.2.13 Object.isSealed(O)
|
| 6681 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 6682 |
+
|
| 6683 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('isSealed', function ($isSealed) {
|
| 6684 |
+
return function isSealed(it) {
|
| 6685 |
+
return isObject(it) ? $isSealed ? $isSealed(it) : false : true;
|
| 6686 |
+
};
|
| 6687 |
+
});
|
| 6688 |
+
|
| 6689 |
+
|
| 6690 |
+
/***/ }),
|
| 6691 |
+
|
| 6692 |
+
/***/ "./node_modules/core-js/modules/es6.object.is.js":
|
| 6693 |
+
/*!*******************************************************!*\
|
| 6694 |
+
!*** ./node_modules/core-js/modules/es6.object.is.js ***!
|
| 6695 |
+
\*******************************************************/
|
| 6696 |
+
/*! no static exports found */
|
| 6697 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6698 |
+
|
| 6699 |
+
// 19.1.3.10 Object.is(value1, value2)
|
| 6700 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6701 |
+
$export($export.S, 'Object', { is: __webpack_require__(/*! ./_same-value */ "./node_modules/core-js/modules/_same-value.js") });
|
| 6702 |
+
|
| 6703 |
+
|
| 6704 |
+
/***/ }),
|
| 6705 |
+
|
| 6706 |
+
/***/ "./node_modules/core-js/modules/es6.object.keys.js":
|
| 6707 |
+
/*!*********************************************************!*\
|
| 6708 |
+
!*** ./node_modules/core-js/modules/es6.object.keys.js ***!
|
| 6709 |
+
\*********************************************************/
|
| 6710 |
+
/*! no static exports found */
|
| 6711 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6712 |
+
|
| 6713 |
+
// 19.1.2.14 Object.keys(O)
|
| 6714 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 6715 |
+
var $keys = __webpack_require__(/*! ./_object-keys */ "./node_modules/core-js/modules/_object-keys.js");
|
| 6716 |
+
|
| 6717 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('keys', function () {
|
| 6718 |
+
return function keys(it) {
|
| 6719 |
+
return $keys(toObject(it));
|
| 6720 |
+
};
|
| 6721 |
+
});
|
| 6722 |
+
|
| 6723 |
+
|
| 6724 |
+
/***/ }),
|
| 6725 |
+
|
| 6726 |
+
/***/ "./node_modules/core-js/modules/es6.object.prevent-extensions.js":
|
| 6727 |
+
/*!***********************************************************************!*\
|
| 6728 |
+
!*** ./node_modules/core-js/modules/es6.object.prevent-extensions.js ***!
|
| 6729 |
+
\***********************************************************************/
|
| 6730 |
+
/*! no static exports found */
|
| 6731 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6732 |
+
|
| 6733 |
+
// 19.1.2.15 Object.preventExtensions(O)
|
| 6734 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 6735 |
+
var meta = __webpack_require__(/*! ./_meta */ "./node_modules/core-js/modules/_meta.js").onFreeze;
|
| 6736 |
+
|
| 6737 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('preventExtensions', function ($preventExtensions) {
|
| 6738 |
+
return function preventExtensions(it) {
|
| 6739 |
+
return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;
|
| 6740 |
+
};
|
| 6741 |
+
});
|
| 6742 |
+
|
| 6743 |
+
|
| 6744 |
+
/***/ }),
|
| 6745 |
+
|
| 6746 |
+
/***/ "./node_modules/core-js/modules/es6.object.seal.js":
|
| 6747 |
+
/*!*********************************************************!*\
|
| 6748 |
+
!*** ./node_modules/core-js/modules/es6.object.seal.js ***!
|
| 6749 |
+
\*********************************************************/
|
| 6750 |
+
/*! no static exports found */
|
| 6751 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6752 |
+
|
| 6753 |
+
// 19.1.2.17 Object.seal(O)
|
| 6754 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 6755 |
+
var meta = __webpack_require__(/*! ./_meta */ "./node_modules/core-js/modules/_meta.js").onFreeze;
|
| 6756 |
+
|
| 6757 |
+
__webpack_require__(/*! ./_object-sap */ "./node_modules/core-js/modules/_object-sap.js")('seal', function ($seal) {
|
| 6758 |
+
return function seal(it) {
|
| 6759 |
+
return $seal && isObject(it) ? $seal(meta(it)) : it;
|
| 6760 |
+
};
|
| 6761 |
+
});
|
| 6762 |
+
|
| 6763 |
+
|
| 6764 |
+
/***/ }),
|
| 6765 |
+
|
| 6766 |
+
/***/ "./node_modules/core-js/modules/es6.object.set-prototype-of.js":
|
| 6767 |
+
/*!*********************************************************************!*\
|
| 6768 |
+
!*** ./node_modules/core-js/modules/es6.object.set-prototype-of.js ***!
|
| 6769 |
+
\*********************************************************************/
|
| 6770 |
+
/*! no static exports found */
|
| 6771 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6772 |
+
|
| 6773 |
+
// 19.1.3.19 Object.setPrototypeOf(O, proto)
|
| 6774 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6775 |
+
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "./node_modules/core-js/modules/_set-proto.js").set });
|
| 6776 |
+
|
| 6777 |
+
|
| 6778 |
+
/***/ }),
|
| 6779 |
+
|
| 6780 |
+
/***/ "./node_modules/core-js/modules/es6.object.to-string.js":
|
| 6781 |
+
/*!**************************************************************!*\
|
| 6782 |
+
!*** ./node_modules/core-js/modules/es6.object.to-string.js ***!
|
| 6783 |
+
\**************************************************************/
|
| 6784 |
+
/*! no static exports found */
|
| 6785 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6786 |
+
|
| 6787 |
+
"use strict";
|
| 6788 |
+
|
| 6789 |
+
// 19.1.3.6 Object.prototype.toString()
|
| 6790 |
+
var classof = __webpack_require__(/*! ./_classof */ "./node_modules/core-js/modules/_classof.js");
|
| 6791 |
+
var test = {};
|
| 6792 |
+
test[__webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
|
| 6793 |
+
if (test + '' != '[object z]') {
|
| 6794 |
+
__webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
|
| 6795 |
+
return '[object ' + classof(this) + ']';
|
| 6796 |
+
}, true);
|
| 6797 |
+
}
|
| 6798 |
+
|
| 6799 |
+
|
| 6800 |
+
/***/ }),
|
| 6801 |
+
|
| 6802 |
+
/***/ "./node_modules/core-js/modules/es6.parse-float.js":
|
| 6803 |
+
/*!*********************************************************!*\
|
| 6804 |
+
!*** ./node_modules/core-js/modules/es6.parse-float.js ***!
|
| 6805 |
+
\*********************************************************/
|
| 6806 |
+
/*! no static exports found */
|
| 6807 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6808 |
+
|
| 6809 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6810 |
+
var $parseFloat = __webpack_require__(/*! ./_parse-float */ "./node_modules/core-js/modules/_parse-float.js");
|
| 6811 |
+
// 18.2.4 parseFloat(string)
|
| 6812 |
+
$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat });
|
| 6813 |
+
|
| 6814 |
+
|
| 6815 |
+
/***/ }),
|
| 6816 |
+
|
| 6817 |
+
/***/ "./node_modules/core-js/modules/es6.parse-int.js":
|
| 6818 |
+
/*!*******************************************************!*\
|
| 6819 |
+
!*** ./node_modules/core-js/modules/es6.parse-int.js ***!
|
| 6820 |
+
\*******************************************************/
|
| 6821 |
+
/*! no static exports found */
|
| 6822 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6823 |
+
|
| 6824 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6825 |
+
var $parseInt = __webpack_require__(/*! ./_parse-int */ "./node_modules/core-js/modules/_parse-int.js");
|
| 6826 |
+
// 18.2.5 parseInt(string, radix)
|
| 6827 |
+
$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });
|
| 6828 |
+
|
| 6829 |
+
|
| 6830 |
+
/***/ }),
|
| 6831 |
+
|
| 6832 |
+
/***/ "./node_modules/core-js/modules/es6.promise.js":
|
| 6833 |
+
/*!*****************************************************!*\
|
| 6834 |
+
!*** ./node_modules/core-js/modules/es6.promise.js ***!
|
| 6835 |
+
\*****************************************************/
|
| 6836 |
+
/*! no static exports found */
|
| 6837 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 6838 |
+
|
| 6839 |
+
"use strict";
|
| 6840 |
+
|
| 6841 |
+
var LIBRARY = __webpack_require__(/*! ./_library */ "./node_modules/core-js/modules/_library.js");
|
| 6842 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 6843 |
+
var ctx = __webpack_require__(/*! ./_ctx */ "./node_modules/core-js/modules/_ctx.js");
|
| 6844 |
+
var classof = __webpack_require__(/*! ./_classof */ "./node_modules/core-js/modules/_classof.js");
|
| 6845 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 6846 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 6847 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 6848 |
+
var anInstance = __webpack_require__(/*! ./_an-instance */ "./node_modules/core-js/modules/_an-instance.js");
|
| 6849 |
+
var forOf = __webpack_require__(/*! ./_for-of */ "./node_modules/core-js/modules/_for-of.js");
|
| 6850 |
+
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "./node_modules/core-js/modules/_species-constructor.js");
|
| 6851 |
+
var task = __webpack_require__(/*! ./_task */ "./node_modules/core-js/modules/_task.js").set;
|
| 6852 |
+
var microtask = __webpack_require__(/*! ./_microtask */ "./node_modules/core-js/modules/_microtask.js")();
|
| 6853 |
+
var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "./node_modules/core-js/modules/_new-promise-capability.js");
|
| 6854 |
+
var perform = __webpack_require__(/*! ./_perform */ "./node_modules/core-js/modules/_perform.js");
|
| 6855 |
+
var userAgent = __webpack_require__(/*! ./_user-agent */ "./node_modules/core-js/modules/_user-agent.js");
|
| 6856 |
+
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "./node_modules/core-js/modules/_promise-resolve.js");
|
| 6857 |
+
var PROMISE = 'Promise';
|
| 6858 |
+
var TypeError = global.TypeError;
|
| 6859 |
+
var process = global.process;
|
| 6860 |
+
var versions = process && process.versions;
|
| 6861 |
+
var v8 = versions && versions.v8 || '';
|
| 6862 |
+
var $Promise = global[PROMISE];
|
| 6863 |
+
var isNode = classof(process) == 'process';
|
| 6864 |
+
var empty = function () { /* empty */ };
|
| 6865 |
+
var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
|
| 6866 |
+
var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;
|
| 6867 |
+
|
| 6868 |
+
var USE_NATIVE = !!function () {
|
| 6869 |
+
try {
|
| 6870 |
+
// correct subclassing with @@species support
|
| 6871 |
+
var promise = $Promise.resolve(1);
|
| 6872 |
+
var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('species')] = function (exec) {
|
| 6873 |
+
exec(empty, empty);
|
| 6874 |
+
};
|
| 6875 |
+
// unhandled rejections tracking support, NodeJS Promise without it fails @@species test
|
| 6876 |
+
return (isNode || typeof PromiseRejectionEvent == 'function')
|
| 6877 |
+
&& promise.then(empty) instanceof FakePromise
|
| 6878 |
+
// v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
|
| 6879 |
+
// https://bugs.chromium.org/p/chromium/issues/detail?id=830565
|
| 6880 |
+
// we can't detect it synchronously, so just check versions
|
| 6881 |
+
&& v8.indexOf('6.6') !== 0
|
| 6882 |
+
&& userAgent.indexOf('Chrome/66') === -1;
|
| 6883 |
+
} catch (e) { /* empty */ }
|
| 6884 |
+
}();
|
| 6885 |
+
|
| 6886 |
+
// helpers
|
| 6887 |
+
var isThenable = function (it) {
|
| 6888 |
+
var then;
|
| 6889 |
+
return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
|
| 6890 |
+
};
|
| 6891 |
+
var notify = function (promise, isReject) {
|
| 6892 |
+
if (promise._n) return;
|
| 6893 |
+
promise._n = true;
|
| 6894 |
+
var chain = promise._c;
|
| 6895 |
+
microtask(function () {
|
| 6896 |
+
var value = promise._v;
|
| 6897 |
+
var ok = promise._s == 1;
|
| 6898 |
+
var i = 0;
|
| 6899 |
+
var run = function (reaction) {
|
| 6900 |
+
var handler = ok ? reaction.ok : reaction.fail;
|
| 6901 |
+
var resolve = reaction.resolve;
|
| 6902 |
+
var reject = reaction.reject;
|
| 6903 |
+
var domain = reaction.domain;
|
| 6904 |
+
var result, then, exited;
|
| 6905 |
+
try {
|
| 6906 |
+
if (handler) {
|
| 6907 |
+
if (!ok) {
|
| 6908 |
+
if (promise._h == 2) onHandleUnhandled(promise);
|
| 6909 |
+
promise._h = 1;
|
| 6910 |
+
}
|
| 6911 |
+
if (handler === true) result = value;
|
| 6912 |
+
else {
|
| 6913 |
+
if (domain) domain.enter();
|
| 6914 |
+
result = handler(value); // may throw
|
| 6915 |
+
if (domain) {
|
| 6916 |
+
domain.exit();
|
| 6917 |
+
exited = true;
|
| 6918 |
+
}
|
| 6919 |
+
}
|
| 6920 |
+
if (result === reaction.promise) {
|
| 6921 |
+
reject(TypeError('Promise-chain cycle'));
|
| 6922 |
+
} else if (then = isThenable(result)) {
|
| 6923 |
+
then.call(result, resolve, reject);
|
| 6924 |
+
} else resolve(result);
|
| 6925 |
+
} else reject(value);
|
| 6926 |
+
} catch (e) {
|
| 6927 |
+
if (domain && !exited) domain.exit();
|
| 6928 |
+
reject(e);
|
| 6929 |
+
}
|
| 6930 |
+
};
|
| 6931 |
+
while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
|
| 6932 |
+
promise._c = [];
|
| 6933 |
+
promise._n = false;
|
| 6934 |
+
if (isReject && !promise._h) onUnhandled(promise);
|
| 6935 |
+
});
|
| 6936 |
+
};
|
| 6937 |
+
var onUnhandled = function (promise) {
|
| 6938 |
+
task.call(global, function () {
|
| 6939 |
+
var value = promise._v;
|
| 6940 |
+
var unhandled = isUnhandled(promise);
|
| 6941 |
+
var result, handler, console;
|
| 6942 |
+
if (unhandled) {
|
| 6943 |
+
result = perform(function () {
|
| 6944 |
+
if (isNode) {
|
| 6945 |
+
process.emit('unhandledRejection', value, promise);
|
| 6946 |
+
} else if (handler = global.onunhandledrejection) {
|
| 6947 |
+
handler({ promise: promise, reason: value });
|
| 6948 |
+
} else if ((console = global.console) && console.error) {
|
| 6949 |
+
console.error('Unhandled promise rejection', value);
|
| 6950 |
+
}
|
| 6951 |
+
});
|
| 6952 |
+
// Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
|
| 6953 |
+
promise._h = isNode || isUnhandled(promise) ? 2 : 1;
|
| 6954 |
+
} promise._a = undefined;
|
| 6955 |
+
if (unhandled && result.e) throw result.v;
|
| 6956 |
+
});
|
| 6957 |
+
};
|
| 6958 |
+
var isUnhandled = function (promise) {
|
| 6959 |
+
return promise._h !== 1 && (promise._a || promise._c).length === 0;
|
| 6960 |
+
};
|
| 6961 |
+
var onHandleUnhandled = function (promise) {
|
| 6962 |
+
task.call(global, function () {
|
| 6963 |
+
var handler;
|
| 6964 |
+
if (isNode) {
|
| 6965 |
+
process.emit('rejectionHandled', promise);
|
| 6966 |
+
} else if (handler = global.onrejectionhandled) {
|
| 6967 |
+
handler({ promise: promise, reason: promise._v });
|
| 6968 |
+
}
|
| 6969 |
+
});
|
| 6970 |
+
};
|
| 6971 |
+
var $reject = function (value) {
|
| 6972 |
+
var promise = this;
|
| 6973 |
+
if (promise._d) return;
|
| 6974 |
+
promise._d = true;
|
| 6975 |
+
promise = promise._w || promise; // unwrap
|
| 6976 |
+
promise._v = value;
|
| 6977 |
+
promise._s = 2;
|
| 6978 |
+
if (!promise._a) promise._a = promise._c.slice();
|
| 6979 |
+
notify(promise, true);
|
| 6980 |
+
};
|
| 6981 |
+
var $resolve = function (value) {
|
| 6982 |
+
var promise = this;
|
| 6983 |
+
var then;
|
| 6984 |
+
if (promise._d) return;
|
| 6985 |
+
promise._d = true;
|
| 6986 |
+
promise = promise._w || promise; // unwrap
|
| 6987 |
+
try {
|
| 6988 |
+
if (promise === value) throw TypeError("Promise can't be resolved itself");
|
| 6989 |
+
if (then = isThenable(value)) {
|
| 6990 |
+
microtask(function () {
|
| 6991 |
+
var wrapper = { _w: promise, _d: false }; // wrap
|
| 6992 |
+
try {
|
| 6993 |
+
then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
|
| 6994 |
+
} catch (e) {
|
| 6995 |
+
$reject.call(wrapper, e);
|
| 6996 |
+
}
|
| 6997 |
+
});
|
| 6998 |
+
} else {
|
| 6999 |
+
promise._v = value;
|
| 7000 |
+
promise._s = 1;
|
| 7001 |
+
notify(promise, false);
|
| 7002 |
+
}
|
| 7003 |
+
} catch (e) {
|
| 7004 |
+
$reject.call({ _w: promise, _d: false }, e); // wrap
|
| 7005 |
+
}
|
| 7006 |
+
};
|
| 7007 |
+
|
| 7008 |
+
// constructor polyfill
|
| 7009 |
+
if (!USE_NATIVE) {
|
| 7010 |
+
// 25.4.3.1 Promise(executor)
|
| 7011 |
+
$Promise = function Promise(executor) {
|
| 7012 |
+
anInstance(this, $Promise, PROMISE, '_h');
|
| 7013 |
+
aFunction(executor);
|
| 7014 |
+
Internal.call(this);
|
| 7015 |
+
try {
|
| 7016 |
+
executor(ctx($resolve, this, 1), ctx($reject, this, 1));
|
| 7017 |
+
} catch (err) {
|
| 7018 |
+
$reject.call(this, err);
|
| 7019 |
+
}
|
| 7020 |
+
};
|
| 7021 |
+
// eslint-disable-next-line no-unused-vars
|
| 7022 |
+
Internal = function Promise(executor) {
|
| 7023 |
+
this._c = []; // <- awaiting reactions
|
| 7024 |
+
this._a = undefined; // <- checked in isUnhandled reactions
|
| 7025 |
+
this._s = 0; // <- state
|
| 7026 |
+
this._d = false; // <- done
|
| 7027 |
+
this._v = undefined; // <- value
|
| 7028 |
+
this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
|
| 7029 |
+
this._n = false; // <- notify
|
| 7030 |
+
};
|
| 7031 |
+
Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "./node_modules/core-js/modules/_redefine-all.js")($Promise.prototype, {
|
| 7032 |
+
// 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
|
| 7033 |
+
then: function then(onFulfilled, onRejected) {
|
| 7034 |
+
var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
|
| 7035 |
+
reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
|
| 7036 |
+
reaction.fail = typeof onRejected == 'function' && onRejected;
|
| 7037 |
+
reaction.domain = isNode ? process.domain : undefined;
|
| 7038 |
+
this._c.push(reaction);
|
| 7039 |
+
if (this._a) this._a.push(reaction);
|
| 7040 |
+
if (this._s) notify(this, false);
|
| 7041 |
+
return reaction.promise;
|
| 7042 |
+
},
|
| 7043 |
+
// 25.4.5.1 Promise.prototype.catch(onRejected)
|
| 7044 |
+
'catch': function (onRejected) {
|
| 7045 |
+
return this.then(undefined, onRejected);
|
| 7046 |
+
}
|
| 7047 |
+
});
|
| 7048 |
+
OwnPromiseCapability = function () {
|
| 7049 |
+
var promise = new Internal();
|
| 7050 |
+
this.promise = promise;
|
| 7051 |
+
this.resolve = ctx($resolve, promise, 1);
|
| 7052 |
+
this.reject = ctx($reject, promise, 1);
|
| 7053 |
+
};
|
| 7054 |
+
newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
|
| 7055 |
+
return C === $Promise || C === Wrapper
|
| 7056 |
+
? new OwnPromiseCapability(C)
|
| 7057 |
+
: newGenericPromiseCapability(C);
|
| 7058 |
+
};
|
| 7059 |
+
}
|
| 7060 |
+
|
| 7061 |
+
$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
|
| 7062 |
+
__webpack_require__(/*! ./_set-to-string-tag */ "./node_modules/core-js/modules/_set-to-string-tag.js")($Promise, PROMISE);
|
| 7063 |
+
__webpack_require__(/*! ./_set-species */ "./node_modules/core-js/modules/_set-species.js")(PROMISE);
|
| 7064 |
+
Wrapper = __webpack_require__(/*! ./_core */ "./node_modules/core-js/modules/_core.js")[PROMISE];
|
| 7065 |
+
|
| 7066 |
+
// statics
|
| 7067 |
+
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
|
| 7068 |
+
// 25.4.4.5 Promise.reject(r)
|
| 7069 |
+
reject: function reject(r) {
|
| 7070 |
+
var capability = newPromiseCapability(this);
|
| 7071 |
+
var $$reject = capability.reject;
|
| 7072 |
+
$$reject(r);
|
| 7073 |
+
return capability.promise;
|
| 7074 |
+
}
|
| 7075 |
+
});
|
| 7076 |
+
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
|
| 7077 |
+
// 25.4.4.6 Promise.resolve(x)
|
| 7078 |
+
resolve: function resolve(x) {
|
| 7079 |
+
return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
|
| 7080 |
+
}
|
| 7081 |
+
});
|
| 7082 |
+
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "./node_modules/core-js/modules/_iter-detect.js")(function (iter) {
|
| 7083 |
+
$Promise.all(iter)['catch'](empty);
|
| 7084 |
+
})), PROMISE, {
|
| 7085 |
+
// 25.4.4.1 Promise.all(iterable)
|
| 7086 |
+
all: function all(iterable) {
|
| 7087 |
+
var C = this;
|
| 7088 |
+
var capability = newPromiseCapability(C);
|
| 7089 |
+
var resolve = capability.resolve;
|
| 7090 |
+
var reject = capability.reject;
|
| 7091 |
+
var result = perform(function () {
|
| 7092 |
+
var values = [];
|
| 7093 |
+
var index = 0;
|
| 7094 |
+
var remaining = 1;
|
| 7095 |
+
forOf(iterable, false, function (promise) {
|
| 7096 |
+
var $index = index++;
|
| 7097 |
+
var alreadyCalled = false;
|
| 7098 |
+
values.push(undefined);
|
| 7099 |
+
remaining++;
|
| 7100 |
+
C.resolve(promise).then(function (value) {
|
| 7101 |
+
if (alreadyCalled) return;
|
| 7102 |
+
alreadyCalled = true;
|
| 7103 |
+
values[$index] = value;
|
| 7104 |
+
--remaining || resolve(values);
|
| 7105 |
+
}, reject);
|
| 7106 |
+
});
|
| 7107 |
+
--remaining || resolve(values);
|
| 7108 |
+
});
|
| 7109 |
+
if (result.e) reject(result.v);
|
| 7110 |
+
return capability.promise;
|
| 7111 |
+
},
|
| 7112 |
+
// 25.4.4.4 Promise.race(iterable)
|
| 7113 |
+
race: function race(iterable) {
|
| 7114 |
+
var C = this;
|
| 7115 |
+
var capability = newPromiseCapability(C);
|
| 7116 |
+
var reject = capability.reject;
|
| 7117 |
+
var result = perform(function () {
|
| 7118 |
+
forOf(iterable, false, function (promise) {
|
| 7119 |
+
C.resolve(promise).then(capability.resolve, reject);
|
| 7120 |
+
});
|
| 7121 |
+
});
|
| 7122 |
+
if (result.e) reject(result.v);
|
| 7123 |
+
return capability.promise;
|
| 7124 |
+
}
|
| 7125 |
+
});
|
| 7126 |
+
|
| 7127 |
+
|
| 7128 |
+
/***/ }),
|
| 7129 |
+
|
| 7130 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.apply.js":
|
| 7131 |
+
/*!***********************************************************!*\
|
| 7132 |
+
!*** ./node_modules/core-js/modules/es6.reflect.apply.js ***!
|
| 7133 |
+
\***********************************************************/
|
| 7134 |
+
/*! no static exports found */
|
| 7135 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7136 |
+
|
| 7137 |
+
// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)
|
| 7138 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7139 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 7140 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7141 |
+
var rApply = (__webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").Reflect || {}).apply;
|
| 7142 |
+
var fApply = Function.apply;
|
| 7143 |
+
// MS Edge argumentsList argument is optional
|
| 7144 |
+
$export($export.S + $export.F * !__webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 7145 |
+
rApply(function () { /* empty */ });
|
| 7146 |
+
}), 'Reflect', {
|
| 7147 |
+
apply: function apply(target, thisArgument, argumentsList) {
|
| 7148 |
+
var T = aFunction(target);
|
| 7149 |
+
var L = anObject(argumentsList);
|
| 7150 |
+
return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L);
|
| 7151 |
+
}
|
| 7152 |
+
});
|
| 7153 |
+
|
| 7154 |
+
|
| 7155 |
+
/***/ }),
|
| 7156 |
+
|
| 7157 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.construct.js":
|
| 7158 |
+
/*!***************************************************************!*\
|
| 7159 |
+
!*** ./node_modules/core-js/modules/es6.reflect.construct.js ***!
|
| 7160 |
+
\***************************************************************/
|
| 7161 |
+
/*! no static exports found */
|
| 7162 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7163 |
+
|
| 7164 |
+
// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
|
| 7165 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7166 |
+
var create = __webpack_require__(/*! ./_object-create */ "./node_modules/core-js/modules/_object-create.js");
|
| 7167 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 7168 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7169 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 7170 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 7171 |
+
var bind = __webpack_require__(/*! ./_bind */ "./node_modules/core-js/modules/_bind.js");
|
| 7172 |
+
var rConstruct = (__webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").Reflect || {}).construct;
|
| 7173 |
+
|
| 7174 |
+
// MS Edge supports only 2 arguments and argumentsList argument is optional
|
| 7175 |
+
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
|
| 7176 |
+
var NEW_TARGET_BUG = fails(function () {
|
| 7177 |
+
function F() { /* empty */ }
|
| 7178 |
+
return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
|
| 7179 |
+
});
|
| 7180 |
+
var ARGS_BUG = !fails(function () {
|
| 7181 |
+
rConstruct(function () { /* empty */ });
|
| 7182 |
+
});
|
| 7183 |
+
|
| 7184 |
+
$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
|
| 7185 |
+
construct: function construct(Target, args /* , newTarget */) {
|
| 7186 |
+
aFunction(Target);
|
| 7187 |
+
anObject(args);
|
| 7188 |
+
var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
|
| 7189 |
+
if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
|
| 7190 |
+
if (Target == newTarget) {
|
| 7191 |
+
// w/o altered newTarget, optimization for 0-4 arguments
|
| 7192 |
+
switch (args.length) {
|
| 7193 |
+
case 0: return new Target();
|
| 7194 |
+
case 1: return new Target(args[0]);
|
| 7195 |
+
case 2: return new Target(args[0], args[1]);
|
| 7196 |
+
case 3: return new Target(args[0], args[1], args[2]);
|
| 7197 |
+
case 4: return new Target(args[0], args[1], args[2], args[3]);
|
| 7198 |
+
}
|
| 7199 |
+
// w/o altered newTarget, lot of arguments case
|
| 7200 |
+
var $args = [null];
|
| 7201 |
+
$args.push.apply($args, args);
|
| 7202 |
+
return new (bind.apply(Target, $args))();
|
| 7203 |
+
}
|
| 7204 |
+
// with altered newTarget, not support built-in constructors
|
| 7205 |
+
var proto = newTarget.prototype;
|
| 7206 |
+
var instance = create(isObject(proto) ? proto : Object.prototype);
|
| 7207 |
+
var result = Function.apply.call(Target, instance, args);
|
| 7208 |
+
return isObject(result) ? result : instance;
|
| 7209 |
+
}
|
| 7210 |
+
});
|
| 7211 |
+
|
| 7212 |
+
|
| 7213 |
+
/***/ }),
|
| 7214 |
+
|
| 7215 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.define-property.js":
|
| 7216 |
+
/*!*********************************************************************!*\
|
| 7217 |
+
!*** ./node_modules/core-js/modules/es6.reflect.define-property.js ***!
|
| 7218 |
+
\*********************************************************************/
|
| 7219 |
+
/*! no static exports found */
|
| 7220 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7221 |
+
|
| 7222 |
+
// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
|
| 7223 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js");
|
| 7224 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7225 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7226 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/modules/_to-primitive.js");
|
| 7227 |
+
|
| 7228 |
+
// MS Edge has broken Reflect.defineProperty - throwing instead of returning false
|
| 7229 |
+
$export($export.S + $export.F * __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 7230 |
+
// eslint-disable-next-line no-undef
|
| 7231 |
+
Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 });
|
| 7232 |
+
}), 'Reflect', {
|
| 7233 |
+
defineProperty: function defineProperty(target, propertyKey, attributes) {
|
| 7234 |
+
anObject(target);
|
| 7235 |
+
propertyKey = toPrimitive(propertyKey, true);
|
| 7236 |
+
anObject(attributes);
|
| 7237 |
+
try {
|
| 7238 |
+
dP.f(target, propertyKey, attributes);
|
| 7239 |
+
return true;
|
| 7240 |
+
} catch (e) {
|
| 7241 |
+
return false;
|
| 7242 |
+
}
|
| 7243 |
+
}
|
| 7244 |
+
});
|
| 7245 |
+
|
| 7246 |
+
|
| 7247 |
+
/***/ }),
|
| 7248 |
+
|
| 7249 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.delete-property.js":
|
| 7250 |
+
/*!*********************************************************************!*\
|
| 7251 |
+
!*** ./node_modules/core-js/modules/es6.reflect.delete-property.js ***!
|
| 7252 |
+
\*********************************************************************/
|
| 7253 |
+
/*! no static exports found */
|
| 7254 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7255 |
+
|
| 7256 |
+
// 26.1.4 Reflect.deleteProperty(target, propertyKey)
|
| 7257 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7258 |
+
var gOPD = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js").f;
|
| 7259 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7260 |
+
|
| 7261 |
+
$export($export.S, 'Reflect', {
|
| 7262 |
+
deleteProperty: function deleteProperty(target, propertyKey) {
|
| 7263 |
+
var desc = gOPD(anObject(target), propertyKey);
|
| 7264 |
+
return desc && !desc.configurable ? false : delete target[propertyKey];
|
| 7265 |
+
}
|
| 7266 |
+
});
|
| 7267 |
+
|
| 7268 |
+
|
| 7269 |
+
/***/ }),
|
| 7270 |
+
|
| 7271 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.enumerate.js":
|
| 7272 |
+
/*!***************************************************************!*\
|
| 7273 |
+
!*** ./node_modules/core-js/modules/es6.reflect.enumerate.js ***!
|
| 7274 |
+
\***************************************************************/
|
| 7275 |
+
/*! no static exports found */
|
| 7276 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7277 |
+
|
| 7278 |
+
"use strict";
|
| 7279 |
+
|
| 7280 |
+
// 26.1.5 Reflect.enumerate(target)
|
| 7281 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7282 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7283 |
+
var Enumerate = function (iterated) {
|
| 7284 |
+
this._t = anObject(iterated); // target
|
| 7285 |
+
this._i = 0; // next index
|
| 7286 |
+
var keys = this._k = []; // keys
|
| 7287 |
+
var key;
|
| 7288 |
+
for (key in iterated) keys.push(key);
|
| 7289 |
+
};
|
| 7290 |
+
__webpack_require__(/*! ./_iter-create */ "./node_modules/core-js/modules/_iter-create.js")(Enumerate, 'Object', function () {
|
| 7291 |
+
var that = this;
|
| 7292 |
+
var keys = that._k;
|
| 7293 |
+
var key;
|
| 7294 |
+
do {
|
| 7295 |
+
if (that._i >= keys.length) return { value: undefined, done: true };
|
| 7296 |
+
} while (!((key = keys[that._i++]) in that._t));
|
| 7297 |
+
return { value: key, done: false };
|
| 7298 |
+
});
|
| 7299 |
+
|
| 7300 |
+
$export($export.S, 'Reflect', {
|
| 7301 |
+
enumerate: function enumerate(target) {
|
| 7302 |
+
return new Enumerate(target);
|
| 7303 |
+
}
|
| 7304 |
+
});
|
| 7305 |
+
|
| 7306 |
+
|
| 7307 |
+
/***/ }),
|
| 7308 |
+
|
| 7309 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js":
|
| 7310 |
+
/*!*********************************************************************************!*\
|
| 7311 |
+
!*** ./node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js ***!
|
| 7312 |
+
\*********************************************************************************/
|
| 7313 |
+
/*! no static exports found */
|
| 7314 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7315 |
+
|
| 7316 |
+
// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)
|
| 7317 |
+
var gOPD = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js");
|
| 7318 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7319 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7320 |
+
|
| 7321 |
+
$export($export.S, 'Reflect', {
|
| 7322 |
+
getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) {
|
| 7323 |
+
return gOPD.f(anObject(target), propertyKey);
|
| 7324 |
+
}
|
| 7325 |
+
});
|
| 7326 |
+
|
| 7327 |
+
|
| 7328 |
+
/***/ }),
|
| 7329 |
+
|
| 7330 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.get-prototype-of.js":
|
| 7331 |
+
/*!**********************************************************************!*\
|
| 7332 |
+
!*** ./node_modules/core-js/modules/es6.reflect.get-prototype-of.js ***!
|
| 7333 |
+
\**********************************************************************/
|
| 7334 |
+
/*! no static exports found */
|
| 7335 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7336 |
+
|
| 7337 |
+
// 26.1.8 Reflect.getPrototypeOf(target)
|
| 7338 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7339 |
+
var getProto = __webpack_require__(/*! ./_object-gpo */ "./node_modules/core-js/modules/_object-gpo.js");
|
| 7340 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7341 |
+
|
| 7342 |
+
$export($export.S, 'Reflect', {
|
| 7343 |
+
getPrototypeOf: function getPrototypeOf(target) {
|
| 7344 |
+
return getProto(anObject(target));
|
| 7345 |
+
}
|
| 7346 |
+
});
|
| 7347 |
+
|
| 7348 |
+
|
| 7349 |
+
/***/ }),
|
| 7350 |
+
|
| 7351 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.get.js":
|
| 7352 |
+
/*!*********************************************************!*\
|
| 7353 |
+
!*** ./node_modules/core-js/modules/es6.reflect.get.js ***!
|
| 7354 |
+
\*********************************************************/
|
| 7355 |
+
/*! no static exports found */
|
| 7356 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7357 |
+
|
| 7358 |
+
// 26.1.6 Reflect.get(target, propertyKey [, receiver])
|
| 7359 |
+
var gOPD = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js");
|
| 7360 |
+
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "./node_modules/core-js/modules/_object-gpo.js");
|
| 7361 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 7362 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7363 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 7364 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7365 |
+
|
| 7366 |
+
function get(target, propertyKey /* , receiver */) {
|
| 7367 |
+
var receiver = arguments.length < 3 ? target : arguments[2];
|
| 7368 |
+
var desc, proto;
|
| 7369 |
+
if (anObject(target) === receiver) return target[propertyKey];
|
| 7370 |
+
if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
|
| 7371 |
+
? desc.value
|
| 7372 |
+
: desc.get !== undefined
|
| 7373 |
+
? desc.get.call(receiver)
|
| 7374 |
+
: undefined;
|
| 7375 |
+
if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
|
| 7376 |
+
}
|
| 7377 |
+
|
| 7378 |
+
$export($export.S, 'Reflect', { get: get });
|
| 7379 |
+
|
| 7380 |
+
|
| 7381 |
+
/***/ }),
|
| 7382 |
+
|
| 7383 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.has.js":
|
| 7384 |
+
/*!*********************************************************!*\
|
| 7385 |
+
!*** ./node_modules/core-js/modules/es6.reflect.has.js ***!
|
| 7386 |
+
\*********************************************************/
|
| 7387 |
+
/*! no static exports found */
|
| 7388 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7389 |
+
|
| 7390 |
+
// 26.1.9 Reflect.has(target, propertyKey)
|
| 7391 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7392 |
+
|
| 7393 |
+
$export($export.S, 'Reflect', {
|
| 7394 |
+
has: function has(target, propertyKey) {
|
| 7395 |
+
return propertyKey in target;
|
| 7396 |
+
}
|
| 7397 |
+
});
|
| 7398 |
+
|
| 7399 |
+
|
| 7400 |
+
/***/ }),
|
| 7401 |
+
|
| 7402 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.is-extensible.js":
|
| 7403 |
+
/*!*******************************************************************!*\
|
| 7404 |
+
!*** ./node_modules/core-js/modules/es6.reflect.is-extensible.js ***!
|
| 7405 |
+
\*******************************************************************/
|
| 7406 |
+
/*! no static exports found */
|
| 7407 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7408 |
+
|
| 7409 |
+
// 26.1.10 Reflect.isExtensible(target)
|
| 7410 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7411 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7412 |
+
var $isExtensible = Object.isExtensible;
|
| 7413 |
+
|
| 7414 |
+
$export($export.S, 'Reflect', {
|
| 7415 |
+
isExtensible: function isExtensible(target) {
|
| 7416 |
+
anObject(target);
|
| 7417 |
+
return $isExtensible ? $isExtensible(target) : true;
|
| 7418 |
+
}
|
| 7419 |
+
});
|
| 7420 |
+
|
| 7421 |
+
|
| 7422 |
+
/***/ }),
|
| 7423 |
+
|
| 7424 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.own-keys.js":
|
| 7425 |
+
/*!**************************************************************!*\
|
| 7426 |
+
!*** ./node_modules/core-js/modules/es6.reflect.own-keys.js ***!
|
| 7427 |
+
\**************************************************************/
|
| 7428 |
+
/*! no static exports found */
|
| 7429 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7430 |
+
|
| 7431 |
+
// 26.1.11 Reflect.ownKeys(target)
|
| 7432 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7433 |
+
|
| 7434 |
+
$export($export.S, 'Reflect', { ownKeys: __webpack_require__(/*! ./_own-keys */ "./node_modules/core-js/modules/_own-keys.js") });
|
| 7435 |
+
|
| 7436 |
+
|
| 7437 |
+
/***/ }),
|
| 7438 |
+
|
| 7439 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.prevent-extensions.js":
|
| 7440 |
+
/*!************************************************************************!*\
|
| 7441 |
+
!*** ./node_modules/core-js/modules/es6.reflect.prevent-extensions.js ***!
|
| 7442 |
+
\************************************************************************/
|
| 7443 |
+
/*! no static exports found */
|
| 7444 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7445 |
+
|
| 7446 |
+
// 26.1.12 Reflect.preventExtensions(target)
|
| 7447 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7448 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7449 |
+
var $preventExtensions = Object.preventExtensions;
|
| 7450 |
+
|
| 7451 |
+
$export($export.S, 'Reflect', {
|
| 7452 |
+
preventExtensions: function preventExtensions(target) {
|
| 7453 |
+
anObject(target);
|
| 7454 |
+
try {
|
| 7455 |
+
if ($preventExtensions) $preventExtensions(target);
|
| 7456 |
+
return true;
|
| 7457 |
+
} catch (e) {
|
| 7458 |
+
return false;
|
| 7459 |
+
}
|
| 7460 |
+
}
|
| 7461 |
+
});
|
| 7462 |
+
|
| 7463 |
+
|
| 7464 |
+
/***/ }),
|
| 7465 |
+
|
| 7466 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.set-prototype-of.js":
|
| 7467 |
+
/*!**********************************************************************!*\
|
| 7468 |
+
!*** ./node_modules/core-js/modules/es6.reflect.set-prototype-of.js ***!
|
| 7469 |
+
\**********************************************************************/
|
| 7470 |
+
/*! no static exports found */
|
| 7471 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7472 |
+
|
| 7473 |
+
// 26.1.14 Reflect.setPrototypeOf(target, proto)
|
| 7474 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7475 |
+
var setProto = __webpack_require__(/*! ./_set-proto */ "./node_modules/core-js/modules/_set-proto.js");
|
| 7476 |
+
|
| 7477 |
+
if (setProto) $export($export.S, 'Reflect', {
|
| 7478 |
+
setPrototypeOf: function setPrototypeOf(target, proto) {
|
| 7479 |
+
setProto.check(target, proto);
|
| 7480 |
+
try {
|
| 7481 |
+
setProto.set(target, proto);
|
| 7482 |
+
return true;
|
| 7483 |
+
} catch (e) {
|
| 7484 |
+
return false;
|
| 7485 |
+
}
|
| 7486 |
+
}
|
| 7487 |
+
});
|
| 7488 |
+
|
| 7489 |
+
|
| 7490 |
+
/***/ }),
|
| 7491 |
+
|
| 7492 |
+
/***/ "./node_modules/core-js/modules/es6.reflect.set.js":
|
| 7493 |
+
/*!*********************************************************!*\
|
| 7494 |
+
!*** ./node_modules/core-js/modules/es6.reflect.set.js ***!
|
| 7495 |
+
\*********************************************************/
|
| 7496 |
+
/*! no static exports found */
|
| 7497 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7498 |
+
|
| 7499 |
+
// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
|
| 7500 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js");
|
| 7501 |
+
var gOPD = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js");
|
| 7502 |
+
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "./node_modules/core-js/modules/_object-gpo.js");
|
| 7503 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 7504 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 7505 |
+
var createDesc = __webpack_require__(/*! ./_property-desc */ "./node_modules/core-js/modules/_property-desc.js");
|
| 7506 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7507 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 7508 |
+
|
| 7509 |
+
function set(target, propertyKey, V /* , receiver */) {
|
| 7510 |
+
var receiver = arguments.length < 4 ? target : arguments[3];
|
| 7511 |
+
var ownDesc = gOPD.f(anObject(target), propertyKey);
|
| 7512 |
+
var existingDescriptor, proto;
|
| 7513 |
+
if (!ownDesc) {
|
| 7514 |
+
if (isObject(proto = getPrototypeOf(target))) {
|
| 7515 |
+
return set(proto, propertyKey, V, receiver);
|
| 7516 |
+
}
|
| 7517 |
+
ownDesc = createDesc(0);
|
| 7518 |
+
}
|
| 7519 |
+
if (has(ownDesc, 'value')) {
|
| 7520 |
+
if (ownDesc.writable === false || !isObject(receiver)) return false;
|
| 7521 |
+
if (existingDescriptor = gOPD.f(receiver, propertyKey)) {
|
| 7522 |
+
if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false;
|
| 7523 |
+
existingDescriptor.value = V;
|
| 7524 |
+
dP.f(receiver, propertyKey, existingDescriptor);
|
| 7525 |
+
} else dP.f(receiver, propertyKey, createDesc(0, V));
|
| 7526 |
+
return true;
|
| 7527 |
+
}
|
| 7528 |
+
return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
|
| 7529 |
+
}
|
| 7530 |
+
|
| 7531 |
+
$export($export.S, 'Reflect', { set: set });
|
| 7532 |
+
|
| 7533 |
+
|
| 7534 |
+
/***/ }),
|
| 7535 |
+
|
| 7536 |
+
/***/ "./node_modules/core-js/modules/es6.regexp.constructor.js":
|
| 7537 |
+
/*!****************************************************************!*\
|
| 7538 |
+
!*** ./node_modules/core-js/modules/es6.regexp.constructor.js ***!
|
| 7539 |
+
\****************************************************************/
|
| 7540 |
+
/*! no static exports found */
|
| 7541 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7542 |
+
|
| 7543 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 7544 |
+
var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "./node_modules/core-js/modules/_inherit-if-required.js");
|
| 7545 |
+
var dP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f;
|
| 7546 |
+
var gOPN = __webpack_require__(/*! ./_object-gopn */ "./node_modules/core-js/modules/_object-gopn.js").f;
|
| 7547 |
+
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "./node_modules/core-js/modules/_is-regexp.js");
|
| 7548 |
+
var $flags = __webpack_require__(/*! ./_flags */ "./node_modules/core-js/modules/_flags.js");
|
| 7549 |
+
var $RegExp = global.RegExp;
|
| 7550 |
+
var Base = $RegExp;
|
| 7551 |
+
var proto = $RegExp.prototype;
|
| 7552 |
+
var re1 = /a/g;
|
| 7553 |
+
var re2 = /a/g;
|
| 7554 |
+
// "new" creates a new object, old webkit buggy here
|
| 7555 |
+
var CORRECT_NEW = new $RegExp(re1) !== re1;
|
| 7556 |
+
|
| 7557 |
+
if (__webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") && (!CORRECT_NEW || __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 7558 |
+
re2[__webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js")('match')] = false;
|
| 7559 |
+
// RegExp constructor can alter flags and IsRegExp works correct with @@match
|
| 7560 |
+
return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
|
| 7561 |
+
}))) {
|
| 7562 |
+
$RegExp = function RegExp(p, f) {
|
| 7563 |
+
var tiRE = this instanceof $RegExp;
|
| 7564 |
+
var piRE = isRegExp(p);
|
| 7565 |
+
var fiU = f === undefined;
|
| 7566 |
+
return !tiRE && piRE && p.constructor === $RegExp && fiU ? p
|
| 7567 |
+
: inheritIfRequired(CORRECT_NEW
|
| 7568 |
+
? new Base(piRE && !fiU ? p.source : p, f)
|
| 7569 |
+
: Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)
|
| 7570 |
+
, tiRE ? this : proto, $RegExp);
|
| 7571 |
+
};
|
| 7572 |
+
var proxy = function (key) {
|
| 7573 |
+
key in $RegExp || dP($RegExp, key, {
|
| 7574 |
+
configurable: true,
|
| 7575 |
+
get: function () { return Base[key]; },
|
| 7576 |
+
set: function (it) { Base[key] = it; }
|
| 7577 |
+
});
|
| 7578 |
+
};
|
| 7579 |
+
for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);
|
| 7580 |
+
proto.constructor = $RegExp;
|
| 7581 |
+
$RegExp.prototype = proto;
|
| 7582 |
+
__webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js")(global, 'RegExp', $RegExp);
|
| 7583 |
+
}
|
| 7584 |
+
|
| 7585 |
+
__webpack_require__(/*! ./_set-species */ "./node_modules/core-js/modules/_set-species.js")('RegExp');
|
| 7586 |
+
|
| 7587 |
+
|
| 7588 |
+
/***/ }),
|
| 7589 |
+
|
| 7590 |
+
/***/ "./node_modules/core-js/modules/es6.regexp.exec.js":
|
| 7591 |
+
/*!*********************************************************!*\
|
| 7592 |
+
!*** ./node_modules/core-js/modules/es6.regexp.exec.js ***!
|
| 7593 |
+
\*********************************************************/
|
| 7594 |
+
/*! no static exports found */
|
| 7595 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7596 |
+
|
| 7597 |
+
"use strict";
|
| 7598 |
+
|
| 7599 |
+
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "./node_modules/core-js/modules/_regexp-exec.js");
|
| 7600 |
+
__webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js")({
|
| 7601 |
+
target: 'RegExp',
|
| 7602 |
+
proto: true,
|
| 7603 |
+
forced: regexpExec !== /./.exec
|
| 7604 |
+
}, {
|
| 7605 |
+
exec: regexpExec
|
| 7606 |
+
});
|
| 7607 |
+
|
| 7608 |
+
|
| 7609 |
+
/***/ }),
|
| 7610 |
+
|
| 7611 |
+
/***/ "./node_modules/core-js/modules/es6.regexp.flags.js":
|
| 7612 |
+
/*!**********************************************************!*\
|
| 7613 |
+
!*** ./node_modules/core-js/modules/es6.regexp.flags.js ***!
|
| 7614 |
+
\**********************************************************/
|
| 7615 |
+
/*! no static exports found */
|
| 7616 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7617 |
+
|
| 7618 |
+
// 21.2.5.3 get RegExp.prototype.flags()
|
| 7619 |
+
if (__webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
|
| 7620 |
+
configurable: true,
|
| 7621 |
+
get: __webpack_require__(/*! ./_flags */ "./node_modules/core-js/modules/_flags.js")
|
| 7622 |
+
});
|
| 7623 |
+
|
| 7624 |
+
|
| 7625 |
+
/***/ }),
|
| 7626 |
+
|
| 7627 |
+
/***/ "./node_modules/core-js/modules/es6.regexp.match.js":
|
| 7628 |
+
/*!**********************************************************!*\
|
| 7629 |
+
!*** ./node_modules/core-js/modules/es6.regexp.match.js ***!
|
| 7630 |
+
\**********************************************************/
|
| 7631 |
+
/*! no static exports found */
|
| 7632 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7633 |
+
|
| 7634 |
+
"use strict";
|
| 7635 |
+
|
| 7636 |
+
|
| 7637 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7638 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 7639 |
+
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "./node_modules/core-js/modules/_advance-string-index.js");
|
| 7640 |
+
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "./node_modules/core-js/modules/_regexp-exec-abstract.js");
|
| 7641 |
+
|
| 7642 |
+
// @@match logic
|
| 7643 |
+
__webpack_require__(/*! ./_fix-re-wks */ "./node_modules/core-js/modules/_fix-re-wks.js")('match', 1, function (defined, MATCH, $match, maybeCallNative) {
|
| 7644 |
+
return [
|
| 7645 |
+
// `String.prototype.match` method
|
| 7646 |
+
// https://tc39.github.io/ecma262/#sec-string.prototype.match
|
| 7647 |
+
function match(regexp) {
|
| 7648 |
+
var O = defined(this);
|
| 7649 |
+
var fn = regexp == undefined ? undefined : regexp[MATCH];
|
| 7650 |
+
return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
|
| 7651 |
+
},
|
| 7652 |
+
// `RegExp.prototype[@@match]` method
|
| 7653 |
+
// https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
|
| 7654 |
+
function (regexp) {
|
| 7655 |
+
var res = maybeCallNative($match, regexp, this);
|
| 7656 |
+
if (res.done) return res.value;
|
| 7657 |
+
var rx = anObject(regexp);
|
| 7658 |
+
var S = String(this);
|
| 7659 |
+
if (!rx.global) return regExpExec(rx, S);
|
| 7660 |
+
var fullUnicode = rx.unicode;
|
| 7661 |
+
rx.lastIndex = 0;
|
| 7662 |
+
var A = [];
|
| 7663 |
+
var n = 0;
|
| 7664 |
+
var result;
|
| 7665 |
+
while ((result = regExpExec(rx, S)) !== null) {
|
| 7666 |
+
var matchStr = String(result[0]);
|
| 7667 |
+
A[n] = matchStr;
|
| 7668 |
+
if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
|
| 7669 |
+
n++;
|
| 7670 |
+
}
|
| 7671 |
+
return n === 0 ? null : A;
|
| 7672 |
+
}
|
| 7673 |
+
];
|
| 7674 |
+
});
|
| 7675 |
+
|
| 7676 |
+
|
| 7677 |
+
/***/ }),
|
| 7678 |
+
|
| 7679 |
+
/***/ "./node_modules/core-js/modules/es6.regexp.replace.js":
|
| 7680 |
+
/*!************************************************************!*\
|
| 7681 |
+
!*** ./node_modules/core-js/modules/es6.regexp.replace.js ***!
|
| 7682 |
+
\************************************************************/
|
| 7683 |
+
/*! no static exports found */
|
| 7684 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7685 |
+
|
| 7686 |
+
"use strict";
|
| 7687 |
+
|
| 7688 |
+
|
| 7689 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7690 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 7691 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 7692 |
+
var toInteger = __webpack_require__(/*! ./_to-integer */ "./node_modules/core-js/modules/_to-integer.js");
|
| 7693 |
+
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "./node_modules/core-js/modules/_advance-string-index.js");
|
| 7694 |
+
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "./node_modules/core-js/modules/_regexp-exec-abstract.js");
|
| 7695 |
+
var max = Math.max;
|
| 7696 |
+
var min = Math.min;
|
| 7697 |
+
var floor = Math.floor;
|
| 7698 |
+
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
|
| 7699 |
+
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;
|
| 7700 |
+
|
| 7701 |
+
var maybeToString = function (it) {
|
| 7702 |
+
return it === undefined ? it : String(it);
|
| 7703 |
+
};
|
| 7704 |
+
|
| 7705 |
+
// @@replace logic
|
| 7706 |
+
__webpack_require__(/*! ./_fix-re-wks */ "./node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
|
| 7707 |
+
return [
|
| 7708 |
+
// `String.prototype.replace` method
|
| 7709 |
+
// https://tc39.github.io/ecma262/#sec-string.prototype.replace
|
| 7710 |
+
function replace(searchValue, replaceValue) {
|
| 7711 |
+
var O = defined(this);
|
| 7712 |
+
var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
|
| 7713 |
+
return fn !== undefined
|
| 7714 |
+
? fn.call(searchValue, O, replaceValue)
|
| 7715 |
+
: $replace.call(String(O), searchValue, replaceValue);
|
| 7716 |
+
},
|
| 7717 |
+
// `RegExp.prototype[@@replace]` method
|
| 7718 |
+
// https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
|
| 7719 |
+
function (regexp, replaceValue) {
|
| 7720 |
+
var res = maybeCallNative($replace, regexp, this, replaceValue);
|
| 7721 |
+
if (res.done) return res.value;
|
| 7722 |
+
|
| 7723 |
+
var rx = anObject(regexp);
|
| 7724 |
+
var S = String(this);
|
| 7725 |
+
var functionalReplace = typeof replaceValue === 'function';
|
| 7726 |
+
if (!functionalReplace) replaceValue = String(replaceValue);
|
| 7727 |
+
var global = rx.global;
|
| 7728 |
+
if (global) {
|
| 7729 |
+
var fullUnicode = rx.unicode;
|
| 7730 |
+
rx.lastIndex = 0;
|
| 7731 |
+
}
|
| 7732 |
+
var results = [];
|
| 7733 |
+
while (true) {
|
| 7734 |
+
var result = regExpExec(rx, S);
|
| 7735 |
+
if (result === null) break;
|
| 7736 |
+
results.push(result);
|
| 7737 |
+
if (!global) break;
|
| 7738 |
+
var matchStr = String(result[0]);
|
| 7739 |
+
if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
|
| 7740 |
+
}
|
| 7741 |
+
var accumulatedResult = '';
|
| 7742 |
+
var nextSourcePosition = 0;
|
| 7743 |
+
for (var i = 0; i < results.length; i++) {
|
| 7744 |
+
result = results[i];
|
| 7745 |
+
var matched = String(result[0]);
|
| 7746 |
+
var position = max(min(toInteger(result.index), S.length), 0);
|
| 7747 |
+
var captures = [];
|
| 7748 |
+
// NOTE: This is equivalent to
|
| 7749 |
+
// captures = result.slice(1).map(maybeToString)
|
| 7750 |
+
// but for some reason `nativeSlice.call(result, 1, result.length)` (called in
|
| 7751 |
+
// the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
|
| 7752 |
+
// causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
|
| 7753 |
+
for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
|
| 7754 |
+
var namedCaptures = result.groups;
|
| 7755 |
+
if (functionalReplace) {
|
| 7756 |
+
var replacerArgs = [matched].concat(captures, position, S);
|
| 7757 |
+
if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
|
| 7758 |
+
var replacement = String(replaceValue.apply(undefined, replacerArgs));
|
| 7759 |
+
} else {
|
| 7760 |
+
replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
|
| 7761 |
+
}
|
| 7762 |
+
if (position >= nextSourcePosition) {
|
| 7763 |
+
accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
|
| 7764 |
+
nextSourcePosition = position + matched.length;
|
| 7765 |
+
}
|
| 7766 |
+
}
|
| 7767 |
+
return accumulatedResult + S.slice(nextSourcePosition);
|
| 7768 |
+
}
|
| 7769 |
+
];
|
| 7770 |
+
|
| 7771 |
+
// https://tc39.github.io/ecma262/#sec-getsubstitution
|
| 7772 |
+
function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
|
| 7773 |
+
var tailPos = position + matched.length;
|
| 7774 |
+
var m = captures.length;
|
| 7775 |
+
var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
|
| 7776 |
+
if (namedCaptures !== undefined) {
|
| 7777 |
+
namedCaptures = toObject(namedCaptures);
|
| 7778 |
+
symbols = SUBSTITUTION_SYMBOLS;
|
| 7779 |
+
}
|
| 7780 |
+
return $replace.call(replacement, symbols, function (match, ch) {
|
| 7781 |
+
var capture;
|
| 7782 |
+
switch (ch.charAt(0)) {
|
| 7783 |
+
case '$': return '$';
|
| 7784 |
+
case '&': return matched;
|
| 7785 |
+
case '`': return str.slice(0, position);
|
| 7786 |
+
case "'": return str.slice(tailPos);
|
| 7787 |
+
case '<':
|
| 7788 |
+
capture = namedCaptures[ch.slice(1, -1)];
|
| 7789 |
+
break;
|
| 7790 |
+
default: // \d\d?
|
| 7791 |
+
var n = +ch;
|
| 7792 |
+
if (n === 0) return match;
|
| 7793 |
+
if (n > m) {
|
| 7794 |
+
var f = floor(n / 10);
|
| 7795 |
+
if (f === 0) return match;
|
| 7796 |
+
if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
|
| 7797 |
+
return match;
|
| 7798 |
+
}
|
| 7799 |
+
capture = captures[n - 1];
|
| 7800 |
+
}
|
| 7801 |
+
return capture === undefined ? '' : capture;
|
| 7802 |
+
});
|
| 7803 |
+
}
|
| 7804 |
+
});
|
| 7805 |
+
|
| 7806 |
+
|
| 7807 |
+
/***/ }),
|
| 7808 |
+
|
| 7809 |
+
/***/ "./node_modules/core-js/modules/es6.regexp.search.js":
|
| 7810 |
+
/*!***********************************************************!*\
|
| 7811 |
+
!*** ./node_modules/core-js/modules/es6.regexp.search.js ***!
|
| 7812 |
+
\***********************************************************/
|
| 7813 |
+
/*! no static exports found */
|
| 7814 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7815 |
+
|
| 7816 |
+
"use strict";
|
| 7817 |
+
|
| 7818 |
+
|
| 7819 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7820 |
+
var sameValue = __webpack_require__(/*! ./_same-value */ "./node_modules/core-js/modules/_same-value.js");
|
| 7821 |
+
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "./node_modules/core-js/modules/_regexp-exec-abstract.js");
|
| 7822 |
+
|
| 7823 |
+
// @@search logic
|
| 7824 |
+
__webpack_require__(/*! ./_fix-re-wks */ "./node_modules/core-js/modules/_fix-re-wks.js")('search', 1, function (defined, SEARCH, $search, maybeCallNative) {
|
| 7825 |
+
return [
|
| 7826 |
+
// `String.prototype.search` method
|
| 7827 |
+
// https://tc39.github.io/ecma262/#sec-string.prototype.search
|
| 7828 |
+
function search(regexp) {
|
| 7829 |
+
var O = defined(this);
|
| 7830 |
+
var fn = regexp == undefined ? undefined : regexp[SEARCH];
|
| 7831 |
+
return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
|
| 7832 |
+
},
|
| 7833 |
+
// `RegExp.prototype[@@search]` method
|
| 7834 |
+
// https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search
|
| 7835 |
+
function (regexp) {
|
| 7836 |
+
var res = maybeCallNative($search, regexp, this);
|
| 7837 |
+
if (res.done) return res.value;
|
| 7838 |
+
var rx = anObject(regexp);
|
| 7839 |
+
var S = String(this);
|
| 7840 |
+
var previousLastIndex = rx.lastIndex;
|
| 7841 |
+
if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
|
| 7842 |
+
var result = regExpExec(rx, S);
|
| 7843 |
+
if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
|
| 7844 |
+
return result === null ? -1 : result.index;
|
| 7845 |
+
}
|
| 7846 |
+
];
|
| 7847 |
+
});
|
| 7848 |
+
|
| 7849 |
+
|
| 7850 |
+
/***/ }),
|
| 7851 |
+
|
| 7852 |
+
/***/ "./node_modules/core-js/modules/es6.regexp.split.js":
|
| 7853 |
+
/*!**********************************************************!*\
|
| 7854 |
+
!*** ./node_modules/core-js/modules/es6.regexp.split.js ***!
|
| 7855 |
+
\**********************************************************/
|
| 7856 |
+
/*! no static exports found */
|
| 7857 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 7858 |
+
|
| 7859 |
+
"use strict";
|
| 7860 |
+
|
| 7861 |
+
|
| 7862 |
+
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "./node_modules/core-js/modules/_is-regexp.js");
|
| 7863 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 7864 |
+
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "./node_modules/core-js/modules/_species-constructor.js");
|
| 7865 |
+
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "./node_modules/core-js/modules/_advance-string-index.js");
|
| 7866 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 7867 |
+
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "./node_modules/core-js/modules/_regexp-exec-abstract.js");
|
| 7868 |
+
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "./node_modules/core-js/modules/_regexp-exec.js");
|
| 7869 |
+
var fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 7870 |
+
var $min = Math.min;
|
| 7871 |
+
var $push = [].push;
|
| 7872 |
+
var $SPLIT = 'split';
|
| 7873 |
+
var LENGTH = 'length';
|
| 7874 |
+
var LAST_INDEX = 'lastIndex';
|
| 7875 |
+
var MAX_UINT32 = 0xffffffff;
|
| 7876 |
+
|
| 7877 |
+
// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
|
| 7878 |
+
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });
|
| 7879 |
+
|
| 7880 |
+
// @@split logic
|
| 7881 |
+
__webpack_require__(/*! ./_fix-re-wks */ "./node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
|
| 7882 |
+
var internalSplit;
|
| 7883 |
+
if (
|
| 7884 |
+
'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
|
| 7885 |
+
'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
|
| 7886 |
+
'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
|
| 7887 |
+
'.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
|
| 7888 |
+
'.'[$SPLIT](/()()/)[LENGTH] > 1 ||
|
| 7889 |
+
''[$SPLIT](/.?/)[LENGTH]
|
| 7890 |
+
) {
|
| 7891 |
+
// based on es5-shim implementation, need to rework it
|
| 7892 |
+
internalSplit = function (separator, limit) {
|
| 7893 |
+
var string = String(this);
|
| 7894 |
+
if (separator === undefined && limit === 0) return [];
|
| 7895 |
+
// If `separator` is not a regex, use native split
|
| 7896 |
+
if (!isRegExp(separator)) return $split.call(string, separator, limit);
|
| 7897 |
+
var output = [];
|
| 7898 |
+
var flags = (separator.ignoreCase ? 'i' : '') +
|
| 7899 |
+
(separator.multiline ? 'm' : '') +
|
| 7900 |
+
(separator.unicode ? 'u' : '') +
|
| 7901 |
+
(separator.sticky ? 'y' : '');
|
| 7902 |
+
var lastLastIndex = 0;
|
| 7903 |
+
var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
|
| 7904 |
+
// Make `global` and avoid `lastIndex` issues by working with a copy
|
| 7905 |
+
var separatorCopy = new RegExp(separator.source, flags + 'g');
|
| 7906 |
+
var match, lastIndex, lastLength;
|
| 7907 |
+
while (match = regexpExec.call(separatorCopy, string)) {
|
| 7908 |
+
lastIndex = separatorCopy[LAST_INDEX];
|
| 7909 |
+
if (lastIndex > lastLastIndex) {
|
| 7910 |
+
output.push(string.slice(lastLastIndex, match.index));
|
| 7911 |
+
if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
|
| 7912 |
+
lastLength = match[0][LENGTH];
|
| 7913 |
+
lastLastIndex = lastIndex;
|
| 7914 |
+
if (output[LENGTH] >= splitLimit) break;
|
| 7915 |
+
}
|
| 7916 |
+
if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
|
| 7917 |
+
}
|
| 7918 |
+
if (lastLastIndex === string[LENGTH]) {
|
| 7919 |
+
if (lastLength || !separatorCopy.test('')) output.push('');
|
| 7920 |
+
} else output.push(string.slice(lastLastIndex));
|
| 7921 |
+
return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
|
| 7922 |
+
};
|
| 7923 |
+
// Chakra, V8
|
| 7924 |
+
} else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
|
| 7925 |
+
internalSplit = function (separator, limit) {
|
| 7926 |
+
return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
|
| 7927 |
+
};
|
| 7928 |
+
} else {
|
| 7929 |
+
internalSplit = $split;
|
| 7930 |
+
}
|
| 7931 |
+
|
| 7932 |
+
return [
|
| 7933 |
+
// `String.prototype.split` method
|
| 7934 |
+
// https://tc39.github.io/ecma262/#sec-string.prototype.split
|
| 7935 |
+
function split(separator, limit) {
|
| 7936 |
+
var O = defined(this);
|
| 7937 |
+
var splitter = separator == undefined ? undefined : separator[SPLIT];
|
| 7938 |
+
return splitter !== undefined
|
| 7939 |
+
? splitter.call(separator, O, limit)
|
| 7940 |
+
: internalSplit.call(String(O), separator, limit);
|
| 7941 |
+
},
|
| 7942 |
+
// `RegExp.prototype[@@split]` method
|
| 7943 |
+
// https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
|
| 7944 |
+
//
|
| 7945 |
+
// NOTE: This cannot be properly polyfilled in engines that don't support
|
| 7946 |
+
// the 'y' flag.
|
| 7947 |
+
function (regexp, limit) {
|
| 7948 |
+
var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
|
| 7949 |
+
if (res.done) return res.value;
|
| 7950 |
+
|
| 7951 |
+
var rx = anObject(regexp);
|
| 7952 |
+
var S = String(this);
|
| 7953 |
+
var C = speciesConstructor(rx, RegExp);
|
| 7954 |
+
|
| 7955 |
+
var unicodeMatching = rx.unicode;
|
| 7956 |
+
var flags = (rx.ignoreCase ? 'i' : '') +
|
| 7957 |
+
(rx.multiline ? 'm' : '') +
|
| 7958 |
+
(rx.unicode ? 'u' : '') +
|
| 7959 |
+
(SUPPORTS_Y ? 'y' : 'g');
|
| 7960 |
+
|
| 7961 |
+
// ^(? + rx + ) is needed, in combination with some S slicing, to
|
| 7962 |
+
// simulate the 'y' flag.
|
| 7963 |
+
var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
|
| 7964 |
+
var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
|
| 7965 |
+
if (lim === 0) return [];
|
| 7966 |
+
if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
|
| 7967 |
+
var p = 0;
|
| 7968 |
+
var q = 0;
|
| 7969 |
+
var A = [];
|
| 7970 |
+
while (q < S.length) {
|
| 7971 |
+
splitter.lastIndex = SUPPORTS_Y ? q : 0;
|
| 7972 |
+
var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
|
| 7973 |
+
var e;
|
| 7974 |
+
if (
|
| 7975 |
+
z === null ||
|
| 7976 |
+
(e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
|
| 7977 |
+
) {
|
| 7978 |
+
q = advanceStringIndex(S, q, unicodeMatching);
|
| 7979 |
+
} else {
|
| 7980 |
+
A.push(S.slice(p, q));
|
| 7981 |
+
if (A.length === lim) return A;
|
| 7982 |
+
for (var i = 1; i <= z.length - 1; i++) {
|
| 7983 |
+
A.push(z[i]);
|
| 7984 |
+
if (A.length === lim) return A;
|
| 7985 |
+
}
|
| 7986 |
+
q = p = e;
|
| 7987 |
+
}
|
| 7988 |
+
}
|
| 7989 |
+
A.push(S.slice(p));
|
| 7990 |
+
return A;
|
| 7991 |
+
}
|
| 7992 |
+
];
|
| 7993 |
+
});
|
| 7994 |
+
|
| 7995 |
+
|
| 7996 |
+
/***/ }),
|
| 7997 |
+
|
| 7998 |
+
/***/ "./node_modules/core-js/modules/es6.regexp.to-string.js":
|
| 7999 |
+
/*!**************************************************************!*\
|
| 8000 |
+
!*** ./node_modules/core-js/modules/es6.regexp.to-string.js ***!
|
| 8001 |
+
\**************************************************************/
|
| 8002 |
+
/*! no static exports found */
|
| 8003 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8004 |
+
|
| 8005 |
+
"use strict";
|
| 8006 |
+
|
| 8007 |
+
__webpack_require__(/*! ./es6.regexp.flags */ "./node_modules/core-js/modules/es6.regexp.flags.js");
|
| 8008 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 8009 |
+
var $flags = __webpack_require__(/*! ./_flags */ "./node_modules/core-js/modules/_flags.js");
|
| 8010 |
+
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js");
|
| 8011 |
+
var TO_STRING = 'toString';
|
| 8012 |
+
var $toString = /./[TO_STRING];
|
| 8013 |
+
|
| 8014 |
+
var define = function (fn) {
|
| 8015 |
+
__webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
|
| 8016 |
+
};
|
| 8017 |
+
|
| 8018 |
+
// 21.2.5.14 RegExp.prototype.toString()
|
| 8019 |
+
if (__webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
|
| 8020 |
+
define(function toString() {
|
| 8021 |
+
var R = anObject(this);
|
| 8022 |
+
return '/'.concat(R.source, '/',
|
| 8023 |
+
'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
|
| 8024 |
+
});
|
| 8025 |
+
// FF44- RegExp#toString has a wrong name
|
| 8026 |
+
} else if ($toString.name != TO_STRING) {
|
| 8027 |
+
define(function toString() {
|
| 8028 |
+
return $toString.call(this);
|
| 8029 |
+
});
|
| 8030 |
+
}
|
| 8031 |
+
|
| 8032 |
+
|
| 8033 |
+
/***/ }),
|
| 8034 |
+
|
| 8035 |
+
/***/ "./node_modules/core-js/modules/es6.set.js":
|
| 8036 |
+
/*!*************************************************!*\
|
| 8037 |
+
!*** ./node_modules/core-js/modules/es6.set.js ***!
|
| 8038 |
+
\*************************************************/
|
| 8039 |
+
/*! no static exports found */
|
| 8040 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8041 |
+
|
| 8042 |
+
"use strict";
|
| 8043 |
+
|
| 8044 |
+
var strong = __webpack_require__(/*! ./_collection-strong */ "./node_modules/core-js/modules/_collection-strong.js");
|
| 8045 |
+
var validate = __webpack_require__(/*! ./_validate-collection */ "./node_modules/core-js/modules/_validate-collection.js");
|
| 8046 |
+
var SET = 'Set';
|
| 8047 |
+
|
| 8048 |
+
// 23.2 Set Objects
|
| 8049 |
+
module.exports = __webpack_require__(/*! ./_collection */ "./node_modules/core-js/modules/_collection.js")(SET, function (get) {
|
| 8050 |
+
return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
|
| 8051 |
+
}, {
|
| 8052 |
+
// 23.2.3.1 Set.prototype.add(value)
|
| 8053 |
+
add: function add(value) {
|
| 8054 |
+
return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);
|
| 8055 |
+
}
|
| 8056 |
+
}, strong);
|
| 8057 |
+
|
| 8058 |
+
|
| 8059 |
+
/***/ }),
|
| 8060 |
+
|
| 8061 |
+
/***/ "./node_modules/core-js/modules/es6.string.anchor.js":
|
| 8062 |
+
/*!***********************************************************!*\
|
| 8063 |
+
!*** ./node_modules/core-js/modules/es6.string.anchor.js ***!
|
| 8064 |
+
\***********************************************************/
|
| 8065 |
+
/*! no static exports found */
|
| 8066 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8067 |
+
|
| 8068 |
+
"use strict";
|
| 8069 |
+
|
| 8070 |
+
// B.2.3.2 String.prototype.anchor(name)
|
| 8071 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('anchor', function (createHTML) {
|
| 8072 |
+
return function anchor(name) {
|
| 8073 |
+
return createHTML(this, 'a', 'name', name);
|
| 8074 |
+
};
|
| 8075 |
+
});
|
| 8076 |
+
|
| 8077 |
+
|
| 8078 |
+
/***/ }),
|
| 8079 |
+
|
| 8080 |
+
/***/ "./node_modules/core-js/modules/es6.string.big.js":
|
| 8081 |
+
/*!********************************************************!*\
|
| 8082 |
+
!*** ./node_modules/core-js/modules/es6.string.big.js ***!
|
| 8083 |
+
\********************************************************/
|
| 8084 |
+
/*! no static exports found */
|
| 8085 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8086 |
+
|
| 8087 |
+
"use strict";
|
| 8088 |
+
|
| 8089 |
+
// B.2.3.3 String.prototype.big()
|
| 8090 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('big', function (createHTML) {
|
| 8091 |
+
return function big() {
|
| 8092 |
+
return createHTML(this, 'big', '', '');
|
| 8093 |
+
};
|
| 8094 |
+
});
|
| 8095 |
+
|
| 8096 |
+
|
| 8097 |
+
/***/ }),
|
| 8098 |
+
|
| 8099 |
+
/***/ "./node_modules/core-js/modules/es6.string.blink.js":
|
| 8100 |
+
/*!**********************************************************!*\
|
| 8101 |
+
!*** ./node_modules/core-js/modules/es6.string.blink.js ***!
|
| 8102 |
+
\**********************************************************/
|
| 8103 |
+
/*! no static exports found */
|
| 8104 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8105 |
+
|
| 8106 |
+
"use strict";
|
| 8107 |
+
|
| 8108 |
+
// B.2.3.4 String.prototype.blink()
|
| 8109 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('blink', function (createHTML) {
|
| 8110 |
+
return function blink() {
|
| 8111 |
+
return createHTML(this, 'blink', '', '');
|
| 8112 |
+
};
|
| 8113 |
+
});
|
| 8114 |
+
|
| 8115 |
+
|
| 8116 |
+
/***/ }),
|
| 8117 |
+
|
| 8118 |
+
/***/ "./node_modules/core-js/modules/es6.string.bold.js":
|
| 8119 |
+
/*!*********************************************************!*\
|
| 8120 |
+
!*** ./node_modules/core-js/modules/es6.string.bold.js ***!
|
| 8121 |
+
\*********************************************************/
|
| 8122 |
+
/*! no static exports found */
|
| 8123 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8124 |
+
|
| 8125 |
+
"use strict";
|
| 8126 |
+
|
| 8127 |
+
// B.2.3.5 String.prototype.bold()
|
| 8128 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('bold', function (createHTML) {
|
| 8129 |
+
return function bold() {
|
| 8130 |
+
return createHTML(this, 'b', '', '');
|
| 8131 |
+
};
|
| 8132 |
+
});
|
| 8133 |
+
|
| 8134 |
+
|
| 8135 |
+
/***/ }),
|
| 8136 |
+
|
| 8137 |
+
/***/ "./node_modules/core-js/modules/es6.string.code-point-at.js":
|
| 8138 |
+
/*!******************************************************************!*\
|
| 8139 |
+
!*** ./node_modules/core-js/modules/es6.string.code-point-at.js ***!
|
| 8140 |
+
\******************************************************************/
|
| 8141 |
+
/*! no static exports found */
|
| 8142 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8143 |
+
|
| 8144 |
+
"use strict";
|
| 8145 |
+
|
| 8146 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8147 |
+
var $at = __webpack_require__(/*! ./_string-at */ "./node_modules/core-js/modules/_string-at.js")(false);
|
| 8148 |
+
$export($export.P, 'String', {
|
| 8149 |
+
// 21.1.3.3 String.prototype.codePointAt(pos)
|
| 8150 |
+
codePointAt: function codePointAt(pos) {
|
| 8151 |
+
return $at(this, pos);
|
| 8152 |
+
}
|
| 8153 |
+
});
|
| 8154 |
+
|
| 8155 |
+
|
| 8156 |
+
/***/ }),
|
| 8157 |
+
|
| 8158 |
+
/***/ "./node_modules/core-js/modules/es6.string.ends-with.js":
|
| 8159 |
+
/*!**************************************************************!*\
|
| 8160 |
+
!*** ./node_modules/core-js/modules/es6.string.ends-with.js ***!
|
| 8161 |
+
\**************************************************************/
|
| 8162 |
+
/*! no static exports found */
|
| 8163 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8164 |
+
|
| 8165 |
+
"use strict";
|
| 8166 |
+
// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])
|
| 8167 |
+
|
| 8168 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8169 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 8170 |
+
var context = __webpack_require__(/*! ./_string-context */ "./node_modules/core-js/modules/_string-context.js");
|
| 8171 |
+
var ENDS_WITH = 'endsWith';
|
| 8172 |
+
var $endsWith = ''[ENDS_WITH];
|
| 8173 |
+
|
| 8174 |
+
$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "./node_modules/core-js/modules/_fails-is-regexp.js")(ENDS_WITH), 'String', {
|
| 8175 |
+
endsWith: function endsWith(searchString /* , endPosition = @length */) {
|
| 8176 |
+
var that = context(this, searchString, ENDS_WITH);
|
| 8177 |
+
var endPosition = arguments.length > 1 ? arguments[1] : undefined;
|
| 8178 |
+
var len = toLength(that.length);
|
| 8179 |
+
var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len);
|
| 8180 |
+
var search = String(searchString);
|
| 8181 |
+
return $endsWith
|
| 8182 |
+
? $endsWith.call(that, search, end)
|
| 8183 |
+
: that.slice(end - search.length, end) === search;
|
| 8184 |
+
}
|
| 8185 |
+
});
|
| 8186 |
+
|
| 8187 |
+
|
| 8188 |
+
/***/ }),
|
| 8189 |
+
|
| 8190 |
+
/***/ "./node_modules/core-js/modules/es6.string.fixed.js":
|
| 8191 |
+
/*!**********************************************************!*\
|
| 8192 |
+
!*** ./node_modules/core-js/modules/es6.string.fixed.js ***!
|
| 8193 |
+
\**********************************************************/
|
| 8194 |
+
/*! no static exports found */
|
| 8195 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8196 |
+
|
| 8197 |
+
"use strict";
|
| 8198 |
+
|
| 8199 |
+
// B.2.3.6 String.prototype.fixed()
|
| 8200 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('fixed', function (createHTML) {
|
| 8201 |
+
return function fixed() {
|
| 8202 |
+
return createHTML(this, 'tt', '', '');
|
| 8203 |
+
};
|
| 8204 |
+
});
|
| 8205 |
+
|
| 8206 |
+
|
| 8207 |
+
/***/ }),
|
| 8208 |
+
|
| 8209 |
+
/***/ "./node_modules/core-js/modules/es6.string.fontcolor.js":
|
| 8210 |
+
/*!**************************************************************!*\
|
| 8211 |
+
!*** ./node_modules/core-js/modules/es6.string.fontcolor.js ***!
|
| 8212 |
+
\**************************************************************/
|
| 8213 |
+
/*! no static exports found */
|
| 8214 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8215 |
+
|
| 8216 |
+
"use strict";
|
| 8217 |
+
|
| 8218 |
+
// B.2.3.7 String.prototype.fontcolor(color)
|
| 8219 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('fontcolor', function (createHTML) {
|
| 8220 |
+
return function fontcolor(color) {
|
| 8221 |
+
return createHTML(this, 'font', 'color', color);
|
| 8222 |
+
};
|
| 8223 |
+
});
|
| 8224 |
+
|
| 8225 |
+
|
| 8226 |
+
/***/ }),
|
| 8227 |
+
|
| 8228 |
+
/***/ "./node_modules/core-js/modules/es6.string.fontsize.js":
|
| 8229 |
+
/*!*************************************************************!*\
|
| 8230 |
+
!*** ./node_modules/core-js/modules/es6.string.fontsize.js ***!
|
| 8231 |
+
\*************************************************************/
|
| 8232 |
+
/*! no static exports found */
|
| 8233 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8234 |
+
|
| 8235 |
+
"use strict";
|
| 8236 |
+
|
| 8237 |
+
// B.2.3.8 String.prototype.fontsize(size)
|
| 8238 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('fontsize', function (createHTML) {
|
| 8239 |
+
return function fontsize(size) {
|
| 8240 |
+
return createHTML(this, 'font', 'size', size);
|
| 8241 |
+
};
|
| 8242 |
+
});
|
| 8243 |
+
|
| 8244 |
+
|
| 8245 |
+
/***/ }),
|
| 8246 |
+
|
| 8247 |
+
/***/ "./node_modules/core-js/modules/es6.string.from-code-point.js":
|
| 8248 |
+
/*!********************************************************************!*\
|
| 8249 |
+
!*** ./node_modules/core-js/modules/es6.string.from-code-point.js ***!
|
| 8250 |
+
\********************************************************************/
|
| 8251 |
+
/*! no static exports found */
|
| 8252 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8253 |
+
|
| 8254 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8255 |
+
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "./node_modules/core-js/modules/_to-absolute-index.js");
|
| 8256 |
+
var fromCharCode = String.fromCharCode;
|
| 8257 |
+
var $fromCodePoint = String.fromCodePoint;
|
| 8258 |
+
|
| 8259 |
+
// length should be 1, old FF problem
|
| 8260 |
+
$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
|
| 8261 |
+
// 21.1.2.2 String.fromCodePoint(...codePoints)
|
| 8262 |
+
fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars
|
| 8263 |
+
var res = [];
|
| 8264 |
+
var aLen = arguments.length;
|
| 8265 |
+
var i = 0;
|
| 8266 |
+
var code;
|
| 8267 |
+
while (aLen > i) {
|
| 8268 |
+
code = +arguments[i++];
|
| 8269 |
+
if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point');
|
| 8270 |
+
res.push(code < 0x10000
|
| 8271 |
+
? fromCharCode(code)
|
| 8272 |
+
: fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
|
| 8273 |
+
);
|
| 8274 |
+
} return res.join('');
|
| 8275 |
+
}
|
| 8276 |
+
});
|
| 8277 |
+
|
| 8278 |
+
|
| 8279 |
+
/***/ }),
|
| 8280 |
+
|
| 8281 |
+
/***/ "./node_modules/core-js/modules/es6.string.includes.js":
|
| 8282 |
+
/*!*************************************************************!*\
|
| 8283 |
+
!*** ./node_modules/core-js/modules/es6.string.includes.js ***!
|
| 8284 |
+
\*************************************************************/
|
| 8285 |
+
/*! no static exports found */
|
| 8286 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8287 |
+
|
| 8288 |
+
"use strict";
|
| 8289 |
+
// 21.1.3.7 String.prototype.includes(searchString, position = 0)
|
| 8290 |
+
|
| 8291 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8292 |
+
var context = __webpack_require__(/*! ./_string-context */ "./node_modules/core-js/modules/_string-context.js");
|
| 8293 |
+
var INCLUDES = 'includes';
|
| 8294 |
+
|
| 8295 |
+
$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "./node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
|
| 8296 |
+
includes: function includes(searchString /* , position = 0 */) {
|
| 8297 |
+
return !!~context(this, searchString, INCLUDES)
|
| 8298 |
+
.indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
|
| 8299 |
+
}
|
| 8300 |
+
});
|
| 8301 |
+
|
| 8302 |
+
|
| 8303 |
+
/***/ }),
|
| 8304 |
+
|
| 8305 |
+
/***/ "./node_modules/core-js/modules/es6.string.italics.js":
|
| 8306 |
+
/*!************************************************************!*\
|
| 8307 |
+
!*** ./node_modules/core-js/modules/es6.string.italics.js ***!
|
| 8308 |
+
\************************************************************/
|
| 8309 |
+
/*! no static exports found */
|
| 8310 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8311 |
+
|
| 8312 |
+
"use strict";
|
| 8313 |
+
|
| 8314 |
+
// B.2.3.9 String.prototype.italics()
|
| 8315 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('italics', function (createHTML) {
|
| 8316 |
+
return function italics() {
|
| 8317 |
+
return createHTML(this, 'i', '', '');
|
| 8318 |
+
};
|
| 8319 |
+
});
|
| 8320 |
+
|
| 8321 |
+
|
| 8322 |
+
/***/ }),
|
| 8323 |
+
|
| 8324 |
+
/***/ "./node_modules/core-js/modules/es6.string.iterator.js":
|
| 8325 |
+
/*!*************************************************************!*\
|
| 8326 |
+
!*** ./node_modules/core-js/modules/es6.string.iterator.js ***!
|
| 8327 |
+
\*************************************************************/
|
| 8328 |
+
/*! no static exports found */
|
| 8329 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8330 |
+
|
| 8331 |
+
"use strict";
|
| 8332 |
+
|
| 8333 |
+
var $at = __webpack_require__(/*! ./_string-at */ "./node_modules/core-js/modules/_string-at.js")(true);
|
| 8334 |
+
|
| 8335 |
+
// 21.1.3.27 String.prototype[@@iterator]()
|
| 8336 |
+
__webpack_require__(/*! ./_iter-define */ "./node_modules/core-js/modules/_iter-define.js")(String, 'String', function (iterated) {
|
| 8337 |
+
this._t = String(iterated); // target
|
| 8338 |
+
this._i = 0; // next index
|
| 8339 |
+
// 21.1.5.2.1 %StringIteratorPrototype%.next()
|
| 8340 |
+
}, function () {
|
| 8341 |
+
var O = this._t;
|
| 8342 |
+
var index = this._i;
|
| 8343 |
+
var point;
|
| 8344 |
+
if (index >= O.length) return { value: undefined, done: true };
|
| 8345 |
+
point = $at(O, index);
|
| 8346 |
+
this._i += point.length;
|
| 8347 |
+
return { value: point, done: false };
|
| 8348 |
+
});
|
| 8349 |
+
|
| 8350 |
+
|
| 8351 |
+
/***/ }),
|
| 8352 |
+
|
| 8353 |
+
/***/ "./node_modules/core-js/modules/es6.string.link.js":
|
| 8354 |
+
/*!*********************************************************!*\
|
| 8355 |
+
!*** ./node_modules/core-js/modules/es6.string.link.js ***!
|
| 8356 |
+
\*********************************************************/
|
| 8357 |
+
/*! no static exports found */
|
| 8358 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8359 |
+
|
| 8360 |
+
"use strict";
|
| 8361 |
+
|
| 8362 |
+
// B.2.3.10 String.prototype.link(url)
|
| 8363 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('link', function (createHTML) {
|
| 8364 |
+
return function link(url) {
|
| 8365 |
+
return createHTML(this, 'a', 'href', url);
|
| 8366 |
+
};
|
| 8367 |
+
});
|
| 8368 |
+
|
| 8369 |
+
|
| 8370 |
+
/***/ }),
|
| 8371 |
+
|
| 8372 |
+
/***/ "./node_modules/core-js/modules/es6.string.raw.js":
|
| 8373 |
+
/*!********************************************************!*\
|
| 8374 |
+
!*** ./node_modules/core-js/modules/es6.string.raw.js ***!
|
| 8375 |
+
\********************************************************/
|
| 8376 |
+
/*! no static exports found */
|
| 8377 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8378 |
+
|
| 8379 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8380 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 8381 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 8382 |
+
|
| 8383 |
+
$export($export.S, 'String', {
|
| 8384 |
+
// 21.1.2.4 String.raw(callSite, ...substitutions)
|
| 8385 |
+
raw: function raw(callSite) {
|
| 8386 |
+
var tpl = toIObject(callSite.raw);
|
| 8387 |
+
var len = toLength(tpl.length);
|
| 8388 |
+
var aLen = arguments.length;
|
| 8389 |
+
var res = [];
|
| 8390 |
+
var i = 0;
|
| 8391 |
+
while (len > i) {
|
| 8392 |
+
res.push(String(tpl[i++]));
|
| 8393 |
+
if (i < aLen) res.push(String(arguments[i]));
|
| 8394 |
+
} return res.join('');
|
| 8395 |
+
}
|
| 8396 |
+
});
|
| 8397 |
+
|
| 8398 |
+
|
| 8399 |
+
/***/ }),
|
| 8400 |
+
|
| 8401 |
+
/***/ "./node_modules/core-js/modules/es6.string.repeat.js":
|
| 8402 |
+
/*!***********************************************************!*\
|
| 8403 |
+
!*** ./node_modules/core-js/modules/es6.string.repeat.js ***!
|
| 8404 |
+
\***********************************************************/
|
| 8405 |
+
/*! no static exports found */
|
| 8406 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8407 |
+
|
| 8408 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8409 |
+
|
| 8410 |
+
$export($export.P, 'String', {
|
| 8411 |
+
// 21.1.3.13 String.prototype.repeat(count)
|
| 8412 |
+
repeat: __webpack_require__(/*! ./_string-repeat */ "./node_modules/core-js/modules/_string-repeat.js")
|
| 8413 |
+
});
|
| 8414 |
+
|
| 8415 |
+
|
| 8416 |
+
/***/ }),
|
| 8417 |
+
|
| 8418 |
+
/***/ "./node_modules/core-js/modules/es6.string.small.js":
|
| 8419 |
+
/*!**********************************************************!*\
|
| 8420 |
+
!*** ./node_modules/core-js/modules/es6.string.small.js ***!
|
| 8421 |
+
\**********************************************************/
|
| 8422 |
+
/*! no static exports found */
|
| 8423 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8424 |
+
|
| 8425 |
+
"use strict";
|
| 8426 |
+
|
| 8427 |
+
// B.2.3.11 String.prototype.small()
|
| 8428 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('small', function (createHTML) {
|
| 8429 |
+
return function small() {
|
| 8430 |
+
return createHTML(this, 'small', '', '');
|
| 8431 |
+
};
|
| 8432 |
+
});
|
| 8433 |
+
|
| 8434 |
+
|
| 8435 |
+
/***/ }),
|
| 8436 |
+
|
| 8437 |
+
/***/ "./node_modules/core-js/modules/es6.string.starts-with.js":
|
| 8438 |
+
/*!****************************************************************!*\
|
| 8439 |
+
!*** ./node_modules/core-js/modules/es6.string.starts-with.js ***!
|
| 8440 |
+
\****************************************************************/
|
| 8441 |
+
/*! no static exports found */
|
| 8442 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8443 |
+
|
| 8444 |
+
"use strict";
|
| 8445 |
+
// 21.1.3.18 String.prototype.startsWith(searchString [, position ])
|
| 8446 |
+
|
| 8447 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8448 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 8449 |
+
var context = __webpack_require__(/*! ./_string-context */ "./node_modules/core-js/modules/_string-context.js");
|
| 8450 |
+
var STARTS_WITH = 'startsWith';
|
| 8451 |
+
var $startsWith = ''[STARTS_WITH];
|
| 8452 |
+
|
| 8453 |
+
$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "./node_modules/core-js/modules/_fails-is-regexp.js")(STARTS_WITH), 'String', {
|
| 8454 |
+
startsWith: function startsWith(searchString /* , position = 0 */) {
|
| 8455 |
+
var that = context(this, searchString, STARTS_WITH);
|
| 8456 |
+
var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));
|
| 8457 |
+
var search = String(searchString);
|
| 8458 |
+
return $startsWith
|
| 8459 |
+
? $startsWith.call(that, search, index)
|
| 8460 |
+
: that.slice(index, index + search.length) === search;
|
| 8461 |
+
}
|
| 8462 |
+
});
|
| 8463 |
+
|
| 8464 |
+
|
| 8465 |
+
/***/ }),
|
| 8466 |
+
|
| 8467 |
+
/***/ "./node_modules/core-js/modules/es6.string.strike.js":
|
| 8468 |
+
/*!***********************************************************!*\
|
| 8469 |
+
!*** ./node_modules/core-js/modules/es6.string.strike.js ***!
|
| 8470 |
+
\***********************************************************/
|
| 8471 |
+
/*! no static exports found */
|
| 8472 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8473 |
+
|
| 8474 |
+
"use strict";
|
| 8475 |
+
|
| 8476 |
+
// B.2.3.12 String.prototype.strike()
|
| 8477 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('strike', function (createHTML) {
|
| 8478 |
+
return function strike() {
|
| 8479 |
+
return createHTML(this, 'strike', '', '');
|
| 8480 |
+
};
|
| 8481 |
+
});
|
| 8482 |
+
|
| 8483 |
+
|
| 8484 |
+
/***/ }),
|
| 8485 |
+
|
| 8486 |
+
/***/ "./node_modules/core-js/modules/es6.string.sub.js":
|
| 8487 |
+
/*!********************************************************!*\
|
| 8488 |
+
!*** ./node_modules/core-js/modules/es6.string.sub.js ***!
|
| 8489 |
+
\********************************************************/
|
| 8490 |
+
/*! no static exports found */
|
| 8491 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8492 |
+
|
| 8493 |
+
"use strict";
|
| 8494 |
+
|
| 8495 |
+
// B.2.3.13 String.prototype.sub()
|
| 8496 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('sub', function (createHTML) {
|
| 8497 |
+
return function sub() {
|
| 8498 |
+
return createHTML(this, 'sub', '', '');
|
| 8499 |
+
};
|
| 8500 |
+
});
|
| 8501 |
+
|
| 8502 |
+
|
| 8503 |
+
/***/ }),
|
| 8504 |
+
|
| 8505 |
+
/***/ "./node_modules/core-js/modules/es6.string.sup.js":
|
| 8506 |
+
/*!********************************************************!*\
|
| 8507 |
+
!*** ./node_modules/core-js/modules/es6.string.sup.js ***!
|
| 8508 |
+
\********************************************************/
|
| 8509 |
+
/*! no static exports found */
|
| 8510 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8511 |
+
|
| 8512 |
+
"use strict";
|
| 8513 |
+
|
| 8514 |
+
// B.2.3.14 String.prototype.sup()
|
| 8515 |
+
__webpack_require__(/*! ./_string-html */ "./node_modules/core-js/modules/_string-html.js")('sup', function (createHTML) {
|
| 8516 |
+
return function sup() {
|
| 8517 |
+
return createHTML(this, 'sup', '', '');
|
| 8518 |
+
};
|
| 8519 |
+
});
|
| 8520 |
+
|
| 8521 |
+
|
| 8522 |
+
/***/ }),
|
| 8523 |
+
|
| 8524 |
+
/***/ "./node_modules/core-js/modules/es6.string.trim.js":
|
| 8525 |
+
/*!*********************************************************!*\
|
| 8526 |
+
!*** ./node_modules/core-js/modules/es6.string.trim.js ***!
|
| 8527 |
+
\*********************************************************/
|
| 8528 |
+
/*! no static exports found */
|
| 8529 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8530 |
+
|
| 8531 |
+
"use strict";
|
| 8532 |
+
|
| 8533 |
+
// 21.1.3.25 String.prototype.trim()
|
| 8534 |
+
__webpack_require__(/*! ./_string-trim */ "./node_modules/core-js/modules/_string-trim.js")('trim', function ($trim) {
|
| 8535 |
+
return function trim() {
|
| 8536 |
+
return $trim(this, 3);
|
| 8537 |
+
};
|
| 8538 |
+
});
|
| 8539 |
+
|
| 8540 |
+
|
| 8541 |
+
/***/ }),
|
| 8542 |
+
|
| 8543 |
+
/***/ "./node_modules/core-js/modules/es6.symbol.js":
|
| 8544 |
+
/*!****************************************************!*\
|
| 8545 |
+
!*** ./node_modules/core-js/modules/es6.symbol.js ***!
|
| 8546 |
+
\****************************************************/
|
| 8547 |
+
/*! no static exports found */
|
| 8548 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8549 |
+
|
| 8550 |
+
"use strict";
|
| 8551 |
+
|
| 8552 |
+
// ECMAScript 6 symbols shim
|
| 8553 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 8554 |
+
var has = __webpack_require__(/*! ./_has */ "./node_modules/core-js/modules/_has.js");
|
| 8555 |
+
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "./node_modules/core-js/modules/_descriptors.js");
|
| 8556 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8557 |
+
var redefine = __webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js");
|
| 8558 |
+
var META = __webpack_require__(/*! ./_meta */ "./node_modules/core-js/modules/_meta.js").KEY;
|
| 8559 |
+
var $fails = __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js");
|
| 8560 |
+
var shared = __webpack_require__(/*! ./_shared */ "./node_modules/core-js/modules/_shared.js");
|
| 8561 |
+
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "./node_modules/core-js/modules/_set-to-string-tag.js");
|
| 8562 |
+
var uid = __webpack_require__(/*! ./_uid */ "./node_modules/core-js/modules/_uid.js");
|
| 8563 |
+
var wks = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js");
|
| 8564 |
+
var wksExt = __webpack_require__(/*! ./_wks-ext */ "./node_modules/core-js/modules/_wks-ext.js");
|
| 8565 |
+
var wksDefine = __webpack_require__(/*! ./_wks-define */ "./node_modules/core-js/modules/_wks-define.js");
|
| 8566 |
+
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "./node_modules/core-js/modules/_enum-keys.js");
|
| 8567 |
+
var isArray = __webpack_require__(/*! ./_is-array */ "./node_modules/core-js/modules/_is-array.js");
|
| 8568 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 8569 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 8570 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 8571 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 8572 |
+
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "./node_modules/core-js/modules/_to-primitive.js");
|
| 8573 |
+
var createDesc = __webpack_require__(/*! ./_property-desc */ "./node_modules/core-js/modules/_property-desc.js");
|
| 8574 |
+
var _create = __webpack_require__(/*! ./_object-create */ "./node_modules/core-js/modules/_object-create.js");
|
| 8575 |
+
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "./node_modules/core-js/modules/_object-gopn-ext.js");
|
| 8576 |
+
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js");
|
| 8577 |
+
var $GOPS = __webpack_require__(/*! ./_object-gops */ "./node_modules/core-js/modules/_object-gops.js");
|
| 8578 |
+
var $DP = __webpack_require__(/*! ./_object-dp */ "./node_modules/core-js/modules/_object-dp.js");
|
| 8579 |
+
var $keys = __webpack_require__(/*! ./_object-keys */ "./node_modules/core-js/modules/_object-keys.js");
|
| 8580 |
+
var gOPD = $GOPD.f;
|
| 8581 |
+
var dP = $DP.f;
|
| 8582 |
+
var gOPN = gOPNExt.f;
|
| 8583 |
+
var $Symbol = global.Symbol;
|
| 8584 |
+
var $JSON = global.JSON;
|
| 8585 |
+
var _stringify = $JSON && $JSON.stringify;
|
| 8586 |
+
var PROTOTYPE = 'prototype';
|
| 8587 |
+
var HIDDEN = wks('_hidden');
|
| 8588 |
+
var TO_PRIMITIVE = wks('toPrimitive');
|
| 8589 |
+
var isEnum = {}.propertyIsEnumerable;
|
| 8590 |
+
var SymbolRegistry = shared('symbol-registry');
|
| 8591 |
+
var AllSymbols = shared('symbols');
|
| 8592 |
+
var OPSymbols = shared('op-symbols');
|
| 8593 |
+
var ObjectProto = Object[PROTOTYPE];
|
| 8594 |
+
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
|
| 8595 |
+
var QObject = global.QObject;
|
| 8596 |
+
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
|
| 8597 |
+
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
|
| 8598 |
+
|
| 8599 |
+
// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
|
| 8600 |
+
var setSymbolDesc = DESCRIPTORS && $fails(function () {
|
| 8601 |
+
return _create(dP({}, 'a', {
|
| 8602 |
+
get: function () { return dP(this, 'a', { value: 7 }).a; }
|
| 8603 |
+
})).a != 7;
|
| 8604 |
+
}) ? function (it, key, D) {
|
| 8605 |
+
var protoDesc = gOPD(ObjectProto, key);
|
| 8606 |
+
if (protoDesc) delete ObjectProto[key];
|
| 8607 |
+
dP(it, key, D);
|
| 8608 |
+
if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
|
| 8609 |
+
} : dP;
|
| 8610 |
+
|
| 8611 |
+
var wrap = function (tag) {
|
| 8612 |
+
var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
|
| 8613 |
+
sym._k = tag;
|
| 8614 |
+
return sym;
|
| 8615 |
+
};
|
| 8616 |
+
|
| 8617 |
+
var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
|
| 8618 |
+
return typeof it == 'symbol';
|
| 8619 |
+
} : function (it) {
|
| 8620 |
+
return it instanceof $Symbol;
|
| 8621 |
+
};
|
| 8622 |
+
|
| 8623 |
+
var $defineProperty = function defineProperty(it, key, D) {
|
| 8624 |
+
if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
|
| 8625 |
+
anObject(it);
|
| 8626 |
+
key = toPrimitive(key, true);
|
| 8627 |
+
anObject(D);
|
| 8628 |
+
if (has(AllSymbols, key)) {
|
| 8629 |
+
if (!D.enumerable) {
|
| 8630 |
+
if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
|
| 8631 |
+
it[HIDDEN][key] = true;
|
| 8632 |
+
} else {
|
| 8633 |
+
if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
|
| 8634 |
+
D = _create(D, { enumerable: createDesc(0, false) });
|
| 8635 |
+
} return setSymbolDesc(it, key, D);
|
| 8636 |
+
} return dP(it, key, D);
|
| 8637 |
+
};
|
| 8638 |
+
var $defineProperties = function defineProperties(it, P) {
|
| 8639 |
+
anObject(it);
|
| 8640 |
+
var keys = enumKeys(P = toIObject(P));
|
| 8641 |
+
var i = 0;
|
| 8642 |
+
var l = keys.length;
|
| 8643 |
+
var key;
|
| 8644 |
+
while (l > i) $defineProperty(it, key = keys[i++], P[key]);
|
| 8645 |
+
return it;
|
| 8646 |
+
};
|
| 8647 |
+
var $create = function create(it, P) {
|
| 8648 |
+
return P === undefined ? _create(it) : $defineProperties(_create(it), P);
|
| 8649 |
+
};
|
| 8650 |
+
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
|
| 8651 |
+
var E = isEnum.call(this, key = toPrimitive(key, true));
|
| 8652 |
+
if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
|
| 8653 |
+
return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
|
| 8654 |
+
};
|
| 8655 |
+
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
|
| 8656 |
+
it = toIObject(it);
|
| 8657 |
+
key = toPrimitive(key, true);
|
| 8658 |
+
if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
|
| 8659 |
+
var D = gOPD(it, key);
|
| 8660 |
+
if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
|
| 8661 |
+
return D;
|
| 8662 |
+
};
|
| 8663 |
+
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
|
| 8664 |
+
var names = gOPN(toIObject(it));
|
| 8665 |
+
var result = [];
|
| 8666 |
+
var i = 0;
|
| 8667 |
+
var key;
|
| 8668 |
+
while (names.length > i) {
|
| 8669 |
+
if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
|
| 8670 |
+
} return result;
|
| 8671 |
+
};
|
| 8672 |
+
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
|
| 8673 |
+
var IS_OP = it === ObjectProto;
|
| 8674 |
+
var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
|
| 8675 |
+
var result = [];
|
| 8676 |
+
var i = 0;
|
| 8677 |
+
var key;
|
| 8678 |
+
while (names.length > i) {
|
| 8679 |
+
if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
|
| 8680 |
+
} return result;
|
| 8681 |
+
};
|
| 8682 |
+
|
| 8683 |
+
// 19.4.1.1 Symbol([description])
|
| 8684 |
+
if (!USE_NATIVE) {
|
| 8685 |
+
$Symbol = function Symbol() {
|
| 8686 |
+
if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
|
| 8687 |
+
var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
|
| 8688 |
+
var $set = function (value) {
|
| 8689 |
+
if (this === ObjectProto) $set.call(OPSymbols, value);
|
| 8690 |
+
if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
|
| 8691 |
+
setSymbolDesc(this, tag, createDesc(1, value));
|
| 8692 |
+
};
|
| 8693 |
+
if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
|
| 8694 |
+
return wrap(tag);
|
| 8695 |
+
};
|
| 8696 |
+
redefine($Symbol[PROTOTYPE], 'toString', function toString() {
|
| 8697 |
+
return this._k;
|
| 8698 |
+
});
|
| 8699 |
+
|
| 8700 |
+
$GOPD.f = $getOwnPropertyDescriptor;
|
| 8701 |
+
$DP.f = $defineProperty;
|
| 8702 |
+
__webpack_require__(/*! ./_object-gopn */ "./node_modules/core-js/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
|
| 8703 |
+
__webpack_require__(/*! ./_object-pie */ "./node_modules/core-js/modules/_object-pie.js").f = $propertyIsEnumerable;
|
| 8704 |
+
$GOPS.f = $getOwnPropertySymbols;
|
| 8705 |
+
|
| 8706 |
+
if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "./node_modules/core-js/modules/_library.js")) {
|
| 8707 |
+
redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
|
| 8708 |
+
}
|
| 8709 |
+
|
| 8710 |
+
wksExt.f = function (name) {
|
| 8711 |
+
return wrap(wks(name));
|
| 8712 |
+
};
|
| 8713 |
+
}
|
| 8714 |
+
|
| 8715 |
+
$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });
|
| 8716 |
+
|
| 8717 |
+
for (var es6Symbols = (
|
| 8718 |
+
// 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
|
| 8719 |
+
'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
|
| 8720 |
+
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);
|
| 8721 |
+
|
| 8722 |
+
for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);
|
| 8723 |
+
|
| 8724 |
+
$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
|
| 8725 |
+
// 19.4.2.1 Symbol.for(key)
|
| 8726 |
+
'for': function (key) {
|
| 8727 |
+
return has(SymbolRegistry, key += '')
|
| 8728 |
+
? SymbolRegistry[key]
|
| 8729 |
+
: SymbolRegistry[key] = $Symbol(key);
|
| 8730 |
+
},
|
| 8731 |
+
// 19.4.2.5 Symbol.keyFor(sym)
|
| 8732 |
+
keyFor: function keyFor(sym) {
|
| 8733 |
+
if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
|
| 8734 |
+
for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
|
| 8735 |
+
},
|
| 8736 |
+
useSetter: function () { setter = true; },
|
| 8737 |
+
useSimple: function () { setter = false; }
|
| 8738 |
+
});
|
| 8739 |
+
|
| 8740 |
+
$export($export.S + $export.F * !USE_NATIVE, 'Object', {
|
| 8741 |
+
// 19.1.2.2 Object.create(O [, Properties])
|
| 8742 |
+
create: $create,
|
| 8743 |
+
// 19.1.2.4 Object.defineProperty(O, P, Attributes)
|
| 8744 |
+
defineProperty: $defineProperty,
|
| 8745 |
+
// 19.1.2.3 Object.defineProperties(O, Properties)
|
| 8746 |
+
defineProperties: $defineProperties,
|
| 8747 |
+
// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
|
| 8748 |
+
getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
|
| 8749 |
+
// 19.1.2.7 Object.getOwnPropertyNames(O)
|
| 8750 |
+
getOwnPropertyNames: $getOwnPropertyNames,
|
| 8751 |
+
// 19.1.2.8 Object.getOwnPropertySymbols(O)
|
| 8752 |
+
getOwnPropertySymbols: $getOwnPropertySymbols
|
| 8753 |
+
});
|
| 8754 |
+
|
| 8755 |
+
// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
|
| 8756 |
+
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
|
| 8757 |
+
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });
|
| 8758 |
+
|
| 8759 |
+
$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
|
| 8760 |
+
getOwnPropertySymbols: function getOwnPropertySymbols(it) {
|
| 8761 |
+
return $GOPS.f(toObject(it));
|
| 8762 |
+
}
|
| 8763 |
+
});
|
| 8764 |
+
|
| 8765 |
+
// 24.3.2 JSON.stringify(value [, replacer [, space]])
|
| 8766 |
+
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
|
| 8767 |
+
var S = $Symbol();
|
| 8768 |
+
// MS Edge converts symbol values to JSON as {}
|
| 8769 |
+
// WebKit converts symbol values to JSON as null
|
| 8770 |
+
// V8 throws on boxed symbols
|
| 8771 |
+
return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
|
| 8772 |
+
})), 'JSON', {
|
| 8773 |
+
stringify: function stringify(it) {
|
| 8774 |
+
var args = [it];
|
| 8775 |
+
var i = 1;
|
| 8776 |
+
var replacer, $replacer;
|
| 8777 |
+
while (arguments.length > i) args.push(arguments[i++]);
|
| 8778 |
+
$replacer = replacer = args[1];
|
| 8779 |
+
if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
|
| 8780 |
+
if (!isArray(replacer)) replacer = function (key, value) {
|
| 8781 |
+
if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
|
| 8782 |
+
if (!isSymbol(value)) return value;
|
| 8783 |
+
};
|
| 8784 |
+
args[1] = replacer;
|
| 8785 |
+
return _stringify.apply($JSON, args);
|
| 8786 |
+
}
|
| 8787 |
+
});
|
| 8788 |
+
|
| 8789 |
+
// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
|
| 8790 |
+
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
|
| 8791 |
+
// 19.4.3.5 Symbol.prototype[@@toStringTag]
|
| 8792 |
+
setToStringTag($Symbol, 'Symbol');
|
| 8793 |
+
// 20.2.1.9 Math[@@toStringTag]
|
| 8794 |
+
setToStringTag(Math, 'Math', true);
|
| 8795 |
+
// 24.3.3 JSON[@@toStringTag]
|
| 8796 |
+
setToStringTag(global.JSON, 'JSON', true);
|
| 8797 |
+
|
| 8798 |
+
|
| 8799 |
+
/***/ }),
|
| 8800 |
+
|
| 8801 |
+
/***/ "./node_modules/core-js/modules/es6.typed.array-buffer.js":
|
| 8802 |
+
/*!****************************************************************!*\
|
| 8803 |
+
!*** ./node_modules/core-js/modules/es6.typed.array-buffer.js ***!
|
| 8804 |
+
\****************************************************************/
|
| 8805 |
+
/*! no static exports found */
|
| 8806 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8807 |
+
|
| 8808 |
+
"use strict";
|
| 8809 |
+
|
| 8810 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8811 |
+
var $typed = __webpack_require__(/*! ./_typed */ "./node_modules/core-js/modules/_typed.js");
|
| 8812 |
+
var buffer = __webpack_require__(/*! ./_typed-buffer */ "./node_modules/core-js/modules/_typed-buffer.js");
|
| 8813 |
+
var anObject = __webpack_require__(/*! ./_an-object */ "./node_modules/core-js/modules/_an-object.js");
|
| 8814 |
+
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "./node_modules/core-js/modules/_to-absolute-index.js");
|
| 8815 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 8816 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 8817 |
+
var ArrayBuffer = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js").ArrayBuffer;
|
| 8818 |
+
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "./node_modules/core-js/modules/_species-constructor.js");
|
| 8819 |
+
var $ArrayBuffer = buffer.ArrayBuffer;
|
| 8820 |
+
var $DataView = buffer.DataView;
|
| 8821 |
+
var $isView = $typed.ABV && ArrayBuffer.isView;
|
| 8822 |
+
var $slice = $ArrayBuffer.prototype.slice;
|
| 8823 |
+
var VIEW = $typed.VIEW;
|
| 8824 |
+
var ARRAY_BUFFER = 'ArrayBuffer';
|
| 8825 |
+
|
| 8826 |
+
$export($export.G + $export.W + $export.F * (ArrayBuffer !== $ArrayBuffer), { ArrayBuffer: $ArrayBuffer });
|
| 8827 |
+
|
| 8828 |
+
$export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {
|
| 8829 |
+
// 24.1.3.1 ArrayBuffer.isView(arg)
|
| 8830 |
+
isView: function isView(it) {
|
| 8831 |
+
return $isView && $isView(it) || isObject(it) && VIEW in it;
|
| 8832 |
+
}
|
| 8833 |
+
});
|
| 8834 |
+
|
| 8835 |
+
$export($export.P + $export.U + $export.F * __webpack_require__(/*! ./_fails */ "./node_modules/core-js/modules/_fails.js")(function () {
|
| 8836 |
+
return !new $ArrayBuffer(2).slice(1, undefined).byteLength;
|
| 8837 |
+
}), ARRAY_BUFFER, {
|
| 8838 |
+
// 24.1.4.3 ArrayBuffer.prototype.slice(start, end)
|
| 8839 |
+
slice: function slice(start, end) {
|
| 8840 |
+
if ($slice !== undefined && end === undefined) return $slice.call(anObject(this), start); // FF fix
|
| 8841 |
+
var len = anObject(this).byteLength;
|
| 8842 |
+
var first = toAbsoluteIndex(start, len);
|
| 8843 |
+
var fin = toAbsoluteIndex(end === undefined ? len : end, len);
|
| 8844 |
+
var result = new (speciesConstructor(this, $ArrayBuffer))(toLength(fin - first));
|
| 8845 |
+
var viewS = new $DataView(this);
|
| 8846 |
+
var viewT = new $DataView(result);
|
| 8847 |
+
var index = 0;
|
| 8848 |
+
while (first < fin) {
|
| 8849 |
+
viewT.setUint8(index++, viewS.getUint8(first++));
|
| 8850 |
+
} return result;
|
| 8851 |
+
}
|
| 8852 |
+
});
|
| 8853 |
+
|
| 8854 |
+
__webpack_require__(/*! ./_set-species */ "./node_modules/core-js/modules/_set-species.js")(ARRAY_BUFFER);
|
| 8855 |
+
|
| 8856 |
+
|
| 8857 |
+
/***/ }),
|
| 8858 |
+
|
| 8859 |
+
/***/ "./node_modules/core-js/modules/es6.typed.data-view.js":
|
| 8860 |
+
/*!*************************************************************!*\
|
| 8861 |
+
!*** ./node_modules/core-js/modules/es6.typed.data-view.js ***!
|
| 8862 |
+
\*************************************************************/
|
| 8863 |
+
/*! no static exports found */
|
| 8864 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8865 |
+
|
| 8866 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 8867 |
+
$export($export.G + $export.W + $export.F * !__webpack_require__(/*! ./_typed */ "./node_modules/core-js/modules/_typed.js").ABV, {
|
| 8868 |
+
DataView: __webpack_require__(/*! ./_typed-buffer */ "./node_modules/core-js/modules/_typed-buffer.js").DataView
|
| 8869 |
+
});
|
| 8870 |
+
|
| 8871 |
+
|
| 8872 |
+
/***/ }),
|
| 8873 |
+
|
| 8874 |
+
/***/ "./node_modules/core-js/modules/es6.typed.float32-array.js":
|
| 8875 |
+
/*!*****************************************************************!*\
|
| 8876 |
+
!*** ./node_modules/core-js/modules/es6.typed.float32-array.js ***!
|
| 8877 |
+
\*****************************************************************/
|
| 8878 |
+
/*! no static exports found */
|
| 8879 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8880 |
+
|
| 8881 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Float32', 4, function (init) {
|
| 8882 |
+
return function Float32Array(data, byteOffset, length) {
|
| 8883 |
+
return init(this, data, byteOffset, length);
|
| 8884 |
+
};
|
| 8885 |
+
});
|
| 8886 |
+
|
| 8887 |
+
|
| 8888 |
+
/***/ }),
|
| 8889 |
+
|
| 8890 |
+
/***/ "./node_modules/core-js/modules/es6.typed.float64-array.js":
|
| 8891 |
+
/*!*****************************************************************!*\
|
| 8892 |
+
!*** ./node_modules/core-js/modules/es6.typed.float64-array.js ***!
|
| 8893 |
+
\*****************************************************************/
|
| 8894 |
+
/*! no static exports found */
|
| 8895 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8896 |
+
|
| 8897 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Float64', 8, function (init) {
|
| 8898 |
+
return function Float64Array(data, byteOffset, length) {
|
| 8899 |
+
return init(this, data, byteOffset, length);
|
| 8900 |
+
};
|
| 8901 |
+
});
|
| 8902 |
+
|
| 8903 |
+
|
| 8904 |
+
/***/ }),
|
| 8905 |
+
|
| 8906 |
+
/***/ "./node_modules/core-js/modules/es6.typed.int16-array.js":
|
| 8907 |
+
/*!***************************************************************!*\
|
| 8908 |
+
!*** ./node_modules/core-js/modules/es6.typed.int16-array.js ***!
|
| 8909 |
+
\***************************************************************/
|
| 8910 |
+
/*! no static exports found */
|
| 8911 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8912 |
+
|
| 8913 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Int16', 2, function (init) {
|
| 8914 |
+
return function Int16Array(data, byteOffset, length) {
|
| 8915 |
+
return init(this, data, byteOffset, length);
|
| 8916 |
+
};
|
| 8917 |
+
});
|
| 8918 |
+
|
| 8919 |
+
|
| 8920 |
+
/***/ }),
|
| 8921 |
+
|
| 8922 |
+
/***/ "./node_modules/core-js/modules/es6.typed.int32-array.js":
|
| 8923 |
+
/*!***************************************************************!*\
|
| 8924 |
+
!*** ./node_modules/core-js/modules/es6.typed.int32-array.js ***!
|
| 8925 |
+
\***************************************************************/
|
| 8926 |
+
/*! no static exports found */
|
| 8927 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8928 |
+
|
| 8929 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Int32', 4, function (init) {
|
| 8930 |
+
return function Int32Array(data, byteOffset, length) {
|
| 8931 |
+
return init(this, data, byteOffset, length);
|
| 8932 |
+
};
|
| 8933 |
+
});
|
| 8934 |
+
|
| 8935 |
+
|
| 8936 |
+
/***/ }),
|
| 8937 |
+
|
| 8938 |
+
/***/ "./node_modules/core-js/modules/es6.typed.int8-array.js":
|
| 8939 |
+
/*!**************************************************************!*\
|
| 8940 |
+
!*** ./node_modules/core-js/modules/es6.typed.int8-array.js ***!
|
| 8941 |
+
\**************************************************************/
|
| 8942 |
+
/*! no static exports found */
|
| 8943 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8944 |
+
|
| 8945 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Int8', 1, function (init) {
|
| 8946 |
+
return function Int8Array(data, byteOffset, length) {
|
| 8947 |
+
return init(this, data, byteOffset, length);
|
| 8948 |
+
};
|
| 8949 |
+
});
|
| 8950 |
+
|
| 8951 |
+
|
| 8952 |
+
/***/ }),
|
| 8953 |
+
|
| 8954 |
+
/***/ "./node_modules/core-js/modules/es6.typed.uint16-array.js":
|
| 8955 |
+
/*!****************************************************************!*\
|
| 8956 |
+
!*** ./node_modules/core-js/modules/es6.typed.uint16-array.js ***!
|
| 8957 |
+
\****************************************************************/
|
| 8958 |
+
/*! no static exports found */
|
| 8959 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8960 |
+
|
| 8961 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Uint16', 2, function (init) {
|
| 8962 |
+
return function Uint16Array(data, byteOffset, length) {
|
| 8963 |
+
return init(this, data, byteOffset, length);
|
| 8964 |
+
};
|
| 8965 |
+
});
|
| 8966 |
+
|
| 8967 |
+
|
| 8968 |
+
/***/ }),
|
| 8969 |
+
|
| 8970 |
+
/***/ "./node_modules/core-js/modules/es6.typed.uint32-array.js":
|
| 8971 |
+
/*!****************************************************************!*\
|
| 8972 |
+
!*** ./node_modules/core-js/modules/es6.typed.uint32-array.js ***!
|
| 8973 |
+
\****************************************************************/
|
| 8974 |
+
/*! no static exports found */
|
| 8975 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8976 |
+
|
| 8977 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Uint32', 4, function (init) {
|
| 8978 |
+
return function Uint32Array(data, byteOffset, length) {
|
| 8979 |
+
return init(this, data, byteOffset, length);
|
| 8980 |
+
};
|
| 8981 |
+
});
|
| 8982 |
+
|
| 8983 |
+
|
| 8984 |
+
/***/ }),
|
| 8985 |
+
|
| 8986 |
+
/***/ "./node_modules/core-js/modules/es6.typed.uint8-array.js":
|
| 8987 |
+
/*!***************************************************************!*\
|
| 8988 |
+
!*** ./node_modules/core-js/modules/es6.typed.uint8-array.js ***!
|
| 8989 |
+
\***************************************************************/
|
| 8990 |
+
/*! no static exports found */
|
| 8991 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 8992 |
+
|
| 8993 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Uint8', 1, function (init) {
|
| 8994 |
+
return function Uint8Array(data, byteOffset, length) {
|
| 8995 |
+
return init(this, data, byteOffset, length);
|
| 8996 |
+
};
|
| 8997 |
+
});
|
| 8998 |
+
|
| 8999 |
+
|
| 9000 |
+
/***/ }),
|
| 9001 |
+
|
| 9002 |
+
/***/ "./node_modules/core-js/modules/es6.typed.uint8-clamped-array.js":
|
| 9003 |
+
/*!***********************************************************************!*\
|
| 9004 |
+
!*** ./node_modules/core-js/modules/es6.typed.uint8-clamped-array.js ***!
|
| 9005 |
+
\***********************************************************************/
|
| 9006 |
+
/*! no static exports found */
|
| 9007 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9008 |
+
|
| 9009 |
+
__webpack_require__(/*! ./_typed-array */ "./node_modules/core-js/modules/_typed-array.js")('Uint8', 1, function (init) {
|
| 9010 |
+
return function Uint8ClampedArray(data, byteOffset, length) {
|
| 9011 |
+
return init(this, data, byteOffset, length);
|
| 9012 |
+
};
|
| 9013 |
+
}, true);
|
| 9014 |
+
|
| 9015 |
+
|
| 9016 |
+
/***/ }),
|
| 9017 |
+
|
| 9018 |
+
/***/ "./node_modules/core-js/modules/es6.weak-map.js":
|
| 9019 |
+
/*!******************************************************!*\
|
| 9020 |
+
!*** ./node_modules/core-js/modules/es6.weak-map.js ***!
|
| 9021 |
+
\******************************************************/
|
| 9022 |
+
/*! no static exports found */
|
| 9023 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9024 |
+
|
| 9025 |
+
"use strict";
|
| 9026 |
+
|
| 9027 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 9028 |
+
var each = __webpack_require__(/*! ./_array-methods */ "./node_modules/core-js/modules/_array-methods.js")(0);
|
| 9029 |
+
var redefine = __webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js");
|
| 9030 |
+
var meta = __webpack_require__(/*! ./_meta */ "./node_modules/core-js/modules/_meta.js");
|
| 9031 |
+
var assign = __webpack_require__(/*! ./_object-assign */ "./node_modules/core-js/modules/_object-assign.js");
|
| 9032 |
+
var weak = __webpack_require__(/*! ./_collection-weak */ "./node_modules/core-js/modules/_collection-weak.js");
|
| 9033 |
+
var isObject = __webpack_require__(/*! ./_is-object */ "./node_modules/core-js/modules/_is-object.js");
|
| 9034 |
+
var validate = __webpack_require__(/*! ./_validate-collection */ "./node_modules/core-js/modules/_validate-collection.js");
|
| 9035 |
+
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "./node_modules/core-js/modules/_validate-collection.js");
|
| 9036 |
+
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
|
| 9037 |
+
var WEAK_MAP = 'WeakMap';
|
| 9038 |
+
var getWeak = meta.getWeak;
|
| 9039 |
+
var isExtensible = Object.isExtensible;
|
| 9040 |
+
var uncaughtFrozenStore = weak.ufstore;
|
| 9041 |
+
var InternalMap;
|
| 9042 |
+
|
| 9043 |
+
var wrapper = function (get) {
|
| 9044 |
+
return function WeakMap() {
|
| 9045 |
+
return get(this, arguments.length > 0 ? arguments[0] : undefined);
|
| 9046 |
+
};
|
| 9047 |
+
};
|
| 9048 |
+
|
| 9049 |
+
var methods = {
|
| 9050 |
+
// 23.3.3.3 WeakMap.prototype.get(key)
|
| 9051 |
+
get: function get(key) {
|
| 9052 |
+
if (isObject(key)) {
|
| 9053 |
+
var data = getWeak(key);
|
| 9054 |
+
if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
|
| 9055 |
+
return data ? data[this._i] : undefined;
|
| 9056 |
+
}
|
| 9057 |
+
},
|
| 9058 |
+
// 23.3.3.5 WeakMap.prototype.set(key, value)
|
| 9059 |
+
set: function set(key, value) {
|
| 9060 |
+
return weak.def(validate(this, WEAK_MAP), key, value);
|
| 9061 |
+
}
|
| 9062 |
+
};
|
| 9063 |
+
|
| 9064 |
+
// 23.3 WeakMap Objects
|
| 9065 |
+
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "./node_modules/core-js/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);
|
| 9066 |
+
|
| 9067 |
+
// IE11 WeakMap frozen keys fix
|
| 9068 |
+
if (NATIVE_WEAK_MAP && IS_IE11) {
|
| 9069 |
+
InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
|
| 9070 |
+
assign(InternalMap.prototype, methods);
|
| 9071 |
+
meta.NEED = true;
|
| 9072 |
+
each(['delete', 'has', 'get', 'set'], function (key) {
|
| 9073 |
+
var proto = $WeakMap.prototype;
|
| 9074 |
+
var method = proto[key];
|
| 9075 |
+
redefine(proto, key, function (a, b) {
|
| 9076 |
+
// store frozen objects on internal weakmap shim
|
| 9077 |
+
if (isObject(a) && !isExtensible(a)) {
|
| 9078 |
+
if (!this._f) this._f = new InternalMap();
|
| 9079 |
+
var result = this._f[key](a, b);
|
| 9080 |
+
return key == 'set' ? this : result;
|
| 9081 |
+
// store all the rest on native weakmap
|
| 9082 |
+
} return method.call(this, a, b);
|
| 9083 |
+
});
|
| 9084 |
+
});
|
| 9085 |
+
}
|
| 9086 |
+
|
| 9087 |
+
|
| 9088 |
+
/***/ }),
|
| 9089 |
+
|
| 9090 |
+
/***/ "./node_modules/core-js/modules/es6.weak-set.js":
|
| 9091 |
+
/*!******************************************************!*\
|
| 9092 |
+
!*** ./node_modules/core-js/modules/es6.weak-set.js ***!
|
| 9093 |
+
\******************************************************/
|
| 9094 |
+
/*! no static exports found */
|
| 9095 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9096 |
+
|
| 9097 |
+
"use strict";
|
| 9098 |
+
|
| 9099 |
+
var weak = __webpack_require__(/*! ./_collection-weak */ "./node_modules/core-js/modules/_collection-weak.js");
|
| 9100 |
+
var validate = __webpack_require__(/*! ./_validate-collection */ "./node_modules/core-js/modules/_validate-collection.js");
|
| 9101 |
+
var WEAK_SET = 'WeakSet';
|
| 9102 |
+
|
| 9103 |
+
// 23.4 WeakSet Objects
|
| 9104 |
+
__webpack_require__(/*! ./_collection */ "./node_modules/core-js/modules/_collection.js")(WEAK_SET, function (get) {
|
| 9105 |
+
return function WeakSet() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
|
| 9106 |
+
}, {
|
| 9107 |
+
// 23.4.3.1 WeakSet.prototype.add(value)
|
| 9108 |
+
add: function add(value) {
|
| 9109 |
+
return weak.def(validate(this, WEAK_SET), value, true);
|
| 9110 |
+
}
|
| 9111 |
+
}, weak, false, true);
|
| 9112 |
+
|
| 9113 |
+
|
| 9114 |
+
/***/ }),
|
| 9115 |
+
|
| 9116 |
+
/***/ "./node_modules/core-js/modules/es7.array.flat-map.js":
|
| 9117 |
+
/*!************************************************************!*\
|
| 9118 |
+
!*** ./node_modules/core-js/modules/es7.array.flat-map.js ***!
|
| 9119 |
+
\************************************************************/
|
| 9120 |
+
/*! no static exports found */
|
| 9121 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9122 |
+
|
| 9123 |
+
"use strict";
|
| 9124 |
+
|
| 9125 |
+
// https://tc39.github.io/proposal-flatMap/#sec-Array.prototype.flatMap
|
| 9126 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9127 |
+
var flattenIntoArray = __webpack_require__(/*! ./_flatten-into-array */ "./node_modules/core-js/modules/_flatten-into-array.js");
|
| 9128 |
+
var toObject = __webpack_require__(/*! ./_to-object */ "./node_modules/core-js/modules/_to-object.js");
|
| 9129 |
+
var toLength = __webpack_require__(/*! ./_to-length */ "./node_modules/core-js/modules/_to-length.js");
|
| 9130 |
+
var aFunction = __webpack_require__(/*! ./_a-function */ "./node_modules/core-js/modules/_a-function.js");
|
| 9131 |
+
var arraySpeciesCreate = __webpack_require__(/*! ./_array-species-create */ "./node_modules/core-js/modules/_array-species-create.js");
|
| 9132 |
+
|
| 9133 |
+
$export($export.P, 'Array', {
|
| 9134 |
+
flatMap: function flatMap(callbackfn /* , thisArg */) {
|
| 9135 |
+
var O = toObject(this);
|
| 9136 |
+
var sourceLen, A;
|
| 9137 |
+
aFunction(callbackfn);
|
| 9138 |
+
sourceLen = toLength(O.length);
|
| 9139 |
+
A = arraySpeciesCreate(O, 0);
|
| 9140 |
+
flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments[1]);
|
| 9141 |
+
return A;
|
| 9142 |
+
}
|
| 9143 |
+
});
|
| 9144 |
+
|
| 9145 |
+
__webpack_require__(/*! ./_add-to-unscopables */ "./node_modules/core-js/modules/_add-to-unscopables.js")('flatMap');
|
| 9146 |
+
|
| 9147 |
+
|
| 9148 |
+
/***/ }),
|
| 9149 |
+
|
| 9150 |
+
/***/ "./node_modules/core-js/modules/es7.array.includes.js":
|
| 9151 |
+
/*!************************************************************!*\
|
| 9152 |
+
!*** ./node_modules/core-js/modules/es7.array.includes.js ***!
|
| 9153 |
+
\************************************************************/
|
| 9154 |
+
/*! no static exports found */
|
| 9155 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9156 |
+
|
| 9157 |
+
"use strict";
|
| 9158 |
+
|
| 9159 |
+
// https://github.com/tc39/Array.prototype.includes
|
| 9160 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9161 |
+
var $includes = __webpack_require__(/*! ./_array-includes */ "./node_modules/core-js/modules/_array-includes.js")(true);
|
| 9162 |
+
|
| 9163 |
+
$export($export.P, 'Array', {
|
| 9164 |
+
includes: function includes(el /* , fromIndex = 0 */) {
|
| 9165 |
+
return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
|
| 9166 |
+
}
|
| 9167 |
+
});
|
| 9168 |
+
|
| 9169 |
+
__webpack_require__(/*! ./_add-to-unscopables */ "./node_modules/core-js/modules/_add-to-unscopables.js")('includes');
|
| 9170 |
+
|
| 9171 |
+
|
| 9172 |
+
/***/ }),
|
| 9173 |
+
|
| 9174 |
+
/***/ "./node_modules/core-js/modules/es7.object.entries.js":
|
| 9175 |
+
/*!************************************************************!*\
|
| 9176 |
+
!*** ./node_modules/core-js/modules/es7.object.entries.js ***!
|
| 9177 |
+
\************************************************************/
|
| 9178 |
+
/*! no static exports found */
|
| 9179 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9180 |
+
|
| 9181 |
+
// https://github.com/tc39/proposal-object-values-entries
|
| 9182 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9183 |
+
var $entries = __webpack_require__(/*! ./_object-to-array */ "./node_modules/core-js/modules/_object-to-array.js")(true);
|
| 9184 |
+
|
| 9185 |
+
$export($export.S, 'Object', {
|
| 9186 |
+
entries: function entries(it) {
|
| 9187 |
+
return $entries(it);
|
| 9188 |
+
}
|
| 9189 |
+
});
|
| 9190 |
+
|
| 9191 |
+
|
| 9192 |
+
/***/ }),
|
| 9193 |
+
|
| 9194 |
+
/***/ "./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js":
|
| 9195 |
+
/*!*********************************************************************************!*\
|
| 9196 |
+
!*** ./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js ***!
|
| 9197 |
+
\*********************************************************************************/
|
| 9198 |
+
/*! no static exports found */
|
| 9199 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9200 |
+
|
| 9201 |
+
// https://github.com/tc39/proposal-object-getownpropertydescriptors
|
| 9202 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9203 |
+
var ownKeys = __webpack_require__(/*! ./_own-keys */ "./node_modules/core-js/modules/_own-keys.js");
|
| 9204 |
+
var toIObject = __webpack_require__(/*! ./_to-iobject */ "./node_modules/core-js/modules/_to-iobject.js");
|
| 9205 |
+
var gOPD = __webpack_require__(/*! ./_object-gopd */ "./node_modules/core-js/modules/_object-gopd.js");
|
| 9206 |
+
var createProperty = __webpack_require__(/*! ./_create-property */ "./node_modules/core-js/modules/_create-property.js");
|
| 9207 |
+
|
| 9208 |
+
$export($export.S, 'Object', {
|
| 9209 |
+
getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
|
| 9210 |
+
var O = toIObject(object);
|
| 9211 |
+
var getDesc = gOPD.f;
|
| 9212 |
+
var keys = ownKeys(O);
|
| 9213 |
+
var result = {};
|
| 9214 |
+
var i = 0;
|
| 9215 |
+
var key, desc;
|
| 9216 |
+
while (keys.length > i) {
|
| 9217 |
+
desc = getDesc(O, key = keys[i++]);
|
| 9218 |
+
if (desc !== undefined) createProperty(result, key, desc);
|
| 9219 |
+
}
|
| 9220 |
+
return result;
|
| 9221 |
+
}
|
| 9222 |
+
});
|
| 9223 |
+
|
| 9224 |
+
|
| 9225 |
+
/***/ }),
|
| 9226 |
+
|
| 9227 |
+
/***/ "./node_modules/core-js/modules/es7.object.values.js":
|
| 9228 |
+
/*!***********************************************************!*\
|
| 9229 |
+
!*** ./node_modules/core-js/modules/es7.object.values.js ***!
|
| 9230 |
+
\***********************************************************/
|
| 9231 |
+
/*! no static exports found */
|
| 9232 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9233 |
+
|
| 9234 |
+
// https://github.com/tc39/proposal-object-values-entries
|
| 9235 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9236 |
+
var $values = __webpack_require__(/*! ./_object-to-array */ "./node_modules/core-js/modules/_object-to-array.js")(false);
|
| 9237 |
+
|
| 9238 |
+
$export($export.S, 'Object', {
|
| 9239 |
+
values: function values(it) {
|
| 9240 |
+
return $values(it);
|
| 9241 |
+
}
|
| 9242 |
+
});
|
| 9243 |
+
|
| 9244 |
+
|
| 9245 |
+
/***/ }),
|
| 9246 |
+
|
| 9247 |
+
/***/ "./node_modules/core-js/modules/es7.promise.finally.js":
|
| 9248 |
+
/*!*************************************************************!*\
|
| 9249 |
+
!*** ./node_modules/core-js/modules/es7.promise.finally.js ***!
|
| 9250 |
+
\*************************************************************/
|
| 9251 |
+
/*! no static exports found */
|
| 9252 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9253 |
+
|
| 9254 |
+
"use strict";
|
| 9255 |
+
// https://github.com/tc39/proposal-promise-finally
|
| 9256 |
+
|
| 9257 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9258 |
+
var core = __webpack_require__(/*! ./_core */ "./node_modules/core-js/modules/_core.js");
|
| 9259 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 9260 |
+
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "./node_modules/core-js/modules/_species-constructor.js");
|
| 9261 |
+
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "./node_modules/core-js/modules/_promise-resolve.js");
|
| 9262 |
+
|
| 9263 |
+
$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
|
| 9264 |
+
var C = speciesConstructor(this, core.Promise || global.Promise);
|
| 9265 |
+
var isFunction = typeof onFinally == 'function';
|
| 9266 |
+
return this.then(
|
| 9267 |
+
isFunction ? function (x) {
|
| 9268 |
+
return promiseResolve(C, onFinally()).then(function () { return x; });
|
| 9269 |
+
} : onFinally,
|
| 9270 |
+
isFunction ? function (e) {
|
| 9271 |
+
return promiseResolve(C, onFinally()).then(function () { throw e; });
|
| 9272 |
+
} : onFinally
|
| 9273 |
+
);
|
| 9274 |
+
} });
|
| 9275 |
+
|
| 9276 |
+
|
| 9277 |
+
/***/ }),
|
| 9278 |
+
|
| 9279 |
+
/***/ "./node_modules/core-js/modules/es7.string.pad-end.js":
|
| 9280 |
+
/*!************************************************************!*\
|
| 9281 |
+
!*** ./node_modules/core-js/modules/es7.string.pad-end.js ***!
|
| 9282 |
+
\************************************************************/
|
| 9283 |
+
/*! no static exports found */
|
| 9284 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9285 |
+
|
| 9286 |
+
"use strict";
|
| 9287 |
+
|
| 9288 |
+
// https://github.com/tc39/proposal-string-pad-start-end
|
| 9289 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9290 |
+
var $pad = __webpack_require__(/*! ./_string-pad */ "./node_modules/core-js/modules/_string-pad.js");
|
| 9291 |
+
var userAgent = __webpack_require__(/*! ./_user-agent */ "./node_modules/core-js/modules/_user-agent.js");
|
| 9292 |
+
|
| 9293 |
+
// https://github.com/zloirock/core-js/issues/280
|
| 9294 |
+
var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent);
|
| 9295 |
+
|
| 9296 |
+
$export($export.P + $export.F * WEBKIT_BUG, 'String', {
|
| 9297 |
+
padEnd: function padEnd(maxLength /* , fillString = ' ' */) {
|
| 9298 |
+
return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);
|
| 9299 |
+
}
|
| 9300 |
+
});
|
| 9301 |
+
|
| 9302 |
+
|
| 9303 |
+
/***/ }),
|
| 9304 |
+
|
| 9305 |
+
/***/ "./node_modules/core-js/modules/es7.string.pad-start.js":
|
| 9306 |
+
/*!**************************************************************!*\
|
| 9307 |
+
!*** ./node_modules/core-js/modules/es7.string.pad-start.js ***!
|
| 9308 |
+
\**************************************************************/
|
| 9309 |
+
/*! no static exports found */
|
| 9310 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9311 |
+
|
| 9312 |
+
"use strict";
|
| 9313 |
+
|
| 9314 |
+
// https://github.com/tc39/proposal-string-pad-start-end
|
| 9315 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9316 |
+
var $pad = __webpack_require__(/*! ./_string-pad */ "./node_modules/core-js/modules/_string-pad.js");
|
| 9317 |
+
var userAgent = __webpack_require__(/*! ./_user-agent */ "./node_modules/core-js/modules/_user-agent.js");
|
| 9318 |
+
|
| 9319 |
+
// https://github.com/zloirock/core-js/issues/280
|
| 9320 |
+
var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent);
|
| 9321 |
+
|
| 9322 |
+
$export($export.P + $export.F * WEBKIT_BUG, 'String', {
|
| 9323 |
+
padStart: function padStart(maxLength /* , fillString = ' ' */) {
|
| 9324 |
+
return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);
|
| 9325 |
+
}
|
| 9326 |
+
});
|
| 9327 |
+
|
| 9328 |
+
|
| 9329 |
+
/***/ }),
|
| 9330 |
+
|
| 9331 |
+
/***/ "./node_modules/core-js/modules/es7.string.trim-left.js":
|
| 9332 |
+
/*!**************************************************************!*\
|
| 9333 |
+
!*** ./node_modules/core-js/modules/es7.string.trim-left.js ***!
|
| 9334 |
+
\**************************************************************/
|
| 9335 |
+
/*! no static exports found */
|
| 9336 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9337 |
+
|
| 9338 |
+
"use strict";
|
| 9339 |
+
|
| 9340 |
+
// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
|
| 9341 |
+
__webpack_require__(/*! ./_string-trim */ "./node_modules/core-js/modules/_string-trim.js")('trimLeft', function ($trim) {
|
| 9342 |
+
return function trimLeft() {
|
| 9343 |
+
return $trim(this, 1);
|
| 9344 |
+
};
|
| 9345 |
+
}, 'trimStart');
|
| 9346 |
+
|
| 9347 |
+
|
| 9348 |
+
/***/ }),
|
| 9349 |
+
|
| 9350 |
+
/***/ "./node_modules/core-js/modules/es7.string.trim-right.js":
|
| 9351 |
+
/*!***************************************************************!*\
|
| 9352 |
+
!*** ./node_modules/core-js/modules/es7.string.trim-right.js ***!
|
| 9353 |
+
\***************************************************************/
|
| 9354 |
+
/*! no static exports found */
|
| 9355 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9356 |
+
|
| 9357 |
+
"use strict";
|
| 9358 |
+
|
| 9359 |
+
// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
|
| 9360 |
+
__webpack_require__(/*! ./_string-trim */ "./node_modules/core-js/modules/_string-trim.js")('trimRight', function ($trim) {
|
| 9361 |
+
return function trimRight() {
|
| 9362 |
+
return $trim(this, 2);
|
| 9363 |
+
};
|
| 9364 |
+
}, 'trimEnd');
|
| 9365 |
+
|
| 9366 |
+
|
| 9367 |
+
/***/ }),
|
| 9368 |
+
|
| 9369 |
+
/***/ "./node_modules/core-js/modules/es7.symbol.async-iterator.js":
|
| 9370 |
+
/*!*******************************************************************!*\
|
| 9371 |
+
!*** ./node_modules/core-js/modules/es7.symbol.async-iterator.js ***!
|
| 9372 |
+
\*******************************************************************/
|
| 9373 |
+
/*! no static exports found */
|
| 9374 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9375 |
+
|
| 9376 |
+
__webpack_require__(/*! ./_wks-define */ "./node_modules/core-js/modules/_wks-define.js")('asyncIterator');
|
| 9377 |
+
|
| 9378 |
+
|
| 9379 |
+
/***/ }),
|
| 9380 |
+
|
| 9381 |
+
/***/ "./node_modules/core-js/modules/web.dom.iterable.js":
|
| 9382 |
+
/*!**********************************************************!*\
|
| 9383 |
+
!*** ./node_modules/core-js/modules/web.dom.iterable.js ***!
|
| 9384 |
+
\**********************************************************/
|
| 9385 |
+
/*! no static exports found */
|
| 9386 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9387 |
+
|
| 9388 |
+
var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "./node_modules/core-js/modules/es6.array.iterator.js");
|
| 9389 |
+
var getKeys = __webpack_require__(/*! ./_object-keys */ "./node_modules/core-js/modules/_object-keys.js");
|
| 9390 |
+
var redefine = __webpack_require__(/*! ./_redefine */ "./node_modules/core-js/modules/_redefine.js");
|
| 9391 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 9392 |
+
var hide = __webpack_require__(/*! ./_hide */ "./node_modules/core-js/modules/_hide.js");
|
| 9393 |
+
var Iterators = __webpack_require__(/*! ./_iterators */ "./node_modules/core-js/modules/_iterators.js");
|
| 9394 |
+
var wks = __webpack_require__(/*! ./_wks */ "./node_modules/core-js/modules/_wks.js");
|
| 9395 |
+
var ITERATOR = wks('iterator');
|
| 9396 |
+
var TO_STRING_TAG = wks('toStringTag');
|
| 9397 |
+
var ArrayValues = Iterators.Array;
|
| 9398 |
+
|
| 9399 |
+
var DOMIterables = {
|
| 9400 |
+
CSSRuleList: true, // TODO: Not spec compliant, should be false.
|
| 9401 |
+
CSSStyleDeclaration: false,
|
| 9402 |
+
CSSValueList: false,
|
| 9403 |
+
ClientRectList: false,
|
| 9404 |
+
DOMRectList: false,
|
| 9405 |
+
DOMStringList: false,
|
| 9406 |
+
DOMTokenList: true,
|
| 9407 |
+
DataTransferItemList: false,
|
| 9408 |
+
FileList: false,
|
| 9409 |
+
HTMLAllCollection: false,
|
| 9410 |
+
HTMLCollection: false,
|
| 9411 |
+
HTMLFormElement: false,
|
| 9412 |
+
HTMLSelectElement: false,
|
| 9413 |
+
MediaList: true, // TODO: Not spec compliant, should be false.
|
| 9414 |
+
MimeTypeArray: false,
|
| 9415 |
+
NamedNodeMap: false,
|
| 9416 |
+
NodeList: true,
|
| 9417 |
+
PaintRequestList: false,
|
| 9418 |
+
Plugin: false,
|
| 9419 |
+
PluginArray: false,
|
| 9420 |
+
SVGLengthList: false,
|
| 9421 |
+
SVGNumberList: false,
|
| 9422 |
+
SVGPathSegList: false,
|
| 9423 |
+
SVGPointList: false,
|
| 9424 |
+
SVGStringList: false,
|
| 9425 |
+
SVGTransformList: false,
|
| 9426 |
+
SourceBufferList: false,
|
| 9427 |
+
StyleSheetList: true, // TODO: Not spec compliant, should be false.
|
| 9428 |
+
TextTrackCueList: false,
|
| 9429 |
+
TextTrackList: false,
|
| 9430 |
+
TouchList: false
|
| 9431 |
+
};
|
| 9432 |
+
|
| 9433 |
+
for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
|
| 9434 |
+
var NAME = collections[i];
|
| 9435 |
+
var explicit = DOMIterables[NAME];
|
| 9436 |
+
var Collection = global[NAME];
|
| 9437 |
+
var proto = Collection && Collection.prototype;
|
| 9438 |
+
var key;
|
| 9439 |
+
if (proto) {
|
| 9440 |
+
if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
|
| 9441 |
+
if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
|
| 9442 |
+
Iterators[NAME] = ArrayValues;
|
| 9443 |
+
if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
|
| 9444 |
+
}
|
| 9445 |
+
}
|
| 9446 |
+
|
| 9447 |
+
|
| 9448 |
+
/***/ }),
|
| 9449 |
+
|
| 9450 |
+
/***/ "./node_modules/core-js/modules/web.immediate.js":
|
| 9451 |
+
/*!*******************************************************!*\
|
| 9452 |
+
!*** ./node_modules/core-js/modules/web.immediate.js ***!
|
| 9453 |
+
\*******************************************************/
|
| 9454 |
+
/*! no static exports found */
|
| 9455 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9456 |
+
|
| 9457 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9458 |
+
var $task = __webpack_require__(/*! ./_task */ "./node_modules/core-js/modules/_task.js");
|
| 9459 |
+
$export($export.G + $export.B, {
|
| 9460 |
+
setImmediate: $task.set,
|
| 9461 |
+
clearImmediate: $task.clear
|
| 9462 |
+
});
|
| 9463 |
+
|
| 9464 |
+
|
| 9465 |
+
/***/ }),
|
| 9466 |
+
|
| 9467 |
+
/***/ "./node_modules/core-js/modules/web.timers.js":
|
| 9468 |
+
/*!****************************************************!*\
|
| 9469 |
+
!*** ./node_modules/core-js/modules/web.timers.js ***!
|
| 9470 |
+
\****************************************************/
|
| 9471 |
+
/*! no static exports found */
|
| 9472 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9473 |
+
|
| 9474 |
+
// ie9- setTimeout & setInterval additional parameters fix
|
| 9475 |
+
var global = __webpack_require__(/*! ./_global */ "./node_modules/core-js/modules/_global.js");
|
| 9476 |
+
var $export = __webpack_require__(/*! ./_export */ "./node_modules/core-js/modules/_export.js");
|
| 9477 |
+
var userAgent = __webpack_require__(/*! ./_user-agent */ "./node_modules/core-js/modules/_user-agent.js");
|
| 9478 |
+
var slice = [].slice;
|
| 9479 |
+
var MSIE = /MSIE .\./.test(userAgent); // <- dirty ie9- check
|
| 9480 |
+
var wrap = function (set) {
|
| 9481 |
+
return function (fn, time /* , ...args */) {
|
| 9482 |
+
var boundArgs = arguments.length > 2;
|
| 9483 |
+
var args = boundArgs ? slice.call(arguments, 2) : false;
|
| 9484 |
+
return set(boundArgs ? function () {
|
| 9485 |
+
// eslint-disable-next-line no-new-func
|
| 9486 |
+
(typeof fn == 'function' ? fn : Function(fn)).apply(this, args);
|
| 9487 |
+
} : fn, time);
|
| 9488 |
+
};
|
| 9489 |
+
};
|
| 9490 |
+
$export($export.G + $export.B + $export.F * MSIE, {
|
| 9491 |
+
setTimeout: wrap(global.setTimeout),
|
| 9492 |
+
setInterval: wrap(global.setInterval)
|
| 9493 |
+
});
|
| 9494 |
+
|
| 9495 |
+
|
| 9496 |
+
/***/ }),
|
| 9497 |
+
|
| 9498 |
+
/***/ "./node_modules/core-js/web/index.js":
|
| 9499 |
+
/*!*******************************************!*\
|
| 9500 |
+
!*** ./node_modules/core-js/web/index.js ***!
|
| 9501 |
+
\*******************************************/
|
| 9502 |
+
/*! no static exports found */
|
| 9503 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9504 |
+
|
| 9505 |
+
__webpack_require__(/*! ../modules/web.timers */ "./node_modules/core-js/modules/web.timers.js");
|
| 9506 |
+
__webpack_require__(/*! ../modules/web.immediate */ "./node_modules/core-js/modules/web.immediate.js");
|
| 9507 |
+
__webpack_require__(/*! ../modules/web.dom.iterable */ "./node_modules/core-js/modules/web.dom.iterable.js");
|
| 9508 |
+
module.exports = __webpack_require__(/*! ../modules/_core */ "./node_modules/core-js/modules/_core.js");
|
| 9509 |
+
|
| 9510 |
+
|
| 9511 |
+
/***/ }),
|
| 9512 |
+
|
| 9513 |
+
/***/ "./node_modules/regenerator-runtime/runtime.js":
|
| 9514 |
+
/*!*****************************************************!*\
|
| 9515 |
+
!*** ./node_modules/regenerator-runtime/runtime.js ***!
|
| 9516 |
+
\*****************************************************/
|
| 9517 |
+
/*! no static exports found */
|
| 9518 |
+
/***/ (function(module, exports, __webpack_require__) {
|
| 9519 |
+
|
| 9520 |
+
/**
|
| 9521 |
+
* Copyright (c) 2014-present, Facebook, Inc.
|
| 9522 |
+
*
|
| 9523 |
+
* This source code is licensed under the MIT license found in the
|
| 9524 |
+
* LICENSE file in the root directory of this source tree.
|
| 9525 |
+
*/
|
| 9526 |
+
|
| 9527 |
+
var runtime = (function (exports) {
|
| 9528 |
+
"use strict";
|
| 9529 |
+
|
| 9530 |
+
var Op = Object.prototype;
|
| 9531 |
+
var hasOwn = Op.hasOwnProperty;
|
| 9532 |
+
var undefined; // More compressible than void 0.
|
| 9533 |
+
var $Symbol = typeof Symbol === "function" ? Symbol : {};
|
| 9534 |
+
var iteratorSymbol = $Symbol.iterator || "@@iterator";
|
| 9535 |
+
var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
|
| 9536 |
+
var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
|
| 9537 |
+
|
| 9538 |
+
function define(obj, key, value) {
|
| 9539 |
+
Object.defineProperty(obj, key, {
|
| 9540 |
+
value: value,
|
| 9541 |
+
enumerable: true,
|
| 9542 |
+
configurable: true,
|
| 9543 |
+
writable: true
|
| 9544 |
+
});
|
| 9545 |
+
return obj[key];
|
| 9546 |
+
}
|
| 9547 |
+
try {
|
| 9548 |
+
// IE 8 has a broken Object.defineProperty that only works on DOM objects.
|
| 9549 |
+
define({}, "");
|
| 9550 |
+
} catch (err) {
|
| 9551 |
+
define = function(obj, key, value) {
|
| 9552 |
+
return obj[key] = value;
|
| 9553 |
+
};
|
| 9554 |
+
}
|
| 9555 |
+
|
| 9556 |
+
function wrap(innerFn, outerFn, self, tryLocsList) {
|
| 9557 |
+
// If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
|
| 9558 |
+
var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
|
| 9559 |
+
var generator = Object.create(protoGenerator.prototype);
|
| 9560 |
+
var context = new Context(tryLocsList || []);
|
| 9561 |
+
|
| 9562 |
+
// The ._invoke method unifies the implementations of the .next,
|
| 9563 |
+
// .throw, and .return methods.
|
| 9564 |
+
generator._invoke = makeInvokeMethod(innerFn, self, context);
|
| 9565 |
+
|
| 9566 |
+
return generator;
|
| 9567 |
+
}
|
| 9568 |
+
exports.wrap = wrap;
|
| 9569 |
+
|
| 9570 |
+
// Try/catch helper to minimize deoptimizations. Returns a completion
|
| 9571 |
+
// record like context.tryEntries[i].completion. This interface could
|
| 9572 |
+
// have been (and was previously) designed to take a closure to be
|
| 9573 |
+
// invoked without arguments, but in all the cases we care about we
|
| 9574 |
+
// already have an existing method we want to call, so there's no need
|
| 9575 |
+
// to create a new function object. We can even get away with assuming
|
| 9576 |
+
// the method takes exactly one argument, since that happens to be true
|
| 9577 |
+
// in every case, so we don't have to touch the arguments object. The
|
| 9578 |
+
// only additional allocation required is the completion record, which
|
| 9579 |
+
// has a stable shape and so hopefully should be cheap to allocate.
|
| 9580 |
+
function tryCatch(fn, obj, arg) {
|
| 9581 |
+
try {
|
| 9582 |
+
return { type: "normal", arg: fn.call(obj, arg) };
|
| 9583 |
+
} catch (err) {
|
| 9584 |
+
return { type: "throw", arg: err };
|
| 9585 |
+
}
|
| 9586 |
+
}
|
| 9587 |
+
|
| 9588 |
+
var GenStateSuspendedStart = "suspendedStart";
|
| 9589 |
+
var GenStateSuspendedYield = "suspendedYield";
|
| 9590 |
+
var GenStateExecuting = "executing";
|
| 9591 |
+
var GenStateCompleted = "completed";
|
| 9592 |
+
|
| 9593 |
+
// Returning this object from the innerFn has the same effect as
|
| 9594 |
+
// breaking out of the dispatch switch statement.
|
| 9595 |
+
var ContinueSentinel = {};
|
| 9596 |
+
|
| 9597 |
+
// Dummy constructor functions that we use as the .constructor and
|
| 9598 |
+
// .constructor.prototype properties for functions that return Generator
|
| 9599 |
+
// objects. For full spec compliance, you may wish to configure your
|
| 9600 |
+
// minifier not to mangle the names of these two functions.
|
| 9601 |
+
function Generator() {}
|
| 9602 |
+
function GeneratorFunction() {}
|
| 9603 |
+
function GeneratorFunctionPrototype() {}
|
| 9604 |
+
|
| 9605 |
+
// This is a polyfill for %IteratorPrototype% for environments that
|
| 9606 |
+
// don't natively support it.
|
| 9607 |
+
var IteratorPrototype = {};
|
| 9608 |
+
define(IteratorPrototype, iteratorSymbol, function () {
|
| 9609 |
+
return this;
|
| 9610 |
+
});
|
| 9611 |
+
|
| 9612 |
+
var getProto = Object.getPrototypeOf;
|
| 9613 |
+
var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
|
| 9614 |
+
if (NativeIteratorPrototype &&
|
| 9615 |
+
NativeIteratorPrototype !== Op &&
|
| 9616 |
+
hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
|
| 9617 |
+
// This environment has a native %IteratorPrototype%; use it instead
|
| 9618 |
+
// of the polyfill.
|
| 9619 |
+
IteratorPrototype = NativeIteratorPrototype;
|
| 9620 |
+
}
|
| 9621 |
+
|
| 9622 |
+
var Gp = GeneratorFunctionPrototype.prototype =
|
| 9623 |
+
Generator.prototype = Object.create(IteratorPrototype);
|
| 9624 |
+
GeneratorFunction.prototype = GeneratorFunctionPrototype;
|
| 9625 |
+
define(Gp, "constructor", GeneratorFunctionPrototype);
|
| 9626 |
+
define(GeneratorFunctionPrototype, "constructor", GeneratorFunction);
|
| 9627 |
+
GeneratorFunction.displayName = define(
|
| 9628 |
+
GeneratorFunctionPrototype,
|
| 9629 |
+
toStringTagSymbol,
|
| 9630 |
+
"GeneratorFunction"
|
| 9631 |
+
);
|
| 9632 |
+
|
| 9633 |
+
// Helper for defining the .next, .throw, and .return methods of the
|
| 9634 |
+
// Iterator interface in terms of a single ._invoke method.
|
| 9635 |
+
function defineIteratorMethods(prototype) {
|
| 9636 |
+
["next", "throw", "return"].forEach(function(method) {
|
| 9637 |
+
define(prototype, method, function(arg) {
|
| 9638 |
+
return this._invoke(method, arg);
|
| 9639 |
+
});
|
| 9640 |
+
});
|
| 9641 |
+
}
|
| 9642 |
+
|
| 9643 |
+
exports.isGeneratorFunction = function(genFun) {
|
| 9644 |
+
var ctor = typeof genFun === "function" && genFun.constructor;
|
| 9645 |
+
return ctor
|
| 9646 |
+
? ctor === GeneratorFunction ||
|
| 9647 |
+
// For the native GeneratorFunction constructor, the best we can
|
| 9648 |
+
// do is to check its .name property.
|
| 9649 |
+
(ctor.displayName || ctor.name) === "GeneratorFunction"
|
| 9650 |
+
: false;
|
| 9651 |
+
};
|
| 9652 |
+
|
| 9653 |
+
exports.mark = function(genFun) {
|
| 9654 |
+
if (Object.setPrototypeOf) {
|
| 9655 |
+
Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
|
| 9656 |
+
} else {
|
| 9657 |
+
genFun.__proto__ = GeneratorFunctionPrototype;
|
| 9658 |
+
define(genFun, toStringTagSymbol, "GeneratorFunction");
|
| 9659 |
+
}
|
| 9660 |
+
genFun.prototype = Object.create(Gp);
|
| 9661 |
+
return genFun;
|
| 9662 |
+
};
|
| 9663 |
+
|
| 9664 |
+
// Within the body of any async function, `await x` is transformed to
|
| 9665 |
+
// `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
|
| 9666 |
+
// `hasOwn.call(value, "__await")` to determine if the yielded value is
|
| 9667 |
+
// meant to be awaited.
|
| 9668 |
+
exports.awrap = function(arg) {
|
| 9669 |
+
return { __await: arg };
|
| 9670 |
+
};
|
| 9671 |
+
|
| 9672 |
+
function AsyncIterator(generator, PromiseImpl) {
|
| 9673 |
+
function invoke(method, arg, resolve, reject) {
|
| 9674 |
+
var record = tryCatch(generator[method], generator, arg);
|
| 9675 |
+
if (record.type === "throw") {
|
| 9676 |
+
reject(record.arg);
|
| 9677 |
+
} else {
|
| 9678 |
+
var result = record.arg;
|
| 9679 |
+
var value = result.value;
|
| 9680 |
+
if (value &&
|
| 9681 |
+
typeof value === "object" &&
|
| 9682 |
+
hasOwn.call(value, "__await")) {
|
| 9683 |
+
return PromiseImpl.resolve(value.__await).then(function(value) {
|
| 9684 |
+
invoke("next", value, resolve, reject);
|
| 9685 |
+
}, function(err) {
|
| 9686 |
+
invoke("throw", err, resolve, reject);
|
| 9687 |
+
});
|
| 9688 |
+
}
|
| 9689 |
+
|
| 9690 |
+
return PromiseImpl.resolve(value).then(function(unwrapped) {
|
| 9691 |
+
// When a yielded Promise is resolved, its final value becomes
|
| 9692 |
+
// the .value of the Promise<{value,done}> result for the
|
| 9693 |
+
// current iteration.
|
| 9694 |
+
result.value = unwrapped;
|
| 9695 |
+
resolve(result);
|
| 9696 |
+
}, function(error) {
|
| 9697 |
+
// If a rejected Promise was yielded, throw the rejection back
|
| 9698 |
+
// into the async generator function so it can be handled there.
|
| 9699 |
+
return invoke("throw", error, resolve, reject);
|
| 9700 |
+
});
|
| 9701 |
+
}
|
| 9702 |
+
}
|
| 9703 |
+
|
| 9704 |
+
var previousPromise;
|
| 9705 |
+
|
| 9706 |
+
function enqueue(method, arg) {
|
| 9707 |
+
function callInvokeWithMethodAndArg() {
|
| 9708 |
+
return new PromiseImpl(function(resolve, reject) {
|
| 9709 |
+
invoke(method, arg, resolve, reject);
|
| 9710 |
+
});
|
| 9711 |
+
}
|
| 9712 |
+
|
| 9713 |
+
return previousPromise =
|
| 9714 |
+
// If enqueue has been called before, then we want to wait until
|
| 9715 |
+
// all previous Promises have been resolved before calling invoke,
|
| 9716 |
+
// so that results are always delivered in the correct order. If
|
| 9717 |
+
// enqueue has not been called before, then it is important to
|
| 9718 |
+
// call invoke immediately, without waiting on a callback to fire,
|
| 9719 |
+
// so that the async generator function has the opportunity to do
|
| 9720 |
+
// any necessary setup in a predictable way. This predictability
|
| 9721 |
+
// is why the Promise constructor synchronously invokes its
|
| 9722 |
+
// executor callback, and why async functions synchronously
|
| 9723 |
+
// execute code before the first await. Since we implement simple
|
| 9724 |
+
// async functions in terms of async generators, it is especially
|
| 9725 |
+
// important to get this right, even though it requires care.
|
| 9726 |
+
previousPromise ? previousPromise.then(
|
| 9727 |
+
callInvokeWithMethodAndArg,
|
| 9728 |
+
// Avoid propagating failures to Promises returned by later
|
| 9729 |
+
// invocations of the iterator.
|
| 9730 |
+
callInvokeWithMethodAndArg
|
| 9731 |
+
) : callInvokeWithMethodAndArg();
|
| 9732 |
+
}
|
| 9733 |
+
|
| 9734 |
+
// Define the unified helper method that is used to implement .next,
|
| 9735 |
+
// .throw, and .return (see defineIteratorMethods).
|
| 9736 |
+
this._invoke = enqueue;
|
| 9737 |
+
}
|
| 9738 |
+
|
| 9739 |
+
defineIteratorMethods(AsyncIterator.prototype);
|
| 9740 |
+
define(AsyncIterator.prototype, asyncIteratorSymbol, function () {
|
| 9741 |
+
return this;
|
| 9742 |
+
});
|
| 9743 |
+
exports.AsyncIterator = AsyncIterator;
|
| 9744 |
+
|
| 9745 |
+
// Note that simple async functions are implemented on top of
|
| 9746 |
+
// AsyncIterator objects; they just return a Promise for the value of
|
| 9747 |
+
// the final result produced by the iterator.
|
| 9748 |
+
exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
|
| 9749 |
+
if (PromiseImpl === void 0) PromiseImpl = Promise;
|
| 9750 |
+
|
| 9751 |
+
var iter = new AsyncIterator(
|
| 9752 |
+
wrap(innerFn, outerFn, self, tryLocsList),
|
| 9753 |
+
PromiseImpl
|
| 9754 |
+
);
|
| 9755 |
+
|
| 9756 |
+
return exports.isGeneratorFunction(outerFn)
|
| 9757 |
+
? iter // If outerFn is a generator, return the full iterator.
|
| 9758 |
+
: iter.next().then(function(result) {
|
| 9759 |
+
return result.done ? result.value : iter.next();
|
| 9760 |
+
});
|
| 9761 |
+
};
|
| 9762 |
+
|
| 9763 |
+
function makeInvokeMethod(innerFn, self, context) {
|
| 9764 |
+
var state = GenStateSuspendedStart;
|
| 9765 |
+
|
| 9766 |
+
return function invoke(method, arg) {
|
| 9767 |
+
if (state === GenStateExecuting) {
|
| 9768 |
+
throw new Error("Generator is already running");
|
| 9769 |
+
}
|
| 9770 |
+
|
| 9771 |
+
if (state === GenStateCompleted) {
|
| 9772 |
+
if (method === "throw") {
|
| 9773 |
+
throw arg;
|
| 9774 |
+
}
|
| 9775 |
+
|
| 9776 |
+
// Be forgiving, per 25.3.3.3.3 of the spec:
|
| 9777 |
+
// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
|
| 9778 |
+
return doneResult();
|
| 9779 |
+
}
|
| 9780 |
+
|
| 9781 |
+
context.method = method;
|
| 9782 |
+
context.arg = arg;
|
| 9783 |
+
|
| 9784 |
+
while (true) {
|
| 9785 |
+
var delegate = context.delegate;
|
| 9786 |
+
if (delegate) {
|
| 9787 |
+
var delegateResult = maybeInvokeDelegate(delegate, context);
|
| 9788 |
+
if (delegateResult) {
|
| 9789 |
+
if (delegateResult === ContinueSentinel) continue;
|
| 9790 |
+
return delegateResult;
|
| 9791 |
+
}
|
| 9792 |
+
}
|
| 9793 |
+
|
| 9794 |
+
if (context.method === "next") {
|
| 9795 |
+
// Setting context._sent for legacy support of Babel's
|
| 9796 |
+
// function.sent implementation.
|
| 9797 |
+
context.sent = context._sent = context.arg;
|
| 9798 |
+
|
| 9799 |
+
} else if (context.method === "throw") {
|
| 9800 |
+
if (state === GenStateSuspendedStart) {
|
| 9801 |
+
state = GenStateCompleted;
|
| 9802 |
+
throw context.arg;
|
| 9803 |
+
}
|
| 9804 |
+
|
| 9805 |
+
context.dispatchException(context.arg);
|
| 9806 |
+
|
| 9807 |
+
} else if (context.method === "return") {
|
| 9808 |
+
context.abrupt("return", context.arg);
|
| 9809 |
+
}
|
| 9810 |
+
|
| 9811 |
+
state = GenStateExecuting;
|
| 9812 |
+
|
| 9813 |
+
var record = tryCatch(innerFn, self, context);
|
| 9814 |
+
if (record.type === "normal") {
|
| 9815 |
+
// If an exception is thrown from innerFn, we leave state ===
|
| 9816 |
+
// GenStateExecuting and loop back for another invocation.
|
| 9817 |
+
state = context.done
|
| 9818 |
+
? GenStateCompleted
|
| 9819 |
+
: GenStateSuspendedYield;
|
| 9820 |
+
|
| 9821 |
+
if (record.arg === ContinueSentinel) {
|
| 9822 |
+
continue;
|
| 9823 |
+
}
|
| 9824 |
+
|
| 9825 |
+
return {
|
| 9826 |
+
value: record.arg,
|
| 9827 |
+
done: context.done
|
| 9828 |
+
};
|
| 9829 |
+
|
| 9830 |
+
} else if (record.type === "throw") {
|
| 9831 |
+
state = GenStateCompleted;
|
| 9832 |
+
// Dispatch the exception by looping back around to the
|
| 9833 |
+
// context.dispatchException(context.arg) call above.
|
| 9834 |
+
context.method = "throw";
|
| 9835 |
+
context.arg = record.arg;
|
| 9836 |
+
}
|
| 9837 |
+
}
|
| 9838 |
+
};
|
| 9839 |
+
}
|
| 9840 |
+
|
| 9841 |
+
// Call delegate.iterator[context.method](context.arg) and handle the
|
| 9842 |
+
// result, either by returning a { value, done } result from the
|
| 9843 |
+
// delegate iterator, or by modifying context.method and context.arg,
|
| 9844 |
+
// setting context.delegate to null, and returning the ContinueSentinel.
|
| 9845 |
+
function maybeInvokeDelegate(delegate, context) {
|
| 9846 |
+
var method = delegate.iterator[context.method];
|
| 9847 |
+
if (method === undefined) {
|
| 9848 |
+
// A .throw or .return when the delegate iterator has no .throw
|
| 9849 |
+
// method always terminates the yield* loop.
|
| 9850 |
+
context.delegate = null;
|
| 9851 |
+
|
| 9852 |
+
if (context.method === "throw") {
|
| 9853 |
+
// Note: ["return"] must be used for ES3 parsing compatibility.
|
| 9854 |
+
if (delegate.iterator["return"]) {
|
| 9855 |
+
// If the delegate iterator has a return method, give it a
|
| 9856 |
+
// chance to clean up.
|
| 9857 |
+
context.method = "return";
|
| 9858 |
+
context.arg = undefined;
|
| 9859 |
+
maybeInvokeDelegate(delegate, context);
|
| 9860 |
+
|
| 9861 |
+
if (context.method === "throw") {
|
| 9862 |
+
// If maybeInvokeDelegate(context) changed context.method from
|
| 9863 |
+
// "return" to "throw", let that override the TypeError below.
|
| 9864 |
+
return ContinueSentinel;
|
| 9865 |
+
}
|
| 9866 |
+
}
|
| 9867 |
+
|
| 9868 |
+
context.method = "throw";
|
| 9869 |
+
context.arg = new TypeError(
|
| 9870 |
+
"The iterator does not provide a 'throw' method");
|
| 9871 |
+
}
|
| 9872 |
+
|
| 9873 |
+
return ContinueSentinel;
|
| 9874 |
+
}
|
| 9875 |
+
|
| 9876 |
+
var record = tryCatch(method, delegate.iterator, context.arg);
|
| 9877 |
+
|
| 9878 |
+
if (record.type === "throw") {
|
| 9879 |
+
context.method = "throw";
|
| 9880 |
+
context.arg = record.arg;
|
| 9881 |
+
context.delegate = null;
|
| 9882 |
+
return ContinueSentinel;
|
| 9883 |
+
}
|
| 9884 |
+
|
| 9885 |
+
var info = record.arg;
|
| 9886 |
+
|
| 9887 |
+
if (! info) {
|
| 9888 |
+
context.method = "throw";
|
| 9889 |
+
context.arg = new TypeError("iterator result is not an object");
|
| 9890 |
+
context.delegate = null;
|
| 9891 |
+
return ContinueSentinel;
|
| 9892 |
+
}
|
| 9893 |
+
|
| 9894 |
+
if (info.done) {
|
| 9895 |
+
// Assign the result of the finished delegate to the temporary
|
| 9896 |
+
// variable specified by delegate.resultName (see delegateYield).
|
| 9897 |
+
context[delegate.resultName] = info.value;
|
| 9898 |
+
|
| 9899 |
+
// Resume execution at the desired location (see delegateYield).
|
| 9900 |
+
context.next = delegate.nextLoc;
|
| 9901 |
+
|
| 9902 |
+
// If context.method was "throw" but the delegate handled the
|
| 9903 |
+
// exception, let the outer generator proceed normally. If
|
| 9904 |
+
// context.method was "next", forget context.arg since it has been
|
| 9905 |
+
// "consumed" by the delegate iterator. If context.method was
|
| 9906 |
+
// "return", allow the original .return call to continue in the
|
| 9907 |
+
// outer generator.
|
| 9908 |
+
if (context.method !== "return") {
|
| 9909 |
+
context.method = "next";
|
| 9910 |
+
context.arg = undefined;
|
| 9911 |
+
}
|
| 9912 |
+
|
| 9913 |
+
} else {
|
| 9914 |
+
// Re-yield the result returned by the delegate method.
|
| 9915 |
+
return info;
|
| 9916 |
+
}
|
| 9917 |
+
|
| 9918 |
+
// The delegate iterator is finished, so forget it and continue with
|
| 9919 |
+
// the outer generator.
|
| 9920 |
+
context.delegate = null;
|
| 9921 |
+
return ContinueSentinel;
|
| 9922 |
+
}
|
| 9923 |
+
|
| 9924 |
+
// Define Generator.prototype.{next,throw,return} in terms of the
|
| 9925 |
+
// unified ._invoke helper method.
|
| 9926 |
+
defineIteratorMethods(Gp);
|
| 9927 |
+
|
| 9928 |
+
define(Gp, toStringTagSymbol, "Generator");
|
| 9929 |
+
|
| 9930 |
+
// A Generator should always return itself as the iterator object when the
|
| 9931 |
+
// @@iterator function is called on it. Some browsers' implementations of the
|
| 9932 |
+
// iterator prototype chain incorrectly implement this, causing the Generator
|
| 9933 |
+
// object to not be returned from this call. This ensures that doesn't happen.
|
| 9934 |
+
// See https://github.com/facebook/regenerator/issues/274 for more details.
|
| 9935 |
+
define(Gp, iteratorSymbol, function() {
|
| 9936 |
+
return this;
|
| 9937 |
+
});
|
| 9938 |
+
|
| 9939 |
+
define(Gp, "toString", function() {
|
| 9940 |
+
return "[object Generator]";
|
| 9941 |
+
});
|
| 9942 |
+
|
| 9943 |
+
function pushTryEntry(locs) {
|
| 9944 |
+
var entry = { tryLoc: locs[0] };
|
| 9945 |
+
|
| 9946 |
+
if (1 in locs) {
|
| 9947 |
+
entry.catchLoc = locs[1];
|
| 9948 |
+
}
|
| 9949 |
+
|
| 9950 |
+
if (2 in locs) {
|
| 9951 |
+
entry.finallyLoc = locs[2];
|
| 9952 |
+
entry.afterLoc = locs[3];
|
| 9953 |
+
}
|
| 9954 |
+
|
| 9955 |
+
this.tryEntries.push(entry);
|
| 9956 |
+
}
|
| 9957 |
+
|
| 9958 |
+
function resetTryEntry(entry) {
|
| 9959 |
+
var record = entry.completion || {};
|
| 9960 |
+
record.type = "normal";
|
| 9961 |
+
delete record.arg;
|
| 9962 |
+
entry.completion = record;
|
| 9963 |
+
}
|
| 9964 |
+
|
| 9965 |
+
function Context(tryLocsList) {
|
| 9966 |
+
// The root entry object (effectively a try statement without a catch
|
| 9967 |
+
// or a finally block) gives us a place to store values thrown from
|
| 9968 |
+
// locations where there is no enclosing try statement.
|
| 9969 |
+
this.tryEntries = [{ tryLoc: "root" }];
|
| 9970 |
+
tryLocsList.forEach(pushTryEntry, this);
|
| 9971 |
+
this.reset(true);
|
| 9972 |
+
}
|
| 9973 |
+
|
| 9974 |
+
exports.keys = function(object) {
|
| 9975 |
+
var keys = [];
|
| 9976 |
+
for (var key in object) {
|
| 9977 |
+
keys.push(key);
|
| 9978 |
+
}
|
| 9979 |
+
keys.reverse();
|
| 9980 |
+
|
| 9981 |
+
// Rather than returning an object with a next method, we keep
|
| 9982 |
+
// things simple and return the next function itself.
|
| 9983 |
+
return function next() {
|
| 9984 |
+
while (keys.length) {
|
| 9985 |
+
var key = keys.pop();
|
| 9986 |
+
if (key in object) {
|
| 9987 |
+
next.value = key;
|
| 9988 |
+
next.done = false;
|
| 9989 |
+
return next;
|
| 9990 |
+
}
|
| 9991 |
+
}
|
| 9992 |
+
|
| 9993 |
+
// To avoid creating an additional object, we just hang the .value
|
| 9994 |
+
// and .done properties off the next function object itself. This
|
| 9995 |
+
// also ensures that the minifier will not anonymize the function.
|
| 9996 |
+
next.done = true;
|
| 9997 |
+
return next;
|
| 9998 |
+
};
|
| 9999 |
+
};
|
| 10000 |
+
|
| 10001 |
+
function values(iterable) {
|
| 10002 |
+
if (iterable) {
|
| 10003 |
+
var iteratorMethod = iterable[iteratorSymbol];
|
| 10004 |
+
if (iteratorMethod) {
|
| 10005 |
+
return iteratorMethod.call(iterable);
|
| 10006 |
+
}
|
| 10007 |
+
|
| 10008 |
+
if (typeof iterable.next === "function") {
|
| 10009 |
+
return iterable;
|
| 10010 |
+
}
|
| 10011 |
+
|
| 10012 |
+
if (!isNaN(iterable.length)) {
|
| 10013 |
+
var i = -1, next = function next() {
|
| 10014 |
+
while (++i < iterable.length) {
|
| 10015 |
+
if (hasOwn.call(iterable, i)) {
|
| 10016 |
+
next.value = iterable[i];
|
| 10017 |
+
next.done = false;
|
| 10018 |
+
return next;
|
| 10019 |
+
}
|
| 10020 |
+
}
|
| 10021 |
+
|
| 10022 |
+
next.value = undefined;
|
| 10023 |
+
next.done = true;
|
| 10024 |
+
|
| 10025 |
+
return next;
|
| 10026 |
+
};
|
| 10027 |
+
|
| 10028 |
+
return next.next = next;
|
| 10029 |
+
}
|
| 10030 |
+
}
|
| 10031 |
+
|
| 10032 |
+
// Return an iterator with no values.
|
| 10033 |
+
return { next: doneResult };
|
| 10034 |
+
}
|
| 10035 |
+
exports.values = values;
|
| 10036 |
+
|
| 10037 |
+
function doneResult() {
|
| 10038 |
+
return { value: undefined, done: true };
|
| 10039 |
+
}
|
| 10040 |
+
|
| 10041 |
+
Context.prototype = {
|
| 10042 |
+
constructor: Context,
|
| 10043 |
+
|
| 10044 |
+
reset: function(skipTempReset) {
|
| 10045 |
+
this.prev = 0;
|
| 10046 |
+
this.next = 0;
|
| 10047 |
+
// Resetting context._sent for legacy support of Babel's
|
| 10048 |
+
// function.sent implementation.
|
| 10049 |
+
this.sent = this._sent = undefined;
|
| 10050 |
+
this.done = false;
|
| 10051 |
+
this.delegate = null;
|
| 10052 |
+
|
| 10053 |
+
this.method = "next";
|
| 10054 |
+
this.arg = undefined;
|
| 10055 |
+
|
| 10056 |
+
this.tryEntries.forEach(resetTryEntry);
|
| 10057 |
+
|
| 10058 |
+
if (!skipTempReset) {
|
| 10059 |
+
for (var name in this) {
|
| 10060 |
+
// Not sure about the optimal order of these conditions:
|
| 10061 |
+
if (name.charAt(0) === "t" &&
|
| 10062 |
+
hasOwn.call(this, name) &&
|
| 10063 |
+
!isNaN(+name.slice(1))) {
|
| 10064 |
+
this[name] = undefined;
|
| 10065 |
+
}
|
| 10066 |
+
}
|
| 10067 |
+
}
|
| 10068 |
+
},
|
| 10069 |
+
|
| 10070 |
+
stop: function() {
|
| 10071 |
+
this.done = true;
|
| 10072 |
+
|
| 10073 |
+
var rootEntry = this.tryEntries[0];
|
| 10074 |
+
var rootRecord = rootEntry.completion;
|
| 10075 |
+
if (rootRecord.type === "throw") {
|
| 10076 |
+
throw rootRecord.arg;
|
| 10077 |
+
}
|
| 10078 |
+
|
| 10079 |
+
return this.rval;
|
| 10080 |
+
},
|
| 10081 |
+
|
| 10082 |
+
dispatchException: function(exception) {
|
| 10083 |
+
if (this.done) {
|
| 10084 |
+
throw exception;
|
| 10085 |
+
}
|
| 10086 |
+
|
| 10087 |
+
var context = this;
|
| 10088 |
+
function handle(loc, caught) {
|
| 10089 |
+
record.type = "throw";
|
| 10090 |
+
record.arg = exception;
|
| 10091 |
+
context.next = loc;
|
| 10092 |
+
|
| 10093 |
+
if (caught) {
|
| 10094 |
+
// If the dispatched exception was caught by a catch block,
|
| 10095 |
+
// then let that catch block handle the exception normally.
|
| 10096 |
+
context.method = "next";
|
| 10097 |
+
context.arg = undefined;
|
| 10098 |
+
}
|
| 10099 |
+
|
| 10100 |
+
return !! caught;
|
| 10101 |
+
}
|
| 10102 |
+
|
| 10103 |
+
for (var i = this.tryEntries.length - 1; i >= 0; --i) {
|
| 10104 |
+
var entry = this.tryEntries[i];
|
| 10105 |
+
var record = entry.completion;
|
| 10106 |
+
|
| 10107 |
+
if (entry.tryLoc === "root") {
|
| 10108 |
+
// Exception thrown outside of any try block that could handle
|
| 10109 |
+
// it, so set the completion value of the entire function to
|
| 10110 |
+
// throw the exception.
|
| 10111 |
+
return handle("end");
|
| 10112 |
+
}
|
| 10113 |
+
|
| 10114 |
+
if (entry.tryLoc <= this.prev) {
|
| 10115 |
+
var hasCatch = hasOwn.call(entry, "catchLoc");
|
| 10116 |
+
var hasFinally = hasOwn.call(entry, "finallyLoc");
|
| 10117 |
+
|
| 10118 |
+
if (hasCatch && hasFinally) {
|
| 10119 |
+
if (this.prev < entry.catchLoc) {
|
| 10120 |
+
return handle(entry.catchLoc, true);
|
| 10121 |
+
} else if (this.prev < entry.finallyLoc) {
|
| 10122 |
+
return handle(entry.finallyLoc);
|
| 10123 |
+
}
|
| 10124 |
+
|
| 10125 |
+
} else if (hasCatch) {
|
| 10126 |
+
if (this.prev < entry.catchLoc) {
|
| 10127 |
+
return handle(entry.catchLoc, true);
|
| 10128 |
+
}
|
| 10129 |
+
|
| 10130 |
+
} else if (hasFinally) {
|
| 10131 |
+
if (this.prev < entry.finallyLoc) {
|
| 10132 |
+
return handle(entry.finallyLoc);
|
| 10133 |
+
}
|
| 10134 |
+
|
| 10135 |
+
} else {
|
| 10136 |
+
throw new Error("try statement without catch or finally");
|
| 10137 |
+
}
|
| 10138 |
+
}
|
| 10139 |
+
}
|
| 10140 |
+
},
|
| 10141 |
+
|
| 10142 |
+
abrupt: function(type, arg) {
|
| 10143 |
+
for (var i = this.tryEntries.length - 1; i >= 0; --i) {
|
| 10144 |
+
var entry = this.tryEntries[i];
|
| 10145 |
+
if (entry.tryLoc <= this.prev &&
|
| 10146 |
+
hasOwn.call(entry, "finallyLoc") &&
|
| 10147 |
+
this.prev < entry.finallyLoc) {
|
| 10148 |
+
var finallyEntry = entry;
|
| 10149 |
+
break;
|
| 10150 |
+
}
|
| 10151 |
+
}
|
| 10152 |
+
|
| 10153 |
+
if (finallyEntry &&
|
| 10154 |
+
(type === "break" ||
|
| 10155 |
+
type === "continue") &&
|
| 10156 |
+
finallyEntry.tryLoc <= arg &&
|
| 10157 |
+
arg <= finallyEntry.finallyLoc) {
|
| 10158 |
+
// Ignore the finally entry if control is not jumping to a
|
| 10159 |
+
// location outside the try/catch block.
|
| 10160 |
+
finallyEntry = null;
|
| 10161 |
+
}
|
| 10162 |
+
|
| 10163 |
+
var record = finallyEntry ? finallyEntry.completion : {};
|
| 10164 |
+
record.type = type;
|
| 10165 |
+
record.arg = arg;
|
| 10166 |
+
|
| 10167 |
+
if (finallyEntry) {
|
| 10168 |
+
this.method = "next";
|
| 10169 |
+
this.next = finallyEntry.finallyLoc;
|
| 10170 |
+
return ContinueSentinel;
|
| 10171 |
+
}
|
| 10172 |
+
|
| 10173 |
+
return this.complete(record);
|
| 10174 |
+
},
|
| 10175 |
+
|
| 10176 |
+
complete: function(record, afterLoc) {
|
| 10177 |
+
if (record.type === "throw") {
|
| 10178 |
+
throw record.arg;
|
| 10179 |
+
}
|
| 10180 |
+
|
| 10181 |
+
if (record.type === "break" ||
|
| 10182 |
+
record.type === "continue") {
|
| 10183 |
+
this.next = record.arg;
|
| 10184 |
+
} else if (record.type === "return") {
|
| 10185 |
+
this.rval = this.arg = record.arg;
|
| 10186 |
+
this.method = "return";
|
| 10187 |
+
this.next = "end";
|
| 10188 |
+
} else if (record.type === "normal" && afterLoc) {
|
| 10189 |
+
this.next = afterLoc;
|
| 10190 |
+
}
|
| 10191 |
+
|
| 10192 |
+
return ContinueSentinel;
|
| 10193 |
+
},
|
| 10194 |
+
|
| 10195 |
+
finish: function(finallyLoc) {
|
| 10196 |
+
for (var i = this.tryEntries.length - 1; i >= 0; --i) {
|
| 10197 |
+
var entry = this.tryEntries[i];
|
| 10198 |
+
if (entry.finallyLoc === finallyLoc) {
|
| 10199 |
+
this.complete(entry.completion, entry.afterLoc);
|
| 10200 |
+
resetTryEntry(entry);
|
| 10201 |
+
return ContinueSentinel;
|
| 10202 |
+
}
|
| 10203 |
+
}
|
| 10204 |
+
},
|
| 10205 |
+
|
| 10206 |
+
"catch": function(tryLoc) {
|
| 10207 |
+
for (var i = this.tryEntries.length - 1; i >= 0; --i) {
|
| 10208 |
+
var entry = this.tryEntries[i];
|
| 10209 |
+
if (entry.tryLoc === tryLoc) {
|
| 10210 |
+
var record = entry.completion;
|
| 10211 |
+
if (record.type === "throw") {
|
| 10212 |
+
var thrown = record.arg;
|
| 10213 |
+
resetTryEntry(entry);
|
| 10214 |
+
}
|
| 10215 |
+
return thrown;
|
| 10216 |
+
}
|
| 10217 |
+
}
|
| 10218 |
+
|
| 10219 |
+
// The context.catch method must only be called with a location
|
| 10220 |
+
// argument that corresponds to a known catch block.
|
| 10221 |
+
throw new Error("illegal catch attempt");
|
| 10222 |
+
},
|
| 10223 |
+
|
| 10224 |
+
delegateYield: function(iterable, resultName, nextLoc) {
|
| 10225 |
+
this.delegate = {
|
| 10226 |
+
iterator: values(iterable),
|
| 10227 |
+
resultName: resultName,
|
| 10228 |
+
nextLoc: nextLoc
|
| 10229 |
+
};
|
| 10230 |
+
|
| 10231 |
+
if (this.method === "next") {
|
| 10232 |
+
// Deliberately forget the last sent value so that we don't
|
| 10233 |
+
// accidentally pass it on to the delegate.
|
| 10234 |
+
this.arg = undefined;
|
| 10235 |
+
}
|
| 10236 |
+
|
| 10237 |
+
return ContinueSentinel;
|
| 10238 |
+
}
|
| 10239 |
+
};
|
| 10240 |
+
|
| 10241 |
+
// Regardless of whether this script is executing as a CommonJS module
|
| 10242 |
+
// or not, return the runtime object so that we can declare the variable
|
| 10243 |
+
// regeneratorRuntime in the outer scope, which allows this module to be
|
| 10244 |
+
// injected easily by `bin/regenerator --include-runtime script.js`.
|
| 10245 |
+
return exports;
|
| 10246 |
+
|
| 10247 |
+
}(
|
| 10248 |
+
// If this script is executing as a CommonJS module, use module.exports
|
| 10249 |
+
// as the regeneratorRuntime namespace. Otherwise create a new empty
|
| 10250 |
+
// object. Either way, the resulting object will be used to initialize
|
| 10251 |
+
// the regeneratorRuntime variable at the top of this file.
|
| 10252 |
+
true ? module.exports : undefined
|
| 10253 |
+
));
|
| 10254 |
+
|
| 10255 |
+
try {
|
| 10256 |
+
regeneratorRuntime = runtime;
|
| 10257 |
+
} catch (accidentalStrictMode) {
|
| 10258 |
+
// This module should not be running in strict mode, so the above
|
| 10259 |
+
// assignment should always work unless something is misconfigured. Just
|
| 10260 |
+
// in case runtime.js accidentally runs in strict mode, in modern engines
|
| 10261 |
+
// we can explicitly access globalThis. In older engines we can escape
|
| 10262 |
+
// strict mode using a global Function call. This could conceivably fail
|
| 10263 |
+
// if a Content Security Policy forbids using Function, but in that case
|
| 10264 |
+
// the proper solution is to fix the accidental strict mode problem. If
|
| 10265 |
+
// you've misconfigured your bundler to force strict mode and applied a
|
| 10266 |
+
// CSP to forbid Function, and you're not willing to fix either of those
|
| 10267 |
+
// problems, please detail your unique predicament in a GitHub issue.
|
| 10268 |
+
if (typeof globalThis === "object") {
|
| 10269 |
+
globalThis.regeneratorRuntime = runtime;
|
| 10270 |
+
} else {
|
| 10271 |
+
Function("r", "regeneratorRuntime = r")(runtime);
|
| 10272 |
+
}
|
| 10273 |
+
}
|
| 10274 |
+
|
| 10275 |
+
|
| 10276 |
+
/***/ })
|
| 10277 |
+
|
| 10278 |
+
/******/ });
|
| 10279 |
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9wb2x5ZmlsbC9saWIvaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9wb2x5ZmlsbC9saWIvbm9Db25mbGljdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9lczYvaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vYXJyYXkvZmxhdC1tYXAuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vYXJyYXkvaW5jbHVkZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vb2JqZWN0L2VudHJpZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vb2JqZWN0L2dldC1vd24tcHJvcGVydHktZGVzY3JpcHRvcnMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vb2JqZWN0L3ZhbHVlcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9mbi9wcm9taXNlL2ZpbmFsbHkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vc3RyaW5nL3BhZC1lbmQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vc3RyaW5nL3BhZC1zdGFydC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9mbi9zdHJpbmcvdHJpbS1lbmQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vc3RyaW5nL3RyaW0tc3RhcnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvZm4vc3ltYm9sL2FzeW5jLWl0ZXJhdG9yLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvZm4vZ2xvYmFsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL2xpYnJhcnkvbW9kdWxlcy9fYS1mdW5jdGlvbi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2FuLW9iamVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2NvcmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19jdHguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19kZXNjcmlwdG9ycy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2RvbS1jcmVhdGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19leHBvcnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19mYWlscy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2dsb2JhbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2hhcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2hpZGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL19pZTgtZG9tLWRlZmluZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX2lzLW9iamVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX29iamVjdC1kcC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9saWJyYXJ5L21vZHVsZXMvX3Byb3BlcnR5LWRlc2MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL190by1wcmltaXRpdmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbGlicmFyeS9tb2R1bGVzL2VzNy5nbG9iYWwuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYS1mdW5jdGlvbi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hLW51bWJlci12YWx1ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hZGQtdG8tdW5zY29wYWJsZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYWR2YW5jZS1zdHJpbmctaW5kZXguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYW4taW5zdGFuY2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYW4tb2JqZWN0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2FycmF5LWNvcHktd2l0aGluLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2FycmF5LWZpbGwuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYXJyYXktaW5jbHVkZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYXJyYXktbWV0aG9kcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hcnJheS1yZWR1Y2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fYXJyYXktc3BlY2llcy1jb25zdHJ1Y3Rvci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19hcnJheS1zcGVjaWVzLWNyZWF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19iaW5kLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2NsYXNzb2YuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fY29mLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2NvbGxlY3Rpb24tc3Ryb25nLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2NvbGxlY3Rpb24td2Vhay5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19jb2xsZWN0aW9uLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2NvcmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fY3JlYXRlLXByb3BlcnR5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2N0eC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19kYXRlLXRvLWlzby1zdHJpbmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZGF0ZS10by1wcmltaXRpdmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZGVmaW5lZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19kZXNjcmlwdG9ycy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19kb20tY3JlYXRlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2VudW0tYnVnLWtleXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZW51bS1rZXlzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2V4cG9ydC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19mYWlscy1pcy1yZWdleHAuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZmFpbHMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZml4LXJlLXdrcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19mbGFncy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19mbGF0dGVuLWludG8tYXJyYXkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fZm9yLW9mLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2Z1bmN0aW9uLXRvLXN0cmluZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19nbG9iYWwuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faGFzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2hpZGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faHRtbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pZTgtZG9tLWRlZmluZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pbmhlcml0LWlmLXJlcXVpcmVkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2ludm9rZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pb2JqZWN0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2lzLWFycmF5LWl0ZXIuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtYXJyYXkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtaW50ZWdlci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pcy1vYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXMtcmVnZXhwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2l0ZXItY2FsbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pdGVyLWNyZWF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pdGVyLWRlZmluZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pdGVyLWRldGVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19pdGVyLXN0ZXAuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9faXRlcmF0b3JzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX2xpYnJhcnkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fbWF0aC1leHBtMS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19tYXRoLWZyb3VuZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19tYXRoLWxvZzFwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX21hdGgtc2lnbi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19tZXRhLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX21pY3JvdGFzay5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19uZXctcHJvbWlzZS1jYXBhYmlsaXR5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX29iamVjdC1hc3NpZ24uanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fb2JqZWN0LWNyZWF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19vYmplY3QtZHAuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fb2JqZWN0LWRwcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19vYmplY3QtZ29wZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19vYmplY3QtZ29wbi1leHQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fb2JqZWN0LWdvcG4uanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fb2JqZWN0LWdvcHMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fb2JqZWN0LWdwby5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19vYmplY3Qta2V5cy1pbnRlcm5hbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19vYmplY3Qta2V5cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19vYmplY3QtcGllLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX29iamVjdC1zYXAuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fb2JqZWN0LXRvLWFycmF5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX293bi1rZXlzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3BhcnNlLWZsb2F0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3BhcnNlLWludC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19wZXJmb3JtLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3Byb21pc2UtcmVzb2x2ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19wcm9wZXJ0eS1kZXNjLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3JlZGVmaW5lLWFsbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19yZWRlZmluZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19yZWdleHAtZXhlYy1hYnN0cmFjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19yZWdleHAtZXhlYy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19zYW1lLXZhbHVlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3NldC1wcm90by5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19zZXQtc3BlY2llcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19zZXQtdG8tc3RyaW5nLXRhZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19zaGFyZWQta2V5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3NoYXJlZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19zcGVjaWVzLWNvbnN0cnVjdG9yLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3N0cmljdC1tZXRob2QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fc3RyaW5nLWF0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3N0cmluZy1jb250ZXh0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3N0cmluZy1odG1sLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3N0cmluZy1wYWQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fc3RyaW5nLXJlcGVhdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19zdHJpbmctdHJpbS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL19zdHJpbmctd3MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdGFzay5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL190by1hYnNvbHV0ZS1pbmRleC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL190by1pbmRleC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL190by1pbnRlZ2VyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3RvLWlvYmplY3QuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdG8tbGVuZ3RoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3RvLW9iamVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL190by1wcmltaXRpdmUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdHlwZWQtYXJyYXkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fdHlwZWQtYnVmZmVyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3R5cGVkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3VpZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL191c2VyLWFnZW50LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3ZhbGlkYXRlLWNvbGxlY3Rpb24uanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9fd2tzLWRlZmluZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL193a3MtZXh0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvX3drcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2NvcmUuZ2V0LWl0ZXJhdG9yLW1ldGhvZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5jb3B5LXdpdGhpbi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5ldmVyeS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5maWxsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LmFycmF5LmZpbHRlci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5maW5kLWluZGV4LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LmFycmF5LmZpbmQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuYXJyYXkuZm9yLWVhY2guanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuYXJyYXkuZnJvbS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5pbmRleC1vZi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5pcy1hcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5pdGVyYXRvci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5qb2luLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LmFycmF5Lmxhc3QtaW5kZXgtb2YuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuYXJyYXkubWFwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LmFycmF5Lm9mLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LmFycmF5LnJlZHVjZS1yaWdodC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5yZWR1Y2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuYXJyYXkuc2xpY2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuYXJyYXkuc29tZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5hcnJheS5zb3J0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LmFycmF5LnNwZWNpZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuZGF0ZS5ub3cuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuZGF0ZS50by1pc28tc3RyaW5nLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LmRhdGUudG8tanNvbi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5kYXRlLnRvLXByaW1pdGl2ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5kYXRlLnRvLXN0cmluZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5mdW5jdGlvbi5iaW5kLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LmZ1bmN0aW9uLmhhcy1pbnN0YW5jZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5mdW5jdGlvbi5uYW1lLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm1hcC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5tYXRoLmFjb3NoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm1hdGguYXNpbmguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubWF0aC5hdGFuaC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5tYXRoLmNicnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubWF0aC5jbHozMi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5tYXRoLmNvc2guanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubWF0aC5leHBtMS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5tYXRoLmZyb3VuZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5tYXRoLmh5cG90LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm1hdGguaW11bC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5tYXRoLmxvZzEwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm1hdGgubG9nMXAuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubWF0aC5sb2cyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm1hdGguc2lnbi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5tYXRoLnNpbmguanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubWF0aC50YW5oLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm1hdGgudHJ1bmMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubnVtYmVyLmNvbnN0cnVjdG9yLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm51bWJlci5lcHNpbG9uLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm51bWJlci5pcy1maW5pdGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubnVtYmVyLmlzLWludGVnZXIuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYubnVtYmVyLmlzLW5hbi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5udW1iZXIuaXMtc2FmZS1pbnRlZ2VyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm51bWJlci5tYXgtc2FmZS1pbnRlZ2VyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm51bWJlci5taW4tc2FmZS1pbnRlZ2VyLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm51bWJlci5wYXJzZS1mbG9hdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5udW1iZXIucGFyc2UtaW50LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm51bWJlci50by1maXhlZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5udW1iZXIudG8tcHJlY2lzaW9uLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm9iamVjdC5hc3NpZ24uanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYub2JqZWN0LmNyZWF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5vYmplY3QuZGVmaW5lLXByb3BlcnRpZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYub2JqZWN0LmRlZmluZS1wcm9wZXJ0eS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5vYmplY3QuZnJlZXplLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm9iamVjdC5nZXQtb3duLXByb3BlcnR5LWRlc2NyaXB0b3IuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYub2JqZWN0LmdldC1vd24tcHJvcGVydHktbmFtZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYub2JqZWN0LmdldC1wcm90b3R5cGUtb2YuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYub2JqZWN0LmlzLWV4dGVuc2libGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYub2JqZWN0LmlzLWZyb3plbi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5vYmplY3QuaXMtc2VhbGVkLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm9iamVjdC5pcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5vYmplY3Qua2V5cy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5vYmplY3QucHJldmVudC1leHRlbnNpb25zLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm9iamVjdC5zZWFsLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm9iamVjdC5zZXQtcHJvdG90eXBlLW9mLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2Lm9iamVjdC50by1zdHJpbmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucGFyc2UtZmxvYXQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucGFyc2UtaW50LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnByb21pc2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucmVmbGVjdC5hcHBseS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5yZWZsZWN0LmNvbnN0cnVjdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5yZWZsZWN0LmRlZmluZS1wcm9wZXJ0eS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5yZWZsZWN0LmRlbGV0ZS1wcm9wZXJ0eS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5yZWZsZWN0LmVudW1lcmF0ZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5yZWZsZWN0LmdldC1vd24tcHJvcGVydHktZGVzY3JpcHRvci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5yZWZsZWN0LmdldC1wcm90b3R5cGUtb2YuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucmVmbGVjdC5nZXQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucmVmbGVjdC5oYXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucmVmbGVjdC5pcy1leHRlbnNpYmxlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnJlZmxlY3Qub3duLWtleXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucmVmbGVjdC5wcmV2ZW50LWV4dGVuc2lvbnMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucmVmbGVjdC5zZXQtcHJvdG90eXBlLW9mLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnJlZmxlY3Quc2V0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnJlZ2V4cC5jb25zdHJ1Y3Rvci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5yZWdleHAuZXhlYy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5yZWdleHAuZmxhZ3MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucmVnZXhwLm1hdGNoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnJlZ2V4cC5yZXBsYWNlLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnJlZ2V4cC5zZWFyY2guanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYucmVnZXhwLnNwbGl0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnJlZ2V4cC50by1zdHJpbmcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc2V0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnN0cmluZy5hbmNob3IuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLmJpZy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5zdHJpbmcuYmxpbmsuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLmJvbGQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLmNvZGUtcG9pbnQtYXQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLmVuZHMtd2l0aC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5zdHJpbmcuZml4ZWQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLmZvbnRjb2xvci5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5zdHJpbmcuZm9udHNpemUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLmZyb20tY29kZS1wb2ludC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5zdHJpbmcuaW5jbHVkZXMuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLml0YWxpY3MuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLml0ZXJhdG9yLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnN0cmluZy5saW5rLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnN0cmluZy5yYXcuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLnJlcGVhdC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5zdHJpbmcuc21hbGwuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLnN0YXJ0cy13aXRoLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnN0cmluZy5zdHJpa2UuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYuc3RyaW5nLnN1Yi5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi5zdHJpbmcuc3VwLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnN0cmluZy50cmltLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnN5bWJvbC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi50eXBlZC5hcnJheS1idWZmZXIuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYudHlwZWQuZGF0YS12aWV3LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnR5cGVkLmZsb2F0MzItYXJyYXkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYudHlwZWQuZmxvYXQ2NC1hcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi50eXBlZC5pbnQxNi1hcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi50eXBlZC5pbnQzMi1hcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi50eXBlZC5pbnQ4LWFycmF5LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM2LnR5cGVkLnVpbnQxNi1hcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi50eXBlZC51aW50MzItYXJyYXkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYudHlwZWQudWludDgtYXJyYXkuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczYudHlwZWQudWludDgtY2xhbXBlZC1hcnJheS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi53ZWFrLW1hcC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNi53ZWFrLXNldC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNy5hcnJheS5mbGF0LW1hcC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNy5hcnJheS5pbmNsdWRlcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNy5vYmplY3QuZW50cmllcy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNy5vYmplY3QuZ2V0LW93bi1wcm9wZXJ0eS1kZXNjcmlwdG9ycy5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNy5vYmplY3QudmFsdWVzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM3LnByb21pc2UuZmluYWxseS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNy5zdHJpbmcucGFkLWVuZC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzNy5zdHJpbmcucGFkLXN0YXJ0LmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvZXM3LnN0cmluZy50cmltLWxlZnQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczcuc3RyaW5nLnRyaW0tcmlnaHQuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lczcuc3ltYm9sLmFzeW5jLWl0ZXJhdG9yLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL21vZHVsZXMvd2ViLmRvbS5pdGVyYWJsZS5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL3dlYi5pbW1lZGlhdGUuanMiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy93ZWIudGltZXJzLmpzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9jb3JlLWpzL3dlYi9pbmRleC5qcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcmVnZW5lcmF0b3ItcnVudGltZS9ydW50aW1lLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7UUFBQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTs7O1FBR0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLDBDQUEwQyxnQ0FBZ0M7UUFDMUU7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSx3REFBd0Qsa0JBQWtCO1FBQzFFO1FBQ0EsaURBQWlELGNB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QjtBQUNuQyxtQkFBTyxDQUFDLGlGQUEwQjtBQUNsQyxtQkFBTyxDQUFDLG1GQUEyQjtBQUNuQyxtQkFBTyxDQUFDLG1GQUEyQjtBQUNuQyxtQkFBTyxDQUFDLGlGQUEwQjtBQUNsQyxtQkFBTyxDQUFDLGlGQUEwQjtBQUNsQyxtQkFBTyxDQUFDLGlGQUEwQjtBQUNsQyxtQkFBTyxDQUFDLGlGQUEwQjtBQUNsQyxtQkFBTyxDQUFDLG1GQUEyQjtBQUNuQyxtQkFBTyxDQUFDLDJHQUF1QztBQUMvQyxtQkFBTyxDQUFDLG1GQUEyQjtBQUNuQyxtQkFBTyxDQUFDLHFGQUE0QjtBQUNwQyxtQkFBTyxDQUFDLDZGQUFnQztBQUN4QyxtQkFBTyxDQUFDLHVHQUFxQztBQUM3QyxtQkFBTyxDQUFDLCtGQUFpQztBQUN6QyxtQkFBTyxDQUFDLDZGQUFnQztBQUN4QyxtQkFBTyxDQUFDLHlGQUE4QjtBQUN0QyxtQkFBTyxDQUFDLG1HQUFtQztBQUMzQyxtQkFBTyxDQUFDLHlGQUE4QjtBQUN0QyxtQkFBTyxDQUFDLG1GQUEyQjtBQUNuQyxtQkFBTyxDQUFDLHVGQUE2QjtBQUNyQyxtQkFBTyxDQUFDLHFGQUE0QjtBQUNwQyxtQkFBTyxDQUFDLHVGQUE2QjtBQUNyQyxtQkFBTyxDQUFDLCtGQUFpQztBQUN6QyxtQkFBTyxDQUFDLDZGQUFnQztBQUN4QyxtQkFBTyxDQUFDLDJGQUErQjtBQUN2QyxtQkFBTyxDQUFDLHFGQUE0QjtBQUNwQyxtQkFBTyxDQUFDLHVGQUE2QjtBQUNyQyxtQkFBTyxDQUFDLHlGQUE4QjtBQUN0QyxtQkFBTyxDQUFDLG1GQUEyQjtBQUNuQyxtQkFBTyxDQUFDLG1GQUEyQjtBQUNuQyxtQkFBTyxDQUFDLCtFQUF5QjtBQUNqQyxtQkFBTyxDQUFDLHVGQUE2QjtBQUNyQyxtQkFBTyxDQUFDLG1HQUFtQztBQUMzQyxtQkFBTyxDQUFDLDJGQUErQjtBQUN2QyxtQkFBTyxDQUFDLGlHQUFrQztBQUMxQyxtQkFBTyxDQUFDLDJGQUErQjtBQUN2QyxtQkFBTyxDQUFDLG1GQUEyQjtBQUNuQyxtQkFB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LHdDQUF3QyxXQUFXO0FBQ25EO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsU0FBUztBQUNUO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxvQ0FBb0MsY0FBYztBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxpQ0FBaUMsa0JBQWtCO0FBQ25EO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0E7QUFDQSxHQUFHOztBQUVIO0FBQ0EsaUJBQWlCOztBQUVqQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsaUJBQWlCO0FBQ3pDO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsWUFBWTtBQUNaO0FBQ0E7O0FBRUE7QUFDQSxZQUFZO0FBQ1o7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSw4Q0FBOEMsUUFBUTtBQUN0RDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7O0FBRUEsV0FBVztBQUNYO0FBQ0E7QUFDQTs7QUFFQSxXQUFXO0FBQ1g7QUFDQTtBQUNBOztBQUVBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQSw4Q0FBOEMsUUFBUTtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBLDhDQUE4QyxRQUFRO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBLDhDQUE4QyxRQUFRO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRSxLQUEwQixvQkFBb0IsU0FBRTtBQUNsRDs7QUFFQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0EiLCJmaWxlIjoiYmFiZWwtcG9seWZpbGwubWluLmpzIiwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZ2V0dGVyIH0pO1xuIFx0XHR9XG4gXHR9O1xuXG4gXHQvLyBkZWZpbmUgX19lc01vZHVsZSBvbiBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIgPSBmdW5jdGlvbihleHBvcnRzKSB7XG4gXHRcdGlmKHR5cGVvZiBTeW1ib2wgIT09ICd1bmRlZmluZWQnICYmIFN5bWJvbC50b1N0cmluZ1RhZykge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuIFx0XHR9XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gXHR9O1xuXG4gXHQvLyBjcmVhdGUgYSBmYWtlIG5hbWVzcGFjZSBvYmplY3RcbiBcdC8vIG1vZGUgJiAxOiB2YWx1ZSBpcyBhIG1vZHVsZSBpZCwgcmVxdWlyZSBpdFxuIFx0Ly8gbW9kZSAmIDI6IG1lcmdlIGFsbCBwcm9wZXJ0aWVzIG9mIHZhbHVlIGludG8gdGhlIG5zXG4gXHQvLyBtb2RlICYgNDogcmV0dXJuIHZhbHVlIHdoZW4gYWxyZWFkeSBucyBvYmplY3RcbiBcdC8vIG1vZGUgJiA4fDE6IGJlaGF2ZSBsaWtlIHJlcXVpcmVcbiBcdF9fd2VicGFja19yZXF1aXJlX18udCA9IGZ1bmN0aW9uKHZhbHVlLCBtb2RlKSB7XG4gXHRcdGlmKG1vZGUgJiAxKSB2YWx1ZSA9IF9fd2VicGFja19yZXF1aXJlX18odmFsdWUpO1xuIFx0XHRpZihtb2RlICYgOCkgcmV0dXJuIHZhbHVlO1xuIFx0XHRpZigobW9kZSAmIDQpICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUgJiYgdmFsdWUuX19lc01vZHVsZSkgcmV0dXJuIHZhbHVlO1xuIFx0XHR2YXIgbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIobnMpO1xuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkobnMsICdkZWZhdWx0JywgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdmFsdWUgfSk7XG4gXHRcdGlmKG1vZGUgJiAyICYmIHR5cGVvZiB2YWx1ZSAhPSAnc3RyaW5nJykgZm9yKHZhciBrZXkgaW4gdmFsdWUpIF9fd2VicGFja19yZXF1aXJlX18uZChucywga2V5LCBmdW5jdGlvbihrZXkpIHsgcmV0dXJuIHZhbHVlW2tleV07IH0uYmluZChudWxsLCBrZXkpKTtcbiBcdFx0cmV0dXJuIG5zO1xuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCIvcHVibGljL2pzL1wiO1xuXG5cbiBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gXCIuL25vZGVfbW9kdWxlcy9AYmFiZWwvcG9seWZpbGwvbGliL2luZGV4LmpzXCIpO1xuIiwiXCJ1c2Ugc3RyaWN0XCI7XG5cbnJlcXVpcmUoXCIuL25vQ29uZmxpY3RcIik7XG5cbnZhciBfZ2xvYmFsID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKFwiY29yZS1qcy9saWJyYXJ5L2ZuL2dsb2JhbFwiKSk7XG5cbmZ1bmN0aW9uIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQob2JqKSB7IHJldHVybiBvYmogJiYgb2JqLl9fZXNNb2R1bGUgPyBvYmogOiB7IFwiZGVmYXVsdFwiOiBvYmogfTsgfVxuXG5pZiAoX2dsb2JhbFtcImRlZmF1bHRcIl0uX2JhYmVsUG9seWZpbGwgJiYgdHlwZW9mIGNvbnNvbGUgIT09IFwidW5kZWZpbmVkXCIgJiYgY29uc29sZS53YXJuKSB7XG4gIGNvbnNvbGUud2FybihcIkBiYWJlbC9wb2x5ZmlsbCBpcyBsb2FkZWQgbW9yZSB0aGFuIG9uY2Ugb24gdGhpcyBwYWdlLiBUaGlzIGlzIHByb2JhYmx5IG5vdCBkZXNpcmFibGUvaW50ZW5kZWQgXCIgKyBcImFuZCBtYXkgaGF2ZSBjb25zZXF1ZW5jZXMgaWYgZGlmZmVyZW50IHZlcnNpb25zIG9mIHRoZSBwb2x5ZmlsbHMgYXJlIGFwcGxpZWQgc2VxdWVudGlhbGx5LiBcIiArIFwiSWYgeW91IGRvIG5lZWQgdG8gbG9hZCB0aGUgcG9seWZpbGwgbW9yZSB0aGFuIG9uY2UsIHVzZSBAYmFiZWwvcG9seWZpbGwvbm9Db25mbGljdCBcIiArIFwiaW5zdGVhZCB0byBieXBhc3MgdGhlIHdhcm5pbmcuXCIpO1xufVxuXG5fZ2xvYmFsW1wiZGVmYXVsdFwiXS5fYmFiZWxQb2x5ZmlsbCA9IHRydWU7IiwiXCJ1c2Ugc3RyaWN0XCI7XG5cbnJlcXVpcmUoXCJjb3JlLWpzL2VzNlwiKTtcblxucmVxdWlyZShcImNvcmUtanMvZm4vYXJyYXkvaW5jbHVkZXNcIik7XG5cbnJlcXVpcmUoXCJjb3JlLWpzL2ZuL2FycmF5L2ZsYXQtbWFwXCIpO1xuXG5yZXF1aXJlKFwiY29yZS1qcy9mbi9zdHJpbmcvcGFkLXN0YXJ0XCIpO1xuXG5yZXF1aXJlKFwiY29yZS1qcy9mbi9zdHJpbmcvcGFkLWVuZFwiKTtcblxucmVxdWlyZShcImNvcmUtanMvZm4vc3RyaW5nL3RyaW0tc3RhcnRcIik7XG5cbnJlcXVpcmUoXCJjb3JlLWpzL2ZuL3N0cmluZy90cmltLWVuZFwiKTtcblxucmVxdWlyZShcImNvcmUtanMvZm4vc3ltYm9sL2FzeW5jLWl0ZXJhdG9yXCIpO1xuXG5yZXF1aXJlKFwiY29yZS1qcy9mbi9vYmplY3QvZ2V0LW93bi1wcm9wZXJ0eS1kZXNjcmlwdG9yc1wiKTtcblxucmVxdWlyZShcImNvcmUtanMvZm4vb2JqZWN0L3ZhbHVlc1wiKTtcblxucmVxdWlyZShcImNvcmUtanMvZm4vb2JqZWN0L2VudHJpZXNcIik7XG5cbnJlcXVpcmUoXCJjb3JlLWpzL2ZuL3Byb21pc2UvZmluYWxseVwiKTtcblxucmVxdWlyZShcImNvcmUtanMvd2ViXCIpO1xuXG5yZXF1aXJlKFwicmVnZW5lcmF0b3ItcnVudGltZS9ydW50aW1lXCIpOyIsInJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnN5bWJvbCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LmNyZWF0ZScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LmRlZmluZS1wcm9wZXJ0eScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LmRlZmluZS1wcm9wZXJ0aWVzJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5vYmplY3QuZ2V0LW93bi1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5vYmplY3QuZ2V0LXByb3RvdHlwZS1vZicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LmtleXMnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm9iamVjdC5nZXQtb3duLXByb3BlcnR5LW5hbWVzJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5vYmplY3QuZnJlZXplJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5vYmplY3Quc2VhbCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LnByZXZlbnQtZXh0ZW5zaW9ucycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LmlzLWZyb3plbicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LmlzLXNlYWxlZCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LmlzLWV4dGVuc2libGUnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm9iamVjdC5hc3NpZ24nKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm9iamVjdC5pcycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYub2JqZWN0LnNldC1wcm90b3R5cGUtb2YnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm9iamVjdC50by1zdHJpbmcnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LmZ1bmN0aW9uLmJpbmQnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LmZ1bmN0aW9uLm5hbWUnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LmZ1bmN0aW9uLmhhcy1pbnN0YW5jZScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucGFyc2UtaW50Jyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5wYXJzZS1mbG9hdCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubnVtYmVyLmNvbnN0cnVjdG9yJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5udW1iZXIudG8tZml4ZWQnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm51bWJlci50by1wcmVjaXNpb24nKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm51bWJlci5lcHNpbG9uJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5udW1iZXIuaXMtZmluaXRlJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5udW1iZXIuaXMtaW50ZWdlcicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubnVtYmVyLmlzLW5hbicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubnVtYmVyLmlzLXNhZmUtaW50ZWdlcicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubnVtYmVyLm1heC1zYWZlLWludGVnZXInKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm51bWJlci5taW4tc2FmZS1pbnRlZ2VyJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5udW1iZXIucGFyc2UtZmxvYXQnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm51bWJlci5wYXJzZS1pbnQnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm1hdGguYWNvc2gnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm1hdGguYXNpbmgnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm1hdGguYXRhbmgnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm1hdGguY2JydCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubWF0aC5jbHozMicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubWF0aC5jb3NoJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5tYXRoLmV4cG0xJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5tYXRoLmZyb3VuZCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubWF0aC5oeXBvdCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubWF0aC5pbXVsJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5tYXRoLmxvZzEwJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5tYXRoLmxvZzFwJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5tYXRoLmxvZzInKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm1hdGguc2lnbicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYubWF0aC5zaW5oJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5tYXRoLnRhbmgnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2Lm1hdGgudHJ1bmMnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnN0cmluZy5mcm9tLWNvZGUtcG9pbnQnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnN0cmluZy5yYXcnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnN0cmluZy50cmltJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuaXRlcmF0b3InKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnN0cmluZy5jb2RlLXBvaW50LWF0Jyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuZW5kcy13aXRoJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuaW5jbHVkZXMnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnN0cmluZy5yZXBlYXQnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnN0cmluZy5zdGFydHMtd2l0aCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuc3RyaW5nLmFuY2hvcicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuc3RyaW5nLmJpZycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuc3RyaW5nLmJsaW5rJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuYm9sZCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuc3RyaW5nLmZpeGVkJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuZm9udGNvbG9yJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuZm9udHNpemUnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnN0cmluZy5pdGFsaWNzJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcubGluaycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuc3RyaW5nLnNtYWxsJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuc3RyaWtlJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuc3ViJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5zdHJpbmcuc3VwJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5kYXRlLm5vdycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuZGF0ZS50by1qc29uJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5kYXRlLnRvLWlzby1zdHJpbmcnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LmRhdGUudG8tc3RyaW5nJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5kYXRlLnRvLXByaW1pdGl2ZScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuaXMtYXJyYXknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LmFycmF5LmZyb20nKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LmFycmF5Lm9mJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5hcnJheS5qb2luJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5hcnJheS5zbGljZScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuc29ydCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuZm9yLWVhY2gnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LmFycmF5Lm1hcCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuZmlsdGVyJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5hcnJheS5zb21lJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5hcnJheS5ldmVyeScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkucmVkdWNlJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5hcnJheS5yZWR1Y2UtcmlnaHQnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LmFycmF5LmluZGV4LW9mJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5hcnJheS5sYXN0LWluZGV4LW9mJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5hcnJheS5jb3B5LXdpdGhpbicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuZmlsbCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuZmluZCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuZmluZC1pbmRleCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuc3BlY2llcycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYuYXJyYXkuaXRlcmF0b3InKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZ2V4cC5jb25zdHJ1Y3RvcicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVnZXhwLmV4ZWMnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZ2V4cC50by1zdHJpbmcnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZ2V4cC5mbGFncycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVnZXhwLm1hdGNoJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5yZWdleHAucmVwbGFjZScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVnZXhwLnNlYXJjaCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVnZXhwLnNwbGl0Jyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5wcm9taXNlJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5tYXAnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnNldCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYud2Vhay1tYXAnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LndlYWstc2V0Jyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi50eXBlZC5hcnJheS1idWZmZXInKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnR5cGVkLmRhdGEtdmlldycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYudHlwZWQuaW50OC1hcnJheScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYudHlwZWQudWludDgtYXJyYXknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnR5cGVkLnVpbnQ4LWNsYW1wZWQtYXJyYXknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnR5cGVkLmludDE2LWFycmF5Jyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi50eXBlZC51aW50MTYtYXJyYXknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnR5cGVkLmludDMyLWFycmF5Jyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi50eXBlZC51aW50MzItYXJyYXknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnR5cGVkLmZsb2F0MzItYXJyYXknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnR5cGVkLmZsb2F0NjQtYXJyYXknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZmxlY3QuYXBwbHknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZmxlY3QuY29uc3RydWN0Jyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5yZWZsZWN0LmRlZmluZS1wcm9wZXJ0eScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVmbGVjdC5kZWxldGUtcHJvcGVydHknKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZmxlY3QuZW51bWVyYXRlJyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5yZWZsZWN0LmdldCcpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVmbGVjdC5nZXQtb3duLXByb3BlcnR5LWRlc2NyaXB0b3InKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZmxlY3QuZ2V0LXByb3RvdHlwZS1vZicpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVmbGVjdC5oYXMnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZmxlY3QuaXMtZXh0ZW5zaWJsZScpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVmbGVjdC5vd24ta2V5cycpO1xucmVxdWlyZSgnLi4vbW9kdWxlcy9lczYucmVmbGVjdC5wcmV2ZW50LWV4dGVuc2lvbnMnKTtcbnJlcXVpcmUoJy4uL21vZHVsZXMvZXM2LnJlZmxlY3Quc2V0Jyk7XG5yZXF1aXJlKCcuLi9tb2R1bGVzL2VzNi5yZWZsZWN0LnNldC1wcm90b3R5cGUtb2YnKTtcbm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi4vbW9kdWxlcy9fY29yZScpO1xuIiwicmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9lczcuYXJyYXkuZmxhdC1tYXAnKTtcbm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9fY29yZScpLkFycmF5LmZsYXRNYXA7XG4iLCJyZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzNy5hcnJheS5pbmNsdWRlcycpO1xubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9tb2R1bGVzL19jb3JlJykuQXJyYXkuaW5jbHVkZXM7XG4iLCJyZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzNy5vYmplY3QuZW50cmllcycpO1xubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9tb2R1bGVzL19jb3JlJykuT2JqZWN0LmVudHJpZXM7XG4iLCJyZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzNy5vYmplY3QuZ2V0LW93bi1wcm9wZXJ0eS1kZXNjcmlwdG9ycycpO1xubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9tb2R1bGVzL19jb3JlJykuT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM7XG4iLCJyZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzNy5vYmplY3QudmFsdWVzJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5PYmplY3QudmFsdWVzO1xuIiwiJ3VzZSBzdHJpY3QnO1xucmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9lczYucHJvbWlzZScpO1xucmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9lczcucHJvbWlzZS5maW5hbGx5Jyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5Qcm9taXNlWydmaW5hbGx5J107XG4iLCJyZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzNy5zdHJpbmcucGFkLWVuZCcpO1xubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9tb2R1bGVzL19jb3JlJykuU3RyaW5nLnBhZEVuZDtcbiIsInJlcXVpcmUoJy4uLy4uL21vZHVsZXMvZXM3LnN0cmluZy5wYWQtc3RhcnQnKTtcbm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9fY29yZScpLlN0cmluZy5wYWRTdGFydDtcbiIsInJlcXVpcmUoJy4uLy4uL21vZHVsZXMvZXM3LnN0cmluZy50cmltLXJpZ2h0Jyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX2NvcmUnKS5TdHJpbmcudHJpbVJpZ2h0O1xuIiwicmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9lczcuc3RyaW5nLnRyaW0tbGVmdCcpO1xubW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9tb2R1bGVzL19jb3JlJykuU3RyaW5nLnRyaW1MZWZ0O1xuIiwicmVxdWlyZSgnLi4vLi4vbW9kdWxlcy9lczcuc3ltYm9sLmFzeW5jLWl0ZXJhdG9yJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uLy4uL21vZHVsZXMvX3drcy1leHQnKS5mKCdhc3luY0l0ZXJhdG9yJyk7XG4iLCJyZXF1aXJlKCcuLi9tb2R1bGVzL2VzNy5nbG9iYWwnKTtcbm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi4vbW9kdWxlcy9fY29yZScpLmdsb2JhbDtcbiIsIm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmICh0eXBlb2YgaXQgIT0gJ2Z1bmN0aW9uJykgdGhyb3cgVHlwZUVycm9yKGl0ICsgJyBpcyBub3QgYSBmdW5jdGlvbiEnKTtcbiAgcmV0dXJuIGl0O1xufTtcbiIsInZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgaWYgKCFpc09iamVjdChpdCkpIHRocm93IFR5cGVFcnJvcihpdCArICcgaXMgbm90IGFuIG9iamVjdCEnKTtcbiAgcmV0dXJuIGl0O1xufTtcbiIsInZhciBjb3JlID0gbW9kdWxlLmV4cG9ydHMgPSB7IHZlcnNpb246ICcyLjYuMTInIH07XG5pZiAodHlwZW9mIF9fZSA9PSAnbnVtYmVyJykgX19lID0gY29yZTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bmRlZlxuIiwiLy8gb3B0aW9uYWwgLyBzaW1wbGUgY29udGV4dCBiaW5kaW5nXG52YXIgYUZ1bmN0aW9uID0gcmVxdWlyZSgnLi9fYS1mdW5jdGlvbicpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZm4sIHRoYXQsIGxlbmd0aCkge1xuICBhRnVuY3Rpb24oZm4pO1xuICBpZiAodGhhdCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZm47XG4gIHN3aXRjaCAobGVuZ3RoKSB7XG4gICAgY2FzZSAxOiByZXR1cm4gZnVuY3Rpb24gKGEpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEpO1xuICAgIH07XG4gICAgY2FzZSAyOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIpO1xuICAgIH07XG4gICAgY2FzZSAzOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIsIGMpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIsIGMpO1xuICAgIH07XG4gIH1cbiAgcmV0dXJuIGZ1bmN0aW9uICgvKiAuLi5hcmdzICovKSB7XG4gICAgcmV0dXJuIGZuLmFwcGx5KHRoYXQsIGFyZ3VtZW50cyk7XG4gIH07XG59O1xuIiwiLy8gVGhhbmsncyBJRTggZm9yIGhpcyBmdW5ueSBkZWZpbmVQcm9wZXJ0eVxubW9kdWxlLmV4cG9ydHMgPSAhcmVxdWlyZSgnLi9fZmFpbHMnKShmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoe30sICdhJywgeyBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIDc7IH0gfSkuYSAhPSA3O1xufSk7XG4iLCJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBkb2N1bWVudCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpLmRvY3VtZW50O1xuLy8gdHlwZW9mIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQgaXMgJ29iamVjdCcgaW4gb2xkIElFXG52YXIgaXMgPSBpc09iamVjdChkb2N1bWVudCkgJiYgaXNPYmplY3QoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gaXMgPyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KGl0KSA6IHt9O1xufTtcbiIsInZhciBnbG9iYWwgPSByZXF1aXJlKCcuL19nbG9iYWwnKTtcbnZhciBjb3JlID0gcmVxdWlyZSgnLi9fY29yZScpO1xudmFyIGN0eCA9IHJlcXVpcmUoJy4vX2N0eCcpO1xudmFyIGhpZGUgPSByZXF1aXJlKCcuL19oaWRlJyk7XG52YXIgaGFzID0gcmVxdWlyZSgnLi9faGFzJyk7XG52YXIgUFJPVE9UWVBFID0gJ3Byb3RvdHlwZSc7XG5cbnZhciAkZXhwb3J0ID0gZnVuY3Rpb24gKHR5cGUsIG5hbWUsIHNvdXJjZSkge1xuICB2YXIgSVNfRk9SQ0VEID0gdHlwZSAmICRleHBvcnQuRjtcbiAgdmFyIElTX0dMT0JBTCA9IHR5cGUgJiAkZXhwb3J0Lkc7XG4gIHZhciBJU19TVEFUSUMgPSB0eXBlICYgJGV4cG9ydC5TO1xuICB2YXIgSVNfUFJPVE8gPSB0eXBlICYgJGV4cG9ydC5QO1xuICB2YXIgSVNfQklORCA9IHR5cGUgJiAkZXhwb3J0LkI7XG4gIHZhciBJU19XUkFQID0gdHlwZSAmICRleHBvcnQuVztcbiAgdmFyIGV4cG9ydHMgPSBJU19HTE9CQUwgPyBjb3JlIDogY29yZVtuYW1lXSB8fCAoY29yZVtuYW1lXSA9IHt9KTtcbiAgdmFyIGV4cFByb3RvID0gZXhwb3J0c1tQUk9UT1RZUEVdO1xuICB2YXIgdGFyZ2V0ID0gSVNfR0xPQkFMID8gZ2xvYmFsIDogSVNfU1RBVElDID8gZ2xvYmFsW25hbWVdIDogKGdsb2JhbFtuYW1lXSB8fCB7fSlbUFJPVE9UWVBFXTtcbiAgdmFyIGtleSwgb3duLCBvdXQ7XG4gIGlmIChJU19HTE9CQUwpIHNvdXJjZSA9IG5hbWU7XG4gIGZvciAoa2V5IGluIHNvdXJjZSkge1xuICAgIC8vIGNvbnRhaW5zIGluIG5hdGl2ZVxuICAgIG93biA9ICFJU19GT1JDRUQgJiYgdGFyZ2V0ICYmIHRhcmdldFtrZXldICE9PSB1bmRlZmluZWQ7XG4gICAgaWYgKG93biAmJiBoYXMoZXhwb3J0cywga2V5KSkgY29udGludWU7XG4gICAgLy8gZXhwb3J0IG5hdGl2ZSBvciBwYXNzZWRcbiAgICBvdXQgPSBvd24gPyB0YXJnZXRba2V5XSA6IHNvdXJjZVtrZXldO1xuICAgIC8vIHByZXZlbnQgZ2xvYmFsIHBvbGx1dGlvbiBmb3IgbmFtZXNwYWNlc1xuICAgIGV4cG9ydHNba2V5XSA9IElTX0dMT0JBTCAmJiB0eXBlb2YgdGFyZ2V0W2tleV0gIT0gJ2Z1bmN0aW9uJyA/IHNvdXJjZVtrZXldXG4gICAgLy8gYmluZCB0aW1lcnMgdG8gZ2xvYmFsIGZvciBjYWxsIGZyb20gZXhwb3J0IGNvbnRleHRcbiAgICA6IElTX0JJTkQgJiYgb3duID8gY3R4KG91dCwgZ2xvYmFsKVxuICAgIC8vIHdyYXAgZ2xvYmFsIGNvbnN0cnVjdG9ycyBmb3IgcHJldmVudCBjaGFuZ2UgdGhlbSBpbiBsaWJyYXJ5XG4gICAgOiBJU19XUkFQICYmIHRhcmdldFtrZXldID09IG91dCA/IChmdW5jdGlvbiAoQykge1xuICAgICAgdmFyIEYgPSBmdW5jdGlvbiAoYSwgYiwgYykge1xuICAgICAgICBpZiAodGhpcyBpbnN0YW5jZW9mIEMpIHtcbiAgICAgICAgICBzd2l0Y2ggKGFyZ3VtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNhc2UgMDogcmV0dXJuIG5ldyBDKCk7XG4gICAgICAgICAgICBjYXNlIDE6IHJldHVybiBuZXcgQyhhKTtcbiAgICAgICAgICAgIGNhc2UgMjogcmV0dXJuIG5ldyBDKGEsIGIpO1xuICAgICAgICAgIH0gcmV0dXJuIG5ldyBDKGEsIGIsIGMpO1xuICAgICAgICB9IHJldHVybiBDLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG4gICAgICB9O1xuICAgICAgRltQUk9UT1RZUEVdID0gQ1tQUk9UT1RZUEVdO1xuICAgICAgcmV0dXJuIEY7XG4gICAgLy8gbWFrZSBzdGF0aWMgdmVyc2lvbnMgZm9yIHByb3RvdHlwZSBtZXRob2RzXG4gICAgfSkob3V0KSA6IElTX1BST1RPICYmIHR5cGVvZiBvdXQgPT0gJ2Z1bmN0aW9uJyA/IGN0eChGdW5jdGlvbi5jYWxsLCBvdXQpIDogb3V0O1xuICAgIC8vIGV4cG9ydCBwcm90byBtZXRob2RzIHRvIGNvcmUuJUNPTlNUUlVDVE9SJS5tZXRob2RzLiVOQU1FJVxuICAgIGlmIChJU19QUk9UTykge1xuICAgICAgKGV4cG9ydHMudmlydHVhbCB8fCAoZXhwb3J0cy52aXJ0dWFsID0ge30pKVtrZXldID0gb3V0O1xuICAgICAgLy8gZXhwb3J0IHByb3RvIG1ldGhvZHMgdG8gY29yZS4lQ09OU1RSVUNUT1IlLnByb3RvdHlwZS4lTkFNRSVcbiAgICAgIGlmICh0eXBlICYgJGV4cG9ydC5SICYmIGV4cFByb3RvICYmICFleHBQcm90b1trZXldKSBoaWRlKGV4cFByb3RvLCBrZXksIG91dCk7XG4gICAgfVxuICB9XG59O1xuLy8gdHlwZSBiaXRtYXBcbiRleHBvcnQuRiA9IDE7ICAgLy8gZm9yY2VkXG4kZXhwb3J0LkcgPSAyOyAgIC8vIGdsb2JhbFxuJGV4cG9ydC5TID0gNDsgICAvLyBzdGF0aWNcbiRleHBvcnQuUCA9IDg7ICAgLy8gcHJvdG9cbiRleHBvcnQuQiA9IDE2OyAgLy8gYmluZFxuJGV4cG9ydC5XID0gMzI7ICAvLyB3cmFwXG4kZXhwb3J0LlUgPSA2NDsgIC8vIHNhZmVcbiRleHBvcnQuUiA9IDEyODsgLy8gcmVhbCBwcm90byBtZXRob2QgZm9yIGBsaWJyYXJ5YFxubW9kdWxlLmV4cG9ydHMgPSAkZXhwb3J0O1xuIiwibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZXhlYykge1xuICB0cnkge1xuICAgIHJldHVybiAhIWV4ZWMoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59O1xuIiwiLy8gaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMvaXNzdWVzLzg2I2lzc3VlY29tbWVudC0xMTU3NTkwMjhcbnZhciBnbG9iYWwgPSBtb2R1bGUuZXhwb3J0cyA9IHR5cGVvZiB3aW5kb3cgIT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lk1hdGggPT0gTWF0aFxuICA/IHdpbmRvdyA6IHR5cGVvZiBzZWxmICE9ICd1bmRlZmluZWQnICYmIHNlbGYuTWF0aCA9PSBNYXRoID8gc2VsZlxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LWZ1bmNcbiAgOiBGdW5jdGlvbigncmV0dXJuIHRoaXMnKSgpO1xuaWYgKHR5cGVvZiBfX2cgPT0gJ251bWJlcicpIF9fZyA9IGdsb2JhbDsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bmRlZlxuIiwidmFyIGhhc093blByb3BlcnR5ID0ge30uaGFzT3duUHJvcGVydHk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCwga2V5KSB7XG4gIHJldHVybiBoYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xufTtcbiIsInZhciBkUCA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpO1xudmFyIGNyZWF0ZURlc2MgPSByZXF1aXJlKCcuL19wcm9wZXJ0eS1kZXNjJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgPyBmdW5jdGlvbiAob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIHJldHVybiBkUC5mKG9iamVjdCwga2V5LCBjcmVhdGVEZXNjKDEsIHZhbHVlKSk7XG59IDogZnVuY3Rpb24gKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICBvYmplY3Rba2V5XSA9IHZhbHVlO1xuICByZXR1cm4gb2JqZWN0O1xufTtcbiIsIm1vZHVsZS5leHBvcnRzID0gIXJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgJiYgIXJlcXVpcmUoJy4vX2ZhaWxzJykoZnVuY3Rpb24gKCkge1xuICByZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlcXVpcmUoJy4vX2RvbS1jcmVhdGUnKSgnZGl2JyksICdhJywgeyBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIDc7IH0gfSkuYSAhPSA3O1xufSk7XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gdHlwZW9mIGl0ID09PSAnb2JqZWN0JyA/IGl0ICE9PSBudWxsIDogdHlwZW9mIGl0ID09PSAnZnVuY3Rpb24nO1xufTtcbiIsInZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4vX2FuLW9iamVjdCcpO1xudmFyIElFOF9ET01fREVGSU5FID0gcmVxdWlyZSgnLi9faWU4LWRvbS1kZWZpbmUnKTtcbnZhciB0b1ByaW1pdGl2ZSA9IHJlcXVpcmUoJy4vX3RvLXByaW1pdGl2ZScpO1xudmFyIGRQID0gT2JqZWN0LmRlZmluZVByb3BlcnR5O1xuXG5leHBvcnRzLmYgPSByZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpID8gT2JqZWN0LmRlZmluZVByb3BlcnR5IDogZnVuY3Rpb24gZGVmaW5lUHJvcGVydHkoTywgUCwgQXR0cmlidXRlcykge1xuICBhbk9iamVjdChPKTtcbiAgUCA9IHRvUHJpbWl0aXZlKFAsIHRydWUpO1xuICBhbk9iamVjdChBdHRyaWJ1dGVzKTtcbiAgaWYgKElFOF9ET01fREVGSU5FKSB0cnkge1xuICAgIHJldHVybiBkUChPLCBQLCBBdHRyaWJ1dGVzKTtcbiAgfSBjYXRjaCAoZSkgeyAvKiBlbXB0eSAqLyB9XG4gIGlmICgnZ2V0JyBpbiBBdHRyaWJ1dGVzIHx8ICdzZXQnIGluIEF0dHJpYnV0ZXMpIHRocm93IFR5cGVFcnJvcignQWNjZXNzb3JzIG5vdCBzdXBwb3J0ZWQhJyk7XG4gIGlmICgndmFsdWUnIGluIEF0dHJpYnV0ZXMpIE9bUF0gPSBBdHRyaWJ1dGVzLnZhbHVlO1xuICByZXR1cm4gTztcbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChiaXRtYXAsIHZhbHVlKSB7XG4gIHJldHVybiB7XG4gICAgZW51bWVyYWJsZTogIShiaXRtYXAgJiAxKSxcbiAgICBjb25maWd1cmFibGU6ICEoYml0bWFwICYgMiksXG4gICAgd3JpdGFibGU6ICEoYml0bWFwICYgNCksXG4gICAgdmFsdWU6IHZhbHVlXG4gIH07XG59O1xuIiwiLy8gNy4xLjEgVG9QcmltaXRpdmUoaW5wdXQgWywgUHJlZmVycmVkVHlwZV0pXG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbi8vIGluc3RlYWQgb2YgdGhlIEVTNiBzcGVjIHZlcnNpb24sIHdlIGRpZG4ndCBpbXBsZW1lbnQgQEB0b1ByaW1pdGl2ZSBjYXNlXG4vLyBhbmQgdGhlIHNlY29uZCBhcmd1bWVudCAtIGZsYWcgLSBwcmVmZXJyZWQgdHlwZSBpcyBhIHN0cmluZ1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIFMpIHtcbiAgaWYgKCFpc09iamVjdChpdCkpIHJldHVybiBpdDtcbiAgdmFyIGZuLCB2YWw7XG4gIGlmIChTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICBpZiAodHlwZW9mIChmbiA9IGl0LnZhbHVlT2YpID09ICdmdW5jdGlvbicgJiYgIWlzT2JqZWN0KHZhbCA9IGZuLmNhbGwoaXQpKSkgcmV0dXJuIHZhbDtcbiAgaWYgKCFTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWVcIik7XG59O1xuIiwiLy8gaHR0cHM6Ly9naXRodWIuY29tL3RjMzkvcHJvcG9zYWwtZ2xvYmFsXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuRywgeyBnbG9iYWw6IHJlcXVpcmUoJy4vX2dsb2JhbCcpIH0pO1xuIiwibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgaWYgKHR5cGVvZiBpdCAhPSAnZnVuY3Rpb24nKSB0aHJvdyBUeXBlRXJyb3IoaXQgKyAnIGlzIG5vdCBhIGZ1bmN0aW9uIScpO1xuICByZXR1cm4gaXQ7XG59O1xuIiwidmFyIGNvZiA9IHJlcXVpcmUoJy4vX2NvZicpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIG1zZykge1xuICBpZiAodHlwZW9mIGl0ICE9ICdudW1iZXInICYmIGNvZihpdCkgIT0gJ051bWJlcicpIHRocm93IFR5cGVFcnJvcihtc2cpO1xuICByZXR1cm4gK2l0O1xufTtcbiIsIi8vIDIyLjEuMy4zMSBBcnJheS5wcm90b3R5cGVbQEB1bnNjb3BhYmxlc11cbnZhciBVTlNDT1BBQkxFUyA9IHJlcXVpcmUoJy4vX3drcycpKCd1bnNjb3BhYmxlcycpO1xudmFyIEFycmF5UHJvdG8gPSBBcnJheS5wcm90b3R5cGU7XG5pZiAoQXJyYXlQcm90b1tVTlNDT1BBQkxFU10gPT0gdW5kZWZpbmVkKSByZXF1aXJlKCcuL19oaWRlJykoQXJyYXlQcm90bywgVU5TQ09QQUJMRVMsIHt9KTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICBBcnJheVByb3RvW1VOU0NPUEFCTEVTXVtrZXldID0gdHJ1ZTtcbn07XG4iLCIndXNlIHN0cmljdCc7XG52YXIgYXQgPSByZXF1aXJlKCcuL19zdHJpbmctYXQnKSh0cnVlKTtcblxuIC8vIGBBZHZhbmNlU3RyaW5nSW5kZXhgIGFic3RyYWN0IG9wZXJhdGlvblxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtYWR2YW5jZXN0cmluZ2luZGV4XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChTLCBpbmRleCwgdW5pY29kZSkge1xuICByZXR1cm4gaW5kZXggKyAodW5pY29kZSA/IGF0KFMsIGluZGV4KS5sZW5ndGggOiAxKTtcbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCwgQ29uc3RydWN0b3IsIG5hbWUsIGZvcmJpZGRlbkZpZWxkKSB7XG4gIGlmICghKGl0IGluc3RhbmNlb2YgQ29uc3RydWN0b3IpIHx8IChmb3JiaWRkZW5GaWVsZCAhPT0gdW5kZWZpbmVkICYmIGZvcmJpZGRlbkZpZWxkIGluIGl0KSkge1xuICAgIHRocm93IFR5cGVFcnJvcihuYW1lICsgJzogaW5jb3JyZWN0IGludm9jYXRpb24hJyk7XG4gIH0gcmV0dXJuIGl0O1xufTtcbiIsInZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgaWYgKCFpc09iamVjdChpdCkpIHRocm93IFR5cGVFcnJvcihpdCArICcgaXMgbm90IGFuIG9iamVjdCEnKTtcbiAgcmV0dXJuIGl0O1xufTtcbiIsIi8vIDIyLjEuMy4zIEFycmF5LnByb3RvdHlwZS5jb3B5V2l0aGluKHRhcmdldCwgc3RhcnQsIGVuZCA9IHRoaXMubGVuZ3RoKVxuJ3VzZSBzdHJpY3QnO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgdG9BYnNvbHV0ZUluZGV4ID0gcmVxdWlyZSgnLi9fdG8tYWJzb2x1dGUtaW5kZXgnKTtcbnZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IFtdLmNvcHlXaXRoaW4gfHwgZnVuY3Rpb24gY29weVdpdGhpbih0YXJnZXQgLyogPSAwICovLCBzdGFydCAvKiA9IDAsIGVuZCA9IEBsZW5ndGggKi8pIHtcbiAgdmFyIE8gPSB0b09iamVjdCh0aGlzKTtcbiAgdmFyIGxlbiA9IHRvTGVuZ3RoKE8ubGVuZ3RoKTtcbiAgdmFyIHRvID0gdG9BYnNvbHV0ZUluZGV4KHRhcmdldCwgbGVuKTtcbiAgdmFyIGZyb20gPSB0b0Fic29sdXRlSW5kZXgoc3RhcnQsIGxlbik7XG4gIHZhciBlbmQgPSBhcmd1bWVudHMubGVuZ3RoID4gMiA/IGFyZ3VtZW50c1syXSA6IHVuZGVmaW5lZDtcbiAgdmFyIGNvdW50ID0gTWF0aC5taW4oKGVuZCA9PT0gdW5kZWZpbmVkID8gbGVuIDogdG9BYnNvbHV0ZUluZGV4KGVuZCwgbGVuKSkgLSBmcm9tLCBsZW4gLSB0byk7XG4gIHZhciBpbmMgPSAxO1xuICBpZiAoZnJvbSA8IHRvICYmIHRvIDwgZnJvbSArIGNvdW50KSB7XG4gICAgaW5jID0gLTE7XG4gICAgZnJvbSArPSBjb3VudCAtIDE7XG4gICAgdG8gKz0gY291bnQgLSAxO1xuICB9XG4gIHdoaWxlIChjb3VudC0tID4gMCkge1xuICAgIGlmIChmcm9tIGluIE8pIE9bdG9dID0gT1tmcm9tXTtcbiAgICBlbHNlIGRlbGV0ZSBPW3RvXTtcbiAgICB0byArPSBpbmM7XG4gICAgZnJvbSArPSBpbmM7XG4gIH0gcmV0dXJuIE87XG59O1xuIiwiLy8gMjIuMS4zLjYgQXJyYXkucHJvdG90eXBlLmZpbGwodmFsdWUsIHN0YXJ0ID0gMCwgZW5kID0gdGhpcy5sZW5ndGgpXG4ndXNlIHN0cmljdCc7XG52YXIgdG9PYmplY3QgPSByZXF1aXJlKCcuL190by1vYmplY3QnKTtcbnZhciB0b0Fic29sdXRlSW5kZXggPSByZXF1aXJlKCcuL190by1hYnNvbHV0ZS1pbmRleCcpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi9fdG8tbGVuZ3RoJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGZpbGwodmFsdWUgLyogLCBzdGFydCA9IDAsIGVuZCA9IEBsZW5ndGggKi8pIHtcbiAgdmFyIE8gPSB0b09iamVjdCh0aGlzKTtcbiAgdmFyIGxlbmd0aCA9IHRvTGVuZ3RoKE8ubGVuZ3RoKTtcbiAgdmFyIGFMZW4gPSBhcmd1bWVudHMubGVuZ3RoO1xuICB2YXIgaW5kZXggPSB0b0Fic29sdXRlSW5kZXgoYUxlbiA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQsIGxlbmd0aCk7XG4gIHZhciBlbmQgPSBhTGVuID4gMiA/IGFyZ3VtZW50c1syXSA6IHVuZGVmaW5lZDtcbiAgdmFyIGVuZFBvcyA9IGVuZCA9PT0gdW5kZWZpbmVkID8gbGVuZ3RoIDogdG9BYnNvbHV0ZUluZGV4KGVuZCwgbGVuZ3RoKTtcbiAgd2hpbGUgKGVuZFBvcyA+IGluZGV4KSBPW2luZGV4KytdID0gdmFsdWU7XG4gIHJldHVybiBPO1xufTtcbiIsIi8vIGZhbHNlIC0+IEFycmF5I2luZGV4T2Zcbi8vIHRydWUgIC0+IEFycmF5I2luY2x1ZGVzXG52YXIgdG9JT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8taW9iamVjdCcpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi9fdG8tbGVuZ3RoJyk7XG52YXIgdG9BYnNvbHV0ZUluZGV4ID0gcmVxdWlyZSgnLi9fdG8tYWJzb2x1dGUtaW5kZXgnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKElTX0lOQ0xVREVTKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoJHRoaXMsIGVsLCBmcm9tSW5kZXgpIHtcbiAgICB2YXIgTyA9IHRvSU9iamVjdCgkdGhpcyk7XG4gICAgdmFyIGxlbmd0aCA9IHRvTGVuZ3RoKE8ubGVuZ3RoKTtcbiAgICB2YXIgaW5kZXggPSB0b0Fic29sdXRlSW5kZXgoZnJvbUluZGV4LCBsZW5ndGgpO1xuICAgIHZhciB2YWx1ZTtcbiAgICAvLyBBcnJheSNpbmNsdWRlcyB1c2VzIFNhbWVWYWx1ZVplcm8gZXF1YWxpdHkgYWxnb3JpdGhtXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICAgIGlmIChJU19JTkNMVURFUyAmJiBlbCAhPSBlbCkgd2hpbGUgKGxlbmd0aCA+IGluZGV4KSB7XG4gICAgICB2YWx1ZSA9IE9baW5kZXgrK107XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlXG4gICAgICBpZiAodmFsdWUgIT0gdmFsdWUpIHJldHVybiB0cnVlO1xuICAgIC8vIEFycmF5I2luZGV4T2YgaWdub3JlcyBob2xlcywgQXJyYXkjaW5jbHVkZXMgLSBub3RcbiAgICB9IGVsc2UgZm9yICg7bGVuZ3RoID4gaW5kZXg7IGluZGV4KyspIGlmIChJU19JTkNMVURFUyB8fCBpbmRleCBpbiBPKSB7XG4gICAgICBpZiAoT1tpbmRleF0gPT09IGVsKSByZXR1cm4gSVNfSU5DTFVERVMgfHwgaW5kZXggfHwgMDtcbiAgICB9IHJldHVybiAhSVNfSU5DTFVERVMgJiYgLTE7XG4gIH07XG59O1xuIiwiLy8gMCAtPiBBcnJheSNmb3JFYWNoXG4vLyAxIC0+IEFycmF5I21hcFxuLy8gMiAtPiBBcnJheSNmaWx0ZXJcbi8vIDMgLT4gQXJyYXkjc29tZVxuLy8gNCAtPiBBcnJheSNldmVyeVxuLy8gNSAtPiBBcnJheSNmaW5kXG4vLyA2IC0+IEFycmF5I2ZpbmRJbmRleFxudmFyIGN0eCA9IHJlcXVpcmUoJy4vX2N0eCcpO1xudmFyIElPYmplY3QgPSByZXF1aXJlKCcuL19pb2JqZWN0Jyk7XG52YXIgdG9PYmplY3QgPSByZXF1aXJlKCcuL190by1vYmplY3QnKTtcbnZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xudmFyIGFzYyA9IHJlcXVpcmUoJy4vX2FycmF5LXNwZWNpZXMtY3JlYXRlJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChUWVBFLCAkY3JlYXRlKSB7XG4gIHZhciBJU19NQVAgPSBUWVBFID09IDE7XG4gIHZhciBJU19GSUxURVIgPSBUWVBFID09IDI7XG4gIHZhciBJU19TT01FID0gVFlQRSA9PSAzO1xuICB2YXIgSVNfRVZFUlkgPSBUWVBFID09IDQ7XG4gIHZhciBJU19GSU5EX0lOREVYID0gVFlQRSA9PSA2O1xuICB2YXIgTk9fSE9MRVMgPSBUWVBFID09IDUgfHwgSVNfRklORF9JTkRFWDtcbiAgdmFyIGNyZWF0ZSA9ICRjcmVhdGUgfHwgYXNjO1xuICByZXR1cm4gZnVuY3Rpb24gKCR0aGlzLCBjYWxsYmFja2ZuLCB0aGF0KSB7XG4gICAgdmFyIE8gPSB0b09iamVjdCgkdGhpcyk7XG4gICAgdmFyIHNlbGYgPSBJT2JqZWN0KE8pO1xuICAgIHZhciBmID0gY3R4KGNhbGxiYWNrZm4sIHRoYXQsIDMpO1xuICAgIHZhciBsZW5ndGggPSB0b0xlbmd0aChzZWxmLmxlbmd0aCk7XG4gICAgdmFyIGluZGV4ID0gMDtcbiAgICB2YXIgcmVzdWx0ID0gSVNfTUFQID8gY3JlYXRlKCR0aGlzLCBsZW5ndGgpIDogSVNfRklMVEVSID8gY3JlYXRlKCR0aGlzLCAwKSA6IHVuZGVmaW5lZDtcbiAgICB2YXIgdmFsLCByZXM7XG4gICAgZm9yICg7bGVuZ3RoID4gaW5kZXg7IGluZGV4KyspIGlmIChOT19IT0xFUyB8fCBpbmRleCBpbiBzZWxmKSB7XG4gICAgICB2YWwgPSBzZWxmW2luZGV4XTtcbiAgICAgIHJlcyA9IGYodmFsLCBpbmRleCwgTyk7XG4gICAgICBpZiAoVFlQRSkge1xuICAgICAgICBpZiAoSVNfTUFQKSByZXN1bHRbaW5kZXhdID0gcmVzOyAgIC8vIG1hcFxuICAgICAgICBlbHNlIGlmIChyZXMpIHN3aXRjaCAoVFlQRSkge1xuICAgICAgICAgIGNhc2UgMzogcmV0dXJuIHRydWU7ICAgICAgICAgICAgIC8vIHNvbWVcbiAgICAgICAgICBjYXNlIDU6IHJldHVybiB2YWw7ICAgICAgICAgICAgICAvLyBmaW5kXG4gICAgICAgICAgY2FzZSA2OiByZXR1cm4gaW5kZXg7ICAgICAgICAgICAgLy8gZmluZEluZGV4XG4gICAgICAgICAgY2FzZSAyOiByZXN1bHQucHVzaCh2YWwpOyAgICAgICAgLy8gZmlsdGVyXG4gICAgICAgIH0gZWxzZSBpZiAoSVNfRVZFUlkpIHJldHVybiBmYWxzZTsgLy8gZXZlcnlcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIElTX0ZJTkRfSU5ERVggPyAtMSA6IElTX1NPTUUgfHwgSVNfRVZFUlkgPyBJU19FVkVSWSA6IHJlc3VsdDtcbiAgfTtcbn07XG4iLCJ2YXIgYUZ1bmN0aW9uID0gcmVxdWlyZSgnLi9fYS1mdW5jdGlvbicpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgSU9iamVjdCA9IHJlcXVpcmUoJy4vX2lvYmplY3QnKTtcbnZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICh0aGF0LCBjYWxsYmFja2ZuLCBhTGVuLCBtZW1vLCBpc1JpZ2h0KSB7XG4gIGFGdW5jdGlvbihjYWxsYmFja2ZuKTtcbiAgdmFyIE8gPSB0b09iamVjdCh0aGF0KTtcbiAgdmFyIHNlbGYgPSBJT2JqZWN0KE8pO1xuICB2YXIgbGVuZ3RoID0gdG9MZW5ndGgoTy5sZW5ndGgpO1xuICB2YXIgaW5kZXggPSBpc1JpZ2h0ID8gbGVuZ3RoIC0gMSA6IDA7XG4gIHZhciBpID0gaXNSaWdodCA/IC0xIDogMTtcbiAgaWYgKGFMZW4gPCAyKSBmb3IgKDs7KSB7XG4gICAgaWYgKGluZGV4IGluIHNlbGYpIHtcbiAgICAgIG1lbW8gPSBzZWxmW2luZGV4XTtcbiAgICAgIGluZGV4ICs9IGk7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgaW5kZXggKz0gaTtcbiAgICBpZiAoaXNSaWdodCA/IGluZGV4IDwgMCA6IGxlbmd0aCA8PSBpbmRleCkge1xuICAgICAgdGhyb3cgVHlwZUVycm9yKCdSZWR1Y2Ugb2YgZW1wdHkgYXJyYXkgd2l0aCBubyBpbml0aWFsIHZhbHVlJyk7XG4gICAgfVxuICB9XG4gIGZvciAoO2lzUmlnaHQgPyBpbmRleCA+PSAwIDogbGVuZ3RoID4gaW5kZXg7IGluZGV4ICs9IGkpIGlmIChpbmRleCBpbiBzZWxmKSB7XG4gICAgbWVtbyA9IGNhbGxiYWNrZm4obWVtbywgc2VsZltpbmRleF0sIGluZGV4LCBPKTtcbiAgfVxuICByZXR1cm4gbWVtbztcbn07XG4iLCJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBpc0FycmF5ID0gcmVxdWlyZSgnLi9faXMtYXJyYXknKTtcbnZhciBTUEVDSUVTID0gcmVxdWlyZSgnLi9fd2tzJykoJ3NwZWNpZXMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAob3JpZ2luYWwpIHtcbiAgdmFyIEM7XG4gIGlmIChpc0FycmF5KG9yaWdpbmFsKSkge1xuICAgIEMgPSBvcmlnaW5hbC5jb25zdHJ1Y3RvcjtcbiAgICAvLyBjcm9zcy1yZWFsbSBmYWxsYmFja1xuICAgIGlmICh0eXBlb2YgQyA9PSAnZnVuY3Rpb24nICYmIChDID09PSBBcnJheSB8fCBpc0FycmF5KEMucHJvdG90eXBlKSkpIEMgPSB1bmRlZmluZWQ7XG4gICAgaWYgKGlzT2JqZWN0KEMpKSB7XG4gICAgICBDID0gQ1tTUEVDSUVTXTtcbiAgICAgIGlmIChDID09PSBudWxsKSBDID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfSByZXR1cm4gQyA9PT0gdW5kZWZpbmVkID8gQXJyYXkgOiBDO1xufTtcbiIsIi8vIDkuNC4yLjMgQXJyYXlTcGVjaWVzQ3JlYXRlKG9yaWdpbmFsQXJyYXksIGxlbmd0aClcbnZhciBzcGVjaWVzQ29uc3RydWN0b3IgPSByZXF1aXJlKCcuL19hcnJheS1zcGVjaWVzLWNvbnN0cnVjdG9yJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKG9yaWdpbmFsLCBsZW5ndGgpIHtcbiAgcmV0dXJuIG5ldyAoc3BlY2llc0NvbnN0cnVjdG9yKG9yaWdpbmFsKSkobGVuZ3RoKTtcbn07XG4iLCIndXNlIHN0cmljdCc7XG52YXIgYUZ1bmN0aW9uID0gcmVxdWlyZSgnLi9fYS1mdW5jdGlvbicpO1xudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG52YXIgaW52b2tlID0gcmVxdWlyZSgnLi9faW52b2tlJyk7XG52YXIgYXJyYXlTbGljZSA9IFtdLnNsaWNlO1xudmFyIGZhY3RvcmllcyA9IHt9O1xuXG52YXIgY29uc3RydWN0ID0gZnVuY3Rpb24gKEYsIGxlbiwgYXJncykge1xuICBpZiAoIShsZW4gaW4gZmFjdG9yaWVzKSkge1xuICAgIGZvciAodmFyIG4gPSBbXSwgaSA9IDA7IGkgPCBsZW47IGkrKykgbltpXSA9ICdhWycgKyBpICsgJ10nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1uZXctZnVuY1xuICAgIGZhY3Rvcmllc1tsZW5dID0gRnVuY3Rpb24oJ0YsYScsICdyZXR1cm4gbmV3IEYoJyArIG4uam9pbignLCcpICsgJyknKTtcbiAgfSByZXR1cm4gZmFjdG9yaWVzW2xlbl0oRiwgYXJncyk7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IEZ1bmN0aW9uLmJpbmQgfHwgZnVuY3Rpb24gYmluZCh0aGF0IC8qICwgLi4uYXJncyAqLykge1xuICB2YXIgZm4gPSBhRnVuY3Rpb24odGhpcyk7XG4gIHZhciBwYXJ0QXJncyA9IGFycmF5U2xpY2UuY2FsbChhcmd1bWVudHMsIDEpO1xuICB2YXIgYm91bmQgPSBmdW5jdGlvbiAoLyogYXJncy4uLiAqLykge1xuICAgIHZhciBhcmdzID0gcGFydEFyZ3MuY29uY2F0KGFycmF5U2xpY2UuY2FsbChhcmd1bWVudHMpKTtcbiAgICByZXR1cm4gdGhpcyBpbnN0YW5jZW9mIGJvdW5kID8gY29uc3RydWN0KGZuLCBhcmdzLmxlbmd0aCwgYXJncykgOiBpbnZva2UoZm4sIGFyZ3MsIHRoYXQpO1xuICB9O1xuICBpZiAoaXNPYmplY3QoZm4ucHJvdG90eXBlKSkgYm91bmQucHJvdG90eXBlID0gZm4ucHJvdG90eXBlO1xuICByZXR1cm4gYm91bmQ7XG59O1xuIiwiLy8gZ2V0dGluZyB0YWcgZnJvbSAxOS4xLjMuNiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nKClcbnZhciBjb2YgPSByZXF1aXJlKCcuL19jb2YnKTtcbnZhciBUQUcgPSByZXF1aXJlKCcuL193a3MnKSgndG9TdHJpbmdUYWcnKTtcbi8vIEVTMyB3cm9uZyBoZXJlXG52YXIgQVJHID0gY29mKGZ1bmN0aW9uICgpIHsgcmV0dXJuIGFyZ3VtZW50czsgfSgpKSA9PSAnQXJndW1lbnRzJztcblxuLy8gZmFsbGJhY2sgZm9yIElFMTEgU2NyaXB0IEFjY2VzcyBEZW5pZWQgZXJyb3JcbnZhciB0cnlHZXQgPSBmdW5jdGlvbiAoaXQsIGtleSkge1xuICB0cnkge1xuICAgIHJldHVybiBpdFtrZXldO1xuICB9IGNhdGNoIChlKSB7IC8qIGVtcHR5ICovIH1cbn07XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHZhciBPLCBULCBCO1xuICByZXR1cm4gaXQgPT09IHVuZGVmaW5lZCA/ICdVbmRlZmluZWQnIDogaXQgPT09IG51bGwgPyAnTnVsbCdcbiAgICAvLyBAQHRvU3RyaW5nVGFnIGNhc2VcbiAgICA6IHR5cGVvZiAoVCA9IHRyeUdldChPID0gT2JqZWN0KGl0KSwgVEFHKSkgPT0gJ3N0cmluZycgPyBUXG4gICAgLy8gYnVpbHRpblRhZyBjYXNlXG4gICAgOiBBUkcgPyBjb2YoTylcbiAgICAvLyBFUzMgYXJndW1lbnRzIGZhbGxiYWNrXG4gICAgOiAoQiA9IGNvZihPKSkgPT0gJ09iamVjdCcgJiYgdHlwZW9mIE8uY2FsbGVlID09ICdmdW5jdGlvbicgPyAnQXJndW1lbnRzJyA6IEI7XG59O1xuIiwidmFyIHRvU3RyaW5nID0ge30udG9TdHJpbmc7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiB0b1N0cmluZy5jYWxsKGl0KS5zbGljZSg4LCAtMSk7XG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyIGRQID0gcmVxdWlyZSgnLi9fb2JqZWN0LWRwJykuZjtcbnZhciBjcmVhdGUgPSByZXF1aXJlKCcuL19vYmplY3QtY3JlYXRlJyk7XG52YXIgcmVkZWZpbmVBbGwgPSByZXF1aXJlKCcuL19yZWRlZmluZS1hbGwnKTtcbnZhciBjdHggPSByZXF1aXJlKCcuL19jdHgnKTtcbnZhciBhbkluc3RhbmNlID0gcmVxdWlyZSgnLi9fYW4taW5zdGFuY2UnKTtcbnZhciBmb3JPZiA9IHJlcXVpcmUoJy4vX2Zvci1vZicpO1xudmFyICRpdGVyRGVmaW5lID0gcmVxdWlyZSgnLi9faXRlci1kZWZpbmUnKTtcbnZhciBzdGVwID0gcmVxdWlyZSgnLi9faXRlci1zdGVwJyk7XG52YXIgc2V0U3BlY2llcyA9IHJlcXVpcmUoJy4vX3NldC1zcGVjaWVzJyk7XG52YXIgREVTQ1JJUFRPUlMgPSByZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpO1xudmFyIGZhc3RLZXkgPSByZXF1aXJlKCcuL19tZXRhJykuZmFzdEtleTtcbnZhciB2YWxpZGF0ZSA9IHJlcXVpcmUoJy4vX3ZhbGlkYXRlLWNvbGxlY3Rpb24nKTtcbnZhciBTSVpFID0gREVTQ1JJUFRPUlMgPyAnX3MnIDogJ3NpemUnO1xuXG52YXIgZ2V0RW50cnkgPSBmdW5jdGlvbiAodGhhdCwga2V5KSB7XG4gIC8vIGZhc3QgY2FzZVxuICB2YXIgaW5kZXggPSBmYXN0S2V5KGtleSk7XG4gIHZhciBlbnRyeTtcbiAgaWYgKGluZGV4ICE9PSAnRicpIHJldHVybiB0aGF0Ll9pW2luZGV4XTtcbiAgLy8gZnJvemVuIG9iamVjdCBjYXNlXG4gIGZvciAoZW50cnkgPSB0aGF0Ll9mOyBlbnRyeTsgZW50cnkgPSBlbnRyeS5uKSB7XG4gICAgaWYgKGVudHJ5LmsgPT0ga2V5KSByZXR1cm4gZW50cnk7XG4gIH1cbn07XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBnZXRDb25zdHJ1Y3RvcjogZnVuY3Rpb24gKHdyYXBwZXIsIE5BTUUsIElTX01BUCwgQURERVIpIHtcbiAgICB2YXIgQyA9IHdyYXBwZXIoZnVuY3Rpb24gKHRoYXQsIGl0ZXJhYmxlKSB7XG4gICAgICBhbkluc3RhbmNlKHRoYXQsIEMsIE5BTUUsICdfaScpO1xuICAgICAgdGhhdC5fdCA9IE5BTUU7ICAgICAgICAgLy8gY29sbGVjdGlvbiB0eXBlXG4gICAgICB0aGF0Ll9pID0gY3JlYXRlKG51bGwpOyAvLyBpbmRleFxuICAgICAgdGhhdC5fZiA9IHVuZGVmaW5lZDsgICAgLy8gZmlyc3QgZW50cnlcbiAgICAgIHRoYXQuX2wgPSB1bmRlZmluZWQ7ICAgIC8vIGxhc3QgZW50cnlcbiAgICAgIHRoYXRbU0laRV0gPSAwOyAgICAgICAgIC8vIHNpemVcbiAgICAgIGlmIChpdGVyYWJsZSAhPSB1bmRlZmluZWQpIGZvck9mKGl0ZXJhYmxlLCBJU19NQVAsIHRoYXRbQURERVJdLCB0aGF0KTtcbiAgICB9KTtcbiAgICByZWRlZmluZUFsbChDLnByb3RvdHlwZSwge1xuICAgICAgLy8gMjMuMS4zLjEgTWFwLnByb3RvdHlwZS5jbGVhcigpXG4gICAgICAvLyAyMy4yLjMuMiBTZXQucHJvdG90eXBlLmNsZWFyKClcbiAgICAgIGNsZWFyOiBmdW5jdGlvbiBjbGVhcigpIHtcbiAgICAgICAgZm9yICh2YXIgdGhhdCA9IHZhbGlkYXRlKHRoaXMsIE5BTUUpLCBkYXRhID0gdGhhdC5faSwgZW50cnkgPSB0aGF0Ll9mOyBlbnRyeTsgZW50cnkgPSBlbnRyeS5uKSB7XG4gICAgICAgICAgZW50cnkuciA9IHRydWU7XG4gICAgICAgICAgaWYgKGVudHJ5LnApIGVudHJ5LnAgPSBlbnRyeS5wLm4gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgZGVsZXRlIGRhdGFbZW50cnkuaV07XG4gICAgICAgIH1cbiAgICAgICAgdGhhdC5fZiA9IHRoYXQuX2wgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoYXRbU0laRV0gPSAwO1xuICAgICAgfSxcbiAgICAgIC8vIDIzLjEuMy4zIE1hcC5wcm90b3R5cGUuZGVsZXRlKGtleSlcbiAgICAgIC8vIDIzLjIuMy40IFNldC5wcm90b3R5cGUuZGVsZXRlKHZhbHVlKVxuICAgICAgJ2RlbGV0ZSc6IGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgdmFyIHRoYXQgPSB2YWxpZGF0ZSh0aGlzLCBOQU1FKTtcbiAgICAgICAgdmFyIGVudHJ5ID0gZ2V0RW50cnkodGhhdCwga2V5KTtcbiAgICAgICAgaWYgKGVudHJ5KSB7XG4gICAgICAgICAgdmFyIG5leHQgPSBlbnRyeS5uO1xuICAgICAgICAgIHZhciBwcmV2ID0gZW50cnkucDtcbiAgICAgICAgICBkZWxldGUgdGhhdC5faVtlbnRyeS5pXTtcbiAgICAgICAgICBlbnRyeS5yID0gdHJ1ZTtcbiAgICAgICAgICBpZiAocHJldikgcHJldi5uID0gbmV4dDtcbiAgICAgICAgICBpZiAobmV4dCkgbmV4dC5wID0gcHJldjtcbiAgICAgICAgICBpZiAodGhhdC5fZiA9PSBlbnRyeSkgdGhhdC5fZiA9IG5leHQ7XG4gICAgICAgICAgaWYgKHRoYXQuX2wgPT0gZW50cnkpIHRoYXQuX2wgPSBwcmV2O1xuICAgICAgICAgIHRoYXRbU0laRV0tLTtcbiAgICAgICAgfSByZXR1cm4gISFlbnRyeTtcbiAgICAgIH0sXG4gICAgICAvLyAyMy4yLjMuNiBTZXQucHJvdG90eXBlLmZvckVhY2goY2FsbGJhY2tmbiwgdGhpc0FyZyA9IHVuZGVmaW5lZClcbiAgICAgIC8vIDIzLjEuMy41IE1hcC5wcm90b3R5cGUuZm9yRWFjaChjYWxsYmFja2ZuLCB0aGlzQXJnID0gdW5kZWZpbmVkKVxuICAgICAgZm9yRWFjaDogZnVuY3Rpb24gZm9yRWFjaChjYWxsYmFja2ZuIC8qICwgdGhhdCA9IHVuZGVmaW5lZCAqLykge1xuICAgICAgICB2YWxpZGF0ZSh0aGlzLCBOQU1FKTtcbiAgICAgICAgdmFyIGYgPSBjdHgoY2FsbGJhY2tmbiwgYXJndW1lbnRzLmxlbmd0aCA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQsIDMpO1xuICAgICAgICB2YXIgZW50cnk7XG4gICAgICAgIHdoaWxlIChlbnRyeSA9IGVudHJ5ID8gZW50cnkubiA6IHRoaXMuX2YpIHtcbiAgICAgICAgICBmKGVudHJ5LnYsIGVudHJ5LmssIHRoaXMpO1xuICAgICAgICAgIC8vIHJldmVydCB0byB0aGUgbGFzdCBleGlzdGluZyBlbnRyeVxuICAgICAgICAgIHdoaWxlIChlbnRyeSAmJiBlbnRyeS5yKSBlbnRyeSA9IGVudHJ5LnA7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICAvLyAyMy4xLjMuNyBNYXAucHJvdG90eXBlLmhhcyhrZXkpXG4gICAgICAvLyAyMy4yLjMuNyBTZXQucHJvdG90eXBlLmhhcyh2YWx1ZSlcbiAgICAgIGhhczogZnVuY3Rpb24gaGFzKGtleSkge1xuICAgICAgICByZXR1cm4gISFnZXRFbnRyeSh2YWxpZGF0ZSh0aGlzLCBOQU1FKSwga2V5KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoREVTQ1JJUFRPUlMpIGRQKEMucHJvdG90eXBlLCAnc2l6ZScsIHtcbiAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gdmFsaWRhdGUodGhpcywgTkFNRSlbU0laRV07XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIEM7XG4gIH0sXG4gIGRlZjogZnVuY3Rpb24gKHRoYXQsIGtleSwgdmFsdWUpIHtcbiAgICB2YXIgZW50cnkgPSBnZXRFbnRyeSh0aGF0LCBrZXkpO1xuICAgIHZhciBwcmV2LCBpbmRleDtcbiAgICAvLyBjaGFuZ2UgZXhpc3RpbmcgZW50cnlcbiAgICBpZiAoZW50cnkpIHtcbiAgICAgIGVudHJ5LnYgPSB2YWx1ZTtcbiAgICAvLyBjcmVhdGUgbmV3IGVudHJ5XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoYXQuX2wgPSBlbnRyeSA9IHtcbiAgICAgICAgaTogaW5kZXggPSBmYXN0S2V5KGtleSwgdHJ1ZSksIC8vIDwtIGluZGV4XG4gICAgICAgIGs6IGtleSwgICAgICAgICAgICAgICAgICAgICAgICAvLyA8LSBrZXlcbiAgICAgICAgdjogdmFsdWUsICAgICAgICAgICAgICAgICAgICAgIC8vIDwtIHZhbHVlXG4gICAgICAgIHA6IHByZXYgPSB0aGF0Ll9sLCAgICAgICAgICAgICAvLyA8LSBwcmV2aW91cyBlbnRyeVxuICAgICAgICBuOiB1bmRlZmluZWQsICAgICAgICAgICAgICAgICAgLy8gPC0gbmV4dCBlbnRyeVxuICAgICAgICByOiBmYWxzZSAgICAgICAgICAgICAgICAgICAgICAgLy8gPC0gcmVtb3ZlZFxuICAgICAgfTtcbiAgICAgIGlmICghdGhhdC5fZikgdGhhdC5fZiA9IGVudHJ5O1xuICAgICAgaWYgKHByZXYpIHByZXYubiA9IGVudHJ5O1xuICAgICAgdGhhdFtTSVpFXSsrO1xuICAgICAgLy8gYWRkIHRvIGluZGV4XG4gICAgICBpZiAoaW5kZXggIT09ICdGJykgdGhhdC5faVtpbmRleF0gPSBlbnRyeTtcbiAgICB9IHJldHVybiB0aGF0O1xuICB9LFxuICBnZXRFbnRyeTogZ2V0RW50cnksXG4gIHNldFN0cm9uZzogZnVuY3Rpb24gKEMsIE5BTUUsIElTX01BUCkge1xuICAgIC8vIGFkZCAua2V5cywgLnZhbHVlcywgLmVudHJpZXMsIFtAQGl0ZXJhdG9yXVxuICAgIC8vIDIzLjEuMy40LCAyMy4xLjMuOCwgMjMuMS4zLjExLCAyMy4xLjMuMTIsIDIzLjIuMy41LCAyMy4yLjMuOCwgMjMuMi4zLjEwLCAyMy4yLjMuMTFcbiAgICAkaXRlckRlZmluZShDLCBOQU1FLCBmdW5jdGlvbiAoaXRlcmF0ZWQsIGtpbmQpIHtcbiAgICAgIHRoaXMuX3QgPSB2YWxpZGF0ZShpdGVyYXRlZCwgTkFNRSk7IC8vIHRhcmdldFxuICAgICAgdGhpcy5fayA9IGtpbmQ7ICAgICAgICAgICAgICAgICAgICAgLy8ga2luZFxuICAgICAgdGhpcy5fbCA9IHVuZGVmaW5lZDsgICAgICAgICAgICAgICAgLy8gcHJldmlvdXNcbiAgICB9LCBmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgdGhhdCA9IHRoaXM7XG4gICAgICB2YXIga2luZCA9IHRoYXQuX2s7XG4gICAgICB2YXIgZW50cnkgPSB0aGF0Ll9sO1xuICAgICAgLy8gcmV2ZXJ0IHRvIHRoZSBsYXN0IGV4aXN0aW5nIGVudHJ5XG4gICAgICB3aGlsZSAoZW50cnkgJiYgZW50cnkucikgZW50cnkgPSBlbnRyeS5wO1xuICAgICAgLy8gZ2V0IG5leHQgZW50cnlcbiAgICAgIGlmICghdGhhdC5fdCB8fCAhKHRoYXQuX2wgPSBlbnRyeSA9IGVudHJ5ID8gZW50cnkubiA6IHRoYXQuX3QuX2YpKSB7XG4gICAgICAgIC8vIG9yIGZpbmlzaCB0aGUgaXRlcmF0aW9uXG4gICAgICAgIHRoYXQuX3QgPSB1bmRlZmluZWQ7XG4gICAgICAgIHJldHVybiBzdGVwKDEpO1xuICAgICAgfVxuICAgICAgLy8gcmV0dXJuIHN0ZXAgYnkga2luZFxuICAgICAgaWYgKGtpbmQgPT0gJ2tleXMnKSByZXR1cm4gc3RlcCgwLCBlbnRyeS5rKTtcbiAgICAgIGlmIChraW5kID09ICd2YWx1ZXMnKSByZXR1cm4gc3RlcCgwLCBlbnRyeS52KTtcbiAgICAgIHJldHVybiBzdGVwKDAsIFtlbnRyeS5rLCBlbnRyeS52XSk7XG4gICAgfSwgSVNfTUFQID8gJ2VudHJpZXMnIDogJ3ZhbHVlcycsICFJU19NQVAsIHRydWUpO1xuXG4gICAgLy8gYWRkIFtAQHNwZWNpZXNdLCAyMy4xLjIuMiwgMjMuMi4yLjJcbiAgICBzZXRTcGVjaWVzKE5BTUUpO1xuICB9XG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyIHJlZGVmaW5lQWxsID0gcmVxdWlyZSgnLi9fcmVkZWZpbmUtYWxsJyk7XG52YXIgZ2V0V2VhayA9IHJlcXVpcmUoJy4vX21ldGEnKS5nZXRXZWFrO1xudmFyIGFuT2JqZWN0ID0gcmVxdWlyZSgnLi9fYW4tb2JqZWN0Jyk7XG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBhbkluc3RhbmNlID0gcmVxdWlyZSgnLi9fYW4taW5zdGFuY2UnKTtcbnZhciBmb3JPZiA9IHJlcXVpcmUoJy4vX2Zvci1vZicpO1xudmFyIGNyZWF0ZUFycmF5TWV0aG9kID0gcmVxdWlyZSgnLi9fYXJyYXktbWV0aG9kcycpO1xudmFyICRoYXMgPSByZXF1aXJlKCcuL19oYXMnKTtcbnZhciB2YWxpZGF0ZSA9IHJlcXVpcmUoJy4vX3ZhbGlkYXRlLWNvbGxlY3Rpb24nKTtcbnZhciBhcnJheUZpbmQgPSBjcmVhdGVBcnJheU1ldGhvZCg1KTtcbnZhciBhcnJheUZpbmRJbmRleCA9IGNyZWF0ZUFycmF5TWV0aG9kKDYpO1xudmFyIGlkID0gMDtcblxuLy8gZmFsbGJhY2sgZm9yIHVuY2F1Z2h0IGZyb3plbiBrZXlzXG52YXIgdW5jYXVnaHRGcm96ZW5TdG9yZSA9IGZ1bmN0aW9uICh0aGF0KSB7XG4gIHJldHVybiB0aGF0Ll9sIHx8ICh0aGF0Ll9sID0gbmV3IFVuY2F1Z2h0RnJvemVuU3RvcmUoKSk7XG59O1xudmFyIFVuY2F1Z2h0RnJvemVuU3RvcmUgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMuYSA9IFtdO1xufTtcbnZhciBmaW5kVW5jYXVnaHRGcm96ZW4gPSBmdW5jdGlvbiAoc3RvcmUsIGtleSkge1xuICByZXR1cm4gYXJyYXlGaW5kKHN0b3JlLmEsIGZ1bmN0aW9uIChpdCkge1xuICAgIHJldHVybiBpdFswXSA9PT0ga2V5O1xuICB9KTtcbn07XG5VbmNhdWdodEZyb3plblN0b3JlLnByb3RvdHlwZSA9IHtcbiAgZ2V0OiBmdW5jdGlvbiAoa2V5KSB7XG4gICAgdmFyIGVudHJ5ID0gZmluZFVuY2F1Z2h0RnJvemVuKHRoaXMsIGtleSk7XG4gICAgaWYgKGVudHJ5KSByZXR1cm4gZW50cnlbMV07XG4gIH0sXG4gIGhhczogZnVuY3Rpb24gKGtleSkge1xuICAgIHJldHVybiAhIWZpbmRVbmNhdWdodEZyb3plbih0aGlzLCBrZXkpO1xuICB9LFxuICBzZXQ6IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgdmFyIGVudHJ5ID0gZmluZFVuY2F1Z2h0RnJvemVuKHRoaXMsIGtleSk7XG4gICAgaWYgKGVudHJ5KSBlbnRyeVsxXSA9IHZhbHVlO1xuICAgIGVsc2UgdGhpcy5hLnB1c2goW2tleSwgdmFsdWVdKTtcbiAgfSxcbiAgJ2RlbGV0ZSc6IGZ1bmN0aW9uIChrZXkpIHtcbiAgICB2YXIgaW5kZXggPSBhcnJheUZpbmRJbmRleCh0aGlzLmEsIGZ1bmN0aW9uIChpdCkge1xuICAgICAgcmV0dXJuIGl0WzBdID09PSBrZXk7XG4gICAgfSk7XG4gICAgaWYgKH5pbmRleCkgdGhpcy5hLnNwbGljZShpbmRleCwgMSk7XG4gICAgcmV0dXJuICEhfmluZGV4O1xuICB9XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgZ2V0Q29uc3RydWN0b3I6IGZ1bmN0aW9uICh3cmFwcGVyLCBOQU1FLCBJU19NQVAsIEFEREVSKSB7XG4gICAgdmFyIEMgPSB3cmFwcGVyKGZ1bmN0aW9uICh0aGF0LCBpdGVyYWJsZSkge1xuICAgICAgYW5JbnN0YW5jZSh0aGF0LCBDLCBOQU1FLCAnX2knKTtcbiAgICAgIHRoYXQuX3QgPSBOQU1FOyAgICAgIC8vIGNvbGxlY3Rpb24gdHlwZVxuICAgICAgdGhhdC5faSA9IGlkKys7ICAgICAgLy8gY29sbGVjdGlvbiBpZFxuICAgICAgdGhhdC5fbCA9IHVuZGVmaW5lZDsgLy8gbGVhayBzdG9yZSBmb3IgdW5jYXVnaHQgZnJvemVuIG9iamVjdHNcbiAgICAgIGlmIChpdGVyYWJsZSAhPSB1bmRlZmluZWQpIGZvck9mKGl0ZXJhYmxlLCBJU19NQVAsIHRoYXRbQURERVJdLCB0aGF0KTtcbiAgICB9KTtcbiAgICByZWRlZmluZUFsbChDLnByb3RvdHlwZSwge1xuICAgICAgLy8gMjMuMy4zLjIgV2Vha01hcC5wcm90b3R5cGUuZGVsZXRlKGtleSlcbiAgICAgIC8vIDIzLjQuMy4zIFdlYWtTZXQucHJvdG90eXBlLmRlbGV0ZSh2YWx1ZSlcbiAgICAgICdkZWxldGUnOiBmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgIGlmICghaXNPYmplY3Qoa2V5KSkgcmV0dXJuIGZhbHNlO1xuICAgICAgICB2YXIgZGF0YSA9IGdldFdlYWsoa2V5KTtcbiAgICAgICAgaWYgKGRhdGEgPT09IHRydWUpIHJldHVybiB1bmNhdWdodEZyb3plblN0b3JlKHZhbGlkYXRlKHRoaXMsIE5BTUUpKVsnZGVsZXRlJ10oa2V5KTtcbiAgICAgICAgcmV0dXJuIGRhdGEgJiYgJGhhcyhkYXRhLCB0aGlzLl9pKSAmJiBkZWxldGUgZGF0YVt0aGlzLl9pXTtcbiAgICAgIH0sXG4gICAgICAvLyAyMy4zLjMuNCBXZWFrTWFwLnByb3RvdHlwZS5oYXMoa2V5KVxuICAgICAgLy8gMjMuNC4zLjQgV2Vha1NldC5wcm90b3R5cGUuaGFzKHZhbHVlKVxuICAgICAgaGFzOiBmdW5jdGlvbiBoYXMoa2V5KSB7XG4gICAgICAgIGlmICghaXNPYmplY3Qoa2V5KSkgcmV0dXJuIGZhbHNlO1xuICAgICAgICB2YXIgZGF0YSA9IGdldFdlYWsoa2V5KTtcbiAgICAgICAgaWYgKGRhdGEgPT09IHRydWUpIHJldHVybiB1bmNhdWdodEZyb3plblN0b3JlKHZhbGlkYXRlKHRoaXMsIE5BTUUpKS5oYXMoa2V5KTtcbiAgICAgICAgcmV0dXJuIGRhdGEgJiYgJGhhcyhkYXRhLCB0aGlzLl9pKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gQztcbiAgfSxcbiAgZGVmOiBmdW5jdGlvbiAodGhhdCwga2V5LCB2YWx1ZSkge1xuICAgIHZhciBkYXRhID0gZ2V0V2Vhayhhbk9iamVjdChrZXkpLCB0cnVlKTtcbiAgICBpZiAoZGF0YSA9PT0gdHJ1ZSkgdW5jYXVnaHRGcm96ZW5TdG9yZSh0aGF0KS5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgZWxzZSBkYXRhW3RoYXQuX2ldID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoYXQ7XG4gIH0sXG4gIHVmc3RvcmU6IHVuY2F1Z2h0RnJvemVuU3RvcmVcbn07XG4iLCIndXNlIHN0cmljdCc7XG52YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi9fZ2xvYmFsJyk7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIHJlZGVmaW5lID0gcmVxdWlyZSgnLi9fcmVkZWZpbmUnKTtcbnZhciByZWRlZmluZUFsbCA9IHJlcXVpcmUoJy4vX3JlZGVmaW5lLWFsbCcpO1xudmFyIG1ldGEgPSByZXF1aXJlKCcuL19tZXRhJyk7XG52YXIgZm9yT2YgPSByZXF1aXJlKCcuL19mb3Itb2YnKTtcbnZhciBhbkluc3RhbmNlID0gcmVxdWlyZSgnLi9fYW4taW5zdGFuY2UnKTtcbnZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xudmFyIGZhaWxzID0gcmVxdWlyZSgnLi9fZmFpbHMnKTtcbnZhciAkaXRlckRldGVjdCA9IHJlcXVpcmUoJy4vX2l0ZXItZGV0ZWN0Jyk7XG52YXIgc2V0VG9TdHJpbmdUYWcgPSByZXF1aXJlKCcuL19zZXQtdG8tc3RyaW5nLXRhZycpO1xudmFyIGluaGVyaXRJZlJlcXVpcmVkID0gcmVxdWlyZSgnLi9faW5oZXJpdC1pZi1yZXF1aXJlZCcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChOQU1FLCB3cmFwcGVyLCBtZXRob2RzLCBjb21tb24sIElTX01BUCwgSVNfV0VBSykge1xuICB2YXIgQmFzZSA9IGdsb2JhbFtOQU1FXTtcbiAgdmFyIEMgPSBCYXNlO1xuICB2YXIgQURERVIgPSBJU19NQVAgPyAnc2V0JyA6ICdhZGQnO1xuICB2YXIgcHJvdG8gPSBDICYmIEMucHJvdG90eXBlO1xuICB2YXIgTyA9IHt9O1xuICB2YXIgZml4TWV0aG9kID0gZnVuY3Rpb24gKEtFWSkge1xuICAgIHZhciBmbiA9IHByb3RvW0tFWV07XG4gICAgcmVkZWZpbmUocHJvdG8sIEtFWSxcbiAgICAgIEtFWSA9PSAnZGVsZXRlJyA/IGZ1bmN0aW9uIChhKSB7XG4gICAgICAgIHJldHVybiBJU19XRUFLICYmICFpc09iamVjdChhKSA/IGZhbHNlIDogZm4uY2FsbCh0aGlzLCBhID09PSAwID8gMCA6IGEpO1xuICAgICAgfSA6IEtFWSA9PSAnaGFzJyA/IGZ1bmN0aW9uIGhhcyhhKSB7XG4gICAgICAgIHJldHVybiBJU19XRUFLICYmICFpc09iamVjdChhKSA/IGZhbHNlIDogZm4uY2FsbCh0aGlzLCBhID09PSAwID8gMCA6IGEpO1xuICAgICAgfSA6IEtFWSA9PSAnZ2V0JyA/IGZ1bmN0aW9uIGdldChhKSB7XG4gICAgICAgIHJldHVybiBJU19XRUFLICYmICFpc09iamVjdChhKSA/IHVuZGVmaW5lZCA6IGZuLmNhbGwodGhpcywgYSA9PT0gMCA/IDAgOiBhKTtcbiAgICAgIH0gOiBLRVkgPT0gJ2FkZCcgPyBmdW5jdGlvbiBhZGQoYSkgeyBmbi5jYWxsKHRoaXMsIGEgPT09IDAgPyAwIDogYSk7IHJldHVybiB0aGlzOyB9XG4gICAgICAgIDogZnVuY3Rpb24gc2V0KGEsIGIpIHsgZm4uY2FsbCh0aGlzLCBhID09PSAwID8gMCA6IGEsIGIpOyByZXR1cm4gdGhpczsgfVxuICAgICk7XG4gIH07XG4gIGlmICh0eXBlb2YgQyAhPSAnZnVuY3Rpb24nIHx8ICEoSVNfV0VBSyB8fCBwcm90by5mb3JFYWNoICYmICFmYWlscyhmdW5jdGlvbiAoKSB7XG4gICAgbmV3IEMoKS5lbnRyaWVzKCkubmV4dCgpO1xuICB9KSkpIHtcbiAgICAvLyBjcmVhdGUgY29sbGVjdGlvbiBjb25zdHJ1Y3RvclxuICAgIEMgPSBjb21tb24uZ2V0Q29uc3RydWN0b3Iod3JhcHBlciwgTkFNRSwgSVNfTUFQLCBBRERFUik7XG4gICAgcmVkZWZpbmVBbGwoQy5wcm90b3R5cGUsIG1ldGhvZHMpO1xuICAgIG1ldGEuTkVFRCA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgdmFyIGluc3RhbmNlID0gbmV3IEMoKTtcbiAgICAvLyBlYXJseSBpbXBsZW1lbnRhdGlvbnMgbm90IHN1cHBvcnRzIGNoYWluaW5nXG4gICAgdmFyIEhBU05UX0NIQUlOSU5HID0gaW5zdGFuY2VbQURERVJdKElTX1dFQUsgPyB7fSA6IC0wLCAxKSAhPSBpbnN0YW5jZTtcbiAgICAvLyBWOCB+ICBDaHJvbWl1bSA0MC0gd2Vhay1jb2xsZWN0aW9ucyB0aHJvd3Mgb24gcHJpbWl0aXZlcywgYnV0IHNob3VsZCByZXR1cm4gZmFsc2VcbiAgICB2YXIgVEhST1dTX09OX1BSSU1JVElWRVMgPSBmYWlscyhmdW5jdGlvbiAoKSB7IGluc3RhbmNlLmhhcygxKTsgfSk7XG4gICAgLy8gbW9zdCBlYXJseSBpbXBsZW1lbnRhdGlvbnMgZG9lc24ndCBzdXBwb3J0cyBpdGVyYWJsZXMsIG1vc3QgbW9kZXJuIC0gbm90IGNsb3NlIGl0IGNvcnJlY3RseVxuICAgIHZhciBBQ0NFUFRfSVRFUkFCTEVTID0gJGl0ZXJEZXRlY3QoZnVuY3Rpb24gKGl0ZXIpIHsgbmV3IEMoaXRlcik7IH0pOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLW5ld1xuICAgIC8vIGZvciBlYXJseSBpbXBsZW1lbnRhdGlvbnMgLTAgYW5kICswIG5vdCB0aGUgc2FtZVxuICAgIHZhciBCVUdHWV9aRVJPID0gIUlTX1dFQUsgJiYgZmFpbHMoZnVuY3Rpb24gKCkge1xuICAgICAgLy8gVjggfiBDaHJvbWl1bSA0Mi0gZmFpbHMgb25seSB3aXRoIDUrIGVsZW1lbnRzXG4gICAgICB2YXIgJGluc3RhbmNlID0gbmV3IEMoKTtcbiAgICAgIHZhciBpbmRleCA9IDU7XG4gICAgICB3aGlsZSAoaW5kZXgtLSkgJGluc3RhbmNlW0FEREVSXShpbmRleCwgaW5kZXgpO1xuICAgICAgcmV0dXJuICEkaW5zdGFuY2UuaGFzKC0wKTtcbiAgICB9KTtcbiAgICBpZiAoIUFDQ0VQVF9JVEVSQUJMRVMpIHtcbiAgICAgIEMgPSB3cmFwcGVyKGZ1bmN0aW9uICh0YXJnZXQsIGl0ZXJhYmxlKSB7XG4gICAgICAgIGFuSW5zdGFuY2UodGFyZ2V0LCBDLCBOQU1FKTtcbiAgICAgICAgdmFyIHRoYXQgPSBpbmhlcml0SWZSZXF1aXJlZChuZXcgQmFzZSgpLCB0YXJnZXQsIEMpO1xuICAgICAgICBpZiAoaXRlcmFibGUgIT0gdW5kZWZpbmVkKSBmb3JPZihpdGVyYWJsZSwgSVNfTUFQLCB0aGF0W0FEREVSXSwgdGhhdCk7XG4gICAgICAgIHJldHVybiB0aGF0O1xuICAgICAgfSk7XG4gICAgICBDLnByb3RvdHlwZSA9IHByb3RvO1xuICAgICAgcHJvdG8uY29uc3RydWN0b3IgPSBDO1xuICAgIH1cbiAgICBpZiAoVEhST1dTX09OX1BSSU1JVElWRVMgfHwgQlVHR1lfWkVSTykge1xuICAgICAgZml4TWV0aG9kKCdkZWxldGUnKTtcbiAgICAgIGZpeE1ldGhvZCgnaGFzJyk7XG4gICAgICBJU19NQVAgJiYgZml4TWV0aG9kKCdnZXQnKTtcbiAgICB9XG4gICAgaWYgKEJVR0dZX1pFUk8gfHwgSEFTTlRfQ0hBSU5JTkcpIGZpeE1ldGhvZChBRERFUik7XG4gICAgLy8gd2VhayBjb2xsZWN0aW9ucyBzaG91bGQgbm90IGNvbnRhaW5zIC5jbGVhciBtZXRob2RcbiAgICBpZiAoSVNfV0VBSyAmJiBwcm90by5jbGVhcikgZGVsZXRlIHByb3RvLmNsZWFyO1xuICB9XG5cbiAgc2V0VG9TdHJpbmdUYWcoQywgTkFNRSk7XG5cbiAgT1tOQU1FXSA9IEM7XG4gICRleHBvcnQoJGV4cG9ydC5HICsgJGV4cG9ydC5XICsgJGV4cG9ydC5GICogKEMgIT0gQmFzZSksIE8pO1xuXG4gIGlmICghSVNfV0VBSykgY29tbW9uLnNldFN0cm9uZyhDLCBOQU1FLCBJU19NQVApO1xuXG4gIHJldHVybiBDO1xufTtcbiIsInZhciBjb3JlID0gbW9kdWxlLmV4cG9ydHMgPSB7IHZlcnNpb246ICcyLjYuMTInIH07XG5pZiAodHlwZW9mIF9fZSA9PSAnbnVtYmVyJykgX19lID0gY29yZTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bmRlZlxuIiwiJ3VzZSBzdHJpY3QnO1xudmFyICRkZWZpbmVQcm9wZXJ0eSA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpO1xudmFyIGNyZWF0ZURlc2MgPSByZXF1aXJlKCcuL19wcm9wZXJ0eS1kZXNjJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKG9iamVjdCwgaW5kZXgsIHZhbHVlKSB7XG4gIGlmIChpbmRleCBpbiBvYmplY3QpICRkZWZpbmVQcm9wZXJ0eS5mKG9iamVjdCwgaW5kZXgsIGNyZWF0ZURlc2MoMCwgdmFsdWUpKTtcbiAgZWxzZSBvYmplY3RbaW5kZXhdID0gdmFsdWU7XG59O1xuIiwiLy8gb3B0aW9uYWwgLyBzaW1wbGUgY29udGV4dCBiaW5kaW5nXG52YXIgYUZ1bmN0aW9uID0gcmVxdWlyZSgnLi9fYS1mdW5jdGlvbicpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZm4sIHRoYXQsIGxlbmd0aCkge1xuICBhRnVuY3Rpb24oZm4pO1xuICBpZiAodGhhdCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZm47XG4gIHN3aXRjaCAobGVuZ3RoKSB7XG4gICAgY2FzZSAxOiByZXR1cm4gZnVuY3Rpb24gKGEpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEpO1xuICAgIH07XG4gICAgY2FzZSAyOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIpO1xuICAgIH07XG4gICAgY2FzZSAzOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIsIGMpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIsIGMpO1xuICAgIH07XG4gIH1cbiAgcmV0dXJuIGZ1bmN0aW9uICgvKiAuLi5hcmdzICovKSB7XG4gICAgcmV0dXJuIGZuLmFwcGx5KHRoYXQsIGFyZ3VtZW50cyk7XG4gIH07XG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xuLy8gMjAuMy40LjM2IC8gMTUuOS41LjQzIERhdGUucHJvdG90eXBlLnRvSVNPU3RyaW5nKClcbnZhciBmYWlscyA9IHJlcXVpcmUoJy4vX2ZhaWxzJyk7XG52YXIgZ2V0VGltZSA9IERhdGUucHJvdG90eXBlLmdldFRpbWU7XG52YXIgJHRvSVNPU3RyaW5nID0gRGF0ZS5wcm90b3R5cGUudG9JU09TdHJpbmc7XG5cbnZhciBseiA9IGZ1bmN0aW9uIChudW0pIHtcbiAgcmV0dXJuIG51bSA+IDkgPyBudW0gOiAnMCcgKyBudW07XG59O1xuXG4vLyBQaGFudG9tSlMgLyBvbGQgV2ViS2l0IGhhcyBhIGJyb2tlbiBpbXBsZW1lbnRhdGlvbnNcbm1vZHVsZS5leHBvcnRzID0gKGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuICR0b0lTT1N0cmluZy5jYWxsKG5ldyBEYXRlKC01ZTEzIC0gMSkpICE9ICcwMzg1LTA3LTI1VDA3OjA2OjM5Ljk5OVonO1xufSkgfHwgIWZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgJHRvSVNPU3RyaW5nLmNhbGwobmV3IERhdGUoTmFOKSk7XG59KSkgPyBmdW5jdGlvbiB0b0lTT1N0cmluZygpIHtcbiAgaWYgKCFpc0Zpbml0ZShnZXRUaW1lLmNhbGwodGhpcykpKSB0aHJvdyBSYW5nZUVycm9yKCdJbnZhbGlkIHRpbWUgdmFsdWUnKTtcbiAgdmFyIGQgPSB0aGlzO1xuICB2YXIgeSA9IGQuZ2V0VVRDRnVsbFllYXIoKTtcbiAgdmFyIG0gPSBkLmdldFVUQ01pbGxpc2Vjb25kcygpO1xuICB2YXIgcyA9IHkgPCAwID8gJy0nIDogeSA+IDk5OTkgPyAnKycgOiAnJztcbiAgcmV0dXJuIHMgKyAoJzAwMDAwJyArIE1hdGguYWJzKHkpKS5zbGljZShzID8gLTYgOiAtNCkgK1xuICAgICctJyArIGx6KGQuZ2V0VVRDTW9udGgoKSArIDEpICsgJy0nICsgbHooZC5nZXRVVENEYXRlKCkpICtcbiAgICAnVCcgKyBseihkLmdldFVUQ0hvdXJzKCkpICsgJzonICsgbHooZC5nZXRVVENNaW51dGVzKCkpICtcbiAgICAnOicgKyBseihkLmdldFVUQ1NlY29uZHMoKSkgKyAnLicgKyAobSA+IDk5ID8gbSA6ICcwJyArIGx6KG0pKSArICdaJztcbn0gOiAkdG9JU09TdHJpbmc7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuL19hbi1vYmplY3QnKTtcbnZhciB0b1ByaW1pdGl2ZSA9IHJlcXVpcmUoJy4vX3RvLXByaW1pdGl2ZScpO1xudmFyIE5VTUJFUiA9ICdudW1iZXInO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChoaW50KSB7XG4gIGlmIChoaW50ICE9PSAnc3RyaW5nJyAmJiBoaW50ICE9PSBOVU1CRVIgJiYgaGludCAhPT0gJ2RlZmF1bHQnKSB0aHJvdyBUeXBlRXJyb3IoJ0luY29ycmVjdCBoaW50Jyk7XG4gIHJldHVybiB0b1ByaW1pdGl2ZShhbk9iamVjdCh0aGlzKSwgaGludCAhPSBOVU1CRVIpO1xufTtcbiIsIi8vIDcuMi4xIFJlcXVpcmVPYmplY3RDb2VyY2libGUoYXJndW1lbnQpXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICBpZiAoaXQgPT0gdW5kZWZpbmVkKSB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjYWxsIG1ldGhvZCBvbiAgXCIgKyBpdCk7XG4gIHJldHVybiBpdDtcbn07XG4iLCIvLyBUaGFuaydzIElFOCBmb3IgaGlzIGZ1bm55IGRlZmluZVByb3BlcnR5XG5tb2R1bGUuZXhwb3J0cyA9ICFyZXF1aXJlKCcuL19mYWlscycpKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2EnLCB7IGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gNzsgfSB9KS5hICE9IDc7XG59KTtcbiIsInZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xudmFyIGRvY3VtZW50ID0gcmVxdWlyZSgnLi9fZ2xvYmFsJykuZG9jdW1lbnQ7XG4vLyB0eXBlb2YgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCBpcyAnb2JqZWN0JyBpbiBvbGQgSUVcbnZhciBpcyA9IGlzT2JqZWN0KGRvY3VtZW50KSAmJiBpc09iamVjdChkb2N1bWVudC5jcmVhdGVFbGVtZW50KTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBpcyA/IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoaXQpIDoge307XG59O1xuIiwiLy8gSUUgOC0gZG9uJ3QgZW51bSBidWcga2V5c1xubW9kdWxlLmV4cG9ydHMgPSAoXG4gICdjb25zdHJ1Y3RvcixoYXNPd25Qcm9wZXJ0eSxpc1Byb3RvdHlwZU9mLHByb3BlcnR5SXNFbnVtZXJhYmxlLHRvTG9jYWxlU3RyaW5nLHRvU3RyaW5nLHZhbHVlT2YnXG4pLnNwbGl0KCcsJyk7XG4iLCIvLyBhbGwgZW51bWVyYWJsZSBvYmplY3Qga2V5cywgaW5jbHVkZXMgc3ltYm9sc1xudmFyIGdldEtleXMgPSByZXF1aXJlKCcuL19vYmplY3Qta2V5cycpO1xudmFyIGdPUFMgPSByZXF1aXJlKCcuL19vYmplY3QtZ29wcycpO1xudmFyIHBJRSA9IHJlcXVpcmUoJy4vX29iamVjdC1waWUnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHZhciByZXN1bHQgPSBnZXRLZXlzKGl0KTtcbiAgdmFyIGdldFN5bWJvbHMgPSBnT1BTLmY7XG4gIGlmIChnZXRTeW1ib2xzKSB7XG4gICAgdmFyIHN5bWJvbHMgPSBnZXRTeW1ib2xzKGl0KTtcbiAgICB2YXIgaXNFbnVtID0gcElFLmY7XG4gICAgdmFyIGkgPSAwO1xuICAgIHZhciBrZXk7XG4gICAgd2hpbGUgKHN5bWJvbHMubGVuZ3RoID4gaSkgaWYgKGlzRW51bS5jYWxsKGl0LCBrZXkgPSBzeW1ib2xzW2krK10pKSByZXN1bHQucHVzaChrZXkpO1xuICB9IHJldHVybiByZXN1bHQ7XG59O1xuIiwidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIGNvcmUgPSByZXF1aXJlKCcuL19jb3JlJyk7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4vX2hpZGUnKTtcbnZhciByZWRlZmluZSA9IHJlcXVpcmUoJy4vX3JlZGVmaW5lJyk7XG52YXIgY3R4ID0gcmVxdWlyZSgnLi9fY3R4Jyk7XG52YXIgUFJPVE9UWVBFID0gJ3Byb3RvdHlwZSc7XG5cbnZhciAkZXhwb3J0ID0gZnVuY3Rpb24gKHR5cGUsIG5hbWUsIHNvdXJjZSkge1xuICB2YXIgSVNfRk9SQ0VEID0gdHlwZSAmICRleHBvcnQuRjtcbiAgdmFyIElTX0dMT0JBTCA9IHR5cGUgJiAkZXhwb3J0Lkc7XG4gIHZhciBJU19TVEFUSUMgPSB0eXBlICYgJGV4cG9ydC5TO1xuICB2YXIgSVNfUFJPVE8gPSB0eXBlICYgJGV4cG9ydC5QO1xuICB2YXIgSVNfQklORCA9IHR5cGUgJiAkZXhwb3J0LkI7XG4gIHZhciB0YXJnZXQgPSBJU19HTE9CQUwgPyBnbG9iYWwgOiBJU19TVEFUSUMgPyBnbG9iYWxbbmFtZV0gfHwgKGdsb2JhbFtuYW1lXSA9IHt9KSA6IChnbG9iYWxbbmFtZV0gfHwge30pW1BST1RPVFlQRV07XG4gIHZhciBleHBvcnRzID0gSVNfR0xPQkFMID8gY29yZSA6IGNvcmVbbmFtZV0gfHwgKGNvcmVbbmFtZV0gPSB7fSk7XG4gIHZhciBleHBQcm90byA9IGV4cG9ydHNbUFJPVE9UWVBFXSB8fCAoZXhwb3J0c1tQUk9UT1RZUEVdID0ge30pO1xuICB2YXIga2V5LCBvd24sIG91dCwgZXhwO1xuICBpZiAoSVNfR0xPQkFMKSBzb3VyY2UgPSBuYW1lO1xuICBmb3IgKGtleSBpbiBzb3VyY2UpIHtcbiAgICAvLyBjb250YWlucyBpbiBuYXRpdmVcbiAgICBvd24gPSAhSVNfRk9SQ0VEICYmIHRhcmdldCAmJiB0YXJnZXRba2V5XSAhPT0gdW5kZWZpbmVkO1xuICAgIC8vIGV4cG9ydCBuYXRpdmUgb3IgcGFzc2VkXG4gICAgb3V0ID0gKG93biA/IHRhcmdldCA6IHNvdXJjZSlba2V5XTtcbiAgICAvLyBiaW5kIHRpbWVycyB0byBnbG9iYWwgZm9yIGNhbGwgZnJvbSBleHBvcnQgY29udGV4dFxuICAgIGV4cCA9IElTX0JJTkQgJiYgb3duID8gY3R4KG91dCwgZ2xvYmFsKSA6IElTX1BST1RPICYmIHR5cGVvZiBvdXQgPT0gJ2Z1bmN0aW9uJyA/IGN0eChGdW5jdGlvbi5jYWxsLCBvdXQpIDogb3V0O1xuICAgIC8vIGV4dGVuZCBnbG9iYWxcbiAgICBpZiAodGFyZ2V0KSByZWRlZmluZSh0YXJnZXQsIGtleSwgb3V0LCB0eXBlICYgJGV4cG9ydC5VKTtcbiAgICAvLyBleHBvcnRcbiAgICBpZiAoZXhwb3J0c1trZXldICE9IG91dCkgaGlkZShleHBvcnRzLCBrZXksIGV4cCk7XG4gICAgaWYgKElTX1BST1RPICYmIGV4cFByb3RvW2tleV0gIT0gb3V0KSBleHBQcm90b1trZXldID0gb3V0O1xuICB9XG59O1xuZ2xvYmFsLmNvcmUgPSBjb3JlO1xuLy8gdHlwZSBiaXRtYXBcbiRleHBvcnQuRiA9IDE7ICAgLy8gZm9yY2VkXG4kZXhwb3J0LkcgPSAyOyAgIC8vIGdsb2JhbFxuJGV4cG9ydC5TID0gNDsgICAvLyBzdGF0aWNcbiRleHBvcnQuUCA9IDg7ICAgLy8gcHJvdG9cbiRleHBvcnQuQiA9IDE2OyAgLy8gYmluZFxuJGV4cG9ydC5XID0gMzI7ICAvLyB3cmFwXG4kZXhwb3J0LlUgPSA2NDsgIC8vIHNhZmVcbiRleHBvcnQuUiA9IDEyODsgLy8gcmVhbCBwcm90byBtZXRob2QgZm9yIGBsaWJyYXJ5YFxubW9kdWxlLmV4cG9ydHMgPSAkZXhwb3J0O1xuIiwidmFyIE1BVENIID0gcmVxdWlyZSgnLi9fd2tzJykoJ21hdGNoJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChLRVkpIHtcbiAgdmFyIHJlID0gLy4vO1xuICB0cnkge1xuICAgICcvLi8nW0tFWV0ocmUpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJlW01BVENIXSA9IGZhbHNlO1xuICAgICAgcmV0dXJuICEnLy4vJ1tLRVldKHJlKTtcbiAgICB9IGNhdGNoIChmKSB7IC8qIGVtcHR5ICovIH1cbiAgfSByZXR1cm4gdHJ1ZTtcbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChleGVjKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuICEhZXhlYygpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn07XG4iLCIndXNlIHN0cmljdCc7XG5yZXF1aXJlKCcuL2VzNi5yZWdleHAuZXhlYycpO1xudmFyIHJlZGVmaW5lID0gcmVxdWlyZSgnLi9fcmVkZWZpbmUnKTtcbnZhciBoaWRlID0gcmVxdWlyZSgnLi9faGlkZScpO1xudmFyIGZhaWxzID0gcmVxdWlyZSgnLi9fZmFpbHMnKTtcbnZhciBkZWZpbmVkID0gcmVxdWlyZSgnLi9fZGVmaW5lZCcpO1xudmFyIHdrcyA9IHJlcXVpcmUoJy4vX3drcycpO1xudmFyIHJlZ2V4cEV4ZWMgPSByZXF1aXJlKCcuL19yZWdleHAtZXhlYycpO1xuXG52YXIgU1BFQ0lFUyA9IHdrcygnc3BlY2llcycpO1xuXG52YXIgUkVQTEFDRV9TVVBQT1JUU19OQU1FRF9HUk9VUFMgPSAhZmFpbHMoZnVuY3Rpb24gKCkge1xuICAvLyAjcmVwbGFjZSBuZWVkcyBidWlsdC1pbiBzdXBwb3J0IGZvciBuYW1lZCBncm91cHMuXG4gIC8vICNtYXRjaCB3b3JrcyBmaW5lIGJlY2F1c2UgaXQganVzdCByZXR1cm4gdGhlIGV4ZWMgcmVzdWx0cywgZXZlbiBpZiBpdCBoYXNcbiAgLy8gYSBcImdyb3BzXCIgcHJvcGVydHkuXG4gIHZhciByZSA9IC8uLztcbiAgcmUuZXhlYyA9IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgcmVzdWx0ID0gW107XG4gICAgcmVzdWx0Lmdyb3VwcyA9IHsgYTogJzcnIH07XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfTtcbiAgcmV0dXJuICcnLnJlcGxhY2UocmUsICckPGE+JykgIT09ICc3Jztcbn0pO1xuXG52YXIgU1BMSVRfV09SS1NfV0lUSF9PVkVSV1JJVFRFTl9FWEVDID0gKGZ1bmN0aW9uICgpIHtcbiAgLy8gQ2hyb21lIDUxIGhhcyBhIGJ1Z2d5IFwic3BsaXRcIiBpbXBsZW1lbnRhdGlvbiB3aGVuIFJlZ0V4cCNleGVjICE9PSBuYXRpdmVFeGVjXG4gIHZhciByZSA9IC8oPzopLztcbiAgdmFyIG9yaWdpbmFsRXhlYyA9IHJlLmV4ZWM7XG4gIHJlLmV4ZWMgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBvcmlnaW5hbEV4ZWMuYXBwbHkodGhpcywgYXJndW1lbnRzKTsgfTtcbiAgdmFyIHJlc3VsdCA9ICdhYicuc3BsaXQocmUpO1xuICByZXR1cm4gcmVzdWx0Lmxlbmd0aCA9PT0gMiAmJiByZXN1bHRbMF0gPT09ICdhJyAmJiByZXN1bHRbMV0gPT09ICdiJztcbn0pKCk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKEtFWSwgbGVuZ3RoLCBleGVjKSB7XG4gIHZhciBTWU1CT0wgPSB3a3MoS0VZKTtcblxuICB2YXIgREVMRUdBVEVTX1RPX1NZTUJPTCA9ICFmYWlscyhmdW5jdGlvbiAoKSB7XG4gICAgLy8gU3RyaW5nIG1ldGhvZHMgY2FsbCBzeW1ib2wtbmFtZWQgUmVnRXAgbWV0aG9kc1xuICAgIHZhciBPID0ge307XG4gICAgT1tTWU1CT0xdID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gNzsgfTtcbiAgICByZXR1cm4gJydbS0VZXShPKSAhPSA3O1xuICB9KTtcblxuICB2YXIgREVMRUdBVEVTX1RPX0VYRUMgPSBERUxFR0FURVNfVE9fU1lNQk9MID8gIWZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICAvLyBTeW1ib2wtbmFtZWQgUmVnRXhwIG1ldGhvZHMgY2FsbCAuZXhlY1xuICAgIHZhciBleGVjQ2FsbGVkID0gZmFsc2U7XG4gICAgdmFyIHJlID0gL2EvO1xuICAgIHJlLmV4ZWMgPSBmdW5jdGlvbiAoKSB7IGV4ZWNDYWxsZWQgPSB0cnVlOyByZXR1cm4gbnVsbDsgfTtcbiAgICBpZiAoS0VZID09PSAnc3BsaXQnKSB7XG4gICAgICAvLyBSZWdFeHBbQEBzcGxpdF0gZG9lc24ndCBjYWxsIHRoZSByZWdleCdzIGV4ZWMgbWV0aG9kLCBidXQgZmlyc3QgY3JlYXRlc1xuICAgICAgLy8gYSBuZXcgb25lLiBXZSBuZWVkIHRvIHJldHVybiB0aGUgcGF0Y2hlZCByZWdleCB3aGVuIGNyZWF0aW5nIHRoZSBuZXcgb25lLlxuICAgICAgcmUuY29uc3RydWN0b3IgPSB7fTtcbiAgICAgIHJlLmNvbnN0cnVjdG9yW1NQRUNJRVNdID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gcmU7IH07XG4gICAgfVxuICAgIHJlW1NZTUJPTF0oJycpO1xuICAgIHJldHVybiAhZXhlY0NhbGxlZDtcbiAgfSkgOiB1bmRlZmluZWQ7XG5cbiAgaWYgKFxuICAgICFERUxFR0FURVNfVE9fU1lNQk9MIHx8XG4gICAgIURFTEVHQVRFU19UT19FWEVDIHx8XG4gICAgKEtFWSA9PT0gJ3JlcGxhY2UnICYmICFSRVBMQUNFX1NVUFBPUlRTX05BTUVEX0dST1VQUykgfHxcbiAgICAoS0VZID09PSAnc3BsaXQnICYmICFTUExJVF9XT1JLU19XSVRIX09WRVJXUklUVEVOX0VYRUMpXG4gICkge1xuICAgIHZhciBuYXRpdmVSZWdFeHBNZXRob2QgPSAvLi9bU1lNQk9MXTtcbiAgICB2YXIgZm5zID0gZXhlYyhcbiAgICAgIGRlZmluZWQsXG4gICAgICBTWU1CT0wsXG4gICAgICAnJ1tLRVldLFxuICAgICAgZnVuY3Rpb24gbWF5YmVDYWxsTmF0aXZlKG5hdGl2ZU1ldGhvZCwgcmVnZXhwLCBzdHIsIGFyZzIsIGZvcmNlU3RyaW5nTWV0aG9kKSB7XG4gICAgICAgIGlmIChyZWdleHAuZXhlYyA9PT0gcmVnZXhwRXhlYykge1xuICAgICAgICAgIGlmIChERUxFR0FURVNfVE9fU1lNQk9MICYmICFmb3JjZVN0cmluZ01ldGhvZCkge1xuICAgICAgICAgICAgLy8gVGhlIG5hdGl2ZSBTdHJpbmcgbWV0aG9kIGFscmVhZHkgZGVsZWdhdGVzIHRvIEBAbWV0aG9kICh0aGlzXG4gICAgICAgICAgICAvLyBwb2x5ZmlsbGVkIGZ1bmN0aW9uKSwgbGVhc2luZyB0byBpbmZpbml0ZSByZWN1cnNpb24uXG4gICAgICAgICAgICAvLyBXZSBhdm9pZCBpdCBieSBkaXJlY3RseSBjYWxsaW5nIHRoZSBuYXRpdmUgQEBtZXRob2QgbWV0aG9kLlxuICAgICAgICAgICAgcmV0dXJuIHsgZG9uZTogdHJ1ZSwgdmFsdWU6IG5hdGl2ZVJlZ0V4cE1ldGhvZC5jYWxsKHJlZ2V4cCwgc3RyLCBhcmcyKSB9O1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4geyBkb25lOiB0cnVlLCB2YWx1ZTogbmF0aXZlTWV0aG9kLmNhbGwoc3RyLCByZWdleHAsIGFyZzIpIH07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgZG9uZTogZmFsc2UgfTtcbiAgICAgIH1cbiAgICApO1xuICAgIHZhciBzdHJmbiA9IGZuc1swXTtcbiAgICB2YXIgcnhmbiA9IGZuc1sxXTtcblxuICAgIHJlZGVmaW5lKFN0cmluZy5wcm90b3R5cGUsIEtFWSwgc3RyZm4pO1xuICAgIGhpZGUoUmVnRXhwLnByb3RvdHlwZSwgU1lNQk9MLCBsZW5ndGggPT0gMlxuICAgICAgLy8gMjEuMi41LjggUmVnRXhwLnByb3RvdHlwZVtAQHJlcGxhY2VdKHN0cmluZywgcmVwbGFjZVZhbHVlKVxuICAgICAgLy8gMjEuMi41LjExIFJlZ0V4cC5wcm90b3R5cGVbQEBzcGxpdF0oc3RyaW5nLCBsaW1pdClcbiAgICAgID8gZnVuY3Rpb24gKHN0cmluZywgYXJnKSB7IHJldHVybiByeGZuLmNhbGwoc3RyaW5nLCB0aGlzLCBhcmcpOyB9XG4gICAgICAvLyAyMS4yLjUuNiBSZWdFeHAucHJvdG90eXBlW0BAbWF0Y2hdKHN0cmluZylcbiAgICAgIC8vIDIxLjIuNS45IFJlZ0V4cC5wcm90b3R5cGVbQEBzZWFyY2hdKHN0cmluZylcbiAgICAgIDogZnVuY3Rpb24gKHN0cmluZykgeyByZXR1cm4gcnhmbi5jYWxsKHN0cmluZywgdGhpcyk7IH1cbiAgICApO1xuICB9XG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xuLy8gMjEuMi41LjMgZ2V0IFJlZ0V4cC5wcm90b3R5cGUuZmxhZ3NcbnZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4vX2FuLW9iamVjdCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciB0aGF0ID0gYW5PYmplY3QodGhpcyk7XG4gIHZhciByZXN1bHQgPSAnJztcbiAgaWYgKHRoYXQuZ2xvYmFsKSByZXN1bHQgKz0gJ2cnO1xuICBpZiAodGhhdC5pZ25vcmVDYXNlKSByZXN1bHQgKz0gJ2knO1xuICBpZiAodGhhdC5tdWx0aWxpbmUpIHJlc3VsdCArPSAnbSc7XG4gIGlmICh0aGF0LnVuaWNvZGUpIHJlc3VsdCArPSAndSc7XG4gIGlmICh0aGF0LnN0aWNreSkgcmVzdWx0ICs9ICd5JztcbiAgcmV0dXJuIHJlc3VsdDtcbn07XG4iLCIndXNlIHN0cmljdCc7XG4vLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL3Byb3Bvc2FsLWZsYXRNYXAvI3NlYy1GbGF0dGVuSW50b0FycmF5XG52YXIgaXNBcnJheSA9IHJlcXVpcmUoJy4vX2lzLWFycmF5Jyk7XG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xudmFyIGN0eCA9IHJlcXVpcmUoJy4vX2N0eCcpO1xudmFyIElTX0NPTkNBVF9TUFJFQURBQkxFID0gcmVxdWlyZSgnLi9fd2tzJykoJ2lzQ29uY2F0U3ByZWFkYWJsZScpO1xuXG5mdW5jdGlvbiBmbGF0dGVuSW50b0FycmF5KHRhcmdldCwgb3JpZ2luYWwsIHNvdXJjZSwgc291cmNlTGVuLCBzdGFydCwgZGVwdGgsIG1hcHBlciwgdGhpc0FyZykge1xuICB2YXIgdGFyZ2V0SW5kZXggPSBzdGFydDtcbiAgdmFyIHNvdXJjZUluZGV4ID0gMDtcbiAgdmFyIG1hcEZuID0gbWFwcGVyID8gY3R4KG1hcHBlciwgdGhpc0FyZywgMykgOiBmYWxzZTtcbiAgdmFyIGVsZW1lbnQsIHNwcmVhZGFibGU7XG5cbiAgd2hpbGUgKHNvdXJjZUluZGV4IDwgc291cmNlTGVuKSB7XG4gICAgaWYgKHNvdXJjZUluZGV4IGluIHNvdXJjZSkge1xuICAgICAgZWxlbWVudCA9IG1hcEZuID8gbWFwRm4oc291cmNlW3NvdXJjZUluZGV4XSwgc291cmNlSW5kZXgsIG9yaWdpbmFsKSA6IHNvdXJjZVtzb3VyY2VJbmRleF07XG5cbiAgICAgIHNwcmVhZGFibGUgPSBmYWxzZTtcbiAgICAgIGlmIChpc09iamVjdChlbGVtZW50KSkge1xuICAgICAgICBzcHJlYWRhYmxlID0gZWxlbWVudFtJU19DT05DQVRfU1BSRUFEQUJMRV07XG4gICAgICAgIHNwcmVhZGFibGUgPSBzcHJlYWRhYmxlICE9PSB1bmRlZmluZWQgPyAhIXNwcmVhZGFibGUgOiBpc0FycmF5KGVsZW1lbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc3ByZWFkYWJsZSAmJiBkZXB0aCA+IDApIHtcbiAgICAgICAgdGFyZ2V0SW5kZXggPSBmbGF0dGVuSW50b0FycmF5KHRhcmdldCwgb3JpZ2luYWwsIGVsZW1lbnQsIHRvTGVuZ3RoKGVsZW1lbnQubGVuZ3RoKSwgdGFyZ2V0SW5kZXgsIGRlcHRoIC0gMSkgLSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRhcmdldEluZGV4ID49IDB4MWZmZmZmZmZmZmZmZmYpIHRocm93IFR5cGVFcnJvcigpO1xuICAgICAgICB0YXJnZXRbdGFyZ2V0SW5kZXhdID0gZWxlbWVudDtcbiAgICAgIH1cblxuICAgICAgdGFyZ2V0SW5kZXgrKztcbiAgICB9XG4gICAgc291cmNlSW5kZXgrKztcbiAgfVxuICByZXR1cm4gdGFyZ2V0SW5kZXg7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gZmxhdHRlbkludG9BcnJheTtcbiIsInZhciBjdHggPSByZXF1aXJlKCcuL19jdHgnKTtcbnZhciBjYWxsID0gcmVxdWlyZSgnLi9faXRlci1jYWxsJyk7XG52YXIgaXNBcnJheUl0ZXIgPSByZXF1aXJlKCcuL19pcy1hcnJheS1pdGVyJyk7XG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuL19hbi1vYmplY3QnKTtcbnZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xudmFyIGdldEl0ZXJGbiA9IHJlcXVpcmUoJy4vY29yZS5nZXQtaXRlcmF0b3ItbWV0aG9kJyk7XG52YXIgQlJFQUsgPSB7fTtcbnZhciBSRVRVUk4gPSB7fTtcbnZhciBleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXRlcmFibGUsIGVudHJpZXMsIGZuLCB0aGF0LCBJVEVSQVRPUikge1xuICB2YXIgaXRlckZuID0gSVRFUkFUT1IgPyBmdW5jdGlvbiAoKSB7IHJldHVybiBpdGVyYWJsZTsgfSA6IGdldEl0ZXJGbihpdGVyYWJsZSk7XG4gIHZhciBmID0gY3R4KGZuLCB0aGF0LCBlbnRyaWVzID8gMiA6IDEpO1xuICB2YXIgaW5kZXggPSAwO1xuICB2YXIgbGVuZ3RoLCBzdGVwLCBpdGVyYXRvciwgcmVzdWx0O1xuICBpZiAodHlwZW9mIGl0ZXJGbiAhPSAnZnVuY3Rpb24nKSB0aHJvdyBUeXBlRXJyb3IoaXRlcmFibGUgKyAnIGlzIG5vdCBpdGVyYWJsZSEnKTtcbiAgLy8gZmFzdCBjYXNlIGZvciBhcnJheXMgd2l0aCBkZWZhdWx0IGl0ZXJhdG9yXG4gIGlmIChpc0FycmF5SXRlcihpdGVyRm4pKSBmb3IgKGxlbmd0aCA9IHRvTGVuZ3RoKGl0ZXJhYmxlLmxlbmd0aCk7IGxlbmd0aCA+IGluZGV4OyBpbmRleCsrKSB7XG4gICAgcmVzdWx0ID0gZW50cmllcyA/IGYoYW5PYmplY3Qoc3RlcCA9IGl0ZXJhYmxlW2luZGV4XSlbMF0sIHN0ZXBbMV0pIDogZihpdGVyYWJsZVtpbmRleF0pO1xuICAgIGlmIChyZXN1bHQgPT09IEJSRUFLIHx8IHJlc3VsdCA9PT0gUkVUVVJOKSByZXR1cm4gcmVzdWx0O1xuICB9IGVsc2UgZm9yIChpdGVyYXRvciA9IGl0ZXJGbi5jYWxsKGl0ZXJhYmxlKTsgIShzdGVwID0gaXRlcmF0b3IubmV4dCgpKS5kb25lOykge1xuICAgIHJlc3VsdCA9IGNhbGwoaXRlcmF0b3IsIGYsIHN0ZXAudmFsdWUsIGVudHJpZXMpO1xuICAgIGlmIChyZXN1bHQgPT09IEJSRUFLIHx8IHJlc3VsdCA9PT0gUkVUVVJOKSByZXR1cm4gcmVzdWx0O1xuICB9XG59O1xuZXhwb3J0cy5CUkVBSyA9IEJSRUFLO1xuZXhwb3J0cy5SRVRVUk4gPSBSRVRVUk47XG4iLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX3NoYXJlZCcpKCduYXRpdmUtZnVuY3Rpb24tdG8tc3RyaW5nJywgRnVuY3Rpb24udG9TdHJpbmcpO1xuIiwiLy8gaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMvaXNzdWVzLzg2I2lzc3VlY29tbWVudC0xMTU3NTkwMjhcbnZhciBnbG9iYWwgPSBtb2R1bGUuZXhwb3J0cyA9IHR5cGVvZiB3aW5kb3cgIT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lk1hdGggPT0gTWF0aFxuICA/IHdpbmRvdyA6IHR5cGVvZiBzZWxmICE9ICd1bmRlZmluZWQnICYmIHNlbGYuTWF0aCA9PSBNYXRoID8gc2VsZlxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LWZ1bmNcbiAgOiBGdW5jdGlvbigncmV0dXJuIHRoaXMnKSgpO1xuaWYgKHR5cGVvZiBfX2cgPT0gJ251bWJlcicpIF9fZyA9IGdsb2JhbDsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bmRlZlxuIiwidmFyIGhhc093blByb3BlcnR5ID0ge30uaGFzT3duUHJvcGVydHk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCwga2V5KSB7XG4gIHJldHVybiBoYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xufTtcbiIsInZhciBkUCA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpO1xudmFyIGNyZWF0ZURlc2MgPSByZXF1aXJlKCcuL19wcm9wZXJ0eS1kZXNjJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgPyBmdW5jdGlvbiAob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIHJldHVybiBkUC5mKG9iamVjdCwga2V5LCBjcmVhdGVEZXNjKDEsIHZhbHVlKSk7XG59IDogZnVuY3Rpb24gKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICBvYmplY3Rba2V5XSA9IHZhbHVlO1xuICByZXR1cm4gb2JqZWN0O1xufTtcbiIsInZhciBkb2N1bWVudCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpLmRvY3VtZW50O1xubW9kdWxlLmV4cG9ydHMgPSBkb2N1bWVudCAmJiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4iLCJtb2R1bGUuZXhwb3J0cyA9ICFyZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpICYmICFyZXF1aXJlKCcuL19mYWlscycpKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyZXF1aXJlKCcuL19kb20tY3JlYXRlJykoJ2RpdicpLCAnYScsIHsgZ2V0OiBmdW5jdGlvbiAoKSB7IHJldHVybiA3OyB9IH0pLmEgIT0gNztcbn0pO1xuIiwidmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG52YXIgc2V0UHJvdG90eXBlT2YgPSByZXF1aXJlKCcuL19zZXQtcHJvdG8nKS5zZXQ7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICh0aGF0LCB0YXJnZXQsIEMpIHtcbiAgdmFyIFMgPSB0YXJnZXQuY29uc3RydWN0b3I7XG4gIHZhciBQO1xuICBpZiAoUyAhPT0gQyAmJiB0eXBlb2YgUyA9PSAnZnVuY3Rpb24nICYmIChQID0gUy5wcm90b3R5cGUpICE9PSBDLnByb3RvdHlwZSAmJiBpc09iamVjdChQKSAmJiBzZXRQcm90b3R5cGVPZikge1xuICAgIHNldFByb3RvdHlwZU9mKHRoYXQsIFApO1xuICB9IHJldHVybiB0aGF0O1xufTtcbiIsIi8vIGZhc3QgYXBwbHksIGh0dHA6Ly9qc3BlcmYubG5raXQuY29tL2Zhc3QtYXBwbHkvNVxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZm4sIGFyZ3MsIHRoYXQpIHtcbiAgdmFyIHVuID0gdGhhdCA9PT0gdW5kZWZpbmVkO1xuICBzd2l0Y2ggKGFyZ3MubGVuZ3RoKSB7XG4gICAgY2FzZSAwOiByZXR1cm4gdW4gPyBmbigpXG4gICAgICAgICAgICAgICAgICAgICAgOiBmbi5jYWxsKHRoYXQpO1xuICAgIGNhc2UgMTogcmV0dXJuIHVuID8gZm4oYXJnc1swXSlcbiAgICAgICAgICAgICAgICAgICAgICA6IGZuLmNhbGwodGhhdCwgYXJnc1swXSk7XG4gICAgY2FzZSAyOiByZXR1cm4gdW4gPyBmbihhcmdzWzBdLCBhcmdzWzFdKVxuICAgICAgICAgICAgICAgICAgICAgIDogZm4uY2FsbCh0aGF0LCBhcmdzWzBdLCBhcmdzWzFdKTtcbiAgICBjYXNlIDM6IHJldHVybiB1biA/IGZuKGFyZ3NbMF0sIGFyZ3NbMV0sIGFyZ3NbMl0pXG4gICAgICAgICAgICAgICAgICAgICAgOiBmbi5jYWxsKHRoYXQsIGFyZ3NbMF0sIGFyZ3NbMV0sIGFyZ3NbMl0pO1xuICAgIGNhc2UgNDogcmV0dXJuIHVuID8gZm4oYXJnc1swXSwgYXJnc1sxXSwgYXJnc1syXSwgYXJnc1szXSlcbiAgICAgICAgICAgICAgICAgICAgICA6IGZuLmNhbGwodGhhdCwgYXJnc1swXSwgYXJnc1sxXSwgYXJnc1syXSwgYXJnc1szXSk7XG4gIH0gcmV0dXJuIGZuLmFwcGx5KHRoYXQsIGFyZ3MpO1xufTtcbiIsIi8vIGZhbGxiYWNrIGZvciBub24tYXJyYXktbGlrZSBFUzMgYW5kIG5vbi1lbnVtZXJhYmxlIG9sZCBWOCBzdHJpbmdzXG52YXIgY29mID0gcmVxdWlyZSgnLi9fY29mJyk7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcHJvdG90eXBlLWJ1aWx0aW5zXG5tb2R1bGUuZXhwb3J0cyA9IE9iamVjdCgneicpLnByb3BlcnR5SXNFbnVtZXJhYmxlKDApID8gT2JqZWN0IDogZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBjb2YoaXQpID09ICdTdHJpbmcnID8gaXQuc3BsaXQoJycpIDogT2JqZWN0KGl0KTtcbn07XG4iLCIvLyBjaGVjayBvbiBkZWZhdWx0IEFycmF5IGl0ZXJhdG9yXG52YXIgSXRlcmF0b3JzID0gcmVxdWlyZSgnLi9faXRlcmF0b3JzJyk7XG52YXIgSVRFUkFUT1IgPSByZXF1aXJlKCcuL193a3MnKSgnaXRlcmF0b3InKTtcbnZhciBBcnJheVByb3RvID0gQXJyYXkucHJvdG90eXBlO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gaXQgIT09IHVuZGVmaW5lZCAmJiAoSXRlcmF0b3JzLkFycmF5ID09PSBpdCB8fCBBcnJheVByb3RvW0lURVJBVE9SXSA9PT0gaXQpO1xufTtcbiIsIi8vIDcuMi4yIElzQXJyYXkoYXJndW1lbnQpXG52YXIgY29mID0gcmVxdWlyZSgnLi9fY29mJyk7XG5tb2R1bGUuZXhwb3J0cyA9IEFycmF5LmlzQXJyYXkgfHwgZnVuY3Rpb24gaXNBcnJheShhcmcpIHtcbiAgcmV0dXJuIGNvZihhcmcpID09ICdBcnJheSc7XG59O1xuIiwiLy8gMjAuMS4yLjMgTnVtYmVyLmlzSW50ZWdlcihudW1iZXIpXG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBmbG9vciA9IE1hdGguZmxvb3I7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGlzSW50ZWdlcihpdCkge1xuICByZXR1cm4gIWlzT2JqZWN0KGl0KSAmJiBpc0Zpbml0ZShpdCkgJiYgZmxvb3IoaXQpID09PSBpdDtcbn07XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gdHlwZW9mIGl0ID09PSAnb2JqZWN0JyA/IGl0ICE9PSBudWxsIDogdHlwZW9mIGl0ID09PSAnZnVuY3Rpb24nO1xufTtcbiIsIi8vIDcuMi44IElzUmVnRXhwKGFyZ3VtZW50KVxudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG52YXIgY29mID0gcmVxdWlyZSgnLi9fY29mJyk7XG52YXIgTUFUQ0ggPSByZXF1aXJlKCcuL193a3MnKSgnbWF0Y2gnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHZhciBpc1JlZ0V4cDtcbiAgcmV0dXJuIGlzT2JqZWN0KGl0KSAmJiAoKGlzUmVnRXhwID0gaXRbTUFUQ0hdKSAhPT0gdW5kZWZpbmVkID8gISFpc1JlZ0V4cCA6IGNvZihpdCkgPT0gJ1JlZ0V4cCcpO1xufTtcbiIsIi8vIGNhbGwgc29tZXRoaW5nIG9uIGl0ZXJhdG9yIHN0ZXAgd2l0aCBzYWZlIGNsb3Npbmcgb24gZXJyb3JcbnZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4vX2FuLW9iamVjdCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXRlcmF0b3IsIGZuLCB2YWx1ZSwgZW50cmllcykge1xuICB0cnkge1xuICAgIHJldHVybiBlbnRyaWVzID8gZm4oYW5PYmplY3QodmFsdWUpWzBdLCB2YWx1ZVsxXSkgOiBmbih2YWx1ZSk7XG4gIC8vIDcuNC42IEl0ZXJhdG9yQ2xvc2UoaXRlcmF0b3IsIGNvbXBsZXRpb24pXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICB2YXIgcmV0ID0gaXRlcmF0b3JbJ3JldHVybiddO1xuICAgIGlmIChyZXQgIT09IHVuZGVmaW5lZCkgYW5PYmplY3QocmV0LmNhbGwoaXRlcmF0b3IpKTtcbiAgICB0aHJvdyBlO1xuICB9XG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyIGNyZWF0ZSA9IHJlcXVpcmUoJy4vX29iamVjdC1jcmVhdGUnKTtcbnZhciBkZXNjcmlwdG9yID0gcmVxdWlyZSgnLi9fcHJvcGVydHktZGVzYycpO1xudmFyIHNldFRvU3RyaW5nVGFnID0gcmVxdWlyZSgnLi9fc2V0LXRvLXN0cmluZy10YWcnKTtcbnZhciBJdGVyYXRvclByb3RvdHlwZSA9IHt9O1xuXG4vLyAyNS4xLjIuMS4xICVJdGVyYXRvclByb3RvdHlwZSVbQEBpdGVyYXRvcl0oKVxucmVxdWlyZSgnLi9faGlkZScpKEl0ZXJhdG9yUHJvdG90eXBlLCByZXF1aXJlKCcuL193a3MnKSgnaXRlcmF0b3InKSwgZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfSk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKENvbnN0cnVjdG9yLCBOQU1FLCBuZXh0KSB7XG4gIENvbnN0cnVjdG9yLnByb3RvdHlwZSA9IGNyZWF0ZShJdGVyYXRvclByb3RvdHlwZSwgeyBuZXh0OiBkZXNjcmlwdG9yKDEsIG5leHQpIH0pO1xuICBzZXRUb1N0cmluZ1RhZyhDb25zdHJ1Y3RvciwgTkFNRSArICcgSXRlcmF0b3InKTtcbn07XG4iLCIndXNlIHN0cmljdCc7XG52YXIgTElCUkFSWSA9IHJlcXVpcmUoJy4vX2xpYnJhcnknKTtcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgcmVkZWZpbmUgPSByZXF1aXJlKCcuL19yZWRlZmluZScpO1xudmFyIGhpZGUgPSByZXF1aXJlKCcuL19oaWRlJyk7XG52YXIgSXRlcmF0b3JzID0gcmVxdWlyZSgnLi9faXRlcmF0b3JzJyk7XG52YXIgJGl0ZXJDcmVhdGUgPSByZXF1aXJlKCcuL19pdGVyLWNyZWF0ZScpO1xudmFyIHNldFRvU3RyaW5nVGFnID0gcmVxdWlyZSgnLi9fc2V0LXRvLXN0cmluZy10YWcnKTtcbnZhciBnZXRQcm90b3R5cGVPZiA9IHJlcXVpcmUoJy4vX29iamVjdC1ncG8nKTtcbnZhciBJVEVSQVRPUiA9IHJlcXVpcmUoJy4vX3drcycpKCdpdGVyYXRvcicpO1xudmFyIEJVR0dZID0gIShbXS5rZXlzICYmICduZXh0JyBpbiBbXS5rZXlzKCkpOyAvLyBTYWZhcmkgaGFzIGJ1Z2d5IGl0ZXJhdG9ycyB3L28gYG5leHRgXG52YXIgRkZfSVRFUkFUT1IgPSAnQEBpdGVyYXRvcic7XG52YXIgS0VZUyA9ICdrZXlzJztcbnZhciBWQUxVRVMgPSAndmFsdWVzJztcblxudmFyIHJldHVyblRoaXMgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzOyB9O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChCYXNlLCBOQU1FLCBDb25zdHJ1Y3RvciwgbmV4dCwgREVGQVVMVCwgSVNfU0VULCBGT1JDRUQpIHtcbiAgJGl0ZXJDcmVhdGUoQ29uc3RydWN0b3IsIE5BTUUsIG5leHQpO1xuICB2YXIgZ2V0TWV0aG9kID0gZnVuY3Rpb24gKGtpbmQpIHtcbiAgICBpZiAoIUJVR0dZICYmIGtpbmQgaW4gcHJvdG8pIHJldHVybiBwcm90b1traW5kXTtcbiAgICBzd2l0Y2ggKGtpbmQpIHtcbiAgICAgIGNhc2UgS0VZUzogcmV0dXJuIGZ1bmN0aW9uIGtleXMoKSB7IHJldHVybiBuZXcgQ29uc3RydWN0b3IodGhpcywga2luZCk7IH07XG4gICAgICBjYXNlIFZBTFVFUzogcmV0dXJuIGZ1bmN0aW9uIHZhbHVlcygpIHsgcmV0dXJuIG5ldyBDb25zdHJ1Y3Rvcih0aGlzLCBraW5kKTsgfTtcbiAgICB9IHJldHVybiBmdW5jdGlvbiBlbnRyaWVzKCkgeyByZXR1cm4gbmV3IENvbnN0cnVjdG9yKHRoaXMsIGtpbmQpOyB9O1xuICB9O1xuICB2YXIgVEFHID0gTkFNRSArICcgSXRlcmF0b3InO1xuICB2YXIgREVGX1ZBTFVFUyA9IERFRkFVTFQgPT0gVkFMVUVTO1xuICB2YXIgVkFMVUVTX0JVRyA9IGZhbHNlO1xuICB2YXIgcHJvdG8gPSBCYXNlLnByb3RvdHlwZTtcbiAgdmFyICRuYXRpdmUgPSBwcm90b1tJVEVSQVRPUl0gfHwgcHJvdG9bRkZfSVRFUkFUT1JdIHx8IERFRkFVTFQgJiYgcHJvdG9bREVGQVVMVF07XG4gIHZhciAkZGVmYXVsdCA9ICRuYXRpdmUgfHwgZ2V0TWV0aG9kKERFRkFVTFQpO1xuICB2YXIgJGVudHJpZXMgPSBERUZBVUxUID8gIURFRl9WQUxVRVMgPyAkZGVmYXVsdCA6IGdldE1ldGhvZCgnZW50cmllcycpIDogdW5kZWZpbmVkO1xuICB2YXIgJGFueU5hdGl2ZSA9IE5BTUUgPT0gJ0FycmF5JyA/IHByb3RvLmVudHJpZXMgfHwgJG5hdGl2ZSA6ICRuYXRpdmU7XG4gIHZhciBtZXRob2RzLCBrZXksIEl0ZXJhdG9yUHJvdG90eXBlO1xuICAvLyBGaXggbmF0aXZlXG4gIGlmICgkYW55TmF0aXZlKSB7XG4gICAgSXRlcmF0b3JQcm90b3R5cGUgPSBnZXRQcm90b3R5cGVPZigkYW55TmF0aXZlLmNhbGwobmV3IEJhc2UoKSkpO1xuICAgIGlmIChJdGVyYXRvclByb3RvdHlwZSAhPT0gT2JqZWN0LnByb3RvdHlwZSAmJiBJdGVyYXRvclByb3RvdHlwZS5uZXh0KSB7XG4gICAgICAvLyBTZXQgQEB0b1N0cmluZ1RhZyB0byBuYXRpdmUgaXRlcmF0b3JzXG4gICAgICBzZXRUb1N0cmluZ1RhZyhJdGVyYXRvclByb3RvdHlwZSwgVEFHLCB0cnVlKTtcbiAgICAgIC8vIGZpeCBmb3Igc29tZSBvbGQgZW5naW5lc1xuICAgICAgaWYgKCFMSUJSQVJZICYmIHR5cGVvZiBJdGVyYXRvclByb3RvdHlwZVtJVEVSQVRPUl0gIT0gJ2Z1bmN0aW9uJykgaGlkZShJdGVyYXRvclByb3RvdHlwZSwgSVRFUkFUT1IsIHJldHVyblRoaXMpO1xuICAgIH1cbiAgfVxuICAvLyBmaXggQXJyYXkje3ZhbHVlcywgQEBpdGVyYXRvcn0ubmFtZSBpbiBWOCAvIEZGXG4gIGlmIChERUZfVkFMVUVTICYmICRuYXRpdmUgJiYgJG5hdGl2ZS5uYW1lICE9PSBWQUxVRVMpIHtcbiAgICBWQUxVRVNfQlVHID0gdHJ1ZTtcbiAgICAkZGVmYXVsdCA9IGZ1bmN0aW9uIHZhbHVlcygpIHsgcmV0dXJuICRuYXRpdmUuY2FsbCh0aGlzKTsgfTtcbiAgfVxuICAvLyBEZWZpbmUgaXRlcmF0b3JcbiAgaWYgKCghTElCUkFSWSB8fCBGT1JDRUQpICYmIChCVUdHWSB8fCBWQUxVRVNfQlVHIHx8ICFwcm90b1tJVEVSQVRPUl0pKSB7XG4gICAgaGlkZShwcm90bywgSVRFUkFUT1IsICRkZWZhdWx0KTtcbiAgfVxuICAvLyBQbHVnIGZvciBsaWJyYXJ5XG4gIEl0ZXJhdG9yc1tOQU1FXSA9ICRkZWZhdWx0O1xuICBJdGVyYXRvcnNbVEFHXSA9IHJldHVyblRoaXM7XG4gIGlmIChERUZBVUxUKSB7XG4gICAgbWV0aG9kcyA9IHtcbiAgICAgIHZhbHVlczogREVGX1ZBTFVFUyA/ICRkZWZhdWx0IDogZ2V0TWV0aG9kKFZBTFVFUyksXG4gICAgICBrZXlzOiBJU19TRVQgPyAkZGVmYXVsdCA6IGdldE1ldGhvZChLRVlTKSxcbiAgICAgIGVudHJpZXM6ICRlbnRyaWVzXG4gICAgfTtcbiAgICBpZiAoRk9SQ0VEKSBmb3IgKGtleSBpbiBtZXRob2RzKSB7XG4gICAgICBpZiAoIShrZXkgaW4gcHJvdG8pKSByZWRlZmluZShwcm90bywga2V5LCBtZXRob2RzW2tleV0pO1xuICAgIH0gZWxzZSAkZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqIChCVUdHWSB8fCBWQUxVRVNfQlVHKSwgTkFNRSwgbWV0aG9kcyk7XG4gIH1cbiAgcmV0dXJuIG1ldGhvZHM7XG59O1xuIiwidmFyIElURVJBVE9SID0gcmVxdWlyZSgnLi9fd2tzJykoJ2l0ZXJhdG9yJyk7XG52YXIgU0FGRV9DTE9TSU5HID0gZmFsc2U7XG5cbnRyeSB7XG4gIHZhciByaXRlciA9IFs3XVtJVEVSQVRPUl0oKTtcbiAgcml0ZXJbJ3JldHVybiddID0gZnVuY3Rpb24gKCkgeyBTQUZFX0NMT1NJTkcgPSB0cnVlOyB9O1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdGhyb3ctbGl0ZXJhbFxuICBBcnJheS5mcm9tKHJpdGVyLCBmdW5jdGlvbiAoKSB7IHRocm93IDI7IH0pO1xufSBjYXRjaCAoZSkgeyAvKiBlbXB0eSAqLyB9XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGV4ZWMsIHNraXBDbG9zaW5nKSB7XG4gIGlmICghc2tpcENsb3NpbmcgJiYgIVNBRkVfQ0xPU0lORykgcmV0dXJuIGZhbHNlO1xuICB2YXIgc2FmZSA9IGZhbHNlO1xuICB0cnkge1xuICAgIHZhciBhcnIgPSBbN107XG4gICAgdmFyIGl0ZXIgPSBhcnJbSVRFUkFUT1JdKCk7XG4gICAgaXRlci5uZXh0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4geyBkb25lOiBzYWZlID0gdHJ1ZSB9OyB9O1xuICAgIGFycltJVEVSQVRPUl0gPSBmdW5jdGlvbiAoKSB7IHJldHVybiBpdGVyOyB9O1xuICAgIGV4ZWMoYXJyKTtcbiAgfSBjYXRjaCAoZSkgeyAvKiBlbXB0eSAqLyB9XG4gIHJldHVybiBzYWZlO1xufTtcbiIsIm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGRvbmUsIHZhbHVlKSB7XG4gIHJldHVybiB7IHZhbHVlOiB2YWx1ZSwgZG9uZTogISFkb25lIH07XG59O1xuIiwibW9kdWxlLmV4cG9ydHMgPSB7fTtcbiIsIm1vZHVsZS5leHBvcnRzID0gZmFsc2U7XG4iLCIvLyAyMC4yLjIuMTQgTWF0aC5leHBtMSh4KVxudmFyICRleHBtMSA9IE1hdGguZXhwbTE7XG5tb2R1bGUuZXhwb3J0cyA9ICghJGV4cG0xXG4gIC8vIE9sZCBGRiBidWdcbiAgfHwgJGV4cG0xKDEwKSA+IDIyMDI1LjQ2NTc5NDgwNjcxOSB8fCAkZXhwbTEoMTApIDwgMjIwMjUuNDY1Nzk0ODA2NzE2NTE2OFxuICAvLyBUb3IgQnJvd3NlciBidWdcbiAgfHwgJGV4cG0xKC0yZS0xNykgIT0gLTJlLTE3XG4pID8gZnVuY3Rpb24gZXhwbTEoeCkge1xuICByZXR1cm4gKHggPSAreCkgPT0gMCA/IHggOiB4ID4gLTFlLTYgJiYgeCA8IDFlLTYgPyB4ICsgeCAqIHggLyAyIDogTWF0aC5leHAoeCkgLSAxO1xufSA6ICRleHBtMTtcbiIsIi8vIDIwLjIuMi4xNiBNYXRoLmZyb3VuZCh4KVxudmFyIHNpZ24gPSByZXF1aXJlKCcuL19tYXRoLXNpZ24nKTtcbnZhciBwb3cgPSBNYXRoLnBvdztcbnZhciBFUFNJTE9OID0gcG93KDIsIC01Mik7XG52YXIgRVBTSUxPTjMyID0gcG93KDIsIC0yMyk7XG52YXIgTUFYMzIgPSBwb3coMiwgMTI3KSAqICgyIC0gRVBTSUxPTjMyKTtcbnZhciBNSU4zMiA9IHBvdygyLCAtMTI2KTtcblxudmFyIHJvdW5kVGllc1RvRXZlbiA9IGZ1bmN0aW9uIChuKSB7XG4gIHJldHVybiBuICsgMSAvIEVQU0lMT04gLSAxIC8gRVBTSUxPTjtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0gTWF0aC5mcm91bmQgfHwgZnVuY3Rpb24gZnJvdW5kKHgpIHtcbiAgdmFyICRhYnMgPSBNYXRoLmFicyh4KTtcbiAgdmFyICRzaWduID0gc2lnbih4KTtcbiAgdmFyIGEsIHJlc3VsdDtcbiAgaWYgKCRhYnMgPCBNSU4zMikgcmV0dXJuICRzaWduICogcm91bmRUaWVzVG9FdmVuKCRhYnMgLyBNSU4zMiAvIEVQU0lMT04zMikgKiBNSU4zMiAqIEVQU0lMT04zMjtcbiAgYSA9ICgxICsgRVBTSUxPTjMyIC8gRVBTSUxPTikgKiAkYWJzO1xuICByZXN1bHQgPSBhIC0gKGEgLSAkYWJzKTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICBpZiAocmVzdWx0ID4gTUFYMzIgfHwgcmVzdWx0ICE9IHJlc3VsdCkgcmV0dXJuICRzaWduICogSW5maW5pdHk7XG4gIHJldHVybiAkc2lnbiAqIHJlc3VsdDtcbn07XG4iLCIvLyAyMC4yLjIuMjAgTWF0aC5sb2cxcCh4KVxubW9kdWxlLmV4cG9ydHMgPSBNYXRoLmxvZzFwIHx8IGZ1bmN0aW9uIGxvZzFwKHgpIHtcbiAgcmV0dXJuICh4ID0gK3gpID4gLTFlLTggJiYgeCA8IDFlLTggPyB4IC0geCAqIHggLyAyIDogTWF0aC5sb2coMSArIHgpO1xufTtcbiIsIi8vIDIwLjIuMi4yOCBNYXRoLnNpZ24oeClcbm1vZHVsZS5leHBvcnRzID0gTWF0aC5zaWduIHx8IGZ1bmN0aW9uIHNpZ24oeCkge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlXG4gIHJldHVybiAoeCA9ICt4KSA9PSAwIHx8IHggIT0geCA/IHggOiB4IDwgMCA/IC0xIDogMTtcbn07XG4iLCJ2YXIgTUVUQSA9IHJlcXVpcmUoJy4vX3VpZCcpKCdtZXRhJyk7XG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBoYXMgPSByZXF1aXJlKCcuL19oYXMnKTtcbnZhciBzZXREZXNjID0gcmVxdWlyZSgnLi9fb2JqZWN0LWRwJykuZjtcbnZhciBpZCA9IDA7XG52YXIgaXNFeHRlbnNpYmxlID0gT2JqZWN0LmlzRXh0ZW5zaWJsZSB8fCBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiB0cnVlO1xufTtcbnZhciBGUkVFWkUgPSAhcmVxdWlyZSgnLi9fZmFpbHMnKShmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBpc0V4dGVuc2libGUoT2JqZWN0LnByZXZlbnRFeHRlbnNpb25zKHt9KSk7XG59KTtcbnZhciBzZXRNZXRhID0gZnVuY3Rpb24gKGl0KSB7XG4gIHNldERlc2MoaXQsIE1FVEEsIHsgdmFsdWU6IHtcbiAgICBpOiAnTycgKyArK2lkLCAvLyBvYmplY3QgSURcbiAgICB3OiB7fSAgICAgICAgICAvLyB3ZWFrIGNvbGxlY3Rpb25zIElEc1xuICB9IH0pO1xufTtcbnZhciBmYXN0S2V5ID0gZnVuY3Rpb24gKGl0LCBjcmVhdGUpIHtcbiAgLy8gcmV0dXJuIHByaW1pdGl2ZSB3aXRoIHByZWZpeFxuICBpZiAoIWlzT2JqZWN0KGl0KSkgcmV0dXJuIHR5cGVvZiBpdCA9PSAnc3ltYm9sJyA/IGl0IDogKHR5cGVvZiBpdCA9PSAnc3RyaW5nJyA/ICdTJyA6ICdQJykgKyBpdDtcbiAgaWYgKCFoYXMoaXQsIE1FVEEpKSB7XG4gICAgLy8gY2FuJ3Qgc2V0IG1ldGFkYXRhIHRvIHVuY2F1Z2h0IGZyb3plbiBvYmplY3RcbiAgICBpZiAoIWlzRXh0ZW5zaWJsZShpdCkpIHJldHVybiAnRic7XG4gICAgLy8gbm90IG5lY2Vzc2FyeSB0byBhZGQgbWV0YWRhdGFcbiAgICBpZiAoIWNyZWF0ZSkgcmV0dXJuICdFJztcbiAgICAvLyBhZGQgbWlzc2luZyBtZXRhZGF0YVxuICAgIHNldE1ldGEoaXQpO1xuICAvLyByZXR1cm4gb2JqZWN0IElEXG4gIH0gcmV0dXJuIGl0W01FVEFdLmk7XG59O1xudmFyIGdldFdlYWsgPSBmdW5jdGlvbiAoaXQsIGNyZWF0ZSkge1xuICBpZiAoIWhhcyhpdCwgTUVUQSkpIHtcbiAgICAvLyBjYW4ndCBzZXQgbWV0YWRhdGEgdG8gdW5jYXVnaHQgZnJvemVuIG9iamVjdFxuICAgIGlmICghaXNFeHRlbnNpYmxlKGl0KSkgcmV0dXJuIHRydWU7XG4gICAgLy8gbm90IG5lY2Vzc2FyeSB0byBhZGQgbWV0YWRhdGFcbiAgICBpZiAoIWNyZWF0ZSkgcmV0dXJuIGZhbHNlO1xuICAgIC8vIGFkZCBtaXNzaW5nIG1ldGFkYXRhXG4gICAgc2V0TWV0YShpdCk7XG4gIC8vIHJldHVybiBoYXNoIHdlYWsgY29sbGVjdGlvbnMgSURzXG4gIH0gcmV0dXJuIGl0W01FVEFdLnc7XG59O1xuLy8gYWRkIG1ldGFkYXRhIG9uIGZyZWV6ZS1mYW1pbHkgbWV0aG9kcyBjYWxsaW5nXG52YXIgb25GcmVlemUgPSBmdW5jdGlvbiAoaXQpIHtcbiAgaWYgKEZSRUVaRSAmJiBtZXRhLk5FRUQgJiYgaXNFeHRlbnNpYmxlKGl0KSAmJiAhaGFzKGl0LCBNRVRBKSkgc2V0TWV0YShpdCk7XG4gIHJldHVybiBpdDtcbn07XG52YXIgbWV0YSA9IG1vZHVsZS5leHBvcnRzID0ge1xuICBLRVk6IE1FVEEsXG4gIE5FRUQ6IGZhbHNlLFxuICBmYXN0S2V5OiBmYXN0S2V5LFxuICBnZXRXZWFrOiBnZXRXZWFrLFxuICBvbkZyZWV6ZTogb25GcmVlemVcbn07XG4iLCJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi9fZ2xvYmFsJyk7XG52YXIgbWFjcm90YXNrID0gcmVxdWlyZSgnLi9fdGFzaycpLnNldDtcbnZhciBPYnNlcnZlciA9IGdsb2JhbC5NdXRhdGlvbk9ic2VydmVyIHx8IGdsb2JhbC5XZWJLaXRNdXRhdGlvbk9ic2VydmVyO1xudmFyIHByb2Nlc3MgPSBnbG9iYWwucHJvY2VzcztcbnZhciBQcm9taXNlID0gZ2xvYmFsLlByb21pc2U7XG52YXIgaXNOb2RlID0gcmVxdWlyZSgnLi9fY29mJykocHJvY2VzcykgPT0gJ3Byb2Nlc3MnO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICgpIHtcbiAgdmFyIGhlYWQsIGxhc3QsIG5vdGlmeTtcblxuICB2YXIgZmx1c2ggPSBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIHBhcmVudCwgZm47XG4gICAgaWYgKGlzTm9kZSAmJiAocGFyZW50ID0gcHJvY2Vzcy5kb21haW4pKSBwYXJlbnQuZXhpdCgpO1xuICAgIHdoaWxlIChoZWFkKSB7XG4gICAgICBmbiA9IGhlYWQuZm47XG4gICAgICBoZWFkID0gaGVhZC5uZXh0O1xuICAgICAgdHJ5IHtcbiAgICAgICAgZm4oKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgaWYgKGhlYWQpIG5vdGlmeSgpO1xuICAgICAgICBlbHNlIGxhc3QgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRocm93IGU7XG4gICAgICB9XG4gICAgfSBsYXN0ID0gdW5kZWZpbmVkO1xuICAgIGlmIChwYXJlbnQpIHBhcmVudC5lbnRlcigpO1xuICB9O1xuXG4gIC8vIE5vZGUuanNcbiAgaWYgKGlzTm9kZSkge1xuICAgIG5vdGlmeSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIHByb2Nlc3MubmV4dFRpY2soZmx1c2gpO1xuICAgIH07XG4gIC8vIGJyb3dzZXJzIHdpdGggTXV0YXRpb25PYnNlcnZlciwgZXhjZXB0IGlPUyBTYWZhcmkgLSBodHRwczovL2dpdGh1Yi5jb20vemxvaXJvY2svY29yZS1qcy9pc3N1ZXMvMzM5XG4gIH0gZWxzZSBpZiAoT2JzZXJ2ZXIgJiYgIShnbG9iYWwubmF2aWdhdG9yICYmIGdsb2JhbC5uYXZpZ2F0b3Iuc3RhbmRhbG9uZSkpIHtcbiAgICB2YXIgdG9nZ2xlID0gdHJ1ZTtcbiAgICB2YXIgbm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCcnKTtcbiAgICBuZXcgT2JzZXJ2ZXIoZmx1c2gpLm9ic2VydmUobm9kZSwgeyBjaGFyYWN0ZXJEYXRhOiB0cnVlIH0pOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLW5ld1xuICAgIG5vdGlmeSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIG5vZGUuZGF0YSA9IHRvZ2dsZSA9ICF0b2dnbGU7XG4gICAgfTtcbiAgLy8gZW52aXJvbm1lbnRzIHdpdGggbWF5YmUgbm9uLWNvbXBsZXRlbHkgY29ycmVjdCwgYnV0IGV4aXN0ZW50IFByb21pc2VcbiAgfSBlbHNlIGlmIChQcm9taXNlICYmIFByb21pc2UucmVzb2x2ZSkge1xuICAgIC8vIFByb21pc2UucmVzb2x2ZSB3aXRob3V0IGFuIGFyZ3VtZW50IHRocm93cyBhbiBlcnJvciBpbiBMRyBXZWJPUyAyXG4gICAgdmFyIHByb21pc2UgPSBQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKTtcbiAgICBub3RpZnkgPSBmdW5jdGlvbiAoKSB7XG4gICAgICBwcm9taXNlLnRoZW4oZmx1c2gpO1xuICAgIH07XG4gIC8vIGZvciBvdGhlciBlbnZpcm9ubWVudHMgLSBtYWNyb3Rhc2sgYmFzZWQgb246XG4gIC8vIC0gc2V0SW1tZWRpYXRlXG4gIC8vIC0gTWVzc2FnZUNoYW5uZWxcbiAgLy8gLSB3aW5kb3cucG9zdE1lc3NhZ1xuICAvLyAtIG9ucmVhZHlzdGF0ZWNoYW5nZVxuICAvLyAtIHNldFRpbWVvdXRcbiAgfSBlbHNlIHtcbiAgICBub3RpZnkgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAvLyBzdHJhbmdlIElFICsgd2VicGFjayBkZXYgc2VydmVyIGJ1ZyAtIHVzZSAuY2FsbChnbG9iYWwpXG4gICAgICBtYWNyb3Rhc2suY2FsbChnbG9iYWwsIGZsdXNoKTtcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIGZ1bmN0aW9uIChmbikge1xuICAgIHZhciB0YXNrID0geyBmbjogZm4sIG5leHQ6IHVuZGVmaW5lZCB9O1xuICAgIGlmIChsYXN0KSBsYXN0Lm5leHQgPSB0YXNrO1xuICAgIGlmICghaGVhZCkge1xuICAgICAgaGVhZCA9IHRhc2s7XG4gICAgICBub3RpZnkoKTtcbiAgICB9IGxhc3QgPSB0YXNrO1xuICB9O1xufTtcbiIsIid1c2Ugc3RyaWN0Jztcbi8vIDI1LjQuMS41IE5ld1Byb21pc2VDYXBhYmlsaXR5KEMpXG52YXIgYUZ1bmN0aW9uID0gcmVxdWlyZSgnLi9fYS1mdW5jdGlvbicpO1xuXG5mdW5jdGlvbiBQcm9taXNlQ2FwYWJpbGl0eShDKSB7XG4gIHZhciByZXNvbHZlLCByZWplY3Q7XG4gIHRoaXMucHJvbWlzZSA9IG5ldyBDKGZ1bmN0aW9uICgkJHJlc29sdmUsICQkcmVqZWN0KSB7XG4gICAgaWYgKHJlc29sdmUgIT09IHVuZGVmaW5lZCB8fCByZWplY3QgIT09IHVuZGVmaW5lZCkgdGhyb3cgVHlwZUVycm9yKCdCYWQgUHJvbWlzZSBjb25zdHJ1Y3RvcicpO1xuICAgIHJlc29sdmUgPSAkJHJlc29sdmU7XG4gICAgcmVqZWN0ID0gJCRyZWplY3Q7XG4gIH0pO1xuICB0aGlzLnJlc29sdmUgPSBhRnVuY3Rpb24ocmVzb2x2ZSk7XG4gIHRoaXMucmVqZWN0ID0gYUZ1bmN0aW9uKHJlamVjdCk7XG59XG5cbm1vZHVsZS5leHBvcnRzLmYgPSBmdW5jdGlvbiAoQykge1xuICByZXR1cm4gbmV3IFByb21pc2VDYXBhYmlsaXR5KEMpO1xufTtcbiIsIid1c2Ugc3RyaWN0Jztcbi8vIDE5LjEuMi4xIE9iamVjdC5hc3NpZ24odGFyZ2V0LCBzb3VyY2UsIC4uLilcbnZhciBERVNDUklQVE9SUyA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJyk7XG52YXIgZ2V0S2V5cyA9IHJlcXVpcmUoJy4vX29iamVjdC1rZXlzJyk7XG52YXIgZ09QUyA9IHJlcXVpcmUoJy4vX29iamVjdC1nb3BzJyk7XG52YXIgcElFID0gcmVxdWlyZSgnLi9fb2JqZWN0LXBpZScpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgSU9iamVjdCA9IHJlcXVpcmUoJy4vX2lvYmplY3QnKTtcbnZhciAkYXNzaWduID0gT2JqZWN0LmFzc2lnbjtcblxuLy8gc2hvdWxkIHdvcmsgd2l0aCBzeW1ib2xzIGFuZCBzaG91bGQgaGF2ZSBkZXRlcm1pbmlzdGljIHByb3BlcnR5IG9yZGVyIChWOCBidWcpXG5tb2R1bGUuZXhwb3J0cyA9ICEkYXNzaWduIHx8IHJlcXVpcmUoJy4vX2ZhaWxzJykoZnVuY3Rpb24gKCkge1xuICB2YXIgQSA9IHt9O1xuICB2YXIgQiA9IHt9O1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZWZcbiAgdmFyIFMgPSBTeW1ib2woKTtcbiAgdmFyIEsgPSAnYWJjZGVmZ2hpamtsbW5vcHFyc3QnO1xuICBBW1NdID0gNztcbiAgSy5zcGxpdCgnJykuZm9yRWFjaChmdW5jdGlvbiAoaykgeyBCW2tdID0gazsgfSk7XG4gIHJldHVybiAkYXNzaWduKHt9LCBBKVtTXSAhPSA3IHx8IE9iamVjdC5rZXlzKCRhc3NpZ24oe30sIEIpKS5qb2luKCcnKSAhPSBLO1xufSkgPyBmdW5jdGlvbiBhc3NpZ24odGFyZ2V0LCBzb3VyY2UpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bnVzZWQtdmFyc1xuICB2YXIgVCA9IHRvT2JqZWN0KHRhcmdldCk7XG4gIHZhciBhTGVuID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgdmFyIGluZGV4ID0gMTtcbiAgdmFyIGdldFN5bWJvbHMgPSBnT1BTLmY7XG4gIHZhciBpc0VudW0gPSBwSUUuZjtcbiAgd2hpbGUgKGFMZW4gPiBpbmRleCkge1xuICAgIHZhciBTID0gSU9iamVjdChhcmd1bWVudHNbaW5kZXgrK10pO1xuICAgIHZhciBrZXlzID0gZ2V0U3ltYm9scyA/IGdldEtleXMoUykuY29uY2F0KGdldFN5bWJvbHMoUykpIDogZ2V0S2V5cyhTKTtcbiAgICB2YXIgbGVuZ3RoID0ga2V5cy5sZW5ndGg7XG4gICAgdmFyIGogPSAwO1xuICAgIHZhciBrZXk7XG4gICAgd2hpbGUgKGxlbmd0aCA+IGopIHtcbiAgICAgIGtleSA9IGtleXNbaisrXTtcbiAgICAgIGlmICghREVTQ1JJUFRPUlMgfHwgaXNFbnVtLmNhbGwoUywga2V5KSkgVFtrZXldID0gU1trZXldO1xuICAgIH1cbiAgfSByZXR1cm4gVDtcbn0gOiAkYXNzaWduO1xuIiwiLy8gMTkuMS4yLjIgLyAxNS4yLjMuNSBPYmplY3QuY3JlYXRlKE8gWywgUHJvcGVydGllc10pXG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuL19hbi1vYmplY3QnKTtcbnZhciBkUHMgPSByZXF1aXJlKCcuL19vYmplY3QtZHBzJyk7XG52YXIgZW51bUJ1Z0tleXMgPSByZXF1aXJlKCcuL19lbnVtLWJ1Zy1rZXlzJyk7XG52YXIgSUVfUFJPVE8gPSByZXF1aXJlKCcuL19zaGFyZWQta2V5JykoJ0lFX1BST1RPJyk7XG52YXIgRW1wdHkgPSBmdW5jdGlvbiAoKSB7IC8qIGVtcHR5ICovIH07XG52YXIgUFJPVE9UWVBFID0gJ3Byb3RvdHlwZSc7XG5cbi8vIENyZWF0ZSBvYmplY3Qgd2l0aCBmYWtlIGBudWxsYCBwcm90b3R5cGU6IHVzZSBpZnJhbWUgT2JqZWN0IHdpdGggY2xlYXJlZCBwcm90b3R5cGVcbnZhciBjcmVhdGVEaWN0ID0gZnVuY3Rpb24gKCkge1xuICAvLyBUaHJhc2gsIHdhc3RlIGFuZCBzb2RvbXk6IElFIEdDIGJ1Z1xuICB2YXIgaWZyYW1lID0gcmVxdWlyZSgnLi9fZG9tLWNyZWF0ZScpKCdpZnJhbWUnKTtcbiAgdmFyIGkgPSBlbnVtQnVnS2V5cy5sZW5ndGg7XG4gIHZhciBsdCA9ICc8JztcbiAgdmFyIGd0ID0gJz4nO1xuICB2YXIgaWZyYW1lRG9jdW1lbnQ7XG4gIGlmcmFtZS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICByZXF1aXJlKCcuL19odG1sJykuYXBwZW5kQ2hpbGQoaWZyYW1lKTtcbiAgaWZyYW1lLnNyYyA9ICdqYXZhc2NyaXB0Oic7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tc2NyaXB0LXVybFxuICAvLyBjcmVhdGVEaWN0ID0gaWZyYW1lLmNvbnRlbnRXaW5kb3cuT2JqZWN0O1xuICAvLyBodG1sLnJlbW92ZUNoaWxkKGlmcmFtZSk7XG4gIGlmcmFtZURvY3VtZW50ID0gaWZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7XG4gIGlmcmFtZURvY3VtZW50Lm9wZW4oKTtcbiAgaWZyYW1lRG9jdW1lbnQud3JpdGUobHQgKyAnc2NyaXB0JyArIGd0ICsgJ2RvY3VtZW50LkY9T2JqZWN0JyArIGx0ICsgJy9zY3JpcHQnICsgZ3QpO1xuICBpZnJhbWVEb2N1bWVudC5jbG9zZSgpO1xuICBjcmVhdGVEaWN0ID0gaWZyYW1lRG9jdW1lbnQuRjtcbiAgd2hpbGUgKGktLSkgZGVsZXRlIGNyZWF0ZURpY3RbUFJPVE9UWVBFXVtlbnVtQnVnS2V5c1tpXV07XG4gIHJldHVybiBjcmVhdGVEaWN0KCk7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IE9iamVjdC5jcmVhdGUgfHwgZnVuY3Rpb24gY3JlYXRlKE8sIFByb3BlcnRpZXMpIHtcbiAgdmFyIHJlc3VsdDtcbiAgaWYgKE8gIT09IG51bGwpIHtcbiAgICBFbXB0eVtQUk9UT1RZUEVdID0gYW5PYmplY3QoTyk7XG4gICAgcmVzdWx0ID0gbmV3IEVtcHR5KCk7XG4gICAgRW1wdHlbUFJPVE9UWVBFXSA9IG51bGw7XG4gICAgLy8gYWRkIFwiX19wcm90b19fXCIgZm9yIE9iamVjdC5nZXRQcm90b3R5cGVPZiBwb2x5ZmlsbFxuICAgIHJlc3VsdFtJRV9QUk9UT10gPSBPO1xuICB9IGVsc2UgcmVzdWx0ID0gY3JlYXRlRGljdCgpO1xuICByZXR1cm4gUHJvcGVydGllcyA9PT0gdW5kZWZpbmVkID8gcmVzdWx0IDogZFBzKHJlc3VsdCwgUHJvcGVydGllcyk7XG59O1xuIiwidmFyIGFuT2JqZWN0ID0gcmVxdWlyZSgnLi9fYW4tb2JqZWN0Jyk7XG52YXIgSUU4X0RPTV9ERUZJTkUgPSByZXF1aXJlKCcuL19pZTgtZG9tLWRlZmluZScpO1xudmFyIHRvUHJpbWl0aXZlID0gcmVxdWlyZSgnLi9fdG8tcHJpbWl0aXZlJyk7XG52YXIgZFAgPSBPYmplY3QuZGVmaW5lUHJvcGVydHk7XG5cbmV4cG9ydHMuZiA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgPyBPYmplY3QuZGVmaW5lUHJvcGVydHkgOiBmdW5jdGlvbiBkZWZpbmVQcm9wZXJ0eShPLCBQLCBBdHRyaWJ1dGVzKSB7XG4gIGFuT2JqZWN0KE8pO1xuICBQID0gdG9QcmltaXRpdmUoUCwgdHJ1ZSk7XG4gIGFuT2JqZWN0KEF0dHJpYnV0ZXMpO1xuICBpZiAoSUU4X0RPTV9ERUZJTkUpIHRyeSB7XG4gICAgcmV0dXJuIGRQKE8sIFAsIEF0dHJpYnV0ZXMpO1xuICB9IGNhdGNoIChlKSB7IC8qIGVtcHR5ICovIH1cbiAgaWYgKCdnZXQnIGluIEF0dHJpYnV0ZXMgfHwgJ3NldCcgaW4gQXR0cmlidXRlcykgdGhyb3cgVHlwZUVycm9yKCdBY2Nlc3NvcnMgbm90IHN1cHBvcnRlZCEnKTtcbiAgaWYgKCd2YWx1ZScgaW4gQXR0cmlidXRlcykgT1tQXSA9IEF0dHJpYnV0ZXMudmFsdWU7XG4gIHJldHVybiBPO1xufTtcbiIsInZhciBkUCA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpO1xudmFyIGFuT2JqZWN0ID0gcmVxdWlyZSgnLi9fYW4tb2JqZWN0Jyk7XG52YXIgZ2V0S2V5cyA9IHJlcXVpcmUoJy4vX29iamVjdC1rZXlzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9fZGVzY3JpcHRvcnMnKSA/IE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzIDogZnVuY3Rpb24gZGVmaW5lUHJvcGVydGllcyhPLCBQcm9wZXJ0aWVzKSB7XG4gIGFuT2JqZWN0KE8pO1xuICB2YXIga2V5cyA9IGdldEtleXMoUHJvcGVydGllcyk7XG4gIHZhciBsZW5ndGggPSBrZXlzLmxlbmd0aDtcbiAgdmFyIGkgPSAwO1xuICB2YXIgUDtcbiAgd2hpbGUgKGxlbmd0aCA+IGkpIGRQLmYoTywgUCA9IGtleXNbaSsrXSwgUHJvcGVydGllc1tQXSk7XG4gIHJldHVybiBPO1xufTtcbiIsInZhciBwSUUgPSByZXF1aXJlKCcuL19vYmplY3QtcGllJyk7XG52YXIgY3JlYXRlRGVzYyA9IHJlcXVpcmUoJy4vX3Byb3BlcnR5LWRlc2MnKTtcbnZhciB0b0lPYmplY3QgPSByZXF1aXJlKCcuL190by1pb2JqZWN0Jyk7XG52YXIgdG9QcmltaXRpdmUgPSByZXF1aXJlKCcuL190by1wcmltaXRpdmUnKTtcbnZhciBoYXMgPSByZXF1aXJlKCcuL19oYXMnKTtcbnZhciBJRThfRE9NX0RFRklORSA9IHJlcXVpcmUoJy4vX2llOC1kb20tZGVmaW5lJyk7XG52YXIgZ09QRCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7XG5cbmV4cG9ydHMuZiA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykgPyBnT1BEIDogZnVuY3Rpb24gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKE8sIFApIHtcbiAgTyA9IHRvSU9iamVjdChPKTtcbiAgUCA9IHRvUHJpbWl0aXZlKFAsIHRydWUpO1xuICBpZiAoSUU4X0RPTV9ERUZJTkUpIHRyeSB7XG4gICAgcmV0dXJuIGdPUEQoTywgUCk7XG4gIH0gY2F0Y2ggKGUpIHsgLyogZW1wdHkgKi8gfVxuICBpZiAoaGFzKE8sIFApKSByZXR1cm4gY3JlYXRlRGVzYyghcElFLmYuY2FsbChPLCBQKSwgT1tQXSk7XG59O1xuIiwiLy8gZmFsbGJhY2sgZm9yIElFMTEgYnVnZ3kgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgd2l0aCBpZnJhbWUgYW5kIHdpbmRvd1xudmFyIHRvSU9iamVjdCA9IHJlcXVpcmUoJy4vX3RvLWlvYmplY3QnKTtcbnZhciBnT1BOID0gcmVxdWlyZSgnLi9fb2JqZWN0LWdvcG4nKS5mO1xudmFyIHRvU3RyaW5nID0ge30udG9TdHJpbmc7XG5cbnZhciB3aW5kb3dOYW1lcyA9IHR5cGVvZiB3aW5kb3cgPT0gJ29iamVjdCcgJiYgd2luZG93ICYmIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzXG4gID8gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMod2luZG93KSA6IFtdO1xuXG52YXIgZ2V0V2luZG93TmFtZXMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZ09QTihpdCk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gd2luZG93TmFtZXMuc2xpY2UoKTtcbiAgfVxufTtcblxubW9kdWxlLmV4cG9ydHMuZiA9IGZ1bmN0aW9uIGdldE93blByb3BlcnR5TmFtZXMoaXQpIHtcbiAgcmV0dXJuIHdpbmRvd05hbWVzICYmIHRvU3RyaW5nLmNhbGwoaXQpID09ICdbb2JqZWN0IFdpbmRvd10nID8gZ2V0V2luZG93TmFtZXMoaXQpIDogZ09QTih0b0lPYmplY3QoaXQpKTtcbn07XG4iLCIvLyAxOS4xLjIuNyAvIDE1LjIuMy40IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKE8pXG52YXIgJGtleXMgPSByZXF1aXJlKCcuL19vYmplY3Qta2V5cy1pbnRlcm5hbCcpO1xudmFyIGhpZGRlbktleXMgPSByZXF1aXJlKCcuL19lbnVtLWJ1Zy1rZXlzJykuY29uY2F0KCdsZW5ndGgnLCAncHJvdG90eXBlJyk7XG5cbmV4cG9ydHMuZiA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uIGdldE93blByb3BlcnR5TmFtZXMoTykge1xuICByZXR1cm4gJGtleXMoTywgaGlkZGVuS2V5cyk7XG59O1xuIiwiZXhwb3J0cy5mID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scztcbiIsIi8vIDE5LjEuMi45IC8gMTUuMi4zLjIgT2JqZWN0LmdldFByb3RvdHlwZU9mKE8pXG52YXIgaGFzID0gcmVxdWlyZSgnLi9faGFzJyk7XG52YXIgdG9PYmplY3QgPSByZXF1aXJlKCcuL190by1vYmplY3QnKTtcbnZhciBJRV9QUk9UTyA9IHJlcXVpcmUoJy4vX3NoYXJlZC1rZXknKSgnSUVfUFJPVE8nKTtcbnZhciBPYmplY3RQcm90byA9IE9iamVjdC5wcm90b3R5cGU7XG5cbm1vZHVsZS5leHBvcnRzID0gT2JqZWN0LmdldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIChPKSB7XG4gIE8gPSB0b09iamVjdChPKTtcbiAgaWYgKGhhcyhPLCBJRV9QUk9UTykpIHJldHVybiBPW0lFX1BST1RPXTtcbiAgaWYgKHR5cGVvZiBPLmNvbnN0cnVjdG9yID09ICdmdW5jdGlvbicgJiYgTyBpbnN0YW5jZW9mIE8uY29uc3RydWN0b3IpIHtcbiAgICByZXR1cm4gTy5jb25zdHJ1Y3Rvci5wcm90b3R5cGU7XG4gIH0gcmV0dXJuIE8gaW5zdGFuY2VvZiBPYmplY3QgPyBPYmplY3RQcm90byA6IG51bGw7XG59O1xuIiwidmFyIGhhcyA9IHJlcXVpcmUoJy4vX2hhcycpO1xudmFyIHRvSU9iamVjdCA9IHJlcXVpcmUoJy4vX3RvLWlvYmplY3QnKTtcbnZhciBhcnJheUluZGV4T2YgPSByZXF1aXJlKCcuL19hcnJheS1pbmNsdWRlcycpKGZhbHNlKTtcbnZhciBJRV9QUk9UTyA9IHJlcXVpcmUoJy4vX3NoYXJlZC1rZXknKSgnSUVfUFJPVE8nKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAob2JqZWN0LCBuYW1lcykge1xuICB2YXIgTyA9IHRvSU9iamVjdChvYmplY3QpO1xuICB2YXIgaSA9IDA7XG4gIHZhciByZXN1bHQgPSBbXTtcbiAgdmFyIGtleTtcbiAgZm9yIChrZXkgaW4gTykgaWYgKGtleSAhPSBJRV9QUk9UTykgaGFzKE8sIGtleSkgJiYgcmVzdWx0LnB1c2goa2V5KTtcbiAgLy8gRG9uJ3QgZW51bSBidWcgJiBoaWRkZW4ga2V5c1xuICB3aGlsZSAobmFtZXMubGVuZ3RoID4gaSkgaWYgKGhhcyhPLCBrZXkgPSBuYW1lc1tpKytdKSkge1xuICAgIH5hcnJheUluZGV4T2YocmVzdWx0LCBrZXkpIHx8IHJlc3VsdC5wdXNoKGtleSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn07XG4iLCIvLyAxOS4xLjIuMTQgLyAxNS4yLjMuMTQgT2JqZWN0LmtleXMoTylcbnZhciAka2V5cyA9IHJlcXVpcmUoJy4vX29iamVjdC1rZXlzLWludGVybmFsJyk7XG52YXIgZW51bUJ1Z0tleXMgPSByZXF1aXJlKCcuL19lbnVtLWJ1Zy1rZXlzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gT2JqZWN0LmtleXMgfHwgZnVuY3Rpb24ga2V5cyhPKSB7XG4gIHJldHVybiAka2V5cyhPLCBlbnVtQnVnS2V5cyk7XG59O1xuIiwiZXhwb3J0cy5mID0ge30ucHJvcGVydHlJc0VudW1lcmFibGU7XG4iLCIvLyBtb3N0IE9iamVjdCBtZXRob2RzIGJ5IEVTNiBzaG91bGQgYWNjZXB0IHByaW1pdGl2ZXNcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgY29yZSA9IHJlcXVpcmUoJy4vX2NvcmUnKTtcbnZhciBmYWlscyA9IHJlcXVpcmUoJy4vX2ZhaWxzJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChLRVksIGV4ZWMpIHtcbiAgdmFyIGZuID0gKGNvcmUuT2JqZWN0IHx8IHt9KVtLRVldIHx8IE9iamVjdFtLRVldO1xuICB2YXIgZXhwID0ge307XG4gIGV4cFtLRVldID0gZXhlYyhmbik7XG4gICRleHBvcnQoJGV4cG9ydC5TICsgJGV4cG9ydC5GICogZmFpbHMoZnVuY3Rpb24gKCkgeyBmbigxKTsgfSksICdPYmplY3QnLCBleHApO1xufTtcbiIsInZhciBERVNDUklQVE9SUyA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJyk7XG52YXIgZ2V0S2V5cyA9IHJlcXVpcmUoJy4vX29iamVjdC1rZXlzJyk7XG52YXIgdG9JT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8taW9iamVjdCcpO1xudmFyIGlzRW51bSA9IHJlcXVpcmUoJy4vX29iamVjdC1waWUnKS5mO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXNFbnRyaWVzKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoaXQpIHtcbiAgICB2YXIgTyA9IHRvSU9iamVjdChpdCk7XG4gICAgdmFyIGtleXMgPSBnZXRLZXlzKE8pO1xuICAgIHZhciBsZW5ndGggPSBrZXlzLmxlbmd0aDtcbiAgICB2YXIgaSA9IDA7XG4gICAgdmFyIHJlc3VsdCA9IFtdO1xuICAgIHZhciBrZXk7XG4gICAgd2hpbGUgKGxlbmd0aCA+IGkpIHtcbiAgICAgIGtleSA9IGtleXNbaSsrXTtcbiAgICAgIGlmICghREVTQ1JJUFRPUlMgfHwgaXNFbnVtLmNhbGwoTywga2V5KSkge1xuICAgICAgICByZXN1bHQucHVzaChpc0VudHJpZXMgPyBba2V5LCBPW2tleV1dIDogT1trZXldKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfTtcbn07XG4iLCIvLyBhbGwgb2JqZWN0IGtleXMsIGluY2x1ZGVzIG5vbi1lbnVtZXJhYmxlIGFuZCBzeW1ib2xzXG52YXIgZ09QTiA9IHJlcXVpcmUoJy4vX29iamVjdC1nb3BuJyk7XG52YXIgZ09QUyA9IHJlcXVpcmUoJy4vX29iamVjdC1nb3BzJyk7XG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuL19hbi1vYmplY3QnKTtcbnZhciBSZWZsZWN0ID0gcmVxdWlyZSgnLi9fZ2xvYmFsJykuUmVmbGVjdDtcbm1vZHVsZS5leHBvcnRzID0gUmVmbGVjdCAmJiBSZWZsZWN0Lm93bktleXMgfHwgZnVuY3Rpb24gb3duS2V5cyhpdCkge1xuICB2YXIga2V5cyA9IGdPUE4uZihhbk9iamVjdChpdCkpO1xuICB2YXIgZ2V0U3ltYm9scyA9IGdPUFMuZjtcbiAgcmV0dXJuIGdldFN5bWJvbHMgPyBrZXlzLmNvbmNhdChnZXRTeW1ib2xzKGl0KSkgOiBrZXlzO1xufTtcbiIsInZhciAkcGFyc2VGbG9hdCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpLnBhcnNlRmxvYXQ7XG52YXIgJHRyaW0gPSByZXF1aXJlKCcuL19zdHJpbmctdHJpbScpLnRyaW07XG5cbm1vZHVsZS5leHBvcnRzID0gMSAvICRwYXJzZUZsb2F0KHJlcXVpcmUoJy4vX3N0cmluZy13cycpICsgJy0wJykgIT09IC1JbmZpbml0eSA/IGZ1bmN0aW9uIHBhcnNlRmxvYXQoc3RyKSB7XG4gIHZhciBzdHJpbmcgPSAkdHJpbShTdHJpbmcoc3RyKSwgMyk7XG4gIHZhciByZXN1bHQgPSAkcGFyc2VGbG9hdChzdHJpbmcpO1xuICByZXR1cm4gcmVzdWx0ID09PSAwICYmIHN0cmluZy5jaGFyQXQoMCkgPT0gJy0nID8gLTAgOiByZXN1bHQ7XG59IDogJHBhcnNlRmxvYXQ7XG4iLCJ2YXIgJHBhcnNlSW50ID0gcmVxdWlyZSgnLi9fZ2xvYmFsJykucGFyc2VJbnQ7XG52YXIgJHRyaW0gPSByZXF1aXJlKCcuL19zdHJpbmctdHJpbScpLnRyaW07XG52YXIgd3MgPSByZXF1aXJlKCcuL19zdHJpbmctd3MnKTtcbnZhciBoZXggPSAvXlstK10/MFt4WF0vO1xuXG5tb2R1bGUuZXhwb3J0cyA9ICRwYXJzZUludCh3cyArICcwOCcpICE9PSA4IHx8ICRwYXJzZUludCh3cyArICcweDE2JykgIT09IDIyID8gZnVuY3Rpb24gcGFyc2VJbnQoc3RyLCByYWRpeCkge1xuICB2YXIgc3RyaW5nID0gJHRyaW0oU3RyaW5nKHN0ciksIDMpO1xuICByZXR1cm4gJHBhcnNlSW50KHN0cmluZywgKHJhZGl4ID4+PiAwKSB8fCAoaGV4LnRlc3Qoc3RyaW5nKSA/IDE2IDogMTApKTtcbn0gOiAkcGFyc2VJbnQ7XG4iLCJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChleGVjKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHsgZTogZmFsc2UsIHY6IGV4ZWMoKSB9O1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIHsgZTogdHJ1ZSwgdjogZSB9O1xuICB9XG59O1xuIiwidmFyIGFuT2JqZWN0ID0gcmVxdWlyZSgnLi9fYW4tb2JqZWN0Jyk7XG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBuZXdQcm9taXNlQ2FwYWJpbGl0eSA9IHJlcXVpcmUoJy4vX25ldy1wcm9taXNlLWNhcGFiaWxpdHknKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoQywgeCkge1xuICBhbk9iamVjdChDKTtcbiAgaWYgKGlzT2JqZWN0KHgpICYmIHguY29uc3RydWN0b3IgPT09IEMpIHJldHVybiB4O1xuICB2YXIgcHJvbWlzZUNhcGFiaWxpdHkgPSBuZXdQcm9taXNlQ2FwYWJpbGl0eS5mKEMpO1xuICB2YXIgcmVzb2x2ZSA9IHByb21pc2VDYXBhYmlsaXR5LnJlc29sdmU7XG4gIHJlc29sdmUoeCk7XG4gIHJldHVybiBwcm9taXNlQ2FwYWJpbGl0eS5wcm9taXNlO1xufTtcbiIsIm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGJpdG1hcCwgdmFsdWUpIHtcbiAgcmV0dXJuIHtcbiAgICBlbnVtZXJhYmxlOiAhKGJpdG1hcCAmIDEpLFxuICAgIGNvbmZpZ3VyYWJsZTogIShiaXRtYXAgJiAyKSxcbiAgICB3cml0YWJsZTogIShiaXRtYXAgJiA0KSxcbiAgICB2YWx1ZTogdmFsdWVcbiAgfTtcbn07XG4iLCJ2YXIgcmVkZWZpbmUgPSByZXF1aXJlKCcuL19yZWRlZmluZScpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAodGFyZ2V0LCBzcmMsIHNhZmUpIHtcbiAgZm9yICh2YXIga2V5IGluIHNyYykgcmVkZWZpbmUodGFyZ2V0LCBrZXksIHNyY1trZXldLCBzYWZlKTtcbiAgcmV0dXJuIHRhcmdldDtcbn07XG4iLCJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi9fZ2xvYmFsJyk7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4vX2hpZGUnKTtcbnZhciBoYXMgPSByZXF1aXJlKCcuL19oYXMnKTtcbnZhciBTUkMgPSByZXF1aXJlKCcuL191aWQnKSgnc3JjJyk7XG52YXIgJHRvU3RyaW5nID0gcmVxdWlyZSgnLi9fZnVuY3Rpb24tdG8tc3RyaW5nJyk7XG52YXIgVE9fU1RSSU5HID0gJ3RvU3RyaW5nJztcbnZhciBUUEwgPSAoJycgKyAkdG9TdHJpbmcpLnNwbGl0KFRPX1NUUklORyk7XG5cbnJlcXVpcmUoJy4vX2NvcmUnKS5pbnNwZWN0U291cmNlID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiAkdG9TdHJpbmcuY2FsbChpdCk7XG59O1xuXG4obW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoTywga2V5LCB2YWwsIHNhZmUpIHtcbiAgdmFyIGlzRnVuY3Rpb24gPSB0eXBlb2YgdmFsID09ICdmdW5jdGlvbic7XG4gIGlmIChpc0Z1bmN0aW9uKSBoYXModmFsLCAnbmFtZScpIHx8IGhpZGUodmFsLCAnbmFtZScsIGtleSk7XG4gIGlmIChPW2tleV0gPT09IHZhbCkgcmV0dXJuO1xuICBpZiAoaXNGdW5jdGlvbikgaGFzKHZhbCwgU1JDKSB8fCBoaWRlKHZhbCwgU1JDLCBPW2tleV0gPyAnJyArIE9ba2V5XSA6IFRQTC5qb2luKFN0cmluZyhrZXkpKSk7XG4gIGlmIChPID09PSBnbG9iYWwpIHtcbiAgICBPW2tleV0gPSB2YWw7XG4gIH0gZWxzZSBpZiAoIXNhZmUpIHtcbiAgICBkZWxldGUgT1trZXldO1xuICAgIGhpZGUoTywga2V5LCB2YWwpO1xuICB9IGVsc2UgaWYgKE9ba2V5XSkge1xuICAgIE9ba2V5XSA9IHZhbDtcbiAgfSBlbHNlIHtcbiAgICBoaWRlKE8sIGtleSwgdmFsKTtcbiAgfVxuLy8gYWRkIGZha2UgRnVuY3Rpb24jdG9TdHJpbmcgZm9yIGNvcnJlY3Qgd29yayB3cmFwcGVkIG1ldGhvZHMgLyBjb25zdHJ1Y3RvcnMgd2l0aCBtZXRob2RzIGxpa2UgTG9EYXNoIGlzTmF0aXZlXG59KShGdW5jdGlvbi5wcm90b3R5cGUsIFRPX1NUUklORywgZnVuY3Rpb24gdG9TdHJpbmcoKSB7XG4gIHJldHVybiB0eXBlb2YgdGhpcyA9PSAnZnVuY3Rpb24nICYmIHRoaXNbU1JDXSB8fCAkdG9TdHJpbmcuY2FsbCh0aGlzKTtcbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xuXG52YXIgY2xhc3NvZiA9IHJlcXVpcmUoJy4vX2NsYXNzb2YnKTtcbnZhciBidWlsdGluRXhlYyA9IFJlZ0V4cC5wcm90b3R5cGUuZXhlYztcblxuIC8vIGBSZWdFeHBFeGVjYCBhYnN0cmFjdCBvcGVyYXRpb25cbi8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLXJlZ2V4cGV4ZWNcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKFIsIFMpIHtcbiAgdmFyIGV4ZWMgPSBSLmV4ZWM7XG4gIGlmICh0eXBlb2YgZXhlYyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHZhciByZXN1bHQgPSBleGVjLmNhbGwoUiwgUyk7XG4gICAgaWYgKHR5cGVvZiByZXN1bHQgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdSZWdFeHAgZXhlYyBtZXRob2QgcmV0dXJuZWQgc29tZXRoaW5nIG90aGVyIHRoYW4gYW4gT2JqZWN0IG9yIG51bGwnKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuICBpZiAoY2xhc3NvZihSKSAhPT0gJ1JlZ0V4cCcpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdSZWdFeHAjZXhlYyBjYWxsZWQgb24gaW5jb21wYXRpYmxlIHJlY2VpdmVyJyk7XG4gIH1cbiAgcmV0dXJuIGJ1aWx0aW5FeGVjLmNhbGwoUiwgUyk7XG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xuXG52YXIgcmVnZXhwRmxhZ3MgPSByZXF1aXJlKCcuL19mbGFncycpO1xuXG52YXIgbmF0aXZlRXhlYyA9IFJlZ0V4cC5wcm90b3R5cGUuZXhlYztcbi8vIFRoaXMgYWx3YXlzIHJlZmVycyB0byB0aGUgbmF0aXZlIGltcGxlbWVudGF0aW9uLCBiZWNhdXNlIHRoZVxuLy8gU3RyaW5nI3JlcGxhY2UgcG9seWZpbGwgdXNlcyAuL2ZpeC1yZWdleHAtd2VsbC1rbm93bi1zeW1ib2wtbG9naWMuanMsXG4vLyB3aGljaCBsb2FkcyB0aGlzIGZpbGUgYmVmb3JlIHBhdGNoaW5nIHRoZSBtZXRob2QuXG52YXIgbmF0aXZlUmVwbGFjZSA9IFN0cmluZy5wcm90b3R5cGUucmVwbGFjZTtcblxudmFyIHBhdGNoZWRFeGVjID0gbmF0aXZlRXhlYztcblxudmFyIExBU1RfSU5ERVggPSAnbGFzdEluZGV4JztcblxudmFyIFVQREFURVNfTEFTVF9JTkRFWF9XUk9ORyA9IChmdW5jdGlvbiAoKSB7XG4gIHZhciByZTEgPSAvYS8sXG4gICAgICByZTIgPSAvYiovZztcbiAgbmF0aXZlRXhlYy5jYWxsKHJlMSwgJ2EnKTtcbiAgbmF0aXZlRXhlYy5jYWxsKHJlMiwgJ2EnKTtcbiAgcmV0dXJuIHJlMVtMQVNUX0lOREVYXSAhPT0gMCB8fCByZTJbTEFTVF9JTkRFWF0gIT09IDA7XG59KSgpO1xuXG4vLyBub25wYXJ0aWNpcGF0aW5nIGNhcHR1cmluZyBncm91cCwgY29waWVkIGZyb20gZXM1LXNoaW0ncyBTdHJpbmcjc3BsaXQgcGF0Y2guXG52YXIgTlBDR19JTkNMVURFRCA9IC8oKT8/Ly5leGVjKCcnKVsxXSAhPT0gdW5kZWZpbmVkO1xuXG52YXIgUEFUQ0ggPSBVUERBVEVTX0xBU1RfSU5ERVhfV1JPTkcgfHwgTlBDR19JTkNMVURFRDtcblxuaWYgKFBBVENIKSB7XG4gIHBhdGNoZWRFeGVjID0gZnVuY3Rpb24gZXhlYyhzdHIpIHtcbiAgICB2YXIgcmUgPSB0aGlzO1xuICAgIHZhciBsYXN0SW5kZXgsIHJlQ29weSwgbWF0Y2gsIGk7XG5cbiAgICBpZiAoTlBDR19JTkNMVURFRCkge1xuICAgICAgcmVDb3B5ID0gbmV3IFJlZ0V4cCgnXicgKyByZS5zb3VyY2UgKyAnJCg/IVxcXFxzKScsIHJlZ2V4cEZsYWdzLmNhbGwocmUpKTtcbiAgICB9XG4gICAgaWYgKFVQREFURVNfTEFTVF9JTkRFWF9XUk9ORykgbGFzdEluZGV4ID0gcmVbTEFTVF9JTkRFWF07XG5cbiAgICBtYXRjaCA9IG5hdGl2ZUV4ZWMuY2FsbChyZSwgc3RyKTtcblxuICAgIGlmIChVUERBVEVTX0xBU1RfSU5ERVhfV1JPTkcgJiYgbWF0Y2gpIHtcbiAgICAgIHJlW0xBU1RfSU5ERVhdID0gcmUuZ2xvYmFsID8gbWF0Y2guaW5kZXggKyBtYXRjaFswXS5sZW5ndGggOiBsYXN0SW5kZXg7XG4gICAgfVxuICAgIGlmIChOUENHX0lOQ0xVREVEICYmIG1hdGNoICYmIG1hdGNoLmxlbmd0aCA+IDEpIHtcbiAgICAgIC8vIEZpeCBicm93c2VycyB3aG9zZSBgZXhlY2AgbWV0aG9kcyBkb24ndCBjb25zaXN0ZW50bHkgcmV0dXJuIGB1bmRlZmluZWRgXG4gICAgICAvLyBmb3IgTlBDRywgbGlrZSBJRTguIE5PVEU6IFRoaXMgZG9lc24nIHdvcmsgZm9yIC8oLj8pPy9cbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1sb29wLWZ1bmNcbiAgICAgIG5hdGl2ZVJlcGxhY2UuY2FsbChtYXRjaFswXSwgcmVDb3B5LCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGZvciAoaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoIC0gMjsgaSsrKSB7XG4gICAgICAgICAgaWYgKGFyZ3VtZW50c1tpXSA9PT0gdW5kZWZpbmVkKSBtYXRjaFtpXSA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hdGNoO1xuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHBhdGNoZWRFeGVjO1xuIiwiLy8gNy4yLjkgU2FtZVZhbHVlKHgsIHkpXG5tb2R1bGUuZXhwb3J0cyA9IE9iamVjdC5pcyB8fCBmdW5jdGlvbiBpcyh4LCB5KSB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmVcbiAgcmV0dXJuIHggPT09IHkgPyB4ICE9PSAwIHx8IDEgLyB4ID09PSAxIC8geSA6IHggIT0geCAmJiB5ICE9IHk7XG59O1xuIiwiLy8gV29ya3Mgd2l0aCBfX3Byb3RvX18gb25seS4gT2xkIHY4IGNhbid0IHdvcmsgd2l0aCBudWxsIHByb3RvIG9iamVjdHMuXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1wcm90byAqL1xudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuL19hbi1vYmplY3QnKTtcbnZhciBjaGVjayA9IGZ1bmN0aW9uIChPLCBwcm90bykge1xuICBhbk9iamVjdChPKTtcbiAgaWYgKCFpc09iamVjdChwcm90bykgJiYgcHJvdG8gIT09IG51bGwpIHRocm93IFR5cGVFcnJvcihwcm90byArIFwiOiBjYW4ndCBzZXQgYXMgcHJvdG90eXBlIVwiKTtcbn07XG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgc2V0OiBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHwgKCdfX3Byb3RvX18nIGluIHt9ID8gLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICAgIGZ1bmN0aW9uICh0ZXN0LCBidWdneSwgc2V0KSB7XG4gICAgICB0cnkge1xuICAgICAgICBzZXQgPSByZXF1aXJlKCcuL19jdHgnKShGdW5jdGlvbi5jYWxsLCByZXF1aXJlKCcuL19vYmplY3QtZ29wZCcpLmYoT2JqZWN0LnByb3RvdHlwZSwgJ19fcHJvdG9fXycpLnNldCwgMik7XG4gICAgICAgIHNldCh0ZXN0LCBbXSk7XG4gICAgICAgIGJ1Z2d5ID0gISh0ZXN0IGluc3RhbmNlb2YgQXJyYXkpO1xuICAgICAgfSBjYXRjaCAoZSkgeyBidWdneSA9IHRydWU7IH1cbiAgICAgIHJldHVybiBmdW5jdGlvbiBzZXRQcm90b3R5cGVPZihPLCBwcm90bykge1xuICAgICAgICBjaGVjayhPLCBwcm90byk7XG4gICAgICAgIGlmIChidWdneSkgTy5fX3Byb3RvX18gPSBwcm90bztcbiAgICAgICAgZWxzZSBzZXQoTywgcHJvdG8pO1xuICAgICAgICByZXR1cm4gTztcbiAgICAgIH07XG4gICAgfSh7fSwgZmFsc2UpIDogdW5kZWZpbmVkKSxcbiAgY2hlY2s6IGNoZWNrXG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIGRQID0gcmVxdWlyZSgnLi9fb2JqZWN0LWRwJyk7XG52YXIgREVTQ1JJUFRPUlMgPSByZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpO1xudmFyIFNQRUNJRVMgPSByZXF1aXJlKCcuL193a3MnKSgnc3BlY2llcycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChLRVkpIHtcbiAgdmFyIEMgPSBnbG9iYWxbS0VZXTtcbiAgaWYgKERFU0NSSVBUT1JTICYmIEMgJiYgIUNbU1BFQ0lFU10pIGRQLmYoQywgU1BFQ0lFUywge1xuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH1cbiAgfSk7XG59O1xuIiwidmFyIGRlZiA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpLmY7XG52YXIgaGFzID0gcmVxdWlyZSgnLi9faGFzJyk7XG52YXIgVEFHID0gcmVxdWlyZSgnLi9fd2tzJykoJ3RvU3RyaW5nVGFnJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0LCB0YWcsIHN0YXQpIHtcbiAgaWYgKGl0ICYmICFoYXMoaXQgPSBzdGF0ID8gaXQgOiBpdC5wcm90b3R5cGUsIFRBRykpIGRlZihpdCwgVEFHLCB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSwgdmFsdWU6IHRhZyB9KTtcbn07XG4iLCJ2YXIgc2hhcmVkID0gcmVxdWlyZSgnLi9fc2hhcmVkJykoJ2tleXMnKTtcbnZhciB1aWQgPSByZXF1aXJlKCcuL191aWQnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICByZXR1cm4gc2hhcmVkW2tleV0gfHwgKHNoYXJlZFtrZXldID0gdWlkKGtleSkpO1xufTtcbiIsInZhciBjb3JlID0gcmVxdWlyZSgnLi9fY29yZScpO1xudmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIFNIQVJFRCA9ICdfX2NvcmUtanNfc2hhcmVkX18nO1xudmFyIHN0b3JlID0gZ2xvYmFsW1NIQVJFRF0gfHwgKGdsb2JhbFtTSEFSRURdID0ge30pO1xuXG4obW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoa2V5LCB2YWx1ZSkge1xuICByZXR1cm4gc3RvcmVba2V5XSB8fCAoc3RvcmVba2V5XSA9IHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6IHt9KTtcbn0pKCd2ZXJzaW9ucycsIFtdKS5wdXNoKHtcbiAgdmVyc2lvbjogY29yZS52ZXJzaW9uLFxuICBtb2RlOiByZXF1aXJlKCcuL19saWJyYXJ5JykgPyAncHVyZScgOiAnZ2xvYmFsJyxcbiAgY29weXJpZ2h0OiAnwqkgMjAyMCBEZW5pcyBQdXNoa2FyZXYgKHpsb2lyb2NrLnJ1KSdcbn0pO1xuIiwiLy8gNy4zLjIwIFNwZWNpZXNDb25zdHJ1Y3RvcihPLCBkZWZhdWx0Q29uc3RydWN0b3IpXG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuL19hbi1vYmplY3QnKTtcbnZhciBhRnVuY3Rpb24gPSByZXF1aXJlKCcuL19hLWZ1bmN0aW9uJyk7XG52YXIgU1BFQ0lFUyA9IHJlcXVpcmUoJy4vX3drcycpKCdzcGVjaWVzJyk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChPLCBEKSB7XG4gIHZhciBDID0gYW5PYmplY3QoTykuY29uc3RydWN0b3I7XG4gIHZhciBTO1xuICByZXR1cm4gQyA9PT0gdW5kZWZpbmVkIHx8IChTID0gYW5PYmplY3QoQylbU1BFQ0lFU10pID09IHVuZGVmaW5lZCA/IEQgOiBhRnVuY3Rpb24oUyk7XG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyIGZhaWxzID0gcmVxdWlyZSgnLi9fZmFpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAobWV0aG9kLCBhcmcpIHtcbiAgcmV0dXJuICEhbWV0aG9kICYmIGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdXNlbGVzcy1jYWxsXG4gICAgYXJnID8gbWV0aG9kLmNhbGwobnVsbCwgZnVuY3Rpb24gKCkgeyAvKiBlbXB0eSAqLyB9LCAxKSA6IG1ldGhvZC5jYWxsKG51bGwpO1xuICB9KTtcbn07XG4iLCJ2YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi9fdG8taW50ZWdlcicpO1xudmFyIGRlZmluZWQgPSByZXF1aXJlKCcuL19kZWZpbmVkJyk7XG4vLyB0cnVlICAtPiBTdHJpbmcjYXRcbi8vIGZhbHNlIC0+IFN0cmluZyNjb2RlUG9pbnRBdFxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoVE9fU1RSSU5HKSB7XG4gIHJldHVybiBmdW5jdGlvbiAodGhhdCwgcG9zKSB7XG4gICAgdmFyIHMgPSBTdHJpbmcoZGVmaW5lZCh0aGF0KSk7XG4gICAgdmFyIGkgPSB0b0ludGVnZXIocG9zKTtcbiAgICB2YXIgbCA9IHMubGVuZ3RoO1xuICAgIHZhciBhLCBiO1xuICAgIGlmIChpIDwgMCB8fCBpID49IGwpIHJldHVybiBUT19TVFJJTkcgPyAnJyA6IHVuZGVmaW5lZDtcbiAgICBhID0gcy5jaGFyQ29kZUF0KGkpO1xuICAgIHJldHVybiBhIDwgMHhkODAwIHx8IGEgPiAweGRiZmYgfHwgaSArIDEgPT09IGwgfHwgKGIgPSBzLmNoYXJDb2RlQXQoaSArIDEpKSA8IDB4ZGMwMCB8fCBiID4gMHhkZmZmXG4gICAgICA/IFRPX1NUUklORyA/IHMuY2hhckF0KGkpIDogYVxuICAgICAgOiBUT19TVFJJTkcgPyBzLnNsaWNlKGksIGkgKyAyKSA6IChhIC0gMHhkODAwIDw8IDEwKSArIChiIC0gMHhkYzAwKSArIDB4MTAwMDA7XG4gIH07XG59O1xuIiwiLy8gaGVscGVyIGZvciBTdHJpbmcje3N0YXJ0c1dpdGgsIGVuZHNXaXRoLCBpbmNsdWRlc31cbnZhciBpc1JlZ0V4cCA9IHJlcXVpcmUoJy4vX2lzLXJlZ2V4cCcpO1xudmFyIGRlZmluZWQgPSByZXF1aXJlKCcuL19kZWZpbmVkJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKHRoYXQsIHNlYXJjaFN0cmluZywgTkFNRSkge1xuICBpZiAoaXNSZWdFeHAoc2VhcmNoU3RyaW5nKSkgdGhyb3cgVHlwZUVycm9yKCdTdHJpbmcjJyArIE5BTUUgKyBcIiBkb2Vzbid0IGFjY2VwdCByZWdleCFcIik7XG4gIHJldHVybiBTdHJpbmcoZGVmaW5lZCh0aGF0KSk7XG59O1xuIiwidmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciBmYWlscyA9IHJlcXVpcmUoJy4vX2ZhaWxzJyk7XG52YXIgZGVmaW5lZCA9IHJlcXVpcmUoJy4vX2RlZmluZWQnKTtcbnZhciBxdW90ID0gL1wiL2c7XG4vLyBCLjIuMy4yLjEgQ3JlYXRlSFRNTChzdHJpbmcsIHRhZywgYXR0cmlidXRlLCB2YWx1ZSlcbnZhciBjcmVhdGVIVE1MID0gZnVuY3Rpb24gKHN0cmluZywgdGFnLCBhdHRyaWJ1dGUsIHZhbHVlKSB7XG4gIHZhciBTID0gU3RyaW5nKGRlZmluZWQoc3RyaW5nKSk7XG4gIHZhciBwMSA9ICc8JyArIHRhZztcbiAgaWYgKGF0dHJpYnV0ZSAhPT0gJycpIHAxICs9ICcgJyArIGF0dHJpYnV0ZSArICc9XCInICsgU3RyaW5nKHZhbHVlKS5yZXBsYWNlKHF1b3QsICcmcXVvdDsnKSArICdcIic7XG4gIHJldHVybiBwMSArICc+JyArIFMgKyAnPC8nICsgdGFnICsgJz4nO1xufTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKE5BTUUsIGV4ZWMpIHtcbiAgdmFyIE8gPSB7fTtcbiAgT1tOQU1FXSA9IGV4ZWMoY3JlYXRlSFRNTCk7XG4gICRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogZmFpbHMoZnVuY3Rpb24gKCkge1xuICAgIHZhciB0ZXN0ID0gJydbTkFNRV0oJ1wiJyk7XG4gICAgcmV0dXJuIHRlc3QgIT09IHRlc3QudG9Mb3dlckNhc2UoKSB8fCB0ZXN0LnNwbGl0KCdcIicpLmxlbmd0aCA+IDM7XG4gIH0pLCAnU3RyaW5nJywgTyk7XG59O1xuIiwiLy8gaHR0cHM6Ly9naXRodWIuY29tL3RjMzkvcHJvcG9zYWwtc3RyaW5nLXBhZC1zdGFydC1lbmRcbnZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xudmFyIHJlcGVhdCA9IHJlcXVpcmUoJy4vX3N0cmluZy1yZXBlYXQnKTtcbnZhciBkZWZpbmVkID0gcmVxdWlyZSgnLi9fZGVmaW5lZCcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICh0aGF0LCBtYXhMZW5ndGgsIGZpbGxTdHJpbmcsIGxlZnQpIHtcbiAgdmFyIFMgPSBTdHJpbmcoZGVmaW5lZCh0aGF0KSk7XG4gIHZhciBzdHJpbmdMZW5ndGggPSBTLmxlbmd0aDtcbiAgdmFyIGZpbGxTdHIgPSBmaWxsU3RyaW5nID09PSB1bmRlZmluZWQgPyAnICcgOiBTdHJpbmcoZmlsbFN0cmluZyk7XG4gIHZhciBpbnRNYXhMZW5ndGggPSB0b0xlbmd0aChtYXhMZW5ndGgpO1xuICBpZiAoaW50TWF4TGVuZ3RoIDw9IHN0cmluZ0xlbmd0aCB8fCBmaWxsU3RyID09ICcnKSByZXR1cm4gUztcbiAgdmFyIGZpbGxMZW4gPSBpbnRNYXhMZW5ndGggLSBzdHJpbmdMZW5ndGg7XG4gIHZhciBzdHJpbmdGaWxsZXIgPSByZXBlYXQuY2FsbChmaWxsU3RyLCBNYXRoLmNlaWwoZmlsbExlbiAvIGZpbGxTdHIubGVuZ3RoKSk7XG4gIGlmIChzdHJpbmdGaWxsZXIubGVuZ3RoID4gZmlsbExlbikgc3RyaW5nRmlsbGVyID0gc3RyaW5nRmlsbGVyLnNsaWNlKDAsIGZpbGxMZW4pO1xuICByZXR1cm4gbGVmdCA/IHN0cmluZ0ZpbGxlciArIFMgOiBTICsgc3RyaW5nRmlsbGVyO1xufTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciB0b0ludGVnZXIgPSByZXF1aXJlKCcuL190by1pbnRlZ2VyJyk7XG52YXIgZGVmaW5lZCA9IHJlcXVpcmUoJy4vX2RlZmluZWQnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiByZXBlYXQoY291bnQpIHtcbiAgdmFyIHN0ciA9IFN0cmluZyhkZWZpbmVkKHRoaXMpKTtcbiAgdmFyIHJlcyA9ICcnO1xuICB2YXIgbiA9IHRvSW50ZWdlcihjb3VudCk7XG4gIGlmIChuIDwgMCB8fCBuID09IEluZmluaXR5KSB0aHJvdyBSYW5nZUVycm9yKFwiQ291bnQgY2FuJ3QgYmUgbmVnYXRpdmVcIik7XG4gIGZvciAoO24gPiAwOyAobiA+Pj49IDEpICYmIChzdHIgKz0gc3RyKSkgaWYgKG4gJiAxKSByZXMgKz0gc3RyO1xuICByZXR1cm4gcmVzO1xufTtcbiIsInZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgZGVmaW5lZCA9IHJlcXVpcmUoJy4vX2RlZmluZWQnKTtcbnZhciBmYWlscyA9IHJlcXVpcmUoJy4vX2ZhaWxzJyk7XG52YXIgc3BhY2VzID0gcmVxdWlyZSgnLi9fc3RyaW5nLXdzJyk7XG52YXIgc3BhY2UgPSAnWycgKyBzcGFjZXMgKyAnXSc7XG52YXIgbm9uID0gJ1xcdTIwMGJcXHUwMDg1JztcbnZhciBsdHJpbSA9IFJlZ0V4cCgnXicgKyBzcGFjZSArIHNwYWNlICsgJyonKTtcbnZhciBydHJpbSA9IFJlZ0V4cChzcGFjZSArIHNwYWNlICsgJyokJyk7XG5cbnZhciBleHBvcnRlciA9IGZ1bmN0aW9uIChLRVksIGV4ZWMsIEFMSUFTKSB7XG4gIHZhciBleHAgPSB7fTtcbiAgdmFyIEZPUkNFID0gZmFpbHMoZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAhIXNwYWNlc1tLRVldKCkgfHwgbm9uW0tFWV0oKSAhPSBub247XG4gIH0pO1xuICB2YXIgZm4gPSBleHBbS0VZXSA9IEZPUkNFID8gZXhlYyh0cmltKSA6IHNwYWNlc1tLRVldO1xuICBpZiAoQUxJQVMpIGV4cFtBTElBU10gPSBmbjtcbiAgJGV4cG9ydCgkZXhwb3J0LlAgKyAkZXhwb3J0LkYgKiBGT1JDRSwgJ1N0cmluZycsIGV4cCk7XG59O1xuXG4vLyAxIC0+IFN0cmluZyN0cmltTGVmdFxuLy8gMiAtPiBTdHJpbmcjdHJpbVJpZ2h0XG4vLyAzIC0+IFN0cmluZyN0cmltXG52YXIgdHJpbSA9IGV4cG9ydGVyLnRyaW0gPSBmdW5jdGlvbiAoc3RyaW5nLCBUWVBFKSB7XG4gIHN0cmluZyA9IFN0cmluZyhkZWZpbmVkKHN0cmluZykpO1xuICBpZiAoVFlQRSAmIDEpIHN0cmluZyA9IHN0cmluZy5yZXBsYWNlKGx0cmltLCAnJyk7XG4gIGlmIChUWVBFICYgMikgc3RyaW5nID0gc3RyaW5nLnJlcGxhY2UocnRyaW0sICcnKTtcbiAgcmV0dXJuIHN0cmluZztcbn07XG5cbm1vZHVsZS5leHBvcnRzID0gZXhwb3J0ZXI7XG4iLCJtb2R1bGUuZXhwb3J0cyA9ICdcXHgwOVxceDBBXFx4MEJcXHgwQ1xceDBEXFx4MjBcXHhBMFxcdTE2ODBcXHUxODBFXFx1MjAwMFxcdTIwMDFcXHUyMDAyXFx1MjAwMycgK1xuICAnXFx1MjAwNFxcdTIwMDVcXHUyMDA2XFx1MjAwN1xcdTIwMDhcXHUyMDA5XFx1MjAwQVxcdTIwMkZcXHUyMDVGXFx1MzAwMFxcdTIwMjhcXHUyMDI5XFx1RkVGRic7XG4iLCJ2YXIgY3R4ID0gcmVxdWlyZSgnLi9fY3R4Jyk7XG52YXIgaW52b2tlID0gcmVxdWlyZSgnLi9faW52b2tlJyk7XG52YXIgaHRtbCA9IHJlcXVpcmUoJy4vX2h0bWwnKTtcbnZhciBjZWwgPSByZXF1aXJlKCcuL19kb20tY3JlYXRlJyk7XG52YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi9fZ2xvYmFsJyk7XG52YXIgcHJvY2VzcyA9IGdsb2JhbC5wcm9jZXNzO1xudmFyIHNldFRhc2sgPSBnbG9iYWwuc2V0SW1tZWRpYXRlO1xudmFyIGNsZWFyVGFzayA9IGdsb2JhbC5jbGVhckltbWVkaWF0ZTtcbnZhciBNZXNzYWdlQ2hhbm5lbCA9IGdsb2JhbC5NZXNzYWdlQ2hhbm5lbDtcbnZhciBEaXNwYXRjaCA9IGdsb2JhbC5EaXNwYXRjaDtcbnZhciBjb3VudGVyID0gMDtcbnZhciBxdWV1ZSA9IHt9O1xudmFyIE9OUkVBRFlTVEFURUNIQU5HRSA9ICdvbnJlYWR5c3RhdGVjaGFuZ2UnO1xudmFyIGRlZmVyLCBjaGFubmVsLCBwb3J0O1xudmFyIHJ1biA9IGZ1bmN0aW9uICgpIHtcbiAgdmFyIGlkID0gK3RoaXM7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wcm90b3R5cGUtYnVpbHRpbnNcbiAgaWYgKHF1ZXVlLmhhc093blByb3BlcnR5KGlkKSkge1xuICAgIHZhciBmbiA9IHF1ZXVlW2lkXTtcbiAgICBkZWxldGUgcXVldWVbaWRdO1xuICAgIGZuKCk7XG4gIH1cbn07XG52YXIgbGlzdGVuZXIgPSBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgcnVuLmNhbGwoZXZlbnQuZGF0YSk7XG59O1xuLy8gTm9kZS5qcyAwLjkrICYgSUUxMCsgaGFzIHNldEltbWVkaWF0ZSwgb3RoZXJ3aXNlOlxuaWYgKCFzZXRUYXNrIHx8ICFjbGVhclRhc2spIHtcbiAgc2V0VGFzayA9IGZ1bmN0aW9uIHNldEltbWVkaWF0ZShmbikge1xuICAgIHZhciBhcmdzID0gW107XG4gICAgdmFyIGkgPSAxO1xuICAgIHdoaWxlIChhcmd1bWVudHMubGVuZ3RoID4gaSkgYXJncy5wdXNoKGFyZ3VtZW50c1tpKytdKTtcbiAgICBxdWV1ZVsrK2NvdW50ZXJdID0gZnVuY3Rpb24gKCkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLW5ldy1mdW5jXG4gICAgICBpbnZva2UodHlwZW9mIGZuID09ICdmdW5jdGlvbicgPyBmbiA6IEZ1bmN0aW9uKGZuKSwgYXJncyk7XG4gICAgfTtcbiAgICBkZWZlcihjb3VudGVyKTtcbiAgICByZXR1cm4gY291bnRlcjtcbiAgfTtcbiAgY2xlYXJUYXNrID0gZnVuY3Rpb24gY2xlYXJJbW1lZGlhdGUoaWQpIHtcbiAgICBkZWxldGUgcXVldWVbaWRdO1xuICB9O1xuICAvLyBOb2RlLmpzIDAuOC1cbiAgaWYgKHJlcXVpcmUoJy4vX2NvZicpKHByb2Nlc3MpID09ICdwcm9jZXNzJykge1xuICAgIGRlZmVyID0gZnVuY3Rpb24gKGlkKSB7XG4gICAgICBwcm9jZXNzLm5leHRUaWNrKGN0eChydW4sIGlkLCAxKSk7XG4gICAgfTtcbiAgLy8gU3BoZXJlIChKUyBnYW1lIGVuZ2luZSkgRGlzcGF0Y2ggQVBJXG4gIH0gZWxzZSBpZiAoRGlzcGF0Y2ggJiYgRGlzcGF0Y2gubm93KSB7XG4gICAgZGVmZXIgPSBmdW5jdGlvbiAoaWQpIHtcbiAgICAgIERpc3BhdGNoLm5vdyhjdHgocnVuLCBpZCwgMSkpO1xuICAgIH07XG4gIC8vIEJyb3dzZXJzIHdpdGggTWVzc2FnZUNoYW5uZWwsIGluY2x1ZGVzIFdlYldvcmtlcnNcbiAgfSBlbHNlIGlmIChNZXNzYWdlQ2hhbm5lbCkge1xuICAgIGNoYW5uZWwgPSBuZXcgTWVzc2FnZUNoYW5uZWwoKTtcbiAgICBwb3J0ID0gY2hhbm5lbC5wb3J0MjtcbiAgICBjaGFubmVsLnBvcnQxLm9ubWVzc2FnZSA9IGxpc3RlbmVyO1xuICAgIGRlZmVyID0gY3R4KHBvcnQucG9zdE1lc3NhZ2UsIHBvcnQsIDEpO1xuICAvLyBCcm93c2VycyB3aXRoIHBvc3RNZXNzYWdlLCBza2lwIFdlYldvcmtlcnNcbiAgLy8gSUU4IGhhcyBwb3N0TWVzc2FnZSwgYnV0IGl0J3Mgc3luYyAmIHR5cGVvZiBpdHMgcG9zdE1lc3NhZ2UgaXMgJ29iamVjdCdcbiAgfSBlbHNlIGlmIChnbG9iYWwuYWRkRXZlbnRMaXN0ZW5lciAmJiB0eXBlb2YgcG9zdE1lc3NhZ2UgPT0gJ2Z1bmN0aW9uJyAmJiAhZ2xvYmFsLmltcG9ydFNjcmlwdHMpIHtcbiAgICBkZWZlciA9IGZ1bmN0aW9uIChpZCkge1xuICAgICAgZ2xvYmFsLnBvc3RNZXNzYWdlKGlkICsgJycsICcqJyk7XG4gICAgfTtcbiAgICBnbG9iYWwuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIGxpc3RlbmVyLCBmYWxzZSk7XG4gIC8vIElFOC1cbiAgfSBlbHNlIGlmIChPTlJFQURZU1RBVEVDSEFOR0UgaW4gY2VsKCdzY3JpcHQnKSkge1xuICAgIGRlZmVyID0gZnVuY3Rpb24gKGlkKSB7XG4gICAgICBodG1sLmFwcGVuZENoaWxkKGNlbCgnc2NyaXB0JykpW09OUkVBRFlTVEFURUNIQU5HRV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGh0bWwucmVtb3ZlQ2hpbGQodGhpcyk7XG4gICAgICAgIHJ1bi5jYWxsKGlkKTtcbiAgICAgIH07XG4gICAgfTtcbiAgLy8gUmVzdCBvbGQgYnJvd3NlcnNcbiAgfSBlbHNlIHtcbiAgICBkZWZlciA9IGZ1bmN0aW9uIChpZCkge1xuICAgICAgc2V0VGltZW91dChjdHgocnVuLCBpZCwgMSksIDApO1xuICAgIH07XG4gIH1cbn1cbm1vZHVsZS5leHBvcnRzID0ge1xuICBzZXQ6IHNldFRhc2ssXG4gIGNsZWFyOiBjbGVhclRhc2tcbn07XG4iLCJ2YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi9fdG8taW50ZWdlcicpO1xudmFyIG1heCA9IE1hdGgubWF4O1xudmFyIG1pbiA9IE1hdGgubWluO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaW5kZXgsIGxlbmd0aCkge1xuICBpbmRleCA9IHRvSW50ZWdlcihpbmRleCk7XG4gIHJldHVybiBpbmRleCA8IDAgPyBtYXgoaW5kZXggKyBsZW5ndGgsIDApIDogbWluKGluZGV4LCBsZW5ndGgpO1xufTtcbiIsIi8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLXRvaW5kZXhcbnZhciB0b0ludGVnZXIgPSByZXF1aXJlKCcuL190by1pbnRlZ2VyJyk7XG52YXIgdG9MZW5ndGggPSByZXF1aXJlKCcuL190by1sZW5ndGgnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmIChpdCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gMDtcbiAgdmFyIG51bWJlciA9IHRvSW50ZWdlcihpdCk7XG4gIHZhciBsZW5ndGggPSB0b0xlbmd0aChudW1iZXIpO1xuICBpZiAobnVtYmVyICE9PSBsZW5ndGgpIHRocm93IFJhbmdlRXJyb3IoJ1dyb25nIGxlbmd0aCEnKTtcbiAgcmV0dXJuIGxlbmd0aDtcbn07XG4iLCIvLyA3LjEuNCBUb0ludGVnZXJcbnZhciBjZWlsID0gTWF0aC5jZWlsO1xudmFyIGZsb29yID0gTWF0aC5mbG9vcjtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBpc05hTihpdCA9ICtpdCkgPyAwIDogKGl0ID4gMCA/IGZsb29yIDogY2VpbCkoaXQpO1xufTtcbiIsIi8vIHRvIGluZGV4ZWQgb2JqZWN0LCB0b09iamVjdCB3aXRoIGZhbGxiYWNrIGZvciBub24tYXJyYXktbGlrZSBFUzMgc3RyaW5nc1xudmFyIElPYmplY3QgPSByZXF1aXJlKCcuL19pb2JqZWN0Jyk7XG52YXIgZGVmaW5lZCA9IHJlcXVpcmUoJy4vX2RlZmluZWQnKTtcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBJT2JqZWN0KGRlZmluZWQoaXQpKTtcbn07XG4iLCIvLyA3LjEuMTUgVG9MZW5ndGhcbnZhciB0b0ludGVnZXIgPSByZXF1aXJlKCcuL190by1pbnRlZ2VyJyk7XG52YXIgbWluID0gTWF0aC5taW47XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gaXQgPiAwID8gbWluKHRvSW50ZWdlcihpdCksIDB4MWZmZmZmZmZmZmZmZmYpIDogMDsgLy8gcG93KDIsIDUzKSAtIDEgPT0gOTAwNzE5OTI1NDc0MDk5MVxufTtcbiIsIi8vIDcuMS4xMyBUb09iamVjdChhcmd1bWVudClcbnZhciBkZWZpbmVkID0gcmVxdWlyZSgnLi9fZGVmaW5lZCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIE9iamVjdChkZWZpbmVkKGl0KSk7XG59O1xuIiwiLy8gNy4xLjEgVG9QcmltaXRpdmUoaW5wdXQgWywgUHJlZmVycmVkVHlwZV0pXG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbi8vIGluc3RlYWQgb2YgdGhlIEVTNiBzcGVjIHZlcnNpb24sIHdlIGRpZG4ndCBpbXBsZW1lbnQgQEB0b1ByaW1pdGl2ZSBjYXNlXG4vLyBhbmQgdGhlIHNlY29uZCBhcmd1bWVudCAtIGZsYWcgLSBwcmVmZXJyZWQgdHlwZSBpcyBhIHN0cmluZ1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIFMpIHtcbiAgaWYgKCFpc09iamVjdChpdCkpIHJldHVybiBpdDtcbiAgdmFyIGZuLCB2YWw7XG4gIGlmIChTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICBpZiAodHlwZW9mIChmbiA9IGl0LnZhbHVlT2YpID09ICdmdW5jdGlvbicgJiYgIWlzT2JqZWN0KHZhbCA9IGZuLmNhbGwoaXQpKSkgcmV0dXJuIHZhbDtcbiAgaWYgKCFTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWVcIik7XG59O1xuIiwiJ3VzZSBzdHJpY3QnO1xuaWYgKHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJykpIHtcbiAgdmFyIExJQlJBUlkgPSByZXF1aXJlKCcuL19saWJyYXJ5Jyk7XG4gIHZhciBnbG9iYWwgPSByZXF1aXJlKCcuL19nbG9iYWwnKTtcbiAgdmFyIGZhaWxzID0gcmVxdWlyZSgnLi9fZmFpbHMnKTtcbiAgdmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbiAgdmFyICR0eXBlZCA9IHJlcXVpcmUoJy4vX3R5cGVkJyk7XG4gIHZhciAkYnVmZmVyID0gcmVxdWlyZSgnLi9fdHlwZWQtYnVmZmVyJyk7XG4gIHZhciBjdHggPSByZXF1aXJlKCcuL19jdHgnKTtcbiAgdmFyIGFuSW5zdGFuY2UgPSByZXF1aXJlKCcuL19hbi1pbnN0YW5jZScpO1xuICB2YXIgcHJvcGVydHlEZXNjID0gcmVxdWlyZSgnLi9fcHJvcGVydHktZGVzYycpO1xuICB2YXIgaGlkZSA9IHJlcXVpcmUoJy4vX2hpZGUnKTtcbiAgdmFyIHJlZGVmaW5lQWxsID0gcmVxdWlyZSgnLi9fcmVkZWZpbmUtYWxsJyk7XG4gIHZhciB0b0ludGVnZXIgPSByZXF1aXJlKCcuL190by1pbnRlZ2VyJyk7XG4gIHZhciB0b0xlbmd0aCA9IHJlcXVpcmUoJy4vX3RvLWxlbmd0aCcpO1xuICB2YXIgdG9JbmRleCA9IHJlcXVpcmUoJy4vX3RvLWluZGV4Jyk7XG4gIHZhciB0b0Fic29sdXRlSW5kZXggPSByZXF1aXJlKCcuL190by1hYnNvbHV0ZS1pbmRleCcpO1xuICB2YXIgdG9QcmltaXRpdmUgPSByZXF1aXJlKCcuL190by1wcmltaXRpdmUnKTtcbiAgdmFyIGhhcyA9IHJlcXVpcmUoJy4vX2hhcycpO1xuICB2YXIgY2xhc3NvZiA9IHJlcXVpcmUoJy4vX2NsYXNzb2YnKTtcbiAgdmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG4gIHZhciB0b09iamVjdCA9IHJlcXVpcmUoJy4vX3RvLW9iamVjdCcpO1xuICB2YXIgaXNBcnJheUl0ZXIgPSByZXF1aXJlKCcuL19pcy1hcnJheS1pdGVyJyk7XG4gIHZhciBjcmVhdGUgPSByZXF1aXJlKCcuL19vYmplY3QtY3JlYXRlJyk7XG4gIHZhciBnZXRQcm90b3R5cGVPZiA9IHJlcXVpcmUoJy4vX29iamVjdC1ncG8nKTtcbiAgdmFyIGdPUE4gPSByZXF1aXJlKCcuL19vYmplY3QtZ29wbicpLmY7XG4gIHZhciBnZXRJdGVyRm4gPSByZXF1aXJlKCcuL2NvcmUuZ2V0LWl0ZXJhdG9yLW1ldGhvZCcpO1xuICB2YXIgdWlkID0gcmVxdWlyZSgnLi9fdWlkJyk7XG4gIHZhciB3a3MgPSByZXF1aXJlKCcuL193a3MnKTtcbiAgdmFyIGNyZWF0ZUFycmF5TWV0aG9kID0gcmVxdWlyZSgnLi9fYXJyYXktbWV0aG9kcycpO1xuICB2YXIgY3JlYXRlQXJyYXlJbmNsdWRlcyA9IHJlcXVpcmUoJy4vX2FycmF5LWluY2x1ZGVzJyk7XG4gIHZhciBzcGVjaWVzQ29uc3RydWN0b3IgPSByZXF1aXJlKCcuL19zcGVjaWVzLWNvbnN0cnVjdG9yJyk7XG4gIHZhciBBcnJheUl0ZXJhdG9ycyA9IHJlcXVpcmUoJy4vZXM2LmFycmF5Lml0ZXJhdG9yJyk7XG4gIHZhciBJdGVyYXRvcnMgPSByZXF1aXJlKCcuL19pdGVyYXRvcnMnKTtcbiAgdmFyICRpdGVyRGV0ZWN0ID0gcmVxdWlyZSgnLi9faXRlci1kZXRlY3QnKTtcbiAgdmFyIHNldFNwZWNpZXMgPSByZXF1aXJlKCcuL19zZXQtc3BlY2llcycpO1xuICB2YXIgYXJyYXlGaWxsID0gcmVxdWlyZSgnLi9fYXJyYXktZmlsbCcpO1xuICB2YXIgYXJyYXlDb3B5V2l0aGluID0gcmVxdWlyZSgnLi9fYXJyYXktY29weS13aXRoaW4nKTtcbiAgdmFyICREUCA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpO1xuICB2YXIgJEdPUEQgPSByZXF1aXJlKCcuL19vYmplY3QtZ29wZCcpO1xuICB2YXIgZFAgPSAkRFAuZjtcbiAgdmFyIGdPUEQgPSAkR09QRC5mO1xuICB2YXIgUmFuZ2VFcnJvciA9IGdsb2JhbC5SYW5nZUVycm9yO1xuICB2YXIgVHlwZUVycm9yID0gZ2xvYmFsLlR5cGVFcnJvcjtcbiAgdmFyIFVpbnQ4QXJyYXkgPSBnbG9iYWwuVWludDhBcnJheTtcbiAgdmFyIEFSUkFZX0JVRkZFUiA9ICdBcnJheUJ1ZmZlcic7XG4gIHZhciBTSEFSRURfQlVGRkVSID0gJ1NoYXJlZCcgKyBBUlJBWV9CVUZGRVI7XG4gIHZhciBCWVRFU19QRVJfRUxFTUVOVCA9ICdCWVRFU19QRVJfRUxFTUVOVCc7XG4gIHZhciBQUk9UT1RZUEUgPSAncHJvdG90eXBlJztcbiAgdmFyIEFycmF5UHJvdG8gPSBBcnJheVtQUk9UT1RZUEVdO1xuICB2YXIgJEFycmF5QnVmZmVyID0gJGJ1ZmZlci5BcnJheUJ1ZmZlcjtcbiAgdmFyICREYXRhVmlldyA9ICRidWZmZXIuRGF0YVZpZXc7XG4gIHZhciBhcnJheUZvckVhY2ggPSBjcmVhdGVBcnJheU1ldGhvZCgwKTtcbiAgdmFyIGFycmF5RmlsdGVyID0gY3JlYXRlQXJyYXlNZXRob2QoMik7XG4gIHZhciBhcnJheVNvbWUgPSBjcmVhdGVBcnJheU1ldGhvZCgzKTtcbiAgdmFyIGFycmF5RXZlcnkgPSBjcmVhdGVBcnJheU1ldGhvZCg0KTtcbiAgdmFyIGFycmF5RmluZCA9IGNyZWF0ZUFycmF5TWV0aG9kKDUpO1xuICB2YXIgYXJyYXlGaW5kSW5kZXggPSBjcmVhdGVBcnJheU1ldGhvZCg2KTtcbiAgdmFyIGFycmF5SW5jbHVkZXMgPSBjcmVhdGVBcnJheUluY2x1ZGVzKHRydWUpO1xuICB2YXIgYXJyYXlJbmRleE9mID0gY3JlYXRlQXJyYXlJbmNsdWRlcyhmYWxzZSk7XG4gIHZhciBhcnJheVZhbHVlcyA9IEFycmF5SXRlcmF0b3JzLnZhbHVlcztcbiAgdmFyIGFycmF5S2V5cyA9IEFycmF5SXRlcmF0b3JzLmtleXM7XG4gIHZhciBhcnJheUVudHJpZXMgPSBBcnJheUl0ZXJhdG9ycy5lbnRyaWVzO1xuICB2YXIgYXJyYXlMYXN0SW5kZXhPZiA9IEFycmF5UHJvdG8ubGFzdEluZGV4T2Y7XG4gIHZhciBhcnJheVJlZHVjZSA9IEFycmF5UHJvdG8ucmVkdWNlO1xuICB2YXIgYXJyYXlSZWR1Y2VSaWdodCA9IEFycmF5UHJvdG8ucmVkdWNlUmlnaHQ7XG4gIHZhciBhcnJheUpvaW4gPSBBcnJheVByb3RvLmpvaW47XG4gIHZhciBhcnJheVNvcnQgPSBBcnJheVByb3RvLnNvcnQ7XG4gIHZhciBhcnJheVNsaWNlID0gQXJyYXlQcm90by5zbGljZTtcbiAgdmFyIGFycmF5VG9TdHJpbmcgPSBBcnJheVByb3RvLnRvU3RyaW5nO1xuICB2YXIgYXJyYXlUb0xvY2FsZVN0cmluZyA9IEFycmF5UHJvdG8udG9Mb2NhbGVTdHJpbmc7XG4gIHZhciBJVEVSQVRPUiA9IHdrcygnaXRlcmF0b3InKTtcbiAgdmFyIFRBRyA9IHdrcygndG9TdHJpbmdUYWcnKTtcbiAgdmFyIFRZUEVEX0NPTlNUUlVDVE9SID0gdWlkKCd0eXBlZF9jb25zdHJ1Y3RvcicpO1xuICB2YXIgREVGX0NPTlNUUlVDVE9SID0gdWlkKCdkZWZfY29uc3RydWN0b3InKTtcbiAgdmFyIEFMTF9DT05TVFJVQ1RPUlMgPSAkdHlwZWQuQ09OU1RSO1xuICB2YXIgVFlQRURfQVJSQVkgPSAkdHlwZWQuVFlQRUQ7XG4gIHZhciBWSUVXID0gJHR5cGVkLlZJRVc7XG4gIHZhciBXUk9OR19MRU5HVEggPSAnV3JvbmcgbGVuZ3RoISc7XG5cbiAgdmFyICRtYXAgPSBjcmVhdGVBcnJheU1ldGhvZCgxLCBmdW5jdGlvbiAoTywgbGVuZ3RoKSB7XG4gICAgcmV0dXJuIGFsbG9jYXRlKHNwZWNpZXNDb25zdHJ1Y3RvcihPLCBPW0RFRl9DT05TVFJVQ1RPUl0pLCBsZW5ndGgpO1xuICB9KTtcblxuICB2YXIgTElUVExFX0VORElBTiA9IGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZWZcbiAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkobmV3IFVpbnQxNkFycmF5KFsxXSkuYnVmZmVyKVswXSA9PT0gMTtcbiAgfSk7XG5cbiAgdmFyIEZPUkNFRF9TRVQgPSAhIVVpbnQ4QXJyYXkgJiYgISFVaW50OEFycmF5W1BST1RPVFlQRV0uc2V0ICYmIGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICBuZXcgVWludDhBcnJheSgxKS5zZXQoe30pO1xuICB9KTtcblxuICB2YXIgdG9PZmZzZXQgPSBmdW5jdGlvbiAoaXQsIEJZVEVTKSB7XG4gICAgdmFyIG9mZnNldCA9IHRvSW50ZWdlcihpdCk7XG4gICAgaWYgKG9mZnNldCA8IDAgfHwgb2Zmc2V0ICUgQllURVMpIHRocm93IFJhbmdlRXJyb3IoJ1dyb25nIG9mZnNldCEnKTtcbiAgICByZXR1cm4gb2Zmc2V0O1xuICB9O1xuXG4gIHZhciB2YWxpZGF0ZSA9IGZ1bmN0aW9uIChpdCkge1xuICAgIGlmIChpc09iamVjdChpdCkgJiYgVFlQRURfQVJSQVkgaW4gaXQpIHJldHVybiBpdDtcbiAgICB0aHJvdyBUeXBlRXJyb3IoaXQgKyAnIGlzIG5vdCBhIHR5cGVkIGFycmF5IScpO1xuICB9O1xuXG4gIHZhciBhbGxvY2F0ZSA9IGZ1bmN0aW9uIChDLCBsZW5ndGgpIHtcbiAgICBpZiAoIShpc09iamVjdChDKSAmJiBUWVBFRF9DT05TVFJVQ1RPUiBpbiBDKSkge1xuICAgICAgdGhyb3cgVHlwZUVycm9yKCdJdCBpcyBub3QgYSB0eXBlZCBhcnJheSBjb25zdHJ1Y3RvciEnKTtcbiAgICB9IHJldHVybiBuZXcgQyhsZW5ndGgpO1xuICB9O1xuXG4gIHZhciBzcGVjaWVzRnJvbUxpc3QgPSBmdW5jdGlvbiAoTywgbGlzdCkge1xuICAgIHJldHVybiBmcm9tTGlzdChzcGVjaWVzQ29uc3RydWN0b3IoTywgT1tERUZfQ09OU1RSVUNUT1JdKSwgbGlzdCk7XG4gIH07XG5cbiAgdmFyIGZyb21MaXN0ID0gZnVuY3Rpb24gKEMsIGxpc3QpIHtcbiAgICB2YXIgaW5kZXggPSAwO1xuICAgIHZhciBsZW5ndGggPSBsaXN0Lmxlbmd0aDtcbiAgICB2YXIgcmVzdWx0ID0gYWxsb2NhdGUoQywgbGVuZ3RoKTtcbiAgICB3aGlsZSAobGVuZ3RoID4gaW5kZXgpIHJlc3VsdFtpbmRleF0gPSBsaXN0W2luZGV4KytdO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH07XG5cbiAgdmFyIGFkZEdldHRlciA9IGZ1bmN0aW9uIChpdCwga2V5LCBpbnRlcm5hbCkge1xuICAgIGRQKGl0LCBrZXksIHsgZ2V0OiBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl9kW2ludGVybmFsXTsgfSB9KTtcbiAgfTtcblxuICB2YXIgJGZyb20gPSBmdW5jdGlvbiBmcm9tKHNvdXJjZSAvKiAsIG1hcGZuLCB0aGlzQXJnICovKSB7XG4gICAgdmFyIE8gPSB0b09iamVjdChzb3VyY2UpO1xuICAgIHZhciBhTGVuID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgICB2YXIgbWFwZm4gPSBhTGVuID4gMSA/IGFyZ3VtZW50c1sxXSA6IHVuZGVmaW5lZDtcbiAgICB2YXIgbWFwcGluZyA9IG1hcGZuICE9PSB1bmRlZmluZWQ7XG4gICAgdmFyIGl0ZXJGbiA9IGdldEl0ZXJGbihPKTtcbiAgICB2YXIgaSwgbGVuZ3RoLCB2YWx1ZXMsIHJlc3VsdCwgc3RlcCwgaXRlcmF0b3I7XG4gICAgaWYgKGl0ZXJGbiAhPSB1bmRlZmluZWQgJiYgIWlzQXJyYXlJdGVyKGl0ZXJGbikpIHtcbiAgICAgIGZvciAoaXRlcmF0b3IgPSBpdGVyRm4uY2FsbChPKSwgdmFsdWVzID0gW10sIGkgPSAwOyAhKHN0ZXAgPSBpdGVyYXRvci5uZXh0KCkpLmRvbmU7IGkrKykge1xuICAgICAgICB2YWx1ZXMucHVzaChzdGVwLnZhbHVlKTtcbiAgICAgIH0gTyA9IHZhbHVlcztcbiAgICB9XG4gICAgaWYgKG1hcHBpbmcgJiYgYUxlbiA+IDIpIG1hcGZuID0gY3R4KG1hcGZuLCBhcmd1bWVudHNbMl0sIDIpO1xuICAgIGZvciAoaSA9IDAsIGxlbmd0aCA9IHRvTGVuZ3RoKE8ubGVuZ3RoKSwgcmVzdWx0ID0gYWxsb2NhdGUodGhpcywgbGVuZ3RoKTsgbGVuZ3RoID4gaTsgaSsrKSB7XG4gICAgICByZXN1bHRbaV0gPSBtYXBwaW5nID8gbWFwZm4oT1tpXSwgaSkgOiBPW2ldO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9O1xuXG4gIHZhciAkb2YgPSBmdW5jdGlvbiBvZigvKiAuLi5pdGVtcyAqLykge1xuICAgIHZhciBpbmRleCA9IDA7XG4gICAgdmFyIGxlbmd0aCA9IGFyZ3VtZW50cy5sZW5ndGg7XG4gICAgdmFyIHJlc3VsdCA9IGFsbG9jYXRlKHRoaXMsIGxlbmd0aCk7XG4gICAgd2hpbGUgKGxlbmd0aCA+IGluZGV4KSByZXN1bHRbaW5kZXhdID0gYXJndW1lbnRzW2luZGV4KytdO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH07XG5cbiAgLy8gaU9TIFNhZmFyaSA2LnggZmFpbHMgaGVyZVxuICB2YXIgVE9fTE9DQUxFX0JVRyA9ICEhVWludDhBcnJheSAmJiBmYWlscyhmdW5jdGlvbiAoKSB7IGFycmF5VG9Mb2NhbGVTdHJpbmcuY2FsbChuZXcgVWludDhBcnJheSgxKSk7IH0pO1xuXG4gIHZhciAkdG9Mb2NhbGVTdHJpbmcgPSBmdW5jdGlvbiB0b0xvY2FsZVN0cmluZygpIHtcbiAgICByZXR1cm4gYXJyYXlUb0xvY2FsZVN0cmluZy5hcHBseShUT19MT0NBTEVfQlVHID8gYXJyYXlTbGljZS5jYWxsKHZhbGlkYXRlKHRoaXMpKSA6IHZhbGlkYXRlKHRoaXMpLCBhcmd1bWVudHMpO1xuICB9O1xuXG4gIHZhciBwcm90byA9IHtcbiAgICBjb3B5V2l0aGluOiBmdW5jdGlvbiBjb3B5V2l0aGluKHRhcmdldCwgc3RhcnQgLyogLCBlbmQgKi8pIHtcbiAgICAgIHJldHVybiBhcnJheUNvcHlXaXRoaW4uY2FsbCh2YWxpZGF0ZSh0aGlzKSwgdGFyZ2V0LCBzdGFydCwgYXJndW1lbnRzLmxlbmd0aCA+IDIgPyBhcmd1bWVudHNbMl0gOiB1bmRlZmluZWQpO1xuICAgIH0sXG4gICAgZXZlcnk6IGZ1bmN0aW9uIGV2ZXJ5KGNhbGxiYWNrZm4gLyogLCB0aGlzQXJnICovKSB7XG4gICAgICByZXR1cm4gYXJyYXlFdmVyeSh2YWxpZGF0ZSh0aGlzKSwgY2FsbGJhY2tmbiwgYXJndW1lbnRzLmxlbmd0aCA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQpO1xuICAgIH0sXG4gICAgZmlsbDogZnVuY3Rpb24gZmlsbCh2YWx1ZSAvKiAsIHN0YXJ0LCBlbmQgKi8pIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bnVzZWQtdmFyc1xuICAgICAgcmV0dXJuIGFycmF5RmlsbC5hcHBseSh2YWxpZGF0ZSh0aGlzKSwgYXJndW1lbnRzKTtcbiAgICB9LFxuICAgIGZpbHRlcjogZnVuY3Rpb24gZmlsdGVyKGNhbGxiYWNrZm4gLyogLCB0aGlzQXJnICovKSB7XG4gICAgICByZXR1cm4gc3BlY2llc0Zyb21MaXN0KHRoaXMsIGFycmF5RmlsdGVyKHZhbGlkYXRlKHRoaXMpLCBjYWxsYmFja2ZuLFxuICAgICAgICBhcmd1bWVudHMubGVuZ3RoID4gMSA/IGFyZ3VtZW50c1sxXSA6IHVuZGVmaW5lZCkpO1xuICAgIH0sXG4gICAgZmluZDogZnVuY3Rpb24gZmluZChwcmVkaWNhdGUgLyogLCB0aGlzQXJnICovKSB7XG4gICAgICByZXR1cm4gYXJyYXlGaW5kKHZhbGlkYXRlKHRoaXMpLCBwcmVkaWNhdGUsIGFyZ3VtZW50cy5sZW5ndGggPiAxID8gYXJndW1lbnRzWzFdIDogdW5kZWZpbmVkKTtcbiAgICB9LFxuICAgIGZpbmRJbmRleDogZnVuY3Rpb24gZmluZEluZGV4KHByZWRpY2F0ZSAvKiAsIHRoaXNBcmcgKi8pIHtcbiAgICAgIHJldHVybiBhcnJheUZpbmRJbmRleCh2YWxpZGF0ZSh0aGlzKSwgcHJlZGljYXRlLCBhcmd1bWVudHMubGVuZ3RoID4gMSA/IGFyZ3VtZW50c1sxXSA6IHVuZGVmaW5lZCk7XG4gICAgfSxcbiAgICBmb3JFYWNoOiBmdW5jdGlvbiBmb3JFYWNoKGNhbGxiYWNrZm4gLyogLCB0aGlzQXJnICovKSB7XG4gICAgICBhcnJheUZvckVhY2godmFsaWRhdGUodGhpcyksIGNhbGxiYWNrZm4sIGFyZ3VtZW50cy5sZW5ndGggPiAxID8gYXJndW1lbnRzWzFdIDogdW5kZWZpbmVkKTtcbiAgICB9LFxuICAgIGluZGV4T2Y6IGZ1bmN0aW9uIGluZGV4T2Yoc2VhcmNoRWxlbWVudCAvKiAsIGZyb21JbmRleCAqLykge1xuICAgICAgcmV0dXJuIGFycmF5SW5kZXhPZih2YWxpZGF0ZSh0aGlzKSwgc2VhcmNoRWxlbWVudCwgYXJndW1lbnRzLmxlbmd0aCA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQpO1xuICAgIH0sXG4gICAgaW5jbHVkZXM6IGZ1bmN0aW9uIGluY2x1ZGVzKHNlYXJjaEVsZW1lbnQgLyogLCBmcm9tSW5kZXggKi8pIHtcbiAgICAgIHJldHVybiBhcnJheUluY2x1ZGVzKHZhbGlkYXRlKHRoaXMpLCBzZWFyY2hFbGVtZW50LCBhcmd1bWVudHMubGVuZ3RoID4gMSA/IGFyZ3VtZW50c1sxXSA6IHVuZGVmaW5lZCk7XG4gICAgfSxcbiAgICBqb2luOiBmdW5jdGlvbiBqb2luKHNlcGFyYXRvcikgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXVudXNlZC12YXJzXG4gICAgICByZXR1cm4gYXJyYXlKb2luLmFwcGx5KHZhbGlkYXRlKHRoaXMpLCBhcmd1bWVudHMpO1xuICAgIH0sXG4gICAgbGFzdEluZGV4T2Y6IGZ1bmN0aW9uIGxhc3RJbmRleE9mKHNlYXJjaEVsZW1lbnQgLyogLCBmcm9tSW5kZXggKi8pIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bnVzZWQtdmFyc1xuICAgICAgcmV0dXJuIGFycmF5TGFzdEluZGV4T2YuYXBwbHkodmFsaWRhdGUodGhpcyksIGFyZ3VtZW50cyk7XG4gICAgfSxcbiAgICBtYXA6IGZ1bmN0aW9uIG1hcChtYXBmbiAvKiAsIHRoaXNBcmcgKi8pIHtcbiAgICAgIHJldHVybiAkbWFwKHZhbGlkYXRlKHRoaXMpLCBtYXBmbiwgYXJndW1lbnRzLmxlbmd0aCA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQpO1xuICAgIH0sXG4gICAgcmVkdWNlOiBmdW5jdGlvbiByZWR1Y2UoY2FsbGJhY2tmbiAvKiAsIGluaXRpYWxWYWx1ZSAqLykgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXVudXNlZC12YXJzXG4gICAgICByZXR1cm4gYXJyYXlSZWR1Y2UuYXBwbHkodmFsaWRhdGUodGhpcyksIGFyZ3VtZW50cyk7XG4gICAgfSxcbiAgICByZWR1Y2VSaWdodDogZnVuY3Rpb24gcmVkdWNlUmlnaHQoY2FsbGJhY2tmbiAvKiAsIGluaXRpYWxWYWx1ZSAqLykgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXVudXNlZC12YXJzXG4gICAgICByZXR1cm4gYXJyYXlSZWR1Y2VSaWdodC5hcHBseSh2YWxpZGF0ZSh0aGlzKSwgYXJndW1lbnRzKTtcbiAgICB9LFxuICAgIHJldmVyc2U6IGZ1bmN0aW9uIHJldmVyc2UoKSB7XG4gICAgICB2YXIgdGhhdCA9IHRoaXM7XG4gICAgICB2YXIgbGVuZ3RoID0gdmFsaWRhdGUodGhhdCkubGVuZ3RoO1xuICAgICAgdmFyIG1pZGRsZSA9IE1hdGguZmxvb3IobGVuZ3RoIC8gMik7XG4gICAgICB2YXIgaW5kZXggPSAwO1xuICAgICAgdmFyIHZhbHVlO1xuICAgICAgd2hpbGUgKGluZGV4IDwgbWlkZGxlKSB7XG4gICAgICAgIHZhbHVlID0gdGhhdFtpbmRleF07XG4gICAgICAgIHRoYXRbaW5kZXgrK10gPSB0aGF0Wy0tbGVuZ3RoXTtcbiAgICAgICAgdGhhdFtsZW5ndGhdID0gdmFsdWU7XG4gICAgICB9IHJldHVybiB0aGF0O1xuICAgIH0sXG4gICAgc29tZTogZnVuY3Rpb24gc29tZShjYWxsYmFja2ZuIC8qICwgdGhpc0FyZyAqLykge1xuICAgICAgcmV0dXJuIGFycmF5U29tZSh2YWxpZGF0ZSh0aGlzKSwgY2FsbGJhY2tmbiwgYXJndW1lbnRzLmxlbmd0aCA+IDEgPyBhcmd1bWVudHNbMV0gOiB1bmRlZmluZWQpO1xuICAgIH0sXG4gICAgc29ydDogZnVuY3Rpb24gc29ydChjb21wYXJlZm4pIHtcbiAgICAgIHJldHVybiBhcnJheVNvcnQuY2FsbCh2YWxpZGF0ZSh0aGlzKSwgY29tcGFyZWZuKTtcbiAgICB9LFxuICAgIHN1YmFycmF5OiBmdW5jdGlvbiBzdWJhcnJheShiZWdpbiwgZW5kKSB7XG4gICAgICB2YXIgTyA9IHZhbGlkYXRlKHRoaXMpO1xuICAgICAgdmFyIGxlbmd0aCA9IE8ubGVuZ3RoO1xuICAgICAgdmFyICRiZWdpbiA9IHRvQWJzb2x1dGVJbmRleChiZWdpbiwgbGVuZ3RoKTtcbiAgICAgIHJldHVybiBuZXcgKHNwZWNpZXNDb25zdHJ1Y3RvcihPLCBPW0RFRl9DT05TVFJVQ1RPUl0pKShcbiAgICAgICAgTy5idWZmZXIsXG4gICAgICAgIE8uYnl0ZU9mZnNldCArICRiZWdpbiAqIE8uQllURVNfUEVSX0VMRU1FTlQsXG4gICAgICAgIHRvTGVuZ3RoKChlbmQgPT09IHVuZGVmaW5lZCA/IGxlbmd0aCA6IHRvQWJzb2x1dGVJbmRleChlbmQsIGxlbmd0aCkpIC0gJGJlZ2luKVxuICAgICAgKTtcbiAgICB9XG4gIH07XG5cbiAgdmFyICRzbGljZSA9IGZ1bmN0aW9uIHNsaWNlKHN0YXJ0LCBlbmQpIHtcbiAgICByZXR1cm4gc3BlY2llc0Zyb21MaXN0KHRoaXMsIGFycmF5U2xpY2UuY2FsbCh2YWxpZGF0ZSh0aGlzKSwgc3RhcnQsIGVuZCkpO1xuICB9O1xuXG4gIHZhciAkc2V0ID0gZnVuY3Rpb24gc2V0KGFycmF5TGlrZSAvKiAsIG9mZnNldCAqLykge1xuICAgIHZhbGlkYXRlKHRoaXMpO1xuICAgIHZhciBvZmZzZXQgPSB0b09mZnNldChhcmd1bWVudHNbMV0sIDEpO1xuICAgIHZhciBsZW5ndGggPSB0aGlzLmxlbmd0aDtcbiAgICB2YXIgc3JjID0gdG9PYmplY3QoYXJyYXlMaWtlKTtcbiAgICB2YXIgbGVuID0gdG9MZW5ndGgoc3JjLmxlbmd0aCk7XG4gICAgdmFyIGluZGV4ID0gMDtcbiAgICBpZiAobGVuICsgb2Zmc2V0ID4gbGVuZ3RoKSB0aHJvdyBSYW5nZUVycm9yKFdST05HX0xFTkdUSCk7XG4gICAgd2hpbGUgKGluZGV4IDwgbGVuKSB0aGlzW29mZnNldCArIGluZGV4XSA9IHNyY1tpbmRleCsrXTtcbiAgfTtcblxuICB2YXIgJGl0ZXJhdG9ycyA9IHtcbiAgICBlbnRyaWVzOiBmdW5jdGlvbiBlbnRyaWVzKCkge1xuICAgICAgcmV0dXJuIGFycmF5RW50cmllcy5jYWxsKHZhbGlkYXRlKHRoaXMpKTtcbiAgICB9LFxuICAgIGtleXM6IGZ1bmN0aW9uIGtleXMoKSB7XG4gICAgICByZXR1cm4gYXJyYXlLZXlzLmNhbGwodmFsaWRhdGUodGhpcykpO1xuICAgIH0sXG4gICAgdmFsdWVzOiBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgICByZXR1cm4gYXJyYXlWYWx1ZXMuY2FsbCh2YWxpZGF0ZSh0aGlzKSk7XG4gICAgfVxuICB9O1xuXG4gIHZhciBpc1RBSW5kZXggPSBmdW5jdGlvbiAodGFyZ2V0LCBrZXkpIHtcbiAgICByZXR1cm4gaXNPYmplY3QodGFyZ2V0KVxuICAgICAgJiYgdGFyZ2V0W1RZUEVEX0FSUkFZXVxuICAgICAgJiYgdHlwZW9mIGtleSAhPSAnc3ltYm9sJ1xuICAgICAgJiYga2V5IGluIHRhcmdldFxuICAgICAgJiYgU3RyaW5nKCtrZXkpID09IFN0cmluZyhrZXkpO1xuICB9O1xuICB2YXIgJGdldERlc2MgPSBmdW5jdGlvbiBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBrZXkpIHtcbiAgICByZXR1cm4gaXNUQUluZGV4KHRhcmdldCwga2V5ID0gdG9QcmltaXRpdmUoa2V5LCB0cnVlKSlcbiAgICAgID8gcHJvcGVydHlEZXNjKDIsIHRhcmdldFtrZXldKVxuICAgICAgOiBnT1BEKHRhcmdldCwga2V5KTtcbiAgfTtcbiAgdmFyICRzZXREZXNjID0gZnVuY3Rpb24gZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIGRlc2MpIHtcbiAgICBpZiAoaXNUQUluZGV4KHRhcmdldCwga2V5ID0gdG9QcmltaXRpdmUoa2V5LCB0cnVlKSlcbiAgICAgICYmIGlzT2JqZWN0KGRlc2MpXG4gICAgICAmJiBoYXMoZGVzYywgJ3ZhbHVlJylcbiAgICAgICYmICFoYXMoZGVzYywgJ2dldCcpXG4gICAgICAmJiAhaGFzKGRlc2MsICdzZXQnKVxuICAgICAgLy8gVE9ETzogYWRkIHZhbGlkYXRpb24gZGVzY3JpcHRvciB3L28gY2FsbGluZyBhY2Nlc3NvcnNcbiAgICAgICYmICFkZXNjLmNvbmZpZ3VyYWJsZVxuICAgICAgJiYgKCFoYXMoZGVzYywgJ3dyaXRhYmxlJykgfHwgZGVzYy53cml0YWJsZSlcbiAgICAgICYmICghaGFzKGRlc2MsICdlbnVtZXJhYmxlJykgfHwgZGVzYy5lbnVtZXJhYmxlKVxuICAgICkge1xuICAgICAgdGFyZ2V0W2tleV0gPSBkZXNjLnZhbHVlO1xuICAgICAgcmV0dXJuIHRhcmdldDtcbiAgICB9IHJldHVybiBkUCh0YXJnZXQsIGtleSwgZGVzYyk7XG4gIH07XG5cbiAgaWYgKCFBTExfQ09OU1RSVUNUT1JTKSB7XG4gICAgJEdPUEQuZiA9ICRnZXREZXNjO1xuICAgICREUC5mID0gJHNldERlc2M7XG4gIH1cblxuICAkZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqICFBTExfQ09OU1RSVUNUT1JTLCAnT2JqZWN0Jywge1xuICAgIGdldE93blByb3BlcnR5RGVzY3JpcHRvcjogJGdldERlc2MsXG4gICAgZGVmaW5lUHJvcGVydHk6ICRzZXREZXNjXG4gIH0pO1xuXG4gIGlmIChmYWlscyhmdW5jdGlvbiAoKSB7IGFycmF5VG9TdHJpbmcuY2FsbCh7fSk7IH0pKSB7XG4gICAgYXJyYXlUb1N0cmluZyA9IGFycmF5VG9Mb2NhbGVTdHJpbmcgPSBmdW5jdGlvbiB0b1N0cmluZygpIHtcbiAgICAgIHJldHVybiBhcnJheUpvaW4uY2FsbCh0aGlzKTtcbiAgICB9O1xuICB9XG5cbiAgdmFyICRUeXBlZEFycmF5UHJvdG90eXBlJCA9IHJlZGVmaW5lQWxsKHt9LCBwcm90byk7XG4gIHJlZGVmaW5lQWxsKCRUeXBlZEFycmF5UHJvdG90eXBlJCwgJGl0ZXJhdG9ycyk7XG4gIGhpZGUoJFR5cGVkQXJyYXlQcm90b3R5cGUkLCBJVEVSQVRPUiwgJGl0ZXJhdG9ycy52YWx1ZXMpO1xuICByZWRlZmluZUFsbCgkVHlwZWRBcnJheVByb3RvdHlwZSQsIHtcbiAgICBzbGljZTogJHNsaWNlLFxuICAgIHNldDogJHNldCxcbiAgICBjb25zdHJ1Y3RvcjogZnVuY3Rpb24gKCkgeyAvKiBub29wICovIH0sXG4gICAgdG9TdHJpbmc6IGFycmF5VG9TdHJpbmcsXG4gICAgdG9Mb2NhbGVTdHJpbmc6ICR0b0xvY2FsZVN0cmluZ1xuICB9KTtcbiAgYWRkR2V0dGVyKCRUeXBlZEFycmF5UHJvdG90eXBlJCwgJ2J1ZmZlcicsICdiJyk7XG4gIGFkZEdldHRlcigkVHlwZWRBcnJheVByb3RvdHlwZSQsICdieXRlT2Zmc2V0JywgJ28nKTtcbiAgYWRkR2V0dGVyKCRUeXBlZEFycmF5UHJvdG90eXBlJCwgJ2J5dGVMZW5ndGgnLCAnbCcpO1xuICBhZGRHZXR0ZXIoJFR5cGVkQXJyYXlQcm90b3R5cGUkLCAnbGVuZ3RoJywgJ2UnKTtcbiAgZFAoJFR5cGVkQXJyYXlQcm90b3R5cGUkLCBUQUcsIHtcbiAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXNbVFlQRURfQVJSQVldOyB9XG4gIH0pO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtc3RhdGVtZW50c1xuICBtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChLRVksIEJZVEVTLCB3cmFwcGVyLCBDTEFNUEVEKSB7XG4gICAgQ0xBTVBFRCA9ICEhQ0xBTVBFRDtcbiAgICB2YXIgTkFNRSA9IEtFWSArIChDTEFNUEVEID8gJ0NsYW1wZWQnIDogJycpICsgJ0FycmF5JztcbiAgICB2YXIgR0VUVEVSID0gJ2dldCcgKyBLRVk7XG4gICAgdmFyIFNFVFRFUiA9ICdzZXQnICsgS0VZO1xuICAgIHZhciBUeXBlZEFycmF5ID0gZ2xvYmFsW05BTUVdO1xuICAgIHZhciBCYXNlID0gVHlwZWRBcnJheSB8fCB7fTtcbiAgICB2YXIgVEFDID0gVHlwZWRBcnJheSAmJiBnZXRQcm90b3R5cGVPZihUeXBlZEFycmF5KTtcbiAgICB2YXIgRk9SQ0VEID0gIVR5cGVkQXJyYXkgfHwgISR0eXBlZC5BQlY7XG4gICAgdmFyIE8gPSB7fTtcbiAgICB2YXIgVHlwZWRBcnJheVByb3RvdHlwZSA9IFR5cGVkQXJyYXkgJiYgVHlwZWRBcnJheVtQUk9UT1RZUEVdO1xuICAgIHZhciBnZXR0ZXIgPSBmdW5jdGlvbiAodGhhdCwgaW5kZXgpIHtcbiAgICAgIHZhciBkYXRhID0gdGhhdC5fZDtcbiAgICAgIHJldHVybiBkYXRhLnZbR0VUVEVSXShpbmRleCAqIEJZVEVTICsgZGF0YS5vLCBMSVRUTEVfRU5ESUFOKTtcbiAgICB9O1xuICAgIHZhciBzZXR0ZXIgPSBmdW5jdGlvbiAodGhhdCwgaW5kZXgsIHZhbHVlKSB7XG4gICAgICB2YXIgZGF0YSA9IHRoYXQuX2Q7XG4gICAgICBpZiAoQ0xBTVBFRCkgdmFsdWUgPSAodmFsdWUgPSBNYXRoLnJvdW5kKHZhbHVlKSkgPCAwID8gMCA6IHZhbHVlID4gMHhmZiA/IDB4ZmYgOiB2YWx1ZSAmIDB4ZmY7XG4gICAgICBkYXRhLnZbU0VUVEVSXShpbmRleCAqIEJZVEVTICsgZGF0YS5vLCB2YWx1ZSwgTElUVExFX0VORElBTik7XG4gICAgfTtcbiAgICB2YXIgYWRkRWxlbWVudCA9IGZ1bmN0aW9uICh0aGF0LCBpbmRleCkge1xuICAgICAgZFAodGhhdCwgaW5kZXgsIHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIGdldHRlcih0aGlzLCBpbmRleCk7XG4gICAgICAgIH0sXG4gICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgICAgICAgcmV0dXJuIHNldHRlcih0aGlzLCBpbmRleCwgdmFsdWUpO1xuICAgICAgICB9LFxuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlXG4gICAgICB9KTtcbiAgICB9O1xuICAgIGlmIChGT1JDRUQpIHtcbiAgICAgIFR5cGVkQXJyYXkgPSB3cmFwcGVyKGZ1bmN0aW9uICh0aGF0LCBkYXRhLCAkb2Zmc2V0LCAkbGVuZ3RoKSB7XG4gICAgICAgIGFuSW5zdGFuY2UodGhhdCwgVHlwZWRBcnJheSwgTkFNRSwgJ19kJyk7XG4gICAgICAgIHZhciBpbmRleCA9IDA7XG4gICAgICAgIHZhciBvZmZzZXQgPSAwO1xuICAgICAgICB2YXIgYnVmZmVyLCBieXRlTGVuZ3RoLCBsZW5ndGgsIGtsYXNzO1xuICAgICAgICBpZiAoIWlzT2JqZWN0KGRhdGEpKSB7XG4gICAgICAgICAgbGVuZ3RoID0gdG9JbmRleChkYXRhKTtcbiAgICAgICAgICBieXRlTGVuZ3RoID0gbGVuZ3RoICogQllURVM7XG4gICAgICAgICAgYnVmZmVyID0gbmV3ICRBcnJheUJ1ZmZlcihieXRlTGVuZ3RoKTtcbiAgICAgICAgfSBlbHNlIGlmIChkYXRhIGluc3RhbmNlb2YgJEFycmF5QnVmZmVyIHx8IChrbGFzcyA9IGNsYXNzb2YoZGF0YSkpID09IEFSUkFZX0JVRkZFUiB8fCBrbGFzcyA9PSBTSEFSRURfQlVGRkVSKSB7XG4gICAgICAgICAgYnVmZmVyID0gZGF0YTtcbiAgICAgICAgICBvZmZzZXQgPSB0b09mZnNldCgkb2Zmc2V0LCBCWVRFUyk7XG4gICAgICAgICAgdmFyICRsZW4gPSBkYXRhLmJ5dGVMZW5ndGg7XG4gICAgICAgICAgaWYgKCRsZW5ndGggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgaWYgKCRsZW4gJSBCWVRFUykgdGhyb3cgUmFuZ2VFcnJvcihXUk9OR19MRU5HVEgpO1xuICAgICAgICAgICAgYnl0ZUxlbmd0aCA9ICRsZW4gLSBvZmZzZXQ7XG4gICAgICAgICAgICBpZiAoYnl0ZUxlbmd0aCA8IDApIHRocm93IFJhbmdlRXJyb3IoV1JPTkdfTEVOR1RIKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYnl0ZUxlbmd0aCA9IHRvTGVuZ3RoKCRsZW5ndGgpICogQllURVM7XG4gICAgICAgICAgICBpZiAoYnl0ZUxlbmd0aCArIG9mZnNldCA+ICRsZW4pIHRocm93IFJhbmdlRXJyb3IoV1JPTkdfTEVOR1RIKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGVuZ3RoID0gYnl0ZUxlbmd0aCAvIEJZVEVTO1xuICAgICAgICB9IGVsc2UgaWYgKFRZUEVEX0FSUkFZIGluIGRhdGEpIHtcbiAgICAgICAgICByZXR1cm4gZnJvbUxpc3QoVHlwZWRBcnJheSwgZGF0YSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuICRmcm9tLmNhbGwoVHlwZWRBcnJheSwgZGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgaGlkZSh0aGF0LCAnX2QnLCB7XG4gICAgICAgICAgYjogYnVmZmVyLFxuICAgICAgICAgIG86IG9mZnNldCxcbiAgICAgICAgICBsOiBieXRlTGVuZ3RoLFxuICAgICAgICAgIGU6IGxlbmd0aCxcbiAgICAgICAgICB2OiBuZXcgJERhdGFWaWV3KGJ1ZmZlcilcbiAgICAgICAgfSk7XG4gICAgICAgIHdoaWxlIChpbmRleCA8IGxlbmd0aCkgYWRkRWxlbWVudCh0aGF0LCBpbmRleCsrKTtcbiAgICAgIH0pO1xuICAgICAgVHlwZWRBcnJheVByb3RvdHlwZSA9IFR5cGVkQXJyYXlbUFJPVE9UWVBFXSA9IGNyZWF0ZSgkVHlwZWRBcnJheVByb3RvdHlwZSQpO1xuICAgICAgaGlkZShUeXBlZEFycmF5UHJvdG90eXBlLCAnY29uc3RydWN0b3InLCBUeXBlZEFycmF5KTtcbiAgICB9IGVsc2UgaWYgKCFmYWlscyhmdW5jdGlvbiAoKSB7XG4gICAgICBUeXBlZEFycmF5KDEpO1xuICAgIH0pIHx8ICFmYWlscyhmdW5jdGlvbiAoKSB7XG4gICAgICBuZXcgVHlwZWRBcnJheSgtMSk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tbmV3XG4gICAgfSkgfHwgISRpdGVyRGV0ZWN0KGZ1bmN0aW9uIChpdGVyKSB7XG4gICAgICBuZXcgVHlwZWRBcnJheSgpOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLW5ld1xuICAgICAgbmV3IFR5cGVkQXJyYXkobnVsbCk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tbmV3XG4gICAgICBuZXcgVHlwZWRBcnJheSgxLjUpOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLW5ld1xuICAgICAgbmV3IFR5cGVkQXJyYXkoaXRlcik7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tbmV3XG4gICAgfSwgdHJ1ZSkpIHtcbiAgICAgIFR5cGVkQXJyYXkgPSB3cmFwcGVyKGZ1bmN0aW9uICh0aGF0LCBkYXRhLCAkb2Zmc2V0LCAkbGVuZ3RoKSB7XG4gICAgICAgIGFuSW5zdGFuY2UodGhhdCwgVHlwZWRBcnJheSwgTkFNRSk7XG4gICAgICAgIHZhciBrbGFzcztcbiAgICAgICAgLy8gYHdzYCBtb2R1bGUgYnVnLCB0ZW1wb3JhcmlseSByZW1vdmUgdmFsaWRhdGlvbiBsZW5ndGggZm9yIFVpbnQ4QXJyYXlcbiAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3dlYnNvY2tldHMvd3MvcHVsbC82NDVcbiAgICAgICAgaWYgKCFpc09iamVjdChkYXRhKSkgcmV0dXJuIG5ldyBCYXNlKHRvSW5kZXgoZGF0YSkpO1xuICAgICAgICBpZiAoZGF0YSBpbnN0YW5jZW9mICRBcnJheUJ1ZmZlciB8fCAoa2xhc3MgPSBjbGFzc29mKGRhdGEpKSA9PSBBUlJBWV9CVUZGRVIgfHwga2xhc3MgPT0gU0hBUkVEX0JVRkZFUikge1xuICAgICAgICAgIHJldHVybiAkbGVuZ3RoICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgID8gbmV3IEJhc2UoZGF0YSwgdG9PZmZzZXQoJG9mZnNldCwgQllURVMpLCAkbGVuZ3RoKVxuICAgICAgICAgICAgOiAkb2Zmc2V0ICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgPyBuZXcgQmFzZShkYXRhLCB0b09mZnNldCgkb2Zmc2V0LCBCWVRFUykpXG4gICAgICAgICAgICAgIDogbmV3IEJhc2UoZGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFRZUEVEX0FSUkFZIGluIGRhdGEpIHJldHVybiBmcm9tTGlzdChUeXBlZEFycmF5LCBkYXRhKTtcbiAgICAgICAgcmV0dXJuICRmcm9tLmNhbGwoVHlwZWRBcnJheSwgZGF0YSk7XG4gICAgICB9KTtcbiAgICAgIGFycmF5Rm9yRWFjaChUQUMgIT09IEZ1bmN0aW9uLnByb3RvdHlwZSA/IGdPUE4oQmFzZSkuY29uY2F0KGdPUE4oVEFDKSkgOiBnT1BOKEJhc2UpLCBmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgIGlmICghKGtleSBpbiBUeXBlZEFycmF5KSkgaGlkZShUeXBlZEFycmF5LCBrZXksIEJhc2Vba2V5XSk7XG4gICAgICB9KTtcbiAgICAgIFR5cGVkQXJyYXlbUFJPVE9UWVBFXSA9IFR5cGVkQXJyYXlQcm90b3R5cGU7XG4gICAgICBpZiAoIUxJQlJBUlkpIFR5cGVkQXJyYXlQcm90b3R5cGUuY29uc3RydWN0b3IgPSBUeXBlZEFycmF5O1xuICAgIH1cbiAgICB2YXIgJG5hdGl2ZUl0ZXJhdG9yID0gVHlwZWRBcnJheVByb3RvdHlwZVtJVEVSQVRPUl07XG4gICAgdmFyIENPUlJFQ1RfSVRFUl9OQU1FID0gISEkbmF0aXZlSXRlcmF0b3JcbiAgICAgICYmICgkbmF0aXZlSXRlcmF0b3IubmFtZSA9PSAndmFsdWVzJyB8fCAkbmF0aXZlSXRlcmF0b3IubmFtZSA9PSB1bmRlZmluZWQpO1xuICAgIHZhciAkaXRlcmF0b3IgPSAkaXRlcmF0b3JzLnZhbHVlcztcbiAgICBoaWRlKFR5cGVkQXJyYXksIFRZUEVEX0NPTlNUUlVDVE9SLCB0cnVlKTtcbiAgICBoaWRlKFR5cGVkQXJyYXlQcm90b3R5cGUsIFRZUEVEX0FSUkFZLCBOQU1FKTtcbiAgICBoaWRlKFR5cGVkQXJyYXlQcm90b3R5cGUsIFZJRVcsIHRydWUpO1xuICAgIGhpZGUoVHlwZWRBcnJheVByb3RvdHlwZSwgREVGX0NPTlNUUlVDVE9SLCBUeXBlZEFycmF5KTtcblxuICAgIGlmIChDTEFNUEVEID8gbmV3IFR5cGVkQXJyYXkoMSlbVEFHXSAhPSBOQU1FIDogIShUQUcgaW4gVHlwZWRBcnJheVByb3RvdHlwZSkpIHtcbiAgICAgIGRQKFR5cGVkQXJyYXlQcm90b3R5cGUsIFRBRywge1xuICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIE5BTUU7IH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIE9bTkFNRV0gPSBUeXBlZEFycmF5O1xuXG4gICAgJGV4cG9ydCgkZXhwb3J0LkcgKyAkZXhwb3J0LlcgKyAkZXhwb3J0LkYgKiAoVHlwZWRBcnJheSAhPSBCYXNlKSwgTyk7XG5cbiAgICAkZXhwb3J0KCRleHBvcnQuUywgTkFNRSwge1xuICAgICAgQllURVNfUEVSX0VMRU1FTlQ6IEJZVEVTXG4gICAgfSk7XG5cbiAgICAkZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqIGZhaWxzKGZ1bmN0aW9uICgpIHsgQmFzZS5vZi5jYWxsKFR5cGVkQXJyYXksIDEpOyB9KSwgTkFNRSwge1xuICAgICAgZnJvbTogJGZyb20sXG4gICAgICBvZjogJG9mXG4gICAgfSk7XG5cbiAgICBpZiAoIShCWVRFU19QRVJfRUxFTUVOVCBpbiBUeXBlZEFycmF5UHJvdG90eXBlKSkgaGlkZShUeXBlZEFycmF5UHJvdG90eXBlLCBCWVRFU19QRVJfRUxFTUVOVCwgQllURVMpO1xuXG4gICAgJGV4cG9ydCgkZXhwb3J0LlAsIE5BTUUsIHByb3RvKTtcblxuICAgIHNldFNwZWNpZXMoTkFNRSk7XG5cbiAgICAkZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqIEZPUkNFRF9TRVQsIE5BTUUsIHsgc2V0OiAkc2V0IH0pO1xuXG4gICAgJGV4cG9ydCgkZXhwb3J0LlAgKyAkZXhwb3J0LkYgKiAhQ09SUkVDVF9JVEVSX05BTUUsIE5BTUUsICRpdGVyYXRvcnMpO1xuXG4gICAgaWYgKCFMSUJSQVJZICYmIFR5cGVkQXJyYXlQcm90b3R5cGUudG9TdHJpbmcgIT0gYXJyYXlUb1N0cmluZykgVHlwZWRBcnJheVByb3RvdHlwZS50b1N0cmluZyA9IGFycmF5VG9TdHJpbmc7XG5cbiAgICAkZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqIGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICAgIG5ldyBUeXBlZEFycmF5KDEpLnNsaWNlKCk7XG4gICAgfSksIE5BTUUsIHsgc2xpY2U6ICRzbGljZSB9KTtcblxuICAgICRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogKGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiBbMSwgMl0udG9Mb2NhbGVTdHJpbmcoKSAhPSBuZXcgVHlwZWRBcnJheShbMSwgMl0pLnRvTG9jYWxlU3RyaW5nKCk7XG4gICAgfSkgfHwgIWZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICAgIFR5cGVkQXJyYXlQcm90b3R5cGUudG9Mb2NhbGVTdHJpbmcuY2FsbChbMSwgMl0pO1xuICAgIH0pKSwgTkFNRSwgeyB0b0xvY2FsZVN0cmluZzogJHRvTG9jYWxlU3RyaW5nIH0pO1xuXG4gICAgSXRlcmF0b3JzW05BTUVdID0gQ09SUkVDVF9JVEVSX05BTUUgPyAkbmF0aXZlSXRlcmF0b3IgOiAkaXRlcmF0b3I7XG4gICAgaWYgKCFMSUJSQVJZICYmICFDT1JSRUNUX0lURVJfTkFNRSkgaGlkZShUeXBlZEFycmF5UHJvdG90eXBlLCBJVEVSQVRPUiwgJGl0ZXJhdG9yKTtcbiAgfTtcbn0gZWxzZSBtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICgpIHsgLyogZW1wdHkgKi8gfTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciBnbG9iYWwgPSByZXF1aXJlKCcuL19nbG9iYWwnKTtcbnZhciBERVNDUklQVE9SUyA9IHJlcXVpcmUoJy4vX2Rlc2NyaXB0b3JzJyk7XG52YXIgTElCUkFSWSA9IHJlcXVpcmUoJy4vX2xpYnJhcnknKTtcbnZhciAkdHlwZWQgPSByZXF1aXJlKCcuL190eXBlZCcpO1xudmFyIGhpZGUgPSByZXF1aXJlKCcuL19oaWRlJyk7XG52YXIgcmVkZWZpbmVBbGwgPSByZXF1aXJlKCcuL19yZWRlZmluZS1hbGwnKTtcbnZhciBmYWlscyA9IHJlcXVpcmUoJy4vX2ZhaWxzJyk7XG52YXIgYW5JbnN0YW5jZSA9IHJlcXVpcmUoJy4vX2FuLWluc3RhbmNlJyk7XG52YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi9fdG8taW50ZWdlcicpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi9fdG8tbGVuZ3RoJyk7XG52YXIgdG9JbmRleCA9IHJlcXVpcmUoJy4vX3RvLWluZGV4Jyk7XG52YXIgZ09QTiA9IHJlcXVpcmUoJy4vX29iamVjdC1nb3BuJykuZjtcbnZhciBkUCA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpLmY7XG52YXIgYXJyYXlGaWxsID0gcmVxdWlyZSgnLi9fYXJyYXktZmlsbCcpO1xudmFyIHNldFRvU3RyaW5nVGFnID0gcmVxdWlyZSgnLi9fc2V0LXRvLXN0cmluZy10YWcnKTtcbnZhciBBUlJBWV9CVUZGRVIgPSAnQXJyYXlCdWZmZXInO1xudmFyIERBVEFfVklFVyA9ICdEYXRhVmlldyc7XG52YXIgUFJPVE9UWVBFID0gJ3Byb3RvdHlwZSc7XG52YXIgV1JPTkdfTEVOR1RIID0gJ1dyb25nIGxlbmd0aCEnO1xudmFyIFdST05HX0lOREVYID0gJ1dyb25nIGluZGV4ISc7XG52YXIgJEFycmF5QnVmZmVyID0gZ2xvYmFsW0FSUkFZX0JVRkZFUl07XG52YXIgJERhdGFWaWV3ID0gZ2xvYmFsW0RBVEFfVklFV107XG52YXIgTWF0aCA9IGdsb2JhbC5NYXRoO1xudmFyIFJhbmdlRXJyb3IgPSBnbG9iYWwuUmFuZ2VFcnJvcjtcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zaGFkb3ctcmVzdHJpY3RlZC1uYW1lc1xudmFyIEluZmluaXR5ID0gZ2xvYmFsLkluZmluaXR5O1xudmFyIEJhc2VCdWZmZXIgPSAkQXJyYXlCdWZmZXI7XG52YXIgYWJzID0gTWF0aC5hYnM7XG52YXIgcG93ID0gTWF0aC5wb3c7XG52YXIgZmxvb3IgPSBNYXRoLmZsb29yO1xudmFyIGxvZyA9IE1hdGgubG9nO1xudmFyIExOMiA9IE1hdGguTE4yO1xudmFyIEJVRkZFUiA9ICdidWZmZXInO1xudmFyIEJZVEVfTEVOR1RIID0gJ2J5dGVMZW5ndGgnO1xudmFyIEJZVEVfT0ZGU0VUID0gJ2J5dGVPZmZzZXQnO1xudmFyICRCVUZGRVIgPSBERVNDUklQVE9SUyA/ICdfYicgOiBCVUZGRVI7XG52YXIgJExFTkdUSCA9IERFU0NSSVBUT1JTID8gJ19sJyA6IEJZVEVfTEVOR1RIO1xudmFyICRPRkZTRVQgPSBERVNDUklQVE9SUyA/ICdfbycgOiBCWVRFX09GRlNFVDtcblxuLy8gSUVFRTc1NCBjb252ZXJzaW9ucyBiYXNlZCBvbiBodHRwczovL2dpdGh1Yi5jb20vZmVyb3NzL2llZWU3NTRcbmZ1bmN0aW9uIHBhY2tJRUVFNzU0KHZhbHVlLCBtTGVuLCBuQnl0ZXMpIHtcbiAgdmFyIGJ1ZmZlciA9IG5ldyBBcnJheShuQnl0ZXMpO1xuICB2YXIgZUxlbiA9IG5CeXRlcyAqIDggLSBtTGVuIC0gMTtcbiAgdmFyIGVNYXggPSAoMSA8PCBlTGVuKSAtIDE7XG4gIHZhciBlQmlhcyA9IGVNYXggPj4gMTtcbiAgdmFyIHJ0ID0gbUxlbiA9PT0gMjMgPyBwb3coMiwgLTI0KSAtIHBvdygyLCAtNzcpIDogMDtcbiAgdmFyIGkgPSAwO1xuICB2YXIgcyA9IHZhbHVlIDwgMCB8fCB2YWx1ZSA9PT0gMCAmJiAxIC8gdmFsdWUgPCAwID8gMSA6IDA7XG4gIHZhciBlLCBtLCBjO1xuICB2YWx1ZSA9IGFicyh2YWx1ZSk7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmVcbiAgaWYgKHZhbHVlICE9IHZhbHVlIHx8IHZhbHVlID09PSBJbmZpbml0eSkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmVcbiAgICBtID0gdmFsdWUgIT0gdmFsdWUgPyAxIDogMDtcbiAgICBlID0gZU1heDtcbiAgfSBlbHNlIHtcbiAgICBlID0gZmxvb3IobG9nKHZhbHVlKSAvIExOMik7XG4gICAgaWYgKHZhbHVlICogKGMgPSBwb3coMiwgLWUpKSA8IDEpIHtcbiAgICAgIGUtLTtcbiAgICAgIGMgKj0gMjtcbiAgICB9XG4gICAgaWYgKGUgKyBlQmlhcyA+PSAxKSB7XG4gICAgICB2YWx1ZSArPSBydCAvIGM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZhbHVlICs9IHJ0ICogcG93KDIsIDEgLSBlQmlhcyk7XG4gICAgfVxuICAgIGlmICh2YWx1ZSAqIGMgPj0gMikge1xuICAgICAgZSsrO1xuICAgICAgYyAvPSAyO1xuICAgIH1cbiAgICBpZiAoZSArIGVCaWFzID49IGVNYXgpIHtcbiAgICAgIG0gPSAwO1xuICAgICAgZSA9IGVNYXg7XG4gICAgfSBlbHNlIGlmIChlICsgZUJpYXMgPj0gMSkge1xuICAgICAgbSA9ICh2YWx1ZSAqIGMgLSAxKSAqIHBvdygyLCBtTGVuKTtcbiAgICAgIGUgPSBlICsgZUJpYXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIG0gPSB2YWx1ZSAqIHBvdygyLCBlQmlhcyAtIDEpICogcG93KDIsIG1MZW4pO1xuICAgICAgZSA9IDA7XG4gICAgfVxuICB9XG4gIGZvciAoOyBtTGVuID49IDg7IGJ1ZmZlcltpKytdID0gbSAmIDI1NSwgbSAvPSAyNTYsIG1MZW4gLT0gOCk7XG4gIGUgPSBlIDw8IG1MZW4gfCBtO1xuICBlTGVuICs9IG1MZW47XG4gIGZvciAoOyBlTGVuID4gMDsgYnVmZmVyW2krK10gPSBlICYgMjU1LCBlIC89IDI1NiwgZUxlbiAtPSA4KTtcbiAgYnVmZmVyWy0taV0gfD0gcyAqIDEyODtcbiAgcmV0dXJuIGJ1ZmZlcjtcbn1cbmZ1bmN0aW9uIHVucGFja0lFRUU3NTQoYnVmZmVyLCBtTGVuLCBuQnl0ZXMpIHtcbiAgdmFyIGVMZW4gPSBuQnl0ZXMgKiA4IC0gbUxlbiAtIDE7XG4gIHZhciBlTWF4ID0gKDEgPDwgZUxlbikgLSAxO1xuICB2YXIgZUJpYXMgPSBlTWF4ID4+IDE7XG4gIHZhciBuQml0cyA9IGVMZW4gLSA3O1xuICB2YXIgaSA9IG5CeXRlcyAtIDE7XG4gIHZhciBzID0gYnVmZmVyW2ktLV07XG4gIHZhciBlID0gcyAmIDEyNztcbiAgdmFyIG07XG4gIHMgPj49IDc7XG4gIGZvciAoOyBuQml0cyA+IDA7IGUgPSBlICogMjU2ICsgYnVmZmVyW2ldLCBpLS0sIG5CaXRzIC09IDgpO1xuICBtID0gZSAmICgxIDw8IC1uQml0cykgLSAxO1xuICBlID4+PSAtbkJpdHM7XG4gIG5CaXRzICs9IG1MZW47XG4gIGZvciAoOyBuQml0cyA+IDA7IG0gPSBtICogMjU2ICsgYnVmZmVyW2ldLCBpLS0sIG5CaXRzIC09IDgpO1xuICBpZiAoZSA9PT0gMCkge1xuICAgIGUgPSAxIC0gZUJpYXM7XG4gIH0gZWxzZSBpZiAoZSA9PT0gZU1heCkge1xuICAgIHJldHVybiBtID8gTmFOIDogcyA/IC1JbmZpbml0eSA6IEluZmluaXR5O1xuICB9IGVsc2Uge1xuICAgIG0gPSBtICsgcG93KDIsIG1MZW4pO1xuICAgIGUgPSBlIC0gZUJpYXM7XG4gIH0gcmV0dXJuIChzID8gLTEgOiAxKSAqIG0gKiBwb3coMiwgZSAtIG1MZW4pO1xufVxuXG5mdW5jdGlvbiB1bnBhY2tJMzIoYnl0ZXMpIHtcbiAgcmV0dXJuIGJ5dGVzWzNdIDw8IDI0IHwgYnl0ZXNbMl0gPDwgMTYgfCBieXRlc1sxXSA8PCA4IHwgYnl0ZXNbMF07XG59XG5mdW5jdGlvbiBwYWNrSTgoaXQpIHtcbiAgcmV0dXJuIFtpdCAmIDB4ZmZdO1xufVxuZnVuY3Rpb24gcGFja0kxNihpdCkge1xuICByZXR1cm4gW2l0ICYgMHhmZiwgaXQgPj4gOCAmIDB4ZmZdO1xufVxuZnVuY3Rpb24gcGFja0kzMihpdCkge1xuICByZXR1cm4gW2l0ICYgMHhmZiwgaXQgPj4gOCAmIDB4ZmYsIGl0ID4+IDE2ICYgMHhmZiwgaXQgPj4gMjQgJiAweGZmXTtcbn1cbmZ1bmN0aW9uIHBhY2tGNjQoaXQpIHtcbiAgcmV0dXJuIHBhY2tJRUVFNzU0KGl0LCA1MiwgOCk7XG59XG5mdW5jdGlvbiBwYWNrRjMyKGl0KSB7XG4gIHJldHVybiBwYWNrSUVFRTc1NChpdCwgMjMsIDQpO1xufVxuXG5mdW5jdGlvbiBhZGRHZXR0ZXIoQywga2V5LCBpbnRlcm5hbCkge1xuICBkUChDW1BST1RPVFlQRV0sIGtleSwgeyBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXNbaW50ZXJuYWxdOyB9IH0pO1xufVxuXG5mdW5jdGlvbiBnZXQodmlldywgYnl0ZXMsIGluZGV4LCBpc0xpdHRsZUVuZGlhbikge1xuICB2YXIgbnVtSW5kZXggPSAraW5kZXg7XG4gIHZhciBpbnRJbmRleCA9IHRvSW5kZXgobnVtSW5kZXgpO1xuICBpZiAoaW50SW5kZXggKyBieXRlcyA+IHZpZXdbJExFTkdUSF0pIHRocm93IFJhbmdlRXJyb3IoV1JPTkdfSU5ERVgpO1xuICB2YXIgc3RvcmUgPSB2aWV3WyRCVUZGRVJdLl9iO1xuICB2YXIgc3RhcnQgPSBpbnRJbmRleCArIHZpZXdbJE9GRlNFVF07XG4gIHZhciBwYWNrID0gc3RvcmUuc2xpY2Uoc3RhcnQsIHN0YXJ0ICsgYnl0ZXMpO1xuICByZXR1cm4gaXNMaXR0bGVFbmRpYW4gPyBwYWNrIDogcGFjay5yZXZlcnNlKCk7XG59XG5mdW5jdGlvbiBzZXQodmlldywgYnl0ZXMsIGluZGV4LCBjb252ZXJzaW9uLCB2YWx1ZSwgaXNMaXR0bGVFbmRpYW4pIHtcbiAgdmFyIG51bUluZGV4ID0gK2luZGV4O1xuICB2YXIgaW50SW5kZXggPSB0b0luZGV4KG51bUluZGV4KTtcbiAgaWYgKGludEluZGV4ICsgYnl0ZXMgPiB2aWV3WyRMRU5HVEhdKSB0aHJvdyBSYW5nZUVycm9yKFdST05HX0lOREVYKTtcbiAgdmFyIHN0b3JlID0gdmlld1skQlVGRkVSXS5fYjtcbiAgdmFyIHN0YXJ0ID0gaW50SW5kZXggKyB2aWV3WyRPRkZTRVRdO1xuICB2YXIgcGFjayA9IGNvbnZlcnNpb24oK3ZhbHVlKTtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBieXRlczsgaSsrKSBzdG9yZVtzdGFydCArIGldID0gcGFja1tpc0xpdHRsZUVuZGlhbiA/IGkgOiBieXRlcyAtIGkgLSAxXTtcbn1cblxuaWYgKCEkdHlwZWQuQUJWKSB7XG4gICRBcnJheUJ1ZmZlciA9IGZ1bmN0aW9uIEFycmF5QnVmZmVyKGxlbmd0aCkge1xuICAgIGFuSW5zdGFuY2UodGhpcywgJEFycmF5QnVmZmVyLCBBUlJBWV9CVUZGRVIpO1xuICAgIHZhciBieXRlTGVuZ3RoID0gdG9JbmRleChsZW5ndGgpO1xuICAgIHRoaXMuX2IgPSBhcnJheUZpbGwuY2FsbChuZXcgQXJyYXkoYnl0ZUxlbmd0aCksIDApO1xuICAgIHRoaXNbJExFTkdUSF0gPSBieXRlTGVuZ3RoO1xuICB9O1xuXG4gICREYXRhVmlldyA9IGZ1bmN0aW9uIERhdGFWaWV3KGJ1ZmZlciwgYnl0ZU9mZnNldCwgYnl0ZUxlbmd0aCkge1xuICAgIGFuSW5zdGFuY2UodGhpcywgJERhdGFWaWV3LCBEQVRBX1ZJRVcpO1xuICAgIGFuSW5zdGFuY2UoYnVmZmVyLCAkQXJyYXlCdWZmZXIsIERBVEFfVklFVyk7XG4gICAgdmFyIGJ1ZmZlckxlbmd0aCA9IGJ1ZmZlclskTEVOR1RIXTtcbiAgICB2YXIgb2Zmc2V0ID0gdG9JbnRlZ2VyKGJ5dGVPZmZzZXQpO1xuICAgIGlmIChvZmZzZXQgPCAwIHx8IG9mZnNldCA+IGJ1ZmZlckxlbmd0aCkgdGhyb3cgUmFuZ2VFcnJvcignV3Jvbmcgb2Zmc2V0IScpO1xuICAgIGJ5dGVMZW5ndGggPSBieXRlTGVuZ3RoID09PSB1bmRlZmluZWQgPyBidWZmZXJMZW5ndGggLSBvZmZzZXQgOiB0b0xlbmd0aChieXRlTGVuZ3RoKTtcbiAgICBpZiAob2Zmc2V0ICsgYnl0ZUxlbmd0aCA+IGJ1ZmZlckxlbmd0aCkgdGhyb3cgUmFuZ2VFcnJvcihXUk9OR19MRU5HVEgpO1xuICAgIHRoaXNbJEJVRkZFUl0gPSBidWZmZXI7XG4gICAgdGhpc1skT0ZGU0VUXSA9IG9mZnNldDtcbiAgICB0aGlzWyRMRU5HVEhdID0gYnl0ZUxlbmd0aDtcbiAgfTtcblxuICBpZiAoREVTQ1JJUFRPUlMpIHtcbiAgICBhZGRHZXR0ZXIoJEFycmF5QnVmZmVyLCBCWVRFX0xFTkdUSCwgJ19sJyk7XG4gICAgYWRkR2V0dGVyKCREYXRhVmlldywgQlVGRkVSLCAnX2InKTtcbiAgICBhZGRHZXR0ZXIoJERhdGFWaWV3LCBCWVRFX0xFTkdUSCwgJ19sJyk7XG4gICAgYWRkR2V0dGVyKCREYXRhVmlldywgQllURV9PRkZTRVQsICdfbycpO1xuICB9XG5cbiAgcmVkZWZpbmVBbGwoJERhdGFWaWV3W1BST1RPVFlQRV0sIHtcbiAgICBnZXRJbnQ4OiBmdW5jdGlvbiBnZXRJbnQ4KGJ5dGVPZmZzZXQpIHtcbiAgICAgIHJldHVybiBnZXQodGhpcywgMSwgYnl0ZU9mZnNldClbMF0gPDwgMjQgPj4gMjQ7XG4gICAgfSxcbiAgICBnZXRVaW50ODogZnVuY3Rpb24gZ2V0VWludDgoYnl0ZU9mZnNldCkge1xuICAgICAgcmV0dXJuIGdldCh0aGlzLCAxLCBieXRlT2Zmc2V0KVswXTtcbiAgICB9LFxuICAgIGdldEludDE2OiBmdW5jdGlvbiBnZXRJbnQxNihieXRlT2Zmc2V0IC8qICwgbGl0dGxlRW5kaWFuICovKSB7XG4gICAgICB2YXIgYnl0ZXMgPSBnZXQodGhpcywgMiwgYnl0ZU9mZnNldCwgYXJndW1lbnRzWzFdKTtcbiAgICAgIHJldHVybiAoYnl0ZXNbMV0gPDwgOCB8IGJ5dGVzWzBdKSA8PCAxNiA+PiAxNjtcbiAgICB9LFxuICAgIGdldFVpbnQxNjogZnVuY3Rpb24gZ2V0VWludDE2KGJ5dGVPZmZzZXQgLyogLCBsaXR0bGVFbmRpYW4gKi8pIHtcbiAgICAgIHZhciBieXRlcyA9IGdldCh0aGlzLCAyLCBieXRlT2Zmc2V0LCBhcmd1bWVudHNbMV0pO1xuICAgICAgcmV0dXJuIGJ5dGVzWzFdIDw8IDggfCBieXRlc1swXTtcbiAgICB9LFxuICAgIGdldEludDMyOiBmdW5jdGlvbiBnZXRJbnQzMihieXRlT2Zmc2V0IC8qICwgbGl0dGxlRW5kaWFuICovKSB7XG4gICAgICByZXR1cm4gdW5wYWNrSTMyKGdldCh0aGlzLCA0LCBieXRlT2Zmc2V0LCBhcmd1bWVudHNbMV0pKTtcbiAgICB9LFxuICAgIGdldFVpbnQzMjogZnVuY3Rpb24gZ2V0VWludDMyKGJ5dGVPZmZzZXQgLyogLCBsaXR0bGVFbmRpYW4gKi8pIHtcbiAgICAgIHJldHVybiB1bnBhY2tJMzIoZ2V0KHRoaXMsIDQsIGJ5dGVPZmZzZXQsIGFyZ3VtZW50c1sxXSkpID4+PiAwO1xuICAgIH0sXG4gICAgZ2V0RmxvYXQzMjogZnVuY3Rpb24gZ2V0RmxvYXQzMihieXRlT2Zmc2V0IC8qICwgbGl0dGxlRW5kaWFuICovKSB7XG4gICAgICByZXR1cm4gdW5wYWNrSUVFRTc1NChnZXQodGhpcywgNCwgYnl0ZU9mZnNldCwgYXJndW1lbnRzWzFdKSwgMjMsIDQpO1xuICAgIH0sXG4gICAgZ2V0RmxvYXQ2NDogZnVuY3Rpb24gZ2V0RmxvYXQ2NChieXRlT2Zmc2V0IC8qICwgbGl0dGxlRW5kaWFuICovKSB7XG4gICAgICByZXR1cm4gdW5wYWNrSUVFRTc1NChnZXQodGhpcywgOCwgYnl0ZU9mZnNldCwgYXJndW1lbnRzWzFdKSwgNTIsIDgpO1xuICAgIH0sXG4gICAgc2V0SW50ODogZnVuY3Rpb24gc2V0SW50OChieXRlT2Zmc2V0LCB2YWx1ZSkge1xuICAgICAgc2V0KHRoaXMsIDEsIGJ5dGVPZmZzZXQsIHBhY2tJOCwgdmFsdWUpO1xuICAgIH0sXG4gICAgc2V0VWludDg6IGZ1bmN0aW9uIHNldFVpbnQ4KGJ5dGVPZmZzZXQsIHZhbHVlKSB7XG4gICAgICBzZXQodGhpcywgMSwgYnl0ZU9mZnNldCwgcGFja0k4LCB2YWx1ZSk7XG4gICAgfSxcbiAgICBzZXRJbnQxNjogZnVuY3Rpb24gc2V0SW50MTYoYnl0ZU9mZnNldCwgdmFsdWUgLyogLCBsaXR0bGVFbmRpYW4gKi8pIHtcbiAgICAgIHNldCh0aGlzLCAyLCBieXRlT2Zmc2V0LCBwYWNrSTE2LCB2YWx1ZSwgYXJndW1lbnRzWzJdKTtcbiAgICB9LFxuICAgIHNldFVpbnQxNjogZnVuY3Rpb24gc2V0VWludDE2KGJ5dGVPZmZzZXQsIHZhbHVlIC8qICwgbGl0dGxlRW5kaWFuICovKSB7XG4gICAgICBzZXQodGhpcywgMiwgYnl0ZU9mZnNldCwgcGFja0kxNiwgdmFsdWUsIGFyZ3VtZW50c1syXSk7XG4gICAgfSxcbiAgICBzZXRJbnQzMjogZnVuY3Rpb24gc2V0SW50MzIoYnl0ZU9mZnNldCwgdmFsdWUgLyogLCBsaXR0bGVFbmRpYW4gKi8pIHtcbiAgICAgIHNldCh0aGlzLCA0LCBieXRlT2Zmc2V0LCBwYWNrSTMyLCB2YWx1ZSwgYXJndW1lbnRzWzJdKTtcbiAgICB9LFxuICAgIHNldFVpbnQzMjogZnVuY3Rpb24gc2V0VWludDMyKGJ5dGVPZmZzZXQsIHZhbHVlIC8qICwgbGl0dGxlRW5kaWFuICovKSB7XG4gICAgICBzZXQodGhpcywgNCwgYnl0ZU9mZnNldCwgcGFja0kzMiwgdmFsdWUsIGFyZ3VtZW50c1syXSk7XG4gICAgfSxcbiAgICBzZXRGbG9hdDMyOiBmdW5jdGlvbiBzZXRGbG9hdDMyKGJ5dGVPZmZzZXQsIHZhbHVlIC8qICwgbGl0dGxlRW5kaWFuICovKSB7XG4gICAgICBzZXQodGhpcywgNCwgYnl0ZU9mZnNldCwgcGFja0YzMiwgdmFsdWUsIGFyZ3VtZW50c1syXSk7XG4gICAgfSxcbiAgICBzZXRGbG9hdDY0OiBmdW5jdGlvbiBzZXRGbG9hdDY0KGJ5dGVPZmZzZXQsIHZhbHVlIC8qICwgbGl0dGxlRW5kaWFuICovKSB7XG4gICAgICBzZXQodGhpcywgOCwgYnl0ZU9mZnNldCwgcGFja0Y2NCwgdmFsdWUsIGFyZ3VtZW50c1syXSk7XG4gICAgfVxuICB9KTtcbn0gZWxzZSB7XG4gIGlmICghZmFpbHMoZnVuY3Rpb24gKCkge1xuICAgICRBcnJheUJ1ZmZlcigxKTtcbiAgfSkgfHwgIWZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgICBuZXcgJEFycmF5QnVmZmVyKC0xKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1uZXdcbiAgfSkgfHwgZmFpbHMoZnVuY3Rpb24gKCkge1xuICAgIG5ldyAkQXJyYXlCdWZmZXIoKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1uZXdcbiAgICBuZXcgJEFycmF5QnVmZmVyKDEuNSk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tbmV3XG4gICAgbmV3ICRBcnJheUJ1ZmZlcihOYU4pOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLW5ld1xuICAgIHJldHVybiAkQXJyYXlCdWZmZXIubmFtZSAhPSBBUlJBWV9CVUZGRVI7XG4gIH0pKSB7XG4gICAgJEFycmF5QnVmZmVyID0gZnVuY3Rpb24gQXJyYXlCdWZmZXIobGVuZ3RoKSB7XG4gICAgICBhbkluc3RhbmNlKHRoaXMsICRBcnJheUJ1ZmZlcik7XG4gICAgICByZXR1cm4gbmV3IEJhc2VCdWZmZXIodG9JbmRleChsZW5ndGgpKTtcbiAgICB9O1xuICAgIHZhciBBcnJheUJ1ZmZlclByb3RvID0gJEFycmF5QnVmZmVyW1BST1RPVFlQRV0gPSBCYXNlQnVmZmVyW1BST1RPVFlQRV07XG4gICAgZm9yICh2YXIga2V5cyA9IGdPUE4oQmFzZUJ1ZmZlciksIGogPSAwLCBrZXk7IGtleXMubGVuZ3RoID4gajspIHtcbiAgICAgIGlmICghKChrZXkgPSBrZXlzW2orK10pIGluICRBcnJheUJ1ZmZlcikpIGhpZGUoJEFycmF5QnVmZmVyLCBrZXksIEJhc2VCdWZmZXJba2V5XSk7XG4gICAgfVxuICAgIGlmICghTElCUkFSWSkgQXJyYXlCdWZmZXJQcm90by5jb25zdHJ1Y3RvciA9ICRBcnJheUJ1ZmZlcjtcbiAgfVxuICAvLyBpT1MgU2FmYXJpIDcueCBidWdcbiAgdmFyIHZpZXcgPSBuZXcgJERhdGFWaWV3KG5ldyAkQXJyYXlCdWZmZXIoMikpO1xuICB2YXIgJHNldEludDggPSAkRGF0YVZpZXdbUFJPVE9UWVBFXS5zZXRJbnQ4O1xuICB2aWV3LnNldEludDgoMCwgMjE0NzQ4MzY0OCk7XG4gIHZpZXcuc2V0SW50OCgxLCAyMTQ3NDgzNjQ5KTtcbiAgaWYgKHZpZXcuZ2V0SW50OCgwKSB8fCAhdmlldy5nZXRJbnQ4KDEpKSByZWRlZmluZUFsbCgkRGF0YVZpZXdbUFJPVE9UWVBFXSwge1xuICAgIHNldEludDg6IGZ1bmN0aW9uIHNldEludDgoYnl0ZU9mZnNldCwgdmFsdWUpIHtcbiAgICAgICRzZXRJbnQ4LmNhbGwodGhpcywgYnl0ZU9mZnNldCwgdmFsdWUgPDwgMjQgPj4gMjQpO1xuICAgIH0sXG4gICAgc2V0VWludDg6IGZ1bmN0aW9uIHNldFVpbnQ4KGJ5dGVPZmZzZXQsIHZhbHVlKSB7XG4gICAgICAkc2V0SW50OC5jYWxsKHRoaXMsIGJ5dGVPZmZzZXQsIHZhbHVlIDw8IDI0ID4+IDI0KTtcbiAgICB9XG4gIH0sIHRydWUpO1xufVxuc2V0VG9TdHJpbmdUYWcoJEFycmF5QnVmZmVyLCBBUlJBWV9CVUZGRVIpO1xuc2V0VG9TdHJpbmdUYWcoJERhdGFWaWV3LCBEQVRBX1ZJRVcpO1xuaGlkZSgkRGF0YVZpZXdbUFJPVE9UWVBFXSwgJHR5cGVkLlZJRVcsIHRydWUpO1xuZXhwb3J0c1tBUlJBWV9CVUZGRVJdID0gJEFycmF5QnVmZmVyO1xuZXhwb3J0c1tEQVRBX1ZJRVddID0gJERhdGFWaWV3O1xuIiwidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpO1xudmFyIGhpZGUgPSByZXF1aXJlKCcuL19oaWRlJyk7XG52YXIgdWlkID0gcmVxdWlyZSgnLi9fdWlkJyk7XG52YXIgVFlQRUQgPSB1aWQoJ3R5cGVkX2FycmF5Jyk7XG52YXIgVklFVyA9IHVpZCgndmlldycpO1xudmFyIEFCViA9ICEhKGdsb2JhbC5BcnJheUJ1ZmZlciAmJiBnbG9iYWwuRGF0YVZpZXcpO1xudmFyIENPTlNUUiA9IEFCVjtcbnZhciBpID0gMDtcbnZhciBsID0gOTtcbnZhciBUeXBlZDtcblxudmFyIFR5cGVkQXJyYXlDb25zdHJ1Y3RvcnMgPSAoXG4gICdJbnQ4QXJyYXksVWludDhBcnJheSxVaW50OENsYW1wZWRBcnJheSxJbnQxNkFycmF5LFVpbnQxNkFycmF5LEludDMyQXJyYXksVWludDMyQXJyYXksRmxvYXQzMkFycmF5LEZsb2F0NjRBcnJheSdcbikuc3BsaXQoJywnKTtcblxud2hpbGUgKGkgPCBsKSB7XG4gIGlmIChUeXBlZCA9IGdsb2JhbFtUeXBlZEFycmF5Q29uc3RydWN0b3JzW2krK11dKSB7XG4gICAgaGlkZShUeXBlZC5wcm90b3R5cGUsIFRZUEVELCB0cnVlKTtcbiAgICBoaWRlKFR5cGVkLnByb3RvdHlwZSwgVklFVywgdHJ1ZSk7XG4gIH0gZWxzZSBDT05TVFIgPSBmYWxzZTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIEFCVjogQUJWLFxuICBDT05TVFI6IENPTlNUUixcbiAgVFlQRUQ6IFRZUEVELFxuICBWSUVXOiBWSUVXXG59O1xuIiwidmFyIGlkID0gMDtcbnZhciBweCA9IE1hdGgucmFuZG9tKCk7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChrZXkpIHtcbiAgcmV0dXJuICdTeW1ib2woJy5jb25jYXQoa2V5ID09PSB1bmRlZmluZWQgPyAnJyA6IGtleSwgJylfJywgKCsraWQgKyBweCkudG9TdHJpbmcoMzYpKTtcbn07XG4iLCJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi9fZ2xvYmFsJyk7XG52YXIgbmF2aWdhdG9yID0gZ2xvYmFsLm5hdmlnYXRvcjtcblxubW9kdWxlLmV4cG9ydHMgPSBuYXZpZ2F0b3IgJiYgbmF2aWdhdG9yLnVzZXJBZ2VudCB8fCAnJztcbiIsInZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIFRZUEUpIHtcbiAgaWYgKCFpc09iamVjdChpdCkgfHwgaXQuX3QgIT09IFRZUEUpIHRocm93IFR5cGVFcnJvcignSW5jb21wYXRpYmxlIHJlY2VpdmVyLCAnICsgVFlQRSArICcgcmVxdWlyZWQhJyk7XG4gIHJldHVybiBpdDtcbn07XG4iLCJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi9fZ2xvYmFsJyk7XG52YXIgY29yZSA9IHJlcXVpcmUoJy4vX2NvcmUnKTtcbnZhciBMSUJSQVJZID0gcmVxdWlyZSgnLi9fbGlicmFyeScpO1xudmFyIHdrc0V4dCA9IHJlcXVpcmUoJy4vX3drcy1leHQnKTtcbnZhciBkZWZpbmVQcm9wZXJ0eSA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpLmY7XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChuYW1lKSB7XG4gIHZhciAkU3ltYm9sID0gY29yZS5TeW1ib2wgfHwgKGNvcmUuU3ltYm9sID0gTElCUkFSWSA/IHt9IDogZ2xvYmFsLlN5bWJvbCB8fCB7fSk7XG4gIGlmIChuYW1lLmNoYXJBdCgwKSAhPSAnXycgJiYgIShuYW1lIGluICRTeW1ib2wpKSBkZWZpbmVQcm9wZXJ0eSgkU3ltYm9sLCBuYW1lLCB7IHZhbHVlOiB3a3NFeHQuZihuYW1lKSB9KTtcbn07XG4iLCJleHBvcnRzLmYgPSByZXF1aXJlKCcuL193a3MnKTtcbiIsInZhciBzdG9yZSA9IHJlcXVpcmUoJy4vX3NoYXJlZCcpKCd3a3MnKTtcbnZhciB1aWQgPSByZXF1aXJlKCcuL191aWQnKTtcbnZhciBTeW1ib2wgPSByZXF1aXJlKCcuL19nbG9iYWwnKS5TeW1ib2w7XG52YXIgVVNFX1NZTUJPTCA9IHR5cGVvZiBTeW1ib2wgPT0gJ2Z1bmN0aW9uJztcblxudmFyICRleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAobmFtZSkge1xuICByZXR1cm4gc3RvcmVbbmFtZV0gfHwgKHN0b3JlW25hbWVdID1cbiAgICBVU0VfU1lNQk9MICYmIFN5bWJvbFtuYW1lXSB8fCAoVVNFX1NZTUJPTCA/IFN5bWJvbCA6IHVpZCkoJ1N5bWJvbC4nICsgbmFtZSkpO1xufTtcblxuJGV4cG9ydHMuc3RvcmUgPSBzdG9yZTtcbiIsInZhciBjbGFzc29mID0gcmVxdWlyZSgnLi9fY2xhc3NvZicpO1xudmFyIElURVJBVE9SID0gcmVxdWlyZSgnLi9fd2tzJykoJ2l0ZXJhdG9yJyk7XG52YXIgSXRlcmF0b3JzID0gcmVxdWlyZSgnLi9faXRlcmF0b3JzJyk7XG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX2NvcmUnKS5nZXRJdGVyYXRvck1ldGhvZCA9IGZ1bmN0aW9uIChpdCkge1xuICBpZiAoaXQgIT0gdW5kZWZpbmVkKSByZXR1cm4gaXRbSVRFUkFUT1JdXG4gICAgfHwgaXRbJ0BAaXRlcmF0b3InXVxuICAgIHx8IEl0ZXJhdG9yc1tjbGFzc29mKGl0KV07XG59O1xuIiwiLy8gMjIuMS4zLjMgQXJyYXkucHJvdG90eXBlLmNvcHlXaXRoaW4odGFyZ2V0LCBzdGFydCwgZW5kID0gdGhpcy5sZW5ndGgpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuUCwgJ0FycmF5JywgeyBjb3B5V2l0aGluOiByZXF1aXJlKCcuL19hcnJheS1jb3B5LXdpdGhpbicpIH0pO1xuXG5yZXF1aXJlKCcuL19hZGQtdG8tdW5zY29wYWJsZXMnKSgnY29weVdpdGhpbicpO1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkZXZlcnkgPSByZXF1aXJlKCcuL19hcnJheS1tZXRob2RzJykoNCk7XG5cbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogIXJlcXVpcmUoJy4vX3N0cmljdC1tZXRob2QnKShbXS5ldmVyeSwgdHJ1ZSksICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjUgLyAxNS40LjQuMTYgQXJyYXkucHJvdG90eXBlLmV2ZXJ5KGNhbGxiYWNrZm4gWywgdGhpc0FyZ10pXG4gIGV2ZXJ5OiBmdW5jdGlvbiBldmVyeShjYWxsYmFja2ZuIC8qICwgdGhpc0FyZyAqLykge1xuICAgIHJldHVybiAkZXZlcnkodGhpcywgY2FsbGJhY2tmbiwgYXJndW1lbnRzWzFdKTtcbiAgfVxufSk7XG4iLCIvLyAyMi4xLjMuNiBBcnJheS5wcm90b3R5cGUuZmlsbCh2YWx1ZSwgc3RhcnQgPSAwLCBlbmQgPSB0aGlzLmxlbmd0aClcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5QLCAnQXJyYXknLCB7IGZpbGw6IHJlcXVpcmUoJy4vX2FycmF5LWZpbGwnKSB9KTtcblxucmVxdWlyZSgnLi9fYWRkLXRvLXVuc2NvcGFibGVzJykoJ2ZpbGwnKTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJGZpbHRlciA9IHJlcXVpcmUoJy4vX2FycmF5LW1ldGhvZHMnKSgyKTtcblxuJGV4cG9ydCgkZXhwb3J0LlAgKyAkZXhwb3J0LkYgKiAhcmVxdWlyZSgnLi9fc3RyaWN0LW1ldGhvZCcpKFtdLmZpbHRlciwgdHJ1ZSksICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjcgLyAxNS40LjQuMjAgQXJyYXkucHJvdG90eXBlLmZpbHRlcihjYWxsYmFja2ZuIFssIHRoaXNBcmddKVxuICBmaWx0ZXI6IGZ1bmN0aW9uIGZpbHRlcihjYWxsYmFja2ZuIC8qICwgdGhpc0FyZyAqLykge1xuICAgIHJldHVybiAkZmlsdGVyKHRoaXMsIGNhbGxiYWNrZm4sIGFyZ3VtZW50c1sxXSk7XG4gIH1cbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xuLy8gMjIuMS4zLjkgQXJyYXkucHJvdG90eXBlLmZpbmRJbmRleChwcmVkaWNhdGUsIHRoaXNBcmcgPSB1bmRlZmluZWQpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyICRmaW5kID0gcmVxdWlyZSgnLi9fYXJyYXktbWV0aG9kcycpKDYpO1xudmFyIEtFWSA9ICdmaW5kSW5kZXgnO1xudmFyIGZvcmNlZCA9IHRydWU7XG4vLyBTaG91bGRuJ3Qgc2tpcCBob2xlc1xuaWYgKEtFWSBpbiBbXSkgQXJyYXkoMSlbS0VZXShmdW5jdGlvbiAoKSB7IGZvcmNlZCA9IGZhbHNlOyB9KTtcbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogZm9yY2VkLCAnQXJyYXknLCB7XG4gIGZpbmRJbmRleDogZnVuY3Rpb24gZmluZEluZGV4KGNhbGxiYWNrZm4gLyogLCB0aGF0ID0gdW5kZWZpbmVkICovKSB7XG4gICAgcmV0dXJuICRmaW5kKHRoaXMsIGNhbGxiYWNrZm4sIGFyZ3VtZW50cy5sZW5ndGggPiAxID8gYXJndW1lbnRzWzFdIDogdW5kZWZpbmVkKTtcbiAgfVxufSk7XG5yZXF1aXJlKCcuL19hZGQtdG8tdW5zY29wYWJsZXMnKShLRVkpO1xuIiwiJ3VzZSBzdHJpY3QnO1xuLy8gMjIuMS4zLjggQXJyYXkucHJvdG90eXBlLmZpbmQocHJlZGljYXRlLCB0aGlzQXJnID0gdW5kZWZpbmVkKVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkZmluZCA9IHJlcXVpcmUoJy4vX2FycmF5LW1ldGhvZHMnKSg1KTtcbnZhciBLRVkgPSAnZmluZCc7XG52YXIgZm9yY2VkID0gdHJ1ZTtcbi8vIFNob3VsZG4ndCBza2lwIGhvbGVzXG5pZiAoS0VZIGluIFtdKSBBcnJheSgxKVtLRVldKGZ1bmN0aW9uICgpIHsgZm9yY2VkID0gZmFsc2U7IH0pO1xuJGV4cG9ydCgkZXhwb3J0LlAgKyAkZXhwb3J0LkYgKiBmb3JjZWQsICdBcnJheScsIHtcbiAgZmluZDogZnVuY3Rpb24gZmluZChjYWxsYmFja2ZuIC8qICwgdGhhdCA9IHVuZGVmaW5lZCAqLykge1xuICAgIHJldHVybiAkZmluZCh0aGlzLCBjYWxsYmFja2ZuLCBhcmd1bWVudHMubGVuZ3RoID4gMSA/IGFyZ3VtZW50c1sxXSA6IHVuZGVmaW5lZCk7XG4gIH1cbn0pO1xucmVxdWlyZSgnLi9fYWRkLXRvLXVuc2NvcGFibGVzJykoS0VZKTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJGZvckVhY2ggPSByZXF1aXJlKCcuL19hcnJheS1tZXRob2RzJykoMCk7XG52YXIgU1RSSUNUID0gcmVxdWlyZSgnLi9fc3RyaWN0LW1ldGhvZCcpKFtdLmZvckVhY2gsIHRydWUpO1xuXG4kZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqICFTVFJJQ1QsICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjEwIC8gMTUuNC40LjE4IEFycmF5LnByb3RvdHlwZS5mb3JFYWNoKGNhbGxiYWNrZm4gWywgdGhpc0FyZ10pXG4gIGZvckVhY2g6IGZ1bmN0aW9uIGZvckVhY2goY2FsbGJhY2tmbiAvKiAsIHRoaXNBcmcgKi8pIHtcbiAgICByZXR1cm4gJGZvckVhY2godGhpcywgY2FsbGJhY2tmbiwgYXJndW1lbnRzWzFdKTtcbiAgfVxufSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgY3R4ID0gcmVxdWlyZSgnLi9fY3R4Jyk7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgY2FsbCA9IHJlcXVpcmUoJy4vX2l0ZXItY2FsbCcpO1xudmFyIGlzQXJyYXlJdGVyID0gcmVxdWlyZSgnLi9faXMtYXJyYXktaXRlcicpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi9fdG8tbGVuZ3RoJyk7XG52YXIgY3JlYXRlUHJvcGVydHkgPSByZXF1aXJlKCcuL19jcmVhdGUtcHJvcGVydHknKTtcbnZhciBnZXRJdGVyRm4gPSByZXF1aXJlKCcuL2NvcmUuZ2V0LWl0ZXJhdG9yLW1ldGhvZCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqICFyZXF1aXJlKCcuL19pdGVyLWRldGVjdCcpKGZ1bmN0aW9uIChpdGVyKSB7IEFycmF5LmZyb20oaXRlcik7IH0pLCAnQXJyYXknLCB7XG4gIC8vIDIyLjEuMi4xIEFycmF5LmZyb20oYXJyYXlMaWtlLCBtYXBmbiA9IHVuZGVmaW5lZCwgdGhpc0FyZyA9IHVuZGVmaW5lZClcbiAgZnJvbTogZnVuY3Rpb24gZnJvbShhcnJheUxpa2UgLyogLCBtYXBmbiA9IHVuZGVmaW5lZCwgdGhpc0FyZyA9IHVuZGVmaW5lZCAqLykge1xuICAgIHZhciBPID0gdG9PYmplY3QoYXJyYXlMaWtlKTtcbiAgICB2YXIgQyA9IHR5cGVvZiB0aGlzID09ICdmdW5jdGlvbicgPyB0aGlzIDogQXJyYXk7XG4gICAgdmFyIGFMZW4gPSBhcmd1bWVudHMubGVuZ3RoO1xuICAgIHZhciBtYXBmbiA9IGFMZW4gPiAxID8gYXJndW1lbnRzWzFdIDogdW5kZWZpbmVkO1xuICAgIHZhciBtYXBwaW5nID0gbWFwZm4gIT09IHVuZGVmaW5lZDtcbiAgICB2YXIgaW5kZXggPSAwO1xuICAgIHZhciBpdGVyRm4gPSBnZXRJdGVyRm4oTyk7XG4gICAgdmFyIGxlbmd0aCwgcmVzdWx0LCBzdGVwLCBpdGVyYXRvcjtcbiAgICBpZiAobWFwcGluZykgbWFwZm4gPSBjdHgobWFwZm4sIGFMZW4gPiAyID8gYXJndW1lbnRzWzJdIDogdW5kZWZpbmVkLCAyKTtcbiAgICAvLyBpZiBvYmplY3QgaXNuJ3QgaXRlcmFibGUgb3IgaXQncyBhcnJheSB3aXRoIGRlZmF1bHQgaXRlcmF0b3IgLSB1c2Ugc2ltcGxlIGNhc2VcbiAgICBpZiAoaXRlckZuICE9IHVuZGVmaW5lZCAmJiAhKEMgPT0gQXJyYXkgJiYgaXNBcnJheUl0ZXIoaXRlckZuKSkpIHtcbiAgICAgIGZvciAoaXRlcmF0b3IgPSBpdGVyRm4uY2FsbChPKSwgcmVzdWx0ID0gbmV3IEMoKTsgIShzdGVwID0gaXRlcmF0b3IubmV4dCgpKS5kb25lOyBpbmRleCsrKSB7XG4gICAgICAgIGNyZWF0ZVByb3BlcnR5KHJlc3VsdCwgaW5kZXgsIG1hcHBpbmcgPyBjYWxsKGl0ZXJhdG9yLCBtYXBmbiwgW3N0ZXAudmFsdWUsIGluZGV4XSwgdHJ1ZSkgOiBzdGVwLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbGVuZ3RoID0gdG9MZW5ndGgoTy5sZW5ndGgpO1xuICAgICAgZm9yIChyZXN1bHQgPSBuZXcgQyhsZW5ndGgpOyBsZW5ndGggPiBpbmRleDsgaW5kZXgrKykge1xuICAgICAgICBjcmVhdGVQcm9wZXJ0eShyZXN1bHQsIGluZGV4LCBtYXBwaW5nID8gbWFwZm4oT1tpbmRleF0sIGluZGV4KSA6IE9baW5kZXhdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmVzdWx0Lmxlbmd0aCA9IGluZGV4O1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkaW5kZXhPZiA9IHJlcXVpcmUoJy4vX2FycmF5LWluY2x1ZGVzJykoZmFsc2UpO1xudmFyICRuYXRpdmUgPSBbXS5pbmRleE9mO1xudmFyIE5FR0FUSVZFX1pFUk8gPSAhISRuYXRpdmUgJiYgMSAvIFsxXS5pbmRleE9mKDEsIC0wKSA8IDA7XG5cbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogKE5FR0FUSVZFX1pFUk8gfHwgIXJlcXVpcmUoJy4vX3N0cmljdC1tZXRob2QnKSgkbmF0aXZlKSksICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjExIC8gMTUuNC40LjE0IEFycmF5LnByb3RvdHlwZS5pbmRleE9mKHNlYXJjaEVsZW1lbnQgWywgZnJvbUluZGV4XSlcbiAgaW5kZXhPZjogZnVuY3Rpb24gaW5kZXhPZihzZWFyY2hFbGVtZW50IC8qICwgZnJvbUluZGV4ID0gMCAqLykge1xuICAgIHJldHVybiBORUdBVElWRV9aRVJPXG4gICAgICAvLyBjb252ZXJ0IC0wIHRvICswXG4gICAgICA/ICRuYXRpdmUuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCAwXG4gICAgICA6ICRpbmRleE9mKHRoaXMsIHNlYXJjaEVsZW1lbnQsIGFyZ3VtZW50c1sxXSk7XG4gIH1cbn0pO1xuIiwiLy8gMjIuMS4yLjIgLyAxNS40LjMuMiBBcnJheS5pc0FycmF5KGFyZylcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5TLCAnQXJyYXknLCB7IGlzQXJyYXk6IHJlcXVpcmUoJy4vX2lzLWFycmF5JykgfSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgYWRkVG9VbnNjb3BhYmxlcyA9IHJlcXVpcmUoJy4vX2FkZC10by11bnNjb3BhYmxlcycpO1xudmFyIHN0ZXAgPSByZXF1aXJlKCcuL19pdGVyLXN0ZXAnKTtcbnZhciBJdGVyYXRvcnMgPSByZXF1aXJlKCcuL19pdGVyYXRvcnMnKTtcbnZhciB0b0lPYmplY3QgPSByZXF1aXJlKCcuL190by1pb2JqZWN0Jyk7XG5cbi8vIDIyLjEuMy40IEFycmF5LnByb3RvdHlwZS5lbnRyaWVzKClcbi8vIDIyLjEuMy4xMyBBcnJheS5wcm90b3R5cGUua2V5cygpXG4vLyAyMi4xLjMuMjkgQXJyYXkucHJvdG90eXBlLnZhbHVlcygpXG4vLyAyMi4xLjMuMzAgQXJyYXkucHJvdG90eXBlW0BAaXRlcmF0b3JdKClcbm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9faXRlci1kZWZpbmUnKShBcnJheSwgJ0FycmF5JywgZnVuY3Rpb24gKGl0ZXJhdGVkLCBraW5kKSB7XG4gIHRoaXMuX3QgPSB0b0lPYmplY3QoaXRlcmF0ZWQpOyAvLyB0YXJnZXRcbiAgdGhpcy5faSA9IDA7ICAgICAgICAgICAgICAgICAgIC8vIG5leHQgaW5kZXhcbiAgdGhpcy5fayA9IGtpbmQ7ICAgICAgICAgICAgICAgIC8vIGtpbmRcbi8vIDIyLjEuNS4yLjEgJUFycmF5SXRlcmF0b3JQcm90b3R5cGUlLm5leHQoKVxufSwgZnVuY3Rpb24gKCkge1xuICB2YXIgTyA9IHRoaXMuX3Q7XG4gIHZhciBraW5kID0gdGhpcy5faztcbiAgdmFyIGluZGV4ID0gdGhpcy5faSsrO1xuICBpZiAoIU8gfHwgaW5kZXggPj0gTy5sZW5ndGgpIHtcbiAgICB0aGlzLl90ID0gdW5kZWZpbmVkO1xuICAgIHJldHVybiBzdGVwKDEpO1xuICB9XG4gIGlmIChraW5kID09ICdrZXlzJykgcmV0dXJuIHN0ZXAoMCwgaW5kZXgpO1xuICBpZiAoa2luZCA9PSAndmFsdWVzJykgcmV0dXJuIHN0ZXAoMCwgT1tpbmRleF0pO1xuICByZXR1cm4gc3RlcCgwLCBbaW5kZXgsIE9baW5kZXhdXSk7XG59LCAndmFsdWVzJyk7XG5cbi8vIGFyZ3VtZW50c0xpc3RbQEBpdGVyYXRvcl0gaXMgJUFycmF5UHJvdG9fdmFsdWVzJSAoOS40LjQuNiwgOS40LjQuNylcbkl0ZXJhdG9ycy5Bcmd1bWVudHMgPSBJdGVyYXRvcnMuQXJyYXk7XG5cbmFkZFRvVW5zY29wYWJsZXMoJ2tleXMnKTtcbmFkZFRvVW5zY29wYWJsZXMoJ3ZhbHVlcycpO1xuYWRkVG9VbnNjb3BhYmxlcygnZW50cmllcycpO1xuIiwiJ3VzZSBzdHJpY3QnO1xuLy8gMjIuMS4zLjEzIEFycmF5LnByb3RvdHlwZS5qb2luKHNlcGFyYXRvcilcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgdG9JT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8taW9iamVjdCcpO1xudmFyIGFycmF5Sm9pbiA9IFtdLmpvaW47XG5cbi8vIGZhbGxiYWNrIGZvciBub3QgYXJyYXktbGlrZSBzdHJpbmdzXG4kZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqIChyZXF1aXJlKCcuL19pb2JqZWN0JykgIT0gT2JqZWN0IHx8ICFyZXF1aXJlKCcuL19zdHJpY3QtbWV0aG9kJykoYXJyYXlKb2luKSksICdBcnJheScsIHtcbiAgam9pbjogZnVuY3Rpb24gam9pbihzZXBhcmF0b3IpIHtcbiAgICByZXR1cm4gYXJyYXlKb2luLmNhbGwodG9JT2JqZWN0KHRoaXMpLCBzZXBhcmF0b3IgPT09IHVuZGVmaW5lZCA/ICcsJyA6IHNlcGFyYXRvcik7XG4gIH1cbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciB0b0lPYmplY3QgPSByZXF1aXJlKCcuL190by1pb2JqZWN0Jyk7XG52YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi9fdG8taW50ZWdlcicpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi9fdG8tbGVuZ3RoJyk7XG52YXIgJG5hdGl2ZSA9IFtdLmxhc3RJbmRleE9mO1xudmFyIE5FR0FUSVZFX1pFUk8gPSAhISRuYXRpdmUgJiYgMSAvIFsxXS5sYXN0SW5kZXhPZigxLCAtMCkgPCAwO1xuXG4kZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqIChORUdBVElWRV9aRVJPIHx8ICFyZXF1aXJlKCcuL19zdHJpY3QtbWV0aG9kJykoJG5hdGl2ZSkpLCAnQXJyYXknLCB7XG4gIC8vIDIyLjEuMy4xNCAvIDE1LjQuNC4xNSBBcnJheS5wcm90b3R5cGUubGFzdEluZGV4T2Yoc2VhcmNoRWxlbWVudCBbLCBmcm9tSW5kZXhdKVxuICBsYXN0SW5kZXhPZjogZnVuY3Rpb24gbGFzdEluZGV4T2Yoc2VhcmNoRWxlbWVudCAvKiAsIGZyb21JbmRleCA9IEBbKi0xXSAqLykge1xuICAgIC8vIGNvbnZlcnQgLTAgdG8gKzBcbiAgICBpZiAoTkVHQVRJVkVfWkVSTykgcmV0dXJuICRuYXRpdmUuYXBwbHkodGhpcywgYXJndW1lbnRzKSB8fCAwO1xuICAgIHZhciBPID0gdG9JT2JqZWN0KHRoaXMpO1xuICAgIHZhciBsZW5ndGggPSB0b0xlbmd0aChPLmxlbmd0aCk7XG4gICAgdmFyIGluZGV4ID0gbGVuZ3RoIC0gMTtcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA+IDEpIGluZGV4ID0gTWF0aC5taW4oaW5kZXgsIHRvSW50ZWdlcihhcmd1bWVudHNbMV0pKTtcbiAgICBpZiAoaW5kZXggPCAwKSBpbmRleCA9IGxlbmd0aCArIGluZGV4O1xuICAgIGZvciAoO2luZGV4ID49IDA7IGluZGV4LS0pIGlmIChpbmRleCBpbiBPKSBpZiAoT1tpbmRleF0gPT09IHNlYXJjaEVsZW1lbnQpIHJldHVybiBpbmRleCB8fCAwO1xuICAgIHJldHVybiAtMTtcbiAgfVxufSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyICRtYXAgPSByZXF1aXJlKCcuL19hcnJheS1tZXRob2RzJykoMSk7XG5cbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogIXJlcXVpcmUoJy4vX3N0cmljdC1tZXRob2QnKShbXS5tYXAsIHRydWUpLCAnQXJyYXknLCB7XG4gIC8vIDIyLjEuMy4xNSAvIDE1LjQuNC4xOSBBcnJheS5wcm90b3R5cGUubWFwKGNhbGxiYWNrZm4gWywgdGhpc0FyZ10pXG4gIG1hcDogZnVuY3Rpb24gbWFwKGNhbGxiYWNrZm4gLyogLCB0aGlzQXJnICovKSB7XG4gICAgcmV0dXJuICRtYXAodGhpcywgY2FsbGJhY2tmbiwgYXJndW1lbnRzWzFdKTtcbiAgfVxufSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIGNyZWF0ZVByb3BlcnR5ID0gcmVxdWlyZSgnLi9fY3JlYXRlLXByb3BlcnR5Jyk7XG5cbi8vIFdlYktpdCBBcnJheS5vZiBpc24ndCBnZW5lcmljXG4kZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqIHJlcXVpcmUoJy4vX2ZhaWxzJykoZnVuY3Rpb24gKCkge1xuICBmdW5jdGlvbiBGKCkgeyAvKiBlbXB0eSAqLyB9XG4gIHJldHVybiAhKEFycmF5Lm9mLmNhbGwoRikgaW5zdGFuY2VvZiBGKTtcbn0pLCAnQXJyYXknLCB7XG4gIC8vIDIyLjEuMi4zIEFycmF5Lm9mKCAuLi5pdGVtcylcbiAgb2Y6IGZ1bmN0aW9uIG9mKC8qIC4uLmFyZ3MgKi8pIHtcbiAgICB2YXIgaW5kZXggPSAwO1xuICAgIHZhciBhTGVuID0gYXJndW1lbnRzLmxlbmd0aDtcbiAgICB2YXIgcmVzdWx0ID0gbmV3ICh0eXBlb2YgdGhpcyA9PSAnZnVuY3Rpb24nID8gdGhpcyA6IEFycmF5KShhTGVuKTtcbiAgICB3aGlsZSAoYUxlbiA+IGluZGV4KSBjcmVhdGVQcm9wZXJ0eShyZXN1bHQsIGluZGV4LCBhcmd1bWVudHNbaW5kZXgrK10pO1xuICAgIHJlc3VsdC5sZW5ndGggPSBhTGVuO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkcmVkdWNlID0gcmVxdWlyZSgnLi9fYXJyYXktcmVkdWNlJyk7XG5cbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogIXJlcXVpcmUoJy4vX3N0cmljdC1tZXRob2QnKShbXS5yZWR1Y2VSaWdodCwgdHJ1ZSksICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjE5IC8gMTUuNC40LjIyIEFycmF5LnByb3RvdHlwZS5yZWR1Y2VSaWdodChjYWxsYmFja2ZuIFssIGluaXRpYWxWYWx1ZV0pXG4gIHJlZHVjZVJpZ2h0OiBmdW5jdGlvbiByZWR1Y2VSaWdodChjYWxsYmFja2ZuIC8qICwgaW5pdGlhbFZhbHVlICovKSB7XG4gICAgcmV0dXJuICRyZWR1Y2UodGhpcywgY2FsbGJhY2tmbiwgYXJndW1lbnRzLmxlbmd0aCwgYXJndW1lbnRzWzFdLCB0cnVlKTtcbiAgfVxufSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyICRyZWR1Y2UgPSByZXF1aXJlKCcuL19hcnJheS1yZWR1Y2UnKTtcblxuJGV4cG9ydCgkZXhwb3J0LlAgKyAkZXhwb3J0LkYgKiAhcmVxdWlyZSgnLi9fc3RyaWN0LW1ldGhvZCcpKFtdLnJlZHVjZSwgdHJ1ZSksICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjE4IC8gMTUuNC40LjIxIEFycmF5LnByb3RvdHlwZS5yZWR1Y2UoY2FsbGJhY2tmbiBbLCBpbml0aWFsVmFsdWVdKVxuICByZWR1Y2U6IGZ1bmN0aW9uIHJlZHVjZShjYWxsYmFja2ZuIC8qICwgaW5pdGlhbFZhbHVlICovKSB7XG4gICAgcmV0dXJuICRyZWR1Y2UodGhpcywgY2FsbGJhY2tmbiwgYXJndW1lbnRzLmxlbmd0aCwgYXJndW1lbnRzWzFdLCBmYWxzZSk7XG4gIH1cbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciBodG1sID0gcmVxdWlyZSgnLi9faHRtbCcpO1xudmFyIGNvZiA9IHJlcXVpcmUoJy4vX2NvZicpO1xudmFyIHRvQWJzb2x1dGVJbmRleCA9IHJlcXVpcmUoJy4vX3RvLWFic29sdXRlLWluZGV4Jyk7XG52YXIgdG9MZW5ndGggPSByZXF1aXJlKCcuL190by1sZW5ndGgnKTtcbnZhciBhcnJheVNsaWNlID0gW10uc2xpY2U7XG5cbi8vIGZhbGxiYWNrIGZvciBub3QgYXJyYXktbGlrZSBFUzMgc3RyaW5ncyBhbmQgRE9NIG9iamVjdHNcbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogcmVxdWlyZSgnLi9fZmFpbHMnKShmdW5jdGlvbiAoKSB7XG4gIGlmIChodG1sKSBhcnJheVNsaWNlLmNhbGwoaHRtbCk7XG59KSwgJ0FycmF5Jywge1xuICBzbGljZTogZnVuY3Rpb24gc2xpY2UoYmVnaW4sIGVuZCkge1xuICAgIHZhciBsZW4gPSB0b0xlbmd0aCh0aGlzLmxlbmd0aCk7XG4gICAgdmFyIGtsYXNzID0gY29mKHRoaXMpO1xuICAgIGVuZCA9IGVuZCA9PT0gdW5kZWZpbmVkID8gbGVuIDogZW5kO1xuICAgIGlmIChrbGFzcyA9PSAnQXJyYXknKSByZXR1cm4gYXJyYXlTbGljZS5jYWxsKHRoaXMsIGJlZ2luLCBlbmQpO1xuICAgIHZhciBzdGFydCA9IHRvQWJzb2x1dGVJbmRleChiZWdpbiwgbGVuKTtcbiAgICB2YXIgdXBUbyA9IHRvQWJzb2x1dGVJbmRleChlbmQsIGxlbik7XG4gICAgdmFyIHNpemUgPSB0b0xlbmd0aCh1cFRvIC0gc3RhcnQpO1xuICAgIHZhciBjbG9uZWQgPSBuZXcgQXJyYXkoc2l6ZSk7XG4gICAgdmFyIGkgPSAwO1xuICAgIGZvciAoOyBpIDwgc2l6ZTsgaSsrKSBjbG9uZWRbaV0gPSBrbGFzcyA9PSAnU3RyaW5nJ1xuICAgICAgPyB0aGlzLmNoYXJBdChzdGFydCArIGkpXG4gICAgICA6IHRoaXNbc3RhcnQgKyBpXTtcbiAgICByZXR1cm4gY2xvbmVkO1xuICB9XG59KTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJHNvbWUgPSByZXF1aXJlKCcuL19hcnJheS1tZXRob2RzJykoMyk7XG5cbiRleHBvcnQoJGV4cG9ydC5QICsgJGV4cG9ydC5GICogIXJlcXVpcmUoJy4vX3N0cmljdC1tZXRob2QnKShbXS5zb21lLCB0cnVlKSwgJ0FycmF5Jywge1xuICAvLyAyMi4xLjMuMjMgLyAxNS40LjQuMTcgQXJyYXkucHJvdG90eXBlLnNvbWUoY2FsbGJhY2tmbiBbLCB0aGlzQXJnXSlcbiAgc29tZTogZnVuY3Rpb24gc29tZShjYWxsYmFja2ZuIC8qICwgdGhpc0FyZyAqLykge1xuICAgIHJldHVybiAkc29tZSh0aGlzLCBjYWxsYmFja2ZuLCBhcmd1bWVudHNbMV0pO1xuICB9XG59KTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgYUZ1bmN0aW9uID0gcmVxdWlyZSgnLi9fYS1mdW5jdGlvbicpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgZmFpbHMgPSByZXF1aXJlKCcuL19mYWlscycpO1xudmFyICRzb3J0ID0gW10uc29ydDtcbnZhciB0ZXN0ID0gWzEsIDIsIDNdO1xuXG4kZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqIChmYWlscyhmdW5jdGlvbiAoKSB7XG4gIC8vIElFOC1cbiAgdGVzdC5zb3J0KHVuZGVmaW5lZCk7XG59KSB8fCAhZmFpbHMoZnVuY3Rpb24gKCkge1xuICAvLyBWOCBidWdcbiAgdGVzdC5zb3J0KG51bGwpO1xuICAvLyBPbGQgV2ViS2l0XG59KSB8fCAhcmVxdWlyZSgnLi9fc3RyaWN0LW1ldGhvZCcpKCRzb3J0KSksICdBcnJheScsIHtcbiAgLy8gMjIuMS4zLjI1IEFycmF5LnByb3RvdHlwZS5zb3J0KGNvbXBhcmVmbilcbiAgc29ydDogZnVuY3Rpb24gc29ydChjb21wYXJlZm4pIHtcbiAgICByZXR1cm4gY29tcGFyZWZuID09PSB1bmRlZmluZWRcbiAgICAgID8gJHNvcnQuY2FsbCh0b09iamVjdCh0aGlzKSlcbiAgICAgIDogJHNvcnQuY2FsbCh0b09iamVjdCh0aGlzKSwgYUZ1bmN0aW9uKGNvbXBhcmVmbikpO1xuICB9XG59KTtcbiIsInJlcXVpcmUoJy4vX3NldC1zcGVjaWVzJykoJ0FycmF5Jyk7XG4iLCIvLyAyMC4zLjMuMSAvIDE1LjkuNC40IERhdGUubm93KClcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5TLCAnRGF0ZScsIHsgbm93OiBmdW5jdGlvbiAoKSB7IHJldHVybiBuZXcgRGF0ZSgpLmdldFRpbWUoKTsgfSB9KTtcbiIsIi8vIDIwLjMuNC4zNiAvIDE1LjkuNS40MyBEYXRlLnByb3RvdHlwZS50b0lTT1N0cmluZygpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIHRvSVNPU3RyaW5nID0gcmVxdWlyZSgnLi9fZGF0ZS10by1pc28tc3RyaW5nJyk7XG5cbi8vIFBoYW50b21KUyAvIG9sZCBXZWJLaXQgaGFzIGEgYnJva2VuIGltcGxlbWVudGF0aW9uc1xuJGV4cG9ydCgkZXhwb3J0LlAgKyAkZXhwb3J0LkYgKiAoRGF0ZS5wcm90b3R5cGUudG9JU09TdHJpbmcgIT09IHRvSVNPU3RyaW5nKSwgJ0RhdGUnLCB7XG4gIHRvSVNPU3RyaW5nOiB0b0lTT1N0cmluZ1xufSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi9fdG8tb2JqZWN0Jyk7XG52YXIgdG9QcmltaXRpdmUgPSByZXF1aXJlKCcuL190by1wcmltaXRpdmUnKTtcblxuJGV4cG9ydCgkZXhwb3J0LlAgKyAkZXhwb3J0LkYgKiByZXF1aXJlKCcuL19mYWlscycpKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIG5ldyBEYXRlKE5hTikudG9KU09OKCkgIT09IG51bGxcbiAgICB8fCBEYXRlLnByb3RvdHlwZS50b0pTT04uY2FsbCh7IHRvSVNPU3RyaW5nOiBmdW5jdGlvbiAoKSB7IHJldHVybiAxOyB9IH0pICE9PSAxO1xufSksICdEYXRlJywge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiAgdG9KU09OOiBmdW5jdGlvbiB0b0pTT04oa2V5KSB7XG4gICAgdmFyIE8gPSB0b09iamVjdCh0aGlzKTtcbiAgICB2YXIgcHYgPSB0b1ByaW1pdGl2ZShPKTtcbiAgICByZXR1cm4gdHlwZW9mIHB2ID09ICdudW1iZXInICYmICFpc0Zpbml0ZShwdikgPyBudWxsIDogTy50b0lTT1N0cmluZygpO1xuICB9XG59KTtcbiIsInZhciBUT19QUklNSVRJVkUgPSByZXF1aXJlKCcuL193a3MnKSgndG9QcmltaXRpdmUnKTtcbnZhciBwcm90byA9IERhdGUucHJvdG90eXBlO1xuXG5pZiAoIShUT19QUklNSVRJVkUgaW4gcHJvdG8pKSByZXF1aXJlKCcuL19oaWRlJykocHJvdG8sIFRPX1BSSU1JVElWRSwgcmVxdWlyZSgnLi9fZGF0ZS10by1wcmltaXRpdmUnKSk7XG4iLCJ2YXIgRGF0ZVByb3RvID0gRGF0ZS5wcm90b3R5cGU7XG52YXIgSU5WQUxJRF9EQVRFID0gJ0ludmFsaWQgRGF0ZSc7XG52YXIgVE9fU1RSSU5HID0gJ3RvU3RyaW5nJztcbnZhciAkdG9TdHJpbmcgPSBEYXRlUHJvdG9bVE9fU1RSSU5HXTtcbnZhciBnZXRUaW1lID0gRGF0ZVByb3RvLmdldFRpbWU7XG5pZiAobmV3IERhdGUoTmFOKSArICcnICE9IElOVkFMSURfREFURSkge1xuICByZXF1aXJlKCcuL19yZWRlZmluZScpKERhdGVQcm90bywgVE9fU1RSSU5HLCBmdW5jdGlvbiB0b1N0cmluZygpIHtcbiAgICB2YXIgdmFsdWUgPSBnZXRUaW1lLmNhbGwodGhpcyk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICAgIHJldHVybiB2YWx1ZSA9PT0gdmFsdWUgPyAkdG9TdHJpbmcuY2FsbCh0aGlzKSA6IElOVkFMSURfREFURTtcbiAgfSk7XG59XG4iLCIvLyAxOS4yLjMuMiAvIDE1LjMuNC41IEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kKHRoaXNBcmcsIGFyZ3MuLi4pXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuUCwgJ0Z1bmN0aW9uJywgeyBiaW5kOiByZXF1aXJlKCcuL19iaW5kJykgfSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuL19pcy1vYmplY3QnKTtcbnZhciBnZXRQcm90b3R5cGVPZiA9IHJlcXVpcmUoJy4vX29iamVjdC1ncG8nKTtcbnZhciBIQVNfSU5TVEFOQ0UgPSByZXF1aXJlKCcuL193a3MnKSgnaGFzSW5zdGFuY2UnKTtcbnZhciBGdW5jdGlvblByb3RvID0gRnVuY3Rpb24ucHJvdG90eXBlO1xuLy8gMTkuMi4zLjYgRnVuY3Rpb24ucHJvdG90eXBlW0BAaGFzSW5zdGFuY2VdKFYpXG5pZiAoIShIQVNfSU5TVEFOQ0UgaW4gRnVuY3Rpb25Qcm90bykpIHJlcXVpcmUoJy4vX29iamVjdC1kcCcpLmYoRnVuY3Rpb25Qcm90bywgSEFTX0lOU1RBTkNFLCB7IHZhbHVlOiBmdW5jdGlvbiAoTykge1xuICBpZiAodHlwZW9mIHRoaXMgIT0gJ2Z1bmN0aW9uJyB8fCAhaXNPYmplY3QoTykpIHJldHVybiBmYWxzZTtcbiAgaWYgKCFpc09iamVjdCh0aGlzLnByb3RvdHlwZSkpIHJldHVybiBPIGluc3RhbmNlb2YgdGhpcztcbiAgLy8gZm9yIGVudmlyb25tZW50IHcvbyBuYXRpdmUgYEBAaGFzSW5zdGFuY2VgIGxvZ2ljIGVub3VnaCBgaW5zdGFuY2VvZmAsIGJ1dCBhZGQgdGhpczpcbiAgd2hpbGUgKE8gPSBnZXRQcm90b3R5cGVPZihPKSkgaWYgKHRoaXMucHJvdG90eXBlID09PSBPKSByZXR1cm4gdHJ1ZTtcbiAgcmV0dXJuIGZhbHNlO1xufSB9KTtcbiIsInZhciBkUCA9IHJlcXVpcmUoJy4vX29iamVjdC1kcCcpLmY7XG52YXIgRlByb3RvID0gRnVuY3Rpb24ucHJvdG90eXBlO1xudmFyIG5hbWVSRSA9IC9eXFxzKmZ1bmN0aW9uIChbXiAoXSopLztcbnZhciBOQU1FID0gJ25hbWUnO1xuXG4vLyAxOS4yLjQuMiBuYW1lXG5OQU1FIGluIEZQcm90byB8fCByZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpICYmIGRQKEZQcm90bywgTkFNRSwge1xuICBjb25maWd1cmFibGU6IHRydWUsXG4gIGdldDogZnVuY3Rpb24gKCkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gKCcnICsgdGhpcykubWF0Y2gobmFtZVJFKVsxXTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICB9XG59KTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciBzdHJvbmcgPSByZXF1aXJlKCcuL19jb2xsZWN0aW9uLXN0cm9uZycpO1xudmFyIHZhbGlkYXRlID0gcmVxdWlyZSgnLi9fdmFsaWRhdGUtY29sbGVjdGlvbicpO1xudmFyIE1BUCA9ICdNYXAnO1xuXG4vLyAyMy4xIE1hcCBPYmplY3RzXG5tb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vX2NvbGxlY3Rpb24nKShNQVAsIGZ1bmN0aW9uIChnZXQpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIE1hcCgpIHsgcmV0dXJuIGdldCh0aGlzLCBhcmd1bWVudHMubGVuZ3RoID4gMCA/IGFyZ3VtZW50c1swXSA6IHVuZGVmaW5lZCk7IH07XG59LCB7XG4gIC8vIDIzLjEuMy42IE1hcC5wcm90b3R5cGUuZ2V0KGtleSlcbiAgZ2V0OiBmdW5jdGlvbiBnZXQoa2V5KSB7XG4gICAgdmFyIGVudHJ5ID0gc3Ryb25nLmdldEVudHJ5KHZhbGlkYXRlKHRoaXMsIE1BUCksIGtleSk7XG4gICAgcmV0dXJuIGVudHJ5ICYmIGVudHJ5LnY7XG4gIH0sXG4gIC8vIDIzLjEuMy45IE1hcC5wcm90b3R5cGUuc2V0KGtleSwgdmFsdWUpXG4gIHNldDogZnVuY3Rpb24gc2V0KGtleSwgdmFsdWUpIHtcbiAgICByZXR1cm4gc3Ryb25nLmRlZih2YWxpZGF0ZSh0aGlzLCBNQVApLCBrZXkgPT09IDAgPyAwIDoga2V5LCB2YWx1ZSk7XG4gIH1cbn0sIHN0cm9uZywgdHJ1ZSk7XG4iLCIvLyAyMC4yLjIuMyBNYXRoLmFjb3NoKHgpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIGxvZzFwID0gcmVxdWlyZSgnLi9fbWF0aC1sb2cxcCcpO1xudmFyIHNxcnQgPSBNYXRoLnNxcnQ7XG52YXIgJGFjb3NoID0gTWF0aC5hY29zaDtcblxuJGV4cG9ydCgkZXhwb3J0LlMgKyAkZXhwb3J0LkYgKiAhKCRhY29zaFxuICAvLyBWOCBidWc6IGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvdjgvaXNzdWVzL2RldGFpbD9pZD0zNTA5XG4gICYmIE1hdGguZmxvb3IoJGFjb3NoKE51bWJlci5NQVhfVkFMVUUpKSA9PSA3MTBcbiAgLy8gVG9yIEJyb3dzZXIgYnVnOiBNYXRoLmFjb3NoKEluZmluaXR5KSAtPiBOYU5cbiAgJiYgJGFjb3NoKEluZmluaXR5KSA9PSBJbmZpbml0eVxuKSwgJ01hdGgnLCB7XG4gIGFjb3NoOiBmdW5jdGlvbiBhY29zaCh4KSB7XG4gICAgcmV0dXJuICh4ID0gK3gpIDwgMSA/IE5hTiA6IHggPiA5NDkwNjI2NS42MjQyNTE1NlxuICAgICAgPyBNYXRoLmxvZyh4KSArIE1hdGguTE4yXG4gICAgICA6IGxvZzFwKHggLSAxICsgc3FydCh4IC0gMSkgKiBzcXJ0KHggKyAxKSk7XG4gIH1cbn0pO1xuIiwiLy8gMjAuMi4yLjUgTWF0aC5hc2luaCh4KVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkYXNpbmggPSBNYXRoLmFzaW5oO1xuXG5mdW5jdGlvbiBhc2luaCh4KSB7XG4gIHJldHVybiAhaXNGaW5pdGUoeCA9ICt4KSB8fCB4ID09IDAgPyB4IDogeCA8IDAgPyAtYXNpbmgoLXgpIDogTWF0aC5sb2coeCArIE1hdGguc3FydCh4ICogeCArIDEpKTtcbn1cblxuLy8gVG9yIEJyb3dzZXIgYnVnOiBNYXRoLmFzaW5oKDApIC0+IC0wXG4kZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqICEoJGFzaW5oICYmIDEgLyAkYXNpbmgoMCkgPiAwKSwgJ01hdGgnLCB7IGFzaW5oOiBhc2luaCB9KTtcbiIsIi8vIDIwLjIuMi43IE1hdGguYXRhbmgoeClcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJGF0YW5oID0gTWF0aC5hdGFuaDtcblxuLy8gVG9yIEJyb3dzZXIgYnVnOiBNYXRoLmF0YW5oKC0wKSAtPiAwXG4kZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqICEoJGF0YW5oICYmIDEgLyAkYXRhbmgoLTApIDwgMCksICdNYXRoJywge1xuICBhdGFuaDogZnVuY3Rpb24gYXRhbmgoeCkge1xuICAgIHJldHVybiAoeCA9ICt4KSA9PSAwID8geCA6IE1hdGgubG9nKCgxICsgeCkgLyAoMSAtIHgpKSAvIDI7XG4gIH1cbn0pO1xuIiwiLy8gMjAuMi4yLjkgTWF0aC5jYnJ0KHgpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIHNpZ24gPSByZXF1aXJlKCcuL19tYXRoLXNpZ24nKTtcblxuJGV4cG9ydCgkZXhwb3J0LlMsICdNYXRoJywge1xuICBjYnJ0OiBmdW5jdGlvbiBjYnJ0KHgpIHtcbiAgICByZXR1cm4gc2lnbih4ID0gK3gpICogTWF0aC5wb3coTWF0aC5hYnMoeCksIDEgLyAzKTtcbiAgfVxufSk7XG4iLCIvLyAyMC4yLjIuMTEgTWF0aC5jbHozMih4KVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcblxuJGV4cG9ydCgkZXhwb3J0LlMsICdNYXRoJywge1xuICBjbHozMjogZnVuY3Rpb24gY2x6MzIoeCkge1xuICAgIHJldHVybiAoeCA+Pj49IDApID8gMzEgLSBNYXRoLmZsb29yKE1hdGgubG9nKHggKyAwLjUpICogTWF0aC5MT0cyRSkgOiAzMjtcbiAgfVxufSk7XG4iLCIvLyAyMC4yLjIuMTIgTWF0aC5jb3NoKHgpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIGV4cCA9IE1hdGguZXhwO1xuXG4kZXhwb3J0KCRleHBvcnQuUywgJ01hdGgnLCB7XG4gIGNvc2g6IGZ1bmN0aW9uIGNvc2goeCkge1xuICAgIHJldHVybiAoZXhwKHggPSAreCkgKyBleHAoLXgpKSAvIDI7XG4gIH1cbn0pO1xuIiwiLy8gMjAuMi4yLjE0IE1hdGguZXhwbTEoeClcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJGV4cG0xID0gcmVxdWlyZSgnLi9fbWF0aC1leHBtMScpO1xuXG4kZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqICgkZXhwbTEgIT0gTWF0aC5leHBtMSksICdNYXRoJywgeyBleHBtMTogJGV4cG0xIH0pO1xuIiwiLy8gMjAuMi4yLjE2IE1hdGguZnJvdW5kKHgpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuUywgJ01hdGgnLCB7IGZyb3VuZDogcmVxdWlyZSgnLi9fbWF0aC1mcm91bmQnKSB9KTtcbiIsIi8vIDIwLjIuMi4xNyBNYXRoLmh5cG90KFt2YWx1ZTFbLCB2YWx1ZTJbLCDigKYgXV1dKVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciBhYnMgPSBNYXRoLmFicztcblxuJGV4cG9ydCgkZXhwb3J0LlMsICdNYXRoJywge1xuICBoeXBvdDogZnVuY3Rpb24gaHlwb3QodmFsdWUxLCB2YWx1ZTIpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby11bnVzZWQtdmFyc1xuICAgIHZhciBzdW0gPSAwO1xuICAgIHZhciBpID0gMDtcbiAgICB2YXIgYUxlbiA9IGFyZ3VtZW50cy5sZW5ndGg7XG4gICAgdmFyIGxhcmcgPSAwO1xuICAgIHZhciBhcmcsIGRpdjtcbiAgICB3aGlsZSAoaSA8IGFMZW4pIHtcbiAgICAgIGFyZyA9IGFicyhhcmd1bWVudHNbaSsrXSk7XG4gICAgICBpZiAobGFyZyA8IGFyZykge1xuICAgICAgICBkaXYgPSBsYXJnIC8gYXJnO1xuICAgICAgICBzdW0gPSBzdW0gKiBkaXYgKiBkaXYgKyAxO1xuICAgICAgICBsYXJnID0gYXJnO1xuICAgICAgfSBlbHNlIGlmIChhcmcgPiAwKSB7XG4gICAgICAgIGRpdiA9IGFyZyAvIGxhcmc7XG4gICAgICAgIHN1bSArPSBkaXYgKiBkaXY7XG4gICAgICB9IGVsc2Ugc3VtICs9IGFyZztcbiAgICB9XG4gICAgcmV0dXJuIGxhcmcgPT09IEluZmluaXR5ID8gSW5maW5pdHkgOiBsYXJnICogTWF0aC5zcXJ0KHN1bSk7XG4gIH1cbn0pO1xuIiwiLy8gMjAuMi4yLjE4IE1hdGguaW11bCh4LCB5KVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkaW11bCA9IE1hdGguaW11bDtcblxuLy8gc29tZSBXZWJLaXQgdmVyc2lvbnMgZmFpbHMgd2l0aCBiaWcgbnVtYmVycywgc29tZSBoYXMgd3JvbmcgYXJpdHlcbiRleHBvcnQoJGV4cG9ydC5TICsgJGV4cG9ydC5GICogcmVxdWlyZSgnLi9fZmFpbHMnKShmdW5jdGlvbiAoKSB7XG4gIHJldHVybiAkaW11bCgweGZmZmZmZmZmLCA1KSAhPSAtNSB8fCAkaW11bC5sZW5ndGggIT0gMjtcbn0pLCAnTWF0aCcsIHtcbiAgaW11bDogZnVuY3Rpb24gaW11bCh4LCB5KSB7XG4gICAgdmFyIFVJTlQxNiA9IDB4ZmZmZjtcbiAgICB2YXIgeG4gPSAreDtcbiAgICB2YXIgeW4gPSAreTtcbiAgICB2YXIgeGwgPSBVSU5UMTYgJiB4bjtcbiAgICB2YXIgeWwgPSBVSU5UMTYgJiB5bjtcbiAgICByZXR1cm4gMCB8IHhsICogeWwgKyAoKFVJTlQxNiAmIHhuID4+PiAxNikgKiB5bCArIHhsICogKFVJTlQxNiAmIHluID4+PiAxNikgPDwgMTYgPj4+IDApO1xuICB9XG59KTtcbiIsIi8vIDIwLjIuMi4yMSBNYXRoLmxvZzEwKHgpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuUywgJ01hdGgnLCB7XG4gIGxvZzEwOiBmdW5jdGlvbiBsb2cxMCh4KSB7XG4gICAgcmV0dXJuIE1hdGgubG9nKHgpICogTWF0aC5MT0cxMEU7XG4gIH1cbn0pO1xuIiwiLy8gMjAuMi4yLjIwIE1hdGgubG9nMXAoeClcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5TLCAnTWF0aCcsIHsgbG9nMXA6IHJlcXVpcmUoJy4vX21hdGgtbG9nMXAnKSB9KTtcbiIsIi8vIDIwLjIuMi4yMiBNYXRoLmxvZzIoeClcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5TLCAnTWF0aCcsIHtcbiAgbG9nMjogZnVuY3Rpb24gbG9nMih4KSB7XG4gICAgcmV0dXJuIE1hdGgubG9nKHgpIC8gTWF0aC5MTjI7XG4gIH1cbn0pO1xuIiwiLy8gMjAuMi4yLjI4IE1hdGguc2lnbih4KVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcblxuJGV4cG9ydCgkZXhwb3J0LlMsICdNYXRoJywgeyBzaWduOiByZXF1aXJlKCcuL19tYXRoLXNpZ24nKSB9KTtcbiIsIi8vIDIwLjIuMi4zMCBNYXRoLnNpbmgoeClcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgZXhwbTEgPSByZXF1aXJlKCcuL19tYXRoLWV4cG0xJyk7XG52YXIgZXhwID0gTWF0aC5leHA7XG5cbi8vIFY4IG5lYXIgQ2hyb21pdW0gMzggaGFzIGEgcHJvYmxlbSB3aXRoIHZlcnkgc21hbGwgbnVtYmVyc1xuJGV4cG9ydCgkZXhwb3J0LlMgKyAkZXhwb3J0LkYgKiByZXF1aXJlKCcuL19mYWlscycpKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuICFNYXRoLnNpbmgoLTJlLTE3KSAhPSAtMmUtMTc7XG59KSwgJ01hdGgnLCB7XG4gIHNpbmg6IGZ1bmN0aW9uIHNpbmgoeCkge1xuICAgIHJldHVybiBNYXRoLmFicyh4ID0gK3gpIDwgMVxuICAgICAgPyAoZXhwbTEoeCkgLSBleHBtMSgteCkpIC8gMlxuICAgICAgOiAoZXhwKHggLSAxKSAtIGV4cCgteCAtIDEpKSAqIChNYXRoLkUgLyAyKTtcbiAgfVxufSk7XG4iLCIvLyAyMC4yLjIuMzMgTWF0aC50YW5oKHgpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIGV4cG0xID0gcmVxdWlyZSgnLi9fbWF0aC1leHBtMScpO1xudmFyIGV4cCA9IE1hdGguZXhwO1xuXG4kZXhwb3J0KCRleHBvcnQuUywgJ01hdGgnLCB7XG4gIHRhbmg6IGZ1bmN0aW9uIHRhbmgoeCkge1xuICAgIHZhciBhID0gZXhwbTEoeCA9ICt4KTtcbiAgICB2YXIgYiA9IGV4cG0xKC14KTtcbiAgICByZXR1cm4gYSA9PSBJbmZpbml0eSA/IDEgOiBiID09IEluZmluaXR5ID8gLTEgOiAoYSAtIGIpIC8gKGV4cCh4KSArIGV4cCgteCkpO1xuICB9XG59KTtcbiIsIi8vIDIwLjIuMi4zNCBNYXRoLnRydW5jKHgpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuUywgJ01hdGgnLCB7XG4gIHRydW5jOiBmdW5jdGlvbiB0cnVuYyhpdCkge1xuICAgIHJldHVybiAoaXQgPiAwID8gTWF0aC5mbG9vciA6IE1hdGguY2VpbCkoaXQpO1xuICB9XG59KTtcbiIsIid1c2Ugc3RyaWN0JztcbnZhciBnbG9iYWwgPSByZXF1aXJlKCcuL19nbG9iYWwnKTtcbnZhciBoYXMgPSByZXF1aXJlKCcuL19oYXMnKTtcbnZhciBjb2YgPSByZXF1aXJlKCcuL19jb2YnKTtcbnZhciBpbmhlcml0SWZSZXF1aXJlZCA9IHJlcXVpcmUoJy4vX2luaGVyaXQtaWYtcmVxdWlyZWQnKTtcbnZhciB0b1ByaW1pdGl2ZSA9IHJlcXVpcmUoJy4vX3RvLXByaW1pdGl2ZScpO1xudmFyIGZhaWxzID0gcmVxdWlyZSgnLi9fZmFpbHMnKTtcbnZhciBnT1BOID0gcmVxdWlyZSgnLi9fb2JqZWN0LWdvcG4nKS5mO1xudmFyIGdPUEQgPSByZXF1aXJlKCcuL19vYmplY3QtZ29wZCcpLmY7XG52YXIgZFAgPSByZXF1aXJlKCcuL19vYmplY3QtZHAnKS5mO1xudmFyICR0cmltID0gcmVxdWlyZSgnLi9fc3RyaW5nLXRyaW0nKS50cmltO1xudmFyIE5VTUJFUiA9ICdOdW1iZXInO1xudmFyICROdW1iZXIgPSBnbG9iYWxbTlVNQkVSXTtcbnZhciBCYXNlID0gJE51bWJlcjtcbnZhciBwcm90byA9ICROdW1iZXIucHJvdG90eXBlO1xuLy8gT3BlcmEgfjEyIGhhcyBicm9rZW4gT2JqZWN0I3RvU3RyaW5nXG52YXIgQlJPS0VOX0NPRiA9IGNvZihyZXF1aXJlKCcuL19vYmplY3QtY3JlYXRlJykocHJvdG8pKSA9PSBOVU1CRVI7XG52YXIgVFJJTSA9ICd0cmltJyBpbiBTdHJpbmcucHJvdG90eXBlO1xuXG4vLyA3LjEuMyBUb051bWJlcihhcmd1bWVudClcbnZhciB0b051bWJlciA9IGZ1bmN0aW9uIChhcmd1bWVudCkge1xuICB2YXIgaXQgPSB0b1ByaW1pdGl2ZShhcmd1bWVudCwgZmFsc2UpO1xuICBpZiAodHlwZW9mIGl0ID09ICdzdHJpbmcnICYmIGl0Lmxlbmd0aCA+IDIpIHtcbiAgICBpdCA9IFRSSU0gPyBpdC50cmltKCkgOiAkdHJpbShpdCwgMyk7XG4gICAgdmFyIGZpcnN0ID0gaXQuY2hhckNvZGVBdCgwKTtcbiAgICB2YXIgdGhpcmQsIHJhZGl4LCBtYXhDb2RlO1xuICAgIGlmIChmaXJzdCA9PT0gNDMgfHwgZmlyc3QgPT09IDQ1KSB7XG4gICAgICB0aGlyZCA9IGl0LmNoYXJDb2RlQXQoMik7XG4gICAgICBpZiAodGhpcmQgPT09IDg4IHx8IHRoaXJkID09PSAxMjApIHJldHVybiBOYU47IC8vIE51bWJlcignKzB4MScpIHNob3VsZCBiZSBOYU4sIG9sZCBWOCBmaXhcbiAgICB9IGVsc2UgaWYgKGZpcnN0ID09PSA0OCkge1xuICAgICAgc3dpdGNoIChpdC5jaGFyQ29kZUF0KDEpKSB7XG4gICAgICAgIGNhc2UgNjY6IGNhc2UgOTg6IHJhZGl4ID0gMjsgbWF4Q29kZSA9IDQ5OyBicmVhazsgLy8gZmFzdCBlcXVhbCAvXjBiWzAxXSskL2lcbiAgICAgICAgY2FzZSA3OTogY2FzZSAxMTE6IHJhZGl4ID0gODsgbWF4Q29kZSA9IDU1OyBicmVhazsgLy8gZmFzdCBlcXVhbCAvXjBvWzAtN10rJC9pXG4gICAgICAgIGRlZmF1bHQ6IHJldHVybiAraXQ7XG4gICAgICB9XG4gICAgICBmb3IgKHZhciBkaWdpdHMgPSBpdC5zbGljZSgyKSwgaSA9IDAsIGwgPSBkaWdpdHMubGVuZ3RoLCBjb2RlOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgIGNvZGUgPSBkaWdpdHMuY2hhckNvZGVBdChpKTtcbiAgICAgICAgLy8gcGFyc2VJbnQgcGFyc2VzIGEgc3RyaW5nIHRvIGEgZmlyc3QgdW5hdmFpbGFibGUgc3ltYm9sXG4gICAgICAgIC8vIGJ1dCBUb051bWJlciBzaG91bGQgcmV0dXJuIE5hTiBpZiBhIHN0cmluZyBjb250YWlucyB1bmF2YWlsYWJsZSBzeW1ib2xzXG4gICAgICAgIGlmIChjb2RlIDwgNDggfHwgY29kZSA+IG1heENvZGUpIHJldHVybiBOYU47XG4gICAgICB9IHJldHVybiBwYXJzZUludChkaWdpdHMsIHJhZGl4KTtcbiAgICB9XG4gIH0gcmV0dXJuICtpdDtcbn07XG5cbmlmICghJE51bWJlcignIDBvMScpIHx8ICEkTnVtYmVyKCcwYjEnKSB8fCAkTnVtYmVyKCcrMHgxJykpIHtcbiAgJE51bWJlciA9IGZ1bmN0aW9uIE51bWJlcih2YWx1ZSkge1xuICAgIHZhciBpdCA9IGFyZ3VtZW50cy5sZW5ndGggPCAxID8gMCA6IHZhbHVlO1xuICAgIHZhciB0aGF0ID0gdGhpcztcbiAgICByZXR1cm4gdGhhdCBpbnN0YW5jZW9mICROdW1iZXJcbiAgICAgIC8vIGNoZWNrIG9uIDEuLmNvbnN0cnVjdG9yKGZvbykgY2FzZVxuICAgICAgJiYgKEJST0tFTl9DT0YgPyBmYWlscyhmdW5jdGlvbiAoKSB7IHByb3RvLnZhbHVlT2YuY2FsbCh0aGF0KTsgfSkgOiBjb2YodGhhdCkgIT0gTlVNQkVSKVxuICAgICAgICA/IGluaGVyaXRJZlJlcXVpcmVkKG5ldyBCYXNlKHRvTnVtYmVyKGl0KSksIHRoYXQsICROdW1iZXIpIDogdG9OdW1iZXIoaXQpO1xuICB9O1xuICBmb3IgKHZhciBrZXlzID0gcmVxdWlyZSgnLi9fZGVzY3JpcHRvcnMnKSA/IGdPUE4oQmFzZSkgOiAoXG4gICAgLy8gRVMzOlxuICAgICdNQVhfVkFMVUUsTUlOX1ZBTFVFLE5hTixORUdBVElWRV9JTkZJTklUWSxQT1NJVElWRV9JTkZJTklUWSwnICtcbiAgICAvLyBFUzYgKGluIGNhc2UsIGlmIG1vZHVsZXMgd2l0aCBFUzYgTnVtYmVyIHN0YXRpY3MgcmVxdWlyZWQgYmVmb3JlKTpcbiAgICAnRVBTSUxPTixpc0Zpbml0ZSxpc0ludGVnZXIsaXNOYU4saXNTYWZlSW50ZWdlcixNQVhfU0FGRV9JTlRFR0VSLCcgK1xuICAgICdNSU5fU0FGRV9JTlRFR0VSLHBhcnNlRmxvYXQscGFyc2VJbnQsaXNJbnRlZ2VyJ1xuICApLnNwbGl0KCcsJyksIGogPSAwLCBrZXk7IGtleXMubGVuZ3RoID4gajsgaisrKSB7XG4gICAgaWYgKGhhcyhCYXNlLCBrZXkgPSBrZXlzW2pdKSAmJiAhaGFzKCROdW1iZXIsIGtleSkpIHtcbiAgICAgIGRQKCROdW1iZXIsIGtleSwgZ09QRChCYXNlLCBrZXkpKTtcbiAgICB9XG4gIH1cbiAgJE51bWJlci5wcm90b3R5cGUgPSBwcm90bztcbiAgcHJvdG8uY29uc3RydWN0b3IgPSAkTnVtYmVyO1xuICByZXF1aXJlKCcuL19yZWRlZmluZScpKGdsb2JhbCwgTlVNQkVSLCAkTnVtYmVyKTtcbn1cbiIsIi8vIDIwLjEuMi4xIE51bWJlci5FUFNJTE9OXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuUywgJ051bWJlcicsIHsgRVBTSUxPTjogTWF0aC5wb3coMiwgLTUyKSB9KTtcbiIsIi8vIDIwLjEuMi4yIE51bWJlci5pc0Zpbml0ZShudW1iZXIpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIF9pc0Zpbml0ZSA9IHJlcXVpcmUoJy4vX2dsb2JhbCcpLmlzRmluaXRlO1xuXG4kZXhwb3J0KCRleHBvcnQuUywgJ051bWJlcicsIHtcbiAgaXNGaW5pdGU6IGZ1bmN0aW9uIGlzRmluaXRlKGl0KSB7XG4gICAgcmV0dXJuIHR5cGVvZiBpdCA9PSAnbnVtYmVyJyAmJiBfaXNGaW5pdGUoaXQpO1xuICB9XG59KTtcbiIsIi8vIDIwLjEuMi4zIE51bWJlci5pc0ludGVnZXIobnVtYmVyKVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcblxuJGV4cG9ydCgkZXhwb3J0LlMsICdOdW1iZXInLCB7IGlzSW50ZWdlcjogcmVxdWlyZSgnLi9faXMtaW50ZWdlcicpIH0pO1xuIiwiLy8gMjAuMS4yLjQgTnVtYmVyLmlzTmFOKG51bWJlcilcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5TLCAnTnVtYmVyJywge1xuICBpc05hTjogZnVuY3Rpb24gaXNOYU4obnVtYmVyKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICAgIHJldHVybiBudW1iZXIgIT0gbnVtYmVyO1xuICB9XG59KTtcbiIsIi8vIDIwLjEuMi41IE51bWJlci5pc1NhZmVJbnRlZ2VyKG51bWJlcilcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgaXNJbnRlZ2VyID0gcmVxdWlyZSgnLi9faXMtaW50ZWdlcicpO1xudmFyIGFicyA9IE1hdGguYWJzO1xuXG4kZXhwb3J0KCRleHBvcnQuUywgJ051bWJlcicsIHtcbiAgaXNTYWZlSW50ZWdlcjogZnVuY3Rpb24gaXNTYWZlSW50ZWdlcihudW1iZXIpIHtcbiAgICByZXR1cm4gaXNJbnRlZ2VyKG51bWJlcikgJiYgYWJzKG51bWJlcikgPD0gMHgxZmZmZmZmZmZmZmZmZjtcbiAgfVxufSk7XG4iLCIvLyAyMC4xLjIuNiBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcblxuJGV4cG9ydCgkZXhwb3J0LlMsICdOdW1iZXInLCB7IE1BWF9TQUZFX0lOVEVHRVI6IDB4MWZmZmZmZmZmZmZmZmYgfSk7XG4iLCIvLyAyMC4xLjIuMTAgTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVJcbnZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG5cbiRleHBvcnQoJGV4cG9ydC5TLCAnTnVtYmVyJywgeyBNSU5fU0FGRV9JTlRFR0VSOiAtMHgxZmZmZmZmZmZmZmZmZiB9KTtcbiIsInZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJHBhcnNlRmxvYXQgPSByZXF1aXJlKCcuL19wYXJzZS1mbG9hdCcpO1xuLy8gMjAuMS4yLjEyIE51bWJlci5wYXJzZUZsb2F0KHN0cmluZylcbiRleHBvcnQoJGV4cG9ydC5TICsgJGV4cG9ydC5GICogKE51bWJlci5wYXJzZUZsb2F0ICE9ICRwYXJzZUZsb2F0KSwgJ051bWJlcicsIHsgcGFyc2VGbG9hdDogJHBhcnNlRmxvYXQgfSk7XG4iLCJ2YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyICRwYXJzZUludCA9IHJlcXVpcmUoJy4vX3BhcnNlLWludCcpO1xuLy8gMjAuMS4yLjEzIE51bWJlci5wYXJzZUludChzdHJpbmcsIHJhZGl4KVxuJGV4cG9ydCgkZXhwb3J0LlMgKyAkZXhwb3J0LkYgKiAoTnVtYmVyLnBhcnNlSW50ICE9ICRwYXJzZUludCksICdOdW1iZXInLCB7IHBhcnNlSW50OiAkcGFyc2VJbnQgfSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyIHRvSW50ZWdlciA9IHJlcXVpcmUoJy4vX3RvLWludGVnZXInKTtcbnZhciBhTnVtYmVyVmFsdWUgPSByZXF1aXJlKCcuL19hLW51bWJlci12YWx1ZScpO1xudmFyIHJlcGVhdCA9IHJlcXVpcmUoJy4vX3N0cmluZy1yZXBlYXQnKTtcbnZhciAkdG9GaXhlZCA9IDEuMC50b0ZpeGVkO1xudmFyIGZsb29yID0gTWF0aC5mbG9vcjtcbnZhciBkYXRhID0gWzAsIDAsIDAsIDAsIDAsIDBdO1xudmFyIEVSUk9SID0gJ051bWJlci50b0ZpeGVkOiBpbmNvcnJlY3QgaW52b2NhdGlvbiEnO1xudmFyIFpFUk8gPSAnMCc7XG5cbnZhciBtdWx0aXBseSA9IGZ1bmN0aW9uIChuLCBjKSB7XG4gIHZhciBpID0gLTE7XG4gIHZhciBjMiA9IGM7XG4gIHdoaWxlICgrK2kgPCA2KSB7XG4gICAgYzIgKz0gbiAqIGRhdGFbaV07XG4gICAgZGF0YVtpXSA9IGMyICUgMWU3O1xuICAgIGMyID0gZmxvb3IoYzIgLyAxZTcpO1xuICB9XG59O1xudmFyIGRpdmlkZSA9IGZ1bmN0aW9uIChuKSB7XG4gIHZhciBpID0gNjtcbiAgdmFyIGMgPSAwO1xuICB3aGlsZSAoLS1pID49IDApIHtcbiAgICBjICs9IGRhdGFbaV07XG4gICAgZGF0YVtpXSA9IGZsb29yKGMgLyBuKTtcbiAgICBjID0gKGMgJSBuKSAqIDFlNztcbiAgfVxufTtcbnZhciBudW1Ub1N0cmluZyA9IGZ1bmN0aW9uICgpIHtcbiAgdmFyIGkgPSA2O1xuICB2YXIgcyA9ICcnO1xuICB3aGlsZSAoLS1pID49IDApIHtcbiAgICBpZiAocyAhPT0gJycgfHwgaSA9PT0gMCB8fCBkYXRhW2ldICE9PSAwKSB7XG4gICAgICB2YXIgdCA9IFN0cmluZyhkYXRhW2ldKTtcbiAgICAgIHMgPSBzID09PSAnJyA/IHQgOiBzICsgcmVwZWF0LmNhbGwoWkVSTywgNyAtIHQubGVuZ3RoKSArIHQ7XG4gICAgfVxuICB9IHJldHVybiBzO1xufTtcbnZhciBwb3cgPSBmdW5jdGlvbiAoeCwgbiwgYWNjKSB7XG4gIHJldHVybiBuID09PSAwID8gYWNjIDogbiAlIDIgPT09IDEgPyBwb3coeCwgbiAtIDEsIGFjYyAqIHgpIDogcG93KHggKiB4LCBuIC8gMiwgYWNjKTtcbn07XG52YXIgbG9nID0gZnVuY3Rpb24gKHgpIHtcbiAgdmFyIG4gPSAwO1xuICB2YXIgeDIgPSB4O1xuICB3aGlsZSAoeDIgPj0gNDA5Nikge1xuICAgIG4gKz0gMTI7XG4gICAgeDIgLz0gNDA5NjtcbiAgfVxuICB3aGlsZSAoeDIgPj0gMikge1xuICAgIG4gKz0gMTtcbiAgICB4MiAvPSAyO1xuICB9IHJldHVybiBuO1xufTtcblxuJGV4cG9ydCgkZXhwb3J0LlAgKyAkZXhwb3J0LkYgKiAoISEkdG9GaXhlZCAmJiAoXG4gIDAuMDAwMDgudG9GaXhlZCgzKSAhPT0gJzAuMDAwJyB8fFxuICAwLjkudG9GaXhlZCgwKSAhPT0gJzEnIHx8XG4gIDEuMjU1LnRvRml4ZWQoMikgIT09ICcxLjI1JyB8fFxuICAxMDAwMDAwMDAwMDAwMDAwMTI4LjAudG9GaXhlZCgwKSAhPT0gJzEwMDAwMDAwMDAwMDAwMDAxMjgnXG4pIHx8ICFyZXF1aXJlKCcuL19mYWlscycpKGZ1bmN0aW9uICgpIHtcbiAgLy8gVjggfiBBbmRyb2lkIDQuMy1cbiAgJHRvRml4ZWQuY2FsbCh7fSk7XG59KSksICdOdW1iZXInLCB7XG4gIHRvRml4ZWQ6IGZ1bmN0aW9uIHRvRml4ZWQoZnJhY3Rpb25EaWdpdHMpIHtcbiAgICB2YXIgeCA9IGFOdW1iZXJWYWx1ZSh0aGlzLCBFUlJPUik7XG4gICAgdmFyIGYgPSB0b0ludGVnZXIoZnJhY3Rpb25EaWdpdHMpO1xuICAgIHZhciBzID0gJyc7XG4gICAgdmFyIG0gPSBaRVJPO1xuICAgIHZhciBlLCB6LCBqLCBrO1xuICAgIGlmIChmIDwgMCB8fCBmID4gMjApIHRocm93IFJhbmdlRXJyb3IoRVJST1IpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmVcbiAgICBpZiAoeCAhPSB4KSByZXR1cm4gJ05hTic7XG4gICAgaWYgKHggPD0gLTFlMjEgfHwgeCA+PSAxZTIxKSByZXR1cm4gU3RyaW5nKHgpO1xuICAgIGlmICh4IDwgMCkge1xuICAgICAgcyA9ICctJztcbiAgICAgIHggPSAteDtcbiAgICB9XG4gICAgaWYgKHggPiAxZS0yMSkge1xuICAgICAgZSA9IGxvZyh4ICogcG93KDIsIDY5LCAxKSkgLSA2OTtcbiAgICAgIHogPSBlIDwgMCA/IHggKiBwb3coMiwgLWUsIDEpIDogeCAvIHBvdygyLCBlLCAxKTtcbiAgICAgIHogKj0gMHgxMDAwMDAwMDAwMDAwMDtcbiAgICAgIGUgPSA1MiAtIGU7XG4gICAgICBpZiAoZSA+IDApIHtcbiAgICAgICAgbXVsdGlwbHkoMCwgeik7XG4gICAgICAgIGogPSBmO1xuICAgICAgICB3aGlsZSAoaiA+PSA3KSB7XG4gICAgICAgICAgbXVsdGlwbHkoMWU3LCAwKTtcbiAgICAgICAgICBqIC09IDc7XG4gICAgICAgIH1cbiAgICAgICAgbXVsdGlwbHkocG93KDEwLCBqLCAxKSwgMCk7XG4gICAgICAgIGogPSBlIC0gMTtcbiAgICAgICAgd2hpbGUgKGogPj0gMjMpIHtcbiAgICAgICAgICBkaXZpZGUoMSA8PCAyMyk7XG4gICAgICAgICAgaiAtPSAyMztcbiAgICAgICAgfVxuICAgICAgICBkaXZpZGUoMSA8PCBqKTtcbiAgICAgICAgbXVsdGlwbHkoMSwgMSk7XG4gICAgICAgIGRpdmlkZSgyKTtcbiAgICAgICAgbSA9IG51bVRvU3RyaW5nKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBtdWx0aXBseSgwLCB6KTtcbiAgICAgICAgbXVsdGlwbHkoMSA8PCAtZSwgMCk7XG4gICAgICAgIG0gPSBudW1Ub1N0cmluZygpICsgcmVwZWF0LmNhbGwoWkVSTywgZik7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChmID4gMCkge1xuICAgICAgayA9IG0ubGVuZ3RoO1xuICAgICAgbSA9IHMgKyAoayA8PSBmID8gJzAuJyArIHJlcGVhdC5jYWxsKFpFUk8sIGYgLSBrKSArIG0gOiBtLnNsaWNlKDAsIGsgLSBmKSArICcuJyArIG0uc2xpY2UoayAtIGYpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbSA9IHMgKyBtO1xuICAgIH0gcmV0dXJuIG07XG4gIH1cbn0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciAkZmFpbHMgPSByZXF1aXJlKCcuL19mYWlscycpO1xudmFyIGFOdW1iZXJWYWx1ZSA9IHJlcXVpcmUoJy4vX2EtbnVtYmVyLXZhbHVlJyk7XG52YXIgJHRvUHJlY2lzaW9uID0gMS4wLnRvUHJlY2lzaW9uO1xuXG4kZXhwb3J0KCRleHBvcnQuUCArICRleHBvcnQuRiAqICgkZmFpbHMoZnVuY3Rpb24gKCkge1xuICAvLyBJRTctXG4gIHJldHVybiAkdG9QcmVjaXNpb24uY2FsbCgxLCB1bmRlZmluZWQpICE9PSAnMSc7XG59KSB8fCAhJGZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgLy8gVjggfiBBbmRyb2lkIDQuMy1cbiAgJHRvUHJlY2lzaW9uLmNhbGwoe30pO1xufSkpLCAnTnVtYmVyJywge1xuICB0b1ByZWNpc2lvbjogZnVuY3Rpb24gdG9QcmVjaXNpb24ocHJlY2lzaW9uKSB7XG4gICAgdmFyIHRoYXQgPSBhTnVtYmVyVmFsdWUodGhpcywgJ051bWJlciN0b1ByZWNpc2lvbjogaW5jb3JyZWN0IGludm9jYXRpb24hJyk7XG4gICAgcmV0dXJuIHByZWNpc2lvbiA9PT0gdW5kZWZpbmVkID8gJHRvUHJlY2lzaW9uLmNhbGwodGhhdCkgOiAkdG9QcmVjaXNpb24uY2FsbCh0aGF0LCBwcmVjaXNpb24pO1xuICB9XG59KTtcbiIsIi8vIDE5LjEuMy4xIE9iamVjdC5hc3NpZ24odGFyZ2V0LCBzb3VyY2UpXG52YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuXG4kZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiwgJ09iamVjdCcsIHsgYXNzaWduOiByZXF1aXJlKCcuL19vYmplY3QtYXNzaWduJykgfSk7XG4iLCJ2YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuLy8gMTkuMS4yLjIgLyAxNS4yLjMuNSBPYmplY3QuY3JlYXRlKE8gWywgUHJvcGVydGllc10pXG4kZXhwb3J0KCRleHBvcnQuUywgJ09iamVjdCcsIHsgY3JlYXRlOiByZXF1aXJlKCcuL19vYmplY3QtY3JlYXRlJykgfSk7XG4iLCJ2YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xuLy8gMTkuMS4yLjMgLyAxNS4yLjMuNyBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhPLCBQcm9wZXJ0aWVzKVxuJGV4cG9ydCgkZXhwb3J0LlMgKyAkZXhwb3J0LkYgKiAhcmVxdWlyZSgnLi9fZGVzY3JpcHRvcnMnKSwgJ09iamVjdCcsIHsgZGVmaW5lUHJvcGVydGllczogcmVxdWlyZSgnLi9fb2JqZWN0LWRwcycpIH0pO1xuIiwidmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbi8vIDE5LjEuMi40IC8gMTUuMi4zLjYgT2JqZWN0LmRlZmluZVByb3BlcnR5KE8sIFAsIEF0dHJpYnV0ZXMpXG4kZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqICFyZXF1aXJlKCcuL19kZXNjcmlwdG9ycycpLCAnT2JqZWN0JywgeyBkZWZpbmVQcm9wZXJ0eTogcmVxdWlyZSgnLi9fb2JqZWN0LWRwJykuZiB9KTtcbiIsIi8vIDE5LjEuMi41IE9iamVjdC5mcmVlemUoTylcbnZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xudmFyIG1ldGEgPSByZXF1aXJlKCcuL19tZXRhJykub25GcmVlemU7XG5cbnJlcXVpcmUoJy4vX29iamVjdC1zYXAnKSgnZnJlZXplJywgZnVuY3Rpb24gKCRmcmVlemUpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGZyZWV6ZShpdCkge1xuICAgIHJldHVybiAkZnJlZXplICYmIGlzT2JqZWN0KGl0KSA/ICRmcmVlemUobWV0YShpdCkpIDogaXQ7XG4gIH07XG59KTtcbiIsIi8vIDE5LjEuMi42IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoTywgUClcbnZhciB0b0lPYmplY3QgPSByZXF1aXJlKCcuL190by1pb2JqZWN0Jyk7XG52YXIgJGdldE93blByb3BlcnR5RGVzY3JpcHRvciA9IHJlcXVpcmUoJy4vX29iamVjdC1nb3BkJykuZjtcblxucmVxdWlyZSgnLi9fb2JqZWN0LXNhcCcpKCdnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3InLCBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBmdW5jdGlvbiBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoaXQsIGtleSkge1xuICAgIHJldHVybiAkZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRvSU9iamVjdChpdCksIGtleSk7XG4gIH07XG59KTtcbiIsIi8vIDE5LjEuMi43IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKE8pXG5yZXF1aXJlKCcuL19vYmplY3Qtc2FwJykoJ2dldE93blByb3BlcnR5TmFtZXMnLCBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiByZXF1aXJlKCcuL19vYmplY3QtZ29wbi1leHQnKS5mO1xufSk7XG4iLCIvLyAxOS4xLjIuOSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoTylcbnZhciB0b09iamVjdCA9IHJlcXVpcmUoJy4vX3RvLW9iamVjdCcpO1xudmFyICRnZXRQcm90b3R5cGVPZiA9IHJlcXVpcmUoJy4vX29iamVjdC1ncG8nKTtcblxucmVxdWlyZSgnLi9fb2JqZWN0LXNhcCcpKCdnZXRQcm90b3R5cGVPZicsIGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGdldFByb3RvdHlwZU9mKGl0KSB7XG4gICAgcmV0dXJuICRnZXRQcm90b3R5cGVPZih0b09iamVjdChpdCkpO1xuICB9O1xufSk7XG4iLCIvLyAxOS4xLjIuMTEgT2JqZWN0LmlzRXh0ZW5zaWJsZShPKVxudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG5cbnJlcXVpcmUoJy4vX29iamVjdC1zYXAnKSgnaXNFeHRlbnNpYmxlJywgZnVuY3Rpb24gKCRpc0V4dGVuc2libGUpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGlzRXh0ZW5zaWJsZShpdCkge1xuICAgIHJldHVybiBpc09iamVjdChpdCkgPyAkaXNFeHRlbnNpYmxlID8gJGlzRXh0ZW5zaWJsZShpdCkgOiB0cnVlIDogZmFsc2U7XG4gIH07XG59KTtcbiIsIi8vIDE5LjEuMi4xMiBPYmplY3QuaXNGcm96ZW4oTylcbnZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xuXG5yZXF1aXJlKCcuL19vYmplY3Qtc2FwJykoJ2lzRnJvemVuJywgZnVuY3Rpb24gKCRpc0Zyb3plbikge1xuICByZXR1cm4gZnVuY3Rpb24gaXNGcm96ZW4oaXQpIHtcbiAgICByZXR1cm4gaXNPYmplY3QoaXQpID8gJGlzRnJvemVuID8gJGlzRnJvemVuKGl0KSA6IGZhbHNlIDogdHJ1ZTtcbiAgfTtcbn0pO1xuIiwiLy8gMTkuMS4yLjEzIE9iamVjdC5pc1NlYWxlZChPKVxudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG5cbnJlcXVpcmUoJy4vX29iamVjdC1zYXAnKSgnaXNTZWFsZWQnLCBmdW5jdGlvbiAoJGlzU2VhbGVkKSB7XG4gIHJldHVybiBmdW5jdGlvbiBpc1NlYWxlZChpdCkge1xuICAgIHJldHVybiBpc09iamVjdChpdCkgPyAkaXNTZWFsZWQgPyAkaXNTZWFsZWQoaXQpIDogZmFsc2UgOiB0cnVlO1xuICB9O1xufSk7XG4iLCIvLyAxOS4xLjMuMTAgT2JqZWN0LmlzKHZhbHVlMSwgdmFsdWUyKVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbiRleHBvcnQoJGV4cG9ydC5TLCAnT2JqZWN0JywgeyBpczogcmVxdWlyZSgnLi9fc2FtZS12YWx1ZScpIH0pO1xuIiwiLy8gMTkuMS4yLjE0IE9iamVjdC5rZXlzKE8pXG52YXIgdG9PYmplY3QgPSByZXF1aXJlKCcuL190by1vYmplY3QnKTtcbnZhciAka2V5cyA9IHJlcXVpcmUoJy4vX29iamVjdC1rZXlzJyk7XG5cbnJlcXVpcmUoJy4vX29iamVjdC1zYXAnKSgna2V5cycsIGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIGtleXMoaXQpIHtcbiAgICByZXR1cm4gJGtleXModG9PYmplY3QoaXQpKTtcbiAgfTtcbn0pO1xuIiwiLy8gMTkuMS4yLjE1IE9iamVjdC5wcmV2ZW50RXh0ZW5zaW9ucyhPKVxudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG52YXIgbWV0YSA9IHJlcXVpcmUoJy4vX21ldGEnKS5vbkZyZWV6ZTtcblxucmVxdWlyZSgnLi9fb2JqZWN0LXNhcCcpKCdwcmV2ZW50RXh0ZW5zaW9ucycsIGZ1bmN0aW9uICgkcHJldmVudEV4dGVuc2lvbnMpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIHByZXZlbnRFeHRlbnNpb25zKGl0KSB7XG4gICAgcmV0dXJuICRwcmV2ZW50RXh0ZW5zaW9ucyAmJiBpc09iamVjdChpdCkgPyAkcHJldmVudEV4dGVuc2lvbnMobWV0YShpdCkpIDogaXQ7XG4gIH07XG59KTtcbiIsIi8vIDE5LjEuMi4xNyBPYmplY3Quc2VhbChPKVxudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi9faXMtb2JqZWN0Jyk7XG52YXIgbWV0YSA9IHJlcXVpcmUoJy4vX21ldGEnKS5vbkZyZWV6ZTtcblxucmVxdWlyZSgnLi9fb2JqZWN0LXNhcCcpKCdzZWFsJywgZnVuY3Rpb24gKCRzZWFsKSB7XG4gIHJldHVybiBmdW5jdGlvbiBzZWFsKGl0KSB7XG4gICAgcmV0dXJuICRzZWFsICYmIGlzT2JqZWN0KGl0KSA/ICRzZWFsKG1ldGEoaXQpKSA6IGl0O1xuICB9O1xufSk7XG4iLCIvLyAxOS4xLjMuMTkgT2JqZWN0LnNldFByb3RvdHlwZU9mKE8sIHByb3RvKVxudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbiRleHBvcnQoJGV4cG9ydC5TLCAnT2JqZWN0JywgeyBzZXRQcm90b3R5cGVPZjogcmVxdWlyZSgnLi9fc2V0LXByb3RvJykuc2V0IH0pO1xuIiwiJ3VzZSBzdHJpY3QnO1xuLy8gMTkuMS4zLjYgT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZygpXG52YXIgY2xhc3NvZiA9IHJlcXVpcmUoJy4vX2NsYXNzb2YnKTtcbnZhciB0ZXN0ID0ge307XG50ZXN0W3JlcXVpcmUoJy4vX3drcycpKCd0b1N0cmluZ1RhZycpXSA9ICd6JztcbmlmICh0ZXN0ICsgJycgIT0gJ1tvYmplY3Qgel0nKSB7XG4gIHJlcXVpcmUoJy4vX3JlZGVmaW5lJykoT2JqZWN0LnByb3RvdHlwZSwgJ3RvU3RyaW5nJywgZnVuY3Rpb24gdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuICdbb2JqZWN0ICcgKyBjbGFzc29mKHRoaXMpICsgJ10nO1xuICB9LCB0cnVlKTtcbn1cbiIsInZhciAkZXhwb3J0ID0gcmVxdWlyZSgnLi9fZXhwb3J0Jyk7XG52YXIgJHBhcnNlRmxvYXQgPSByZXF1aXJlKCcuL19wYXJzZS1mbG9hdCcpO1xuLy8gMTguMi40IHBhcnNlRmxvYXQoc3RyaW5nKVxuJGV4cG9ydCgkZXhwb3J0LkcgKyAkZXhwb3J0LkYgKiAocGFyc2VGbG9hdCAhPSAkcGFyc2VGbG9hdCksIHsgcGFyc2VGbG9hdDogJHBhcnNlRmxvYXQgfSk7XG4iLCJ2YXIgJGV4cG9ydCA9IHJlcXVpcmUoJy4vX2V4cG9ydCcpO1xudmFyICRwYXJzZUludCA9IHJlcXVpcmUoJy4vX3BhcnNlLWludCcpO1xuLy8gMTguMi41IHBhcnNlSW50KHN0cmluZywgcmFkaXgpXG4kZXhwb3J0KCRleHBvcnQuRyArICRleHBvcnQuRiAqIChwYXJzZUludCAhPSAkcGFyc2VJbnQpLCB7IHBhcnNlSW50OiAkcGFyc2VJbnQgfSk7XG4iLCIndXNlIHN0cmljdCc7XG52YXIgTElCUkFSWSA9IHJlcXVpcmUoJy4vX2xpYnJhcnknKTtcbnZhciBnbG9iYWwgPSByZXF1aXJlKCcuL19nbG9iYWwnKTtcbnZhciBjdHggPSByZXF1aXJlKCcuL19jdHgnKTtcbnZhciBjbGFzc29mID0gcmVxdWlyZSgnLi9fY2xhc3NvZicpO1xudmFyICRleHBvcnQgPSByZXF1aXJlKCcuL19leHBvcnQnKTtcbnZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4vX2lzLW9iamVjdCcpO1xudmFyIGFGdW5jdGlvbiA9IHJlcXVpcmUoJy4vX2EtZnVuY3Rpb24nKTtcbnZhciBhbkluc3RhbmNlID0gcmVxdWlyZSgnLi9fYW4taW5zdGFuY2UnKTtcbnZhciBmb3JPZiA9IHJlcXVpcmUoJy4vX2Zvci1vZicpO1xudmFyIHNwZWNpZXNDb25zdHJ1Y3RvciA9IHJlcXVpcmUoJy4vX3NwZWNpZXMtY29uc3RydWN0b3InKTtcbnZhciB0YXNrID0gcmVxdWlyZSgnLi9fdGFzaycpLnNldDtcbnZhciBtaWNyb3Rhc2sgPSByZXF1aXJlKCcuL19taWNyb3Rhc2snKSgpO1xudmFyIG5ld1Byb21pc2VDYXBhYmlsaXR5TW9kdWxlID0gcmVxdWlyZSgnLi9fbmV3LXByb21pc2UtY2FwYWJpbGl0eScpO1xudmFyIHBlcmZvcm0gPSByZXF1aXJlKCcuL19wZXJmb3JtJyk7XG52YXIgdXNlckFnZW50ID0gcmVxdWlyZSgnLi9fdXNlci1hZ2VudCcpO1xudmFyIHByb21pc2VSZXNvbHZlID0gcmVxdWlyZSgnLi9fcHJvbWlzZS1yZXNvbHZlJyk7XG52YXIgUFJPTUlTRSA9ICdQcm9taXNlJztcbnZhciBUeXBlRXJyb3IgPSBnbG9iYWwuVHlwZUVycm9yO1xudmFyIHByb2Nlc3MgPSBnbG9iYWwucHJvY2VzcztcbnZhciB2ZXJzaW9ucyA9IHByb2Nlc3MgJiYgcHJvY2Vzcy52ZXJzaW9ucztcbnZhciB2OCA9IHZlcnNpb25zICYmIHZlcnNpb25zLnY4IHx8ICcnO1xudmFyICRQcm9taXNlID0gZ2xvYmFsW1BST01JU0VdO1xudmFyIGlzTm9kZSA9IGNsYXNzb2YocHJvY2VzcykgPT0gJ3Byb2Nlc3MnO1xudmFyIGVtcHR5ID0gZnVuY3Rpb24gKCkgeyAvKiBlbXB0eSAqLyB9O1xudmFyIEludGVybmFsLCBuZXdHZW5lcmljUHJvbWlzZUNhcGFiaWxpdHksIE93blByb21pc2VDYXBhYmlsaXR5LCBXcmFwcGVyO1xudmFyIG5ld1Byb21pc2VDYXBhYmlsaXR5ID0gbmV3R2VuZXJpY1Byb21pc2VDYXBhYmlsaXR5ID0gbmV3UHJvbWlzZUNhcGFiaWxpdHlNb2R1bGUuZjtcblxudmFyIFVTRV9OQVRJVkUgPSAhIWZ1bmN0aW9uICgpIHtcbiAgdHJ5IHtcbiAgICAvLyBjb3JyZWN0IHN1YmNsYXNzaW5nIHdpdGggQEBzcGVjaWVzIHN1cHBvcnRcbiAgICB2YXIgcHJvbWlzZSA9ICRQcm9taXNlLnJlc29sdmUoMSk7XG4gICAgdmFyIEZha2VQcm9taXNlID0gKHByb21pc2UuY29uc3RydWN0b3IgPSB7fSlbcmVxdWlyZSgnLi9fd2tzJykoJ3NwZWNpZXMnKV0gPSBmdW5jdGlvbiAoZXhlYykge1xuICAgICAgZXhlYyhlbXB0eSwgZW1wdHkpO1xuICAgIH07XG4gICAgLy8gdW5oYW5kbGVkIHJlamVjdGlvbnMgdHJhY2tpbmcgc3VwcG9ydCwgTm9kZUpTIFByb21pc2Ugd2l0aG91dCBpdCBmYWlscyBAQHNwZWNpZXMgdGVzdFxuICAgIHJldHVybiAoaXNOb2RlIHx8IHR5cGVvZiBQcm9taXNlUmVqZWN0aW9uRXZlbnQgPT0gJ2Z1bmN0aW9uJylcbiAgICAgICYmIHByb21pc2UudGhlbihlbXB0eSkgaW5zdGFuY2VvZiBGYWtlUHJvbWlzZVxuICAgICAgLy8gdjggNi42IChOb2RlIDEwIGFuZCBDaHJvbWUgNjYpIGhhdmUgYSBidWcgd2l0aCByZXNvbHZpbmcgY3VzdG9tIHRoZW5hYmxlc1xuICAgICAgLy8gaHR0cHM6Ly9idWdzLmNocm9taXVtLm9yZy9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9ODMwNTY1XG4gICAgICAvLyB3ZSBjYW4ndCBkZXRlY3QgaXQgc3luY2hyb25vdXNseSwgc28ganVzdCBjaGVjayB2ZXJzaW9uc1xuICAgICAgJiYgdjguaW5kZXhPZignNi42JykgIT09IDBcbiAgICAgICYmIHVzZXJBZ2VudC5pbmRleE9mKCdDaHJvbWUvNjYnKSA9PT0gLTE7XG4gIH0gY2F0Y2ggKGUpIHsgLyogZW1wdHkgKi8gfVxufSgpO1xuXG4vLyBoZWxwZXJzXG52YXIgaXNUaGVuYWJsZSA9IGZ1bmN0aW9uIChpdCkge1xuICB2YXIgdGhlbjtcbiAgcmV0dXJuIGlzT2JqZWN0KGl0KSAmJiB0eXBlb2YgKHRoZW4gPSBpdC50aGVuKSA9PSAnZnVuY3Rpb24nID8gdGhlbiA6IGZhbHNlO1xufTtcbnZhciBub3RpZnkgPSBmdW5jdGlvbiAocHJvbWlzZSwgaXNSZWplY3QpIHtcbiAgaWYgKHByb21pc2UuX24pIHJldHVybjtcbiAgcHJvbWlzZS5fbiA9IHRydWU7XG4gIHZhciBjaGFpbiA9IHByb21pc2UuX2M7XG4gIG1pY3JvdGFzayhmdW5jdGlvbiAoKSB7XG4gICAgdmFyIHZhbHVlID0gcHJvbWlzZS5fdjtcbiAgICB2YXIgb2sgPSBwcm9taXNlLl9zID09IDE7XG4gICAgdmFyIGkgPSAwO1xuICAgIHZhciBydW4gPSBmdW5jdGlvbiAocmVhY3Rpb24pIHtcbiAgICAgIHZhciBoYW5kbGVyID0gb2sgPyByZWFjdGlvbi5vayA6IHJlYWN0aW9uLmZhaWw7XG4gICAgICB2YXIgcmVzb2x2ZSA9IHJlYWN0aW9uLnJlc29sdmU7XG4gICAgICB2YXIgcmVqZWN0ID0gcmVhY3Rpb24ucmVqZWN0O1xuICAgICAgdmFyIGRvbWFpbiA9IHJlYWN0aW9uLmRvbWFpbjtcbiAgICAgIHZhciByZXN1bHQsIHRoZW4sIGV4aXRlZDtcbiAgICAgIHRyeSB7XG4gICAgICAgIGlmIChoYW5kbGVyKSB7XG4gICAgICAgICAgaWYgKCFvaykge1xuICAgICAgICAgICAgaWYgKHByb21pc2UuX2ggPT0gMikgb25IYW5kbGVVbmhhbmRsZWQocHJvbWlzZSk7XG4gICAgICAgICAgICBwcm9taXNlLl9oID0gMTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGhhbmRsZXIgPT09IHRydWUpIHJlc3VsdCA9IHZhbHVlO1xuICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGRvbWFpbikgZG9tYWluLmVudGVyKCk7XG4gICAgICAgICAgICByZXN1bHQgPSBoYW5kbGVyKHZhbHVlKTsgLy8gbWF5IHRocm93XG4gICAgICAgICAgICBpZiAoZG9tYWluKSB7XG4gICAgICAgICAgICAgIGRvbWFpbi5leGl0KCk7XG4gICAgICAgICAgICAgIGV4aXRlZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChyZXN1bHQgPT09IHJlYWN0aW9uLnByb21pc2UpIHtcbiAgICAgICAgICAgIHJlamVjdChUeXBlRXJyb3IoJ1Byb21pc2UtY2hhaW4gY3ljbGUnKSk7XG4gICAgICAgICAgfSBlbHNlIGlmICh0aGVuID0gaXNUaGVuYWJsZShyZXN1bHQpKSB7XG4gICAgICAgICAgICB0aGVuLmNhbGwocmVzdWx0LCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICAgIH0gZWxzZSByZXNvbHZlKHJlc3VsdCk7XG4gICAgICAgIH0gZWxzZSByZWplY3QodmFsdWUpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBpZiAoZG9tYWluICYmICFleGl0ZWQpIGRvbWFpbi5leGl0KCk7XG4gICAgICAgIHJlamVjdChlKTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHdoaWxlIChjaGFpbi5sZW5ndGggPiBpKSBydW4oY2hhaW5baSsrXSk7IC8vIHZhcmlhYmxlIGxlbmd0aCAtIGNhbid0IHVzZSBmb3JFYWNoXG4gICAgcHJvbWlzZS5fYyA9IFtdO1xuICAgIHByb21pc2UuX24gPSBmYWxzZTtcbiAgICBpZiAoaXNSZWplY3QgJiYgIXByb21pc2UuX2gpIG9uVW5oYW5kbGVkKHByb21pc2UpO1xuICB9KTtcbn07XG52YXIgb25VbmhhbmRsZWQgPSBmdW5jdGlvbiAocHJvbWlzZSkge1xuICB0YXNrLmNhbGwoZ2xvYmFsLCBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIHZhbHVlID0gcHJvbWlzZS5fdjtcbiAgICB2YXIgdW5oYW5kbGVkID0gaXNVbmhhbmRsZWQocHJvbWlzZSk7XG4gICAgdmFyIHJlc3VsdCwgaGFuZGxlciwgY29uc29sZTtcbiAgICBpZiAodW5oYW5kbGVkKSB7XG4gICAgICByZXN1bHQgPSBwZXJmb3JtKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKGlzTm9kZSkge1xuICAgICAgICAgIHByb2Nlc3MuZW1pdCgndW5oYW5kbGVkUmVqZWN0aW9uJywgdmFsdWUsIHByb21pc2UpO1xuICAgICAgICB9IGVsc2UgaWYgKGhhbmRsZXIgPSBnbG9iYWwub251bmhhbmRsZWRyZWplY3Rpb24pIHtcbiAgICAgICAgICBoYW5kbGVyKHsgcHJvbWlzZTogcHJvbWlzZSwgcmVhc29uOiB2YWx1ZSB9KTtcbiAgICAgICAgfSBlbHNlIGlmICgoY29uc29sZSA9IGdsb2JhbC5jb25zb2xlKSAmJiBjb25zb2xlLmVycm9yKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignVW5oYW5kbGVkIHByb21pc2UgcmVqZWN0aW9uJywgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIC8vIEJyb3dzZXJzIHNob3VsZCBub3QgdHJpZ2dlciBgcmVqZWN0aW9uSGFuZGxlZGAgZXZlbnQgaWYgaXQgd2FzIGhhbmRsZWQgaGVyZSwgTm9kZUpTIC0gc2hvdWxkXG4gICAgICBwcm9taXNlLl9oID0gaXNOb2RlIHx8IGlzVW5oYW5kbGVkKHByb21pc2UpID8gMiA6IDE7XG4gICAgfSBwcm9taXNlLl9hID0gdW5kZWZpbmVkO1xuICAgIGlmICh1bmhhbmRsZWQgJiYgcmVzdWx0LmUpIHRocm93IHJlc3VsdC52O1xuICB9KTtcbn07XG52YXIgaXNVbmhhbmRsZWQgPSBmdW5jdGlvbiAocHJvbWlzZSkge1xuICByZXR1cm4gcHJvbWlzZS5faCAhPT0gMSAmJiAocHJvbWlzZS5fYSB8fCBwcm9taXNlLl9jKS5sZW5ndGggPT09IDA7XG59O1xudmFyIG9uSGFuZGxlVW5oYW5kbGVkID0gZnVuY3Rpb24gKHByb21pc2UpIHtcbiAgdGFzay5jYWxsKGdsb2JhbCwgZnVuY3Rpb24gKCkge1xuICAgIHZhciBoYW5kbGVyO1xuICAgIGlmIChpc05vZGUpIHtcbiAgICAgIHByb2Nlc3MuZW1pdCgncmVqZWN0aW9uSGFuZGxlZCcsIHByb21pc2UpO1xuICAgIH0gZWxzZSBpZiAoaGFuZGxlciA9IGdsb2JhbC5vbnJlamVjdGlvbmhhbmRsZWQpIHtcbiAgICAgIGhhbmRsZXIoeyBwcm9taXNlOiBwcm9taXNlLCByZWFzb246IHByb21pc2UuX3YgfSk7XG4gICAgfVxuICB9KTtcbn07XG52YXIgJHJlamVjdCA9IGZ1bmN0aW9uICh2YWx1ZSkge1xuICB2YXIgcHJvbWlzZSA9IHRoaXM7XG4gIGlmIChwcm9taXNlLl9kKSByZXR1cm47XG4gIHByb21pc2UuX2QgPSB0cnVlO1xuICBwcm9taXNlID0gcHJvbWlzZS5fdyB8fCBwcm9taXNlOyAvLyB1bndyYXBcbiAgcHJvbWlzZS5fdiA9IHZhbHVlO1xuICBwcm9taXNlLl9zID0gMjtcbiAgaWYgKCFwcm9taXNlLl9hKSBwcm9taXNlLl9hID0gcHJvbWlzZS5fYy5zbGljZSgpO1xuICBub3RpZnkocHJvbWlzZSwgdHJ1ZSk7XG59O1xudmFyICRyZXNvbHZlID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gIHZhciBwcm9taXNlID0gdGhpcztcbiAgdmFyIHRoZW47XG4gIGlmIChwcm9taXNlLl9kKSByZXR1cm47XG4gIHByb21pc2UuX2QgPSB0cnVlO1xuICBwcm9taXNlID0gcHJvbWlzZS5fdyB8fCBwcm9taXNlOyAvLyB1bndyYXBcbiAgdHJ5IHtcbiAgICBpZiAocHJvbWlzZSA9PT0gdmFsdWUpIHRocm93IFR5cGVFcnJvcihcIlByb21pc2UgY2FuJ3QgYmUgcmVzb2x2ZWQgaXRzZWxmXCIpO1xuICAgIGlmICh0aGVuID0gaXNUaGVuYWJsZSh2YWx1ZSkpIHtcbiAgICAgIG1pY3JvdGFzayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciB3cmFwcGVyID0geyBfdzogcHJvbWlzZSwgX2Q6IGZhbHNlIH07IC8vIHdyYXBcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICB0aGVuLmNhbGwodmFsdWUsIGN0eCgkcmVzb2x2ZSwgd3JhcHBlciwgMSksIGN0eCgkcmVqZWN0LCB3cmFwcGVyLCAxKSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAkcmVqZWN0LmNhbGwod3JhcHBlciwgZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBwcm9taXNlLl92ID0gdmFsdWU7XG4gICAgICBwcm9taXNlLl9zID0gMTtcbiAgICAgIG5vdGlmeShwcm9taXNlLCBmYWxzZSk7XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gICAgJHJlamVjdC5jYWxsKHsgX3c6IHByb21pc2UsIF9kOiBmYWxzZSB9LCBlKTsgLy8gd3JhcFxuICB9XG59O1xuXG4vLyBjb25zdHJ1Y3RvciBwb2x5ZmlsbFxuaWYgKCFVU0VfTkFUSVZFKSB7XG4gIC8vIDI1LjQuMy4xIFByb21pc2UoZXhlY3V0b3IpXG4gICRQcm9taXNlID0gZnVuY3Rpb24gUHJvbWlzZShleGVjdXRvcikge1xuICAgIGFuSW5zdGFuY2UodGhpcywgJFByb21pc2UsIFBST01JU0UsICdfaCcpO1xuICAgIGFGdW5jdGlvbihleGVjdXRvcik7XG4gICAgSW50ZXJuYWwuY2FsbCh0aGlzKTtcbiAgICB0cnkge1xuICAgICAgZXhlY3V0b3IoY3R4KCRyZXNvbHZlLCB0aGlzLCAxKSwgY3R4KCRyZWplY3QsIHRoaXMsIDEpKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICRyZWplY3QuY2FsbCh0aGlzLCBlcnIpO1xuICAgIH1cbiAgfTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gIEludGVybmFsID0gZnVuY3Rpb24gUHJvbWlzZShleGVjdXRvcikge1xuICAgIHRoaXMuX2MgPSBbXTsgICAgICAgICAgICAgLy8gPC0gYXdhaXRpbmcgcmVhY3Rpb25zXG4gICAgdGhpcy5fYSA9IHVuZGVmaW5lZDsgICAgICAvLyA8LSBjaGVja2VkIGluIGlzVW5oYW5kbGVkIHJlYWN0aW9uc1xuICAgIHRoaXMuX3MgPSAwOyAgICAgICAgICAgICAgLy8gPC0gc3RhdGVcbiAgICB0aGlzLl9kID0gZmFsc2U7ICAgICAgICAgIC8vIDwtIGRvbmVcbiAgICB0aGlzLl92ID0gdW5kZWZpbmVkOyAgICAgIC8vIDwtIHZhbHVlXG4gICAgdGhpcy5faCA9IDA7ICAgICAgICAgICAgICAvLyA8LSByZWplY3Rpb24gc3RhdGUsIDAgLSBkZWZhdWx0LCAxIC0gaGFuZGxlZCwgMiAtIHVuaGFuZGxlZFxuICAgIHRoaXMuX24gPSBmYWxzZTsgICAgICAgICAgLy8gPC0gbm90aWZ5XG4gIH07XG4gIEludGVybmFsLnByb3RvdHlwZSA9IHJlcXVpcmUoJy4vX3JlZGVmaW5lLWFsbCcpKCRQcm9taXNlLnByb3RvdHlwZSwge1xuICAgIC8vIDI1LjQuNS4zIFByb21pc2UucHJvdG90eXBlLnRoZW4ob25GdWxmaWxsZWQsIG9uUmVqZWN0ZWQpXG4gICAgdGhlbjogZnVuY3Rpb24gdGhlbihvbkZ1bGZpbGxlZCwgb25SZWplY3RlZCkge1xuICAgICAgdmFyIHJlYWN0aW9uID0gbmV3UHJvbWlzZUNhcGFiaWxpdHkoc3BlY2llc0NvbnN0cnVjdG9yKHRoaXMsICRQcm9taXNlKSk7XG4gICAgICByZWFjdGlvbi5vayA9IHR5cGVvZiBvbkZ1bGZpbGxlZCA9PSAnZnVuY3Rpb24nID8gb25GdWxmaWxsZWQgOiB0cnVlO1xuICAgICAgcmVhY3Rpb24uZmFpbCA9IHR5cGVvZiBvblJlamVjdGVkID09ICdmdW5jdGlvbicgJiYgb25SZWplY3RlZDtcbiAgICAgIHJlYWN0aW9uLmRvbWFpbiA9IGlzTm9kZSA/IHByb2Nlc3MuZG9tYWluIDogdW5kZWZpbmVkO1xuICAgICAgdGhpcy5fYy5wdXNoKHJlYWN0aW9uKTtcbiAgICAgIGlmICh0aGlzLl9hKSB0aGlzLl9hLnB1c2gocmVhY3Rpb24pO1xuICAgICAgaWYgKHRoaXMuX3MpIG5vdGlmeSh0aGlzLCBmYWxzZSk7XG4gICAgICByZXR1cm4gcmVhY3Rpb24ucHJvbWlzZTtcbiAgICB9LFxuICAgIC8vIDI1LjQuNS4xIFByb21pc2UucHJvdG90eXBlLmNhdGNoKG9uUmVqZWN0ZWQpXG4gICAgJ2NhdGNoJzogZnVuY3Rpb24gKG9uUmVqZWN0ZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLnRoZW4odW5kZWZpbmVkLCBvblJlamVjdGVkKTtcbiAgICB9XG4gIH0pO1xuICBPd25Qcm9taXNlQ2FwYWJpbGl0eSA9IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgcHJvbWlzZSA9IG5ldyBJbnRlcm5hbCgpO1xuICAgIHRoaXMucHJvbWlzZSA9IHByb21pc2U7XG4gICAgdGhpcy5yZXNvbHZlID0gY3R4KCRyZXNvbHZlLCBwcm9taXNlLCAxKTtcbiAgICB0aGlzLnJlamVjdCA9IGN0eCgkcmVqZWN0LCBwcm9taXNlLCAxKTtcbiAgfTtcbiAgbmV3UHJvbWlzZUNhcGFiaWxpdHlNb2R1bGUuZiA9IG5ld1Byb21pc2VDYXBhYmlsaXR5ID0gZnVuY3Rpb24gKEMpIHtcbiAgICByZXR1cm4gQyA9PT0gJFByb21pc2UgfHwgQyA9PT0gV3JhcHBlclxuICAgICAgPyBuZXcgT3duUHJvbWlzZUNhcGFiaWxpdHkoQylcbiAgICAgIDogbmV3R2VuZXJpY1Byb21pc2VDYXBhYmlsaXR5KEMpO1xuICB9O1xufVxuXG4kZXhwb3J0KCRleHBvcnQuRyArICRleHBvcnQuVyArICRleHBvcnQuRiAqICFVU0VfTkFUSVZFLCB7IFByb21pc2U6ICRQcm9taXNlIH0pO1xucmVxdWlyZSgnLi9fc2V0LXRvLXN0cmluZy10YWcnKSgkUHJvbWlzZSwgUFJPTUlTRSk7XG5yZXF1aXJlKCcuL19zZXQtc3BlY2llcycpKFBST01JU0UpO1xuV3JhcHBlciA9IHJlcXVpcmUoJy4vX2NvcmUnKVtQUk9NSVNFXTtcblxuLy8gc3RhdGljc1xuJGV4cG9ydCgkZXhwb3J0LlMgKyAkZXhwb3J0LkYgKiAhVVNFX05BVElWRSwgUFJPTUlTRSwge1xuICAvLyAyNS40LjQuNSBQcm9taXNlLnJlamVjdChyKVxuICByZWplY3Q6IGZ1bmN0aW9uIHJlamVjdChyKSB7XG4gICAgdmFyIGNhcGFiaWxpdHkgPSBuZXdQcm9taXNlQ2FwYWJpbGl0eSh0aGlzKTtcbiAgICB2YXIgJCRyZWplY3QgPSBjYXBhYmlsaXR5LnJlamVjdDtcbiAgICAkJHJlamVjdChyKTtcbiAgICByZXR1cm4gY2FwYWJpbGl0eS5wcm9taXNlO1xuICB9XG59KTtcbiRleHBvcnQoJGV4cG9ydC5TICsgJGV4cG9ydC5GICogKExJQlJBUlkgfHwgIVVTRV9OQVRJVkUpLCBQUk9NSVNFLCB7XG4gIC8vIDI1LjQuNC42IFByb21pc2UucmVzb2x2ZSh4KVxuICByZXNvbHZlOiBmdW5jdGlvbiByZXNvbHZlKHgpIHtcbiAgICByZXR1cm4gcHJvbWlzZVJlc29sdmUoTElCUkFSWSAmJiB0aGlzID09PSBXcmFwcGVyID8gJFByb21pc2UgOiB0aGlzLCB4KTtcbiAgfVxufSk7XG4kZXhwb3J0KCRleHBvcnQuUyArICRleHBvcnQuRiAqICEoVVNFX05BVElWRSAmJiByZXF1aXJlKCcuL19pdGVyLWRldGVjdCcpKGZ1bmN0aW9uIChpdGVyKSB7XG4gICRQcm9taXNlLmFsbChpdGVyKVsnY2F0Y2gnXShlbXB0eSk7XG59KSksIFBST01JU0UsIHtcbiAgLy8gMjUuNC40LjEgUHJvbWlzZS5hbGwoaXRlcmFibGUpXG4gIGFsbDogZnVuY3Rpb24gYWxsKGl0ZXJhYmxlKSB7XG4gICAgdmFyIEMgPSB0aGlzO1xuICAgIHZhciBjYXBhYmlsaXR5ID0gbmV3UHJvbWlzZUNhcGFiaWxpdHkoQyk7XG4gICAgdmFyIHJlc29sdmUgPSBjYXBhYmlsaXR5LnJlc29sdmU7XG4gICAgdmFyIHJlamVjdCA9IGNhcGFiaWxpdHkucmVqZWN0O1xuICAgIHZhciByZXN1bHQgPSBwZXJmb3JtKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciB2YWx1ZXMgPSBbXTtcbiAgICAgIHZhciBpbmRleCA9IDA7XG4gICAgICB2YXIgcmVtYWluaW5nID0gMTtcbiAgICAgIGZvck9mKGl0ZXJhYmxlLCBmYWxzZSwgZnVuY3Rpb24gKHByb21pc2UpIHtcbiAgICAgICAgdmFyICRpbmRleCA9IGluZGV4Kys7XG4gICAgICAgIHZhciBhbHJlYWR5Q2FsbGVkID0gZmFsc2U7XG4gICAgICAgIHZhbHVlcy5wdXNoKHVuZGVmaW5lZCk7XG4gICAgICAgIHJlbWFpbmluZysrO1xuICAgICAgICBDLnJlc29sdmUocHJvbWlzZSkudGhlbihmdW5jdGlvbiAodmFsdWUpIHtcbiAgICAgICAgICBpZiAoYWxyZWFkeUNhbGxlZCkgcmV0dXJuO1xuICAgICAgICAgIGFscmVhZHlDYWxsZWQgPSB0cnVlO1xuICAgICAgICAgIHZhbHVlc1skaW5kZXhdID0gdmFsdWU7XG4gICAgICAgICAgLS1
|
