From 7cdc56cfdd489122135d9b68765a77d5bc0244b5 Mon Sep 17 00:00:00 2001 From: Rafael Taranto Date: Fri, 7 Jun 2024 10:53:57 +0100 Subject: [PATCH] chore: remove unused files --- .gitignore | 4 +- Dockerfiles/admin.Dockerfile | 32 - Dockerfiles/common.Dockerfile | 36 + bin/convert-txs.js | 53 - bin/insecure-dev.sh | 3 - bin/lamassu-display-config.js | 14 - bin/lamassu-eth-sweep-old-addresses.js | 75 - bin/migrate-config.js | 47 - dev/coinatmradar.js | 15 - dev/coinatmradarserver.js | 14 - dev/config.js | 8 - dev/double-dispense.js | 19 - dev/double-spend-scenario.js | 60 - dev/get-compat-trigger.js | 10 - dev/json-rpc.js | 19 - dev/notify.js | 31 - dev/ofac-match.js | 16 - dev/plugins.js | 10 - dev/recreate-seeds.js | 26 - dev/send-message.js | 30 - dev/strike.js | 20 - docker-compose.yaml | 17 +- lamassu-remote-install/README.md | 23 - lamassu-remote-install/Vagrantfile | 72 - lamassu-remote-install/default.sql | 40 - lamassu-remote-install/install | 280 - lib/admin/accounts.js | 133 - lib/admin/admin-server.js | 342 - lib/admin/admin-support.js | 39 - lib/admin/funding.js | 99 - lib/admin/login.js | 48 - lib/admin/pairing.js | 32 - lib/admin/public/bower.json | 18 - .../bower_components/gridism/.bower.json | 27 - .../public/bower_components/gridism/LICENSE | 19 - .../public/bower_components/gridism/README.md | 80 - .../bower_components/gridism/bower.json | 17 - .../bower_components/gridism/gridism.css | 132 - .../bower_components/qr-code/.bower.json | 40 - .../public/bower_components/qr-code/README.md | 94 - .../bower_components/qr-code/bower.json | 30 - .../bower_components/qr-code/index.html | 10 - .../public/bower_components/qr-code/index.js | 1 - .../bower_components/qr-code/package.json | 29 - .../qr-code/src/polymer/qr-code.html | 56 - .../bower_components/qr-code/src/qr-code.html | 1 - .../bower_components/qr-code/src/qr-code.js | 144 - .../bower_components/qrcodejs/.bower.json | 31 - .../public/bower_components/qrcodejs/LICENSE | 14 - .../bower_components/qrcodejs/README.md | 43 - .../bower_components/qrcodejs/bower.json | 21 - .../bower_components/qrcodejs/index.html | 44 - .../bower_components/qrcodejs/index.svg | 37 - .../bower_components/qrcodejs/jquery.min.js | 2 - .../bower_components/qrcodejs/qrcode.js | 609 - .../bower_components/qrcodejs/qrcode.min.js | 1 - .../bower_components/qrious/.bower.json | 47 - .../public/bower_components/qrious/LICENSE.md | 16 - .../public/bower_components/qrious/bower.json | 37 - .../public/bower_components/qrjs/.bower.json | 36 - .../public/bower_components/qrjs/README.md | 8 - .../public/bower_components/qrjs/bower.json | 27 - .../public/bower_components/qrjs/package.json | 24 - lib/admin/public/bower_components/qrjs/qr.js | 804 - .../webcomponentsjs/.bower.json | 31 - .../webcomponentsjs/CustomElements.js | 1029 - .../webcomponentsjs/CustomElements.min.js | 11 - .../webcomponentsjs/HTMLImports.js | 1157 - .../webcomponentsjs/HTMLImports.min.js | 11 - .../webcomponentsjs/MutationObserver.js | 350 - .../webcomponentsjs/MutationObserver.min.js | 11 - .../webcomponentsjs/README.md | 155 - .../webcomponentsjs/ShadowDOM.js | 4493 -- .../webcomponentsjs/ShadowDOM.min.js | 13 - .../webcomponentsjs/bower.json | 21 - .../webcomponentsjs/package.json | 31 - .../webcomponentsjs/webcomponents-lite.js | 2505 - .../webcomponentsjs/webcomponents-lite.min.js | 12 - .../webcomponentsjs/webcomponents.js | 7206 --- .../webcomponentsjs/webcomponents.min.js | 14 - lib/admin/public/elm.js | 40367 ---------------- lib/admin/public/favicon.ico | Bin 17910 -> 0 bytes lib/admin/public/index.html | 29 - lib/admin/public/lamassu-elm.js | 13319 ----- lib/admin/public/styles.css | 631 - lib/admin/public/support-index.html | 29 - lib/admin/schemas/bitgo.json | 103 - lib/admin/schemas/bitstamp.json | 27 - lib/admin/schemas/blockcypher.json | 20 - lib/admin/schemas/infura.json | 30 - lib/admin/schemas/itbit.json | 34 - lib/admin/schemas/kraken.json | 22 - lib/admin/schemas/mailgun.json | 34 - lib/admin/schemas/strike.json | 14 - lib/admin/schemas/twilio.json | 34 - lib/admin/server.js | 84 - lib/admin/transactions.js | 72 - lib/new-admin/README.md | 6 - package-lock.json | 1967 - package.json | 5 +- public/asset-manifest.json | 159 - .../assets/wizard/fullexample.commissions.png | Bin 71597 -> 0 bytes public/assets/wizard/fullexample.locale.png | Bin 42159 -> 0 bytes public/assets/wizard/fullexample.twilio.png | Bin 163770 -> 0 bytes public/assets/wizard/fullexample.wallet.png | Bin 31033 -> 0 bytes public/favicon.ico | Bin 1150 -> 0 bytes public/fonts/BPmono/BPmono.ttf | Bin 58648 -> 0 bytes public/fonts/BPmono/BPmonoBold.ttf | Bin 48488 -> 0 bytes public/fonts/BPmono/BPmonoItalic.ttf | Bin 58680 -> 0 bytes public/fonts/MontHeavy/mont-bold-webfont.woff | Bin 33244 -> 0 bytes .../fonts/MontHeavy/mont-bold-webfont.woff2 | Bin 25180 -> 0 bytes .../fonts/MontHeavy/mont-heavy-webfont.woff | Bin 58028 -> 0 bytes .../fonts/MontHeavy/mont-heavy-webfont.woff2 | Bin 42956 -> 0 bytes .../MuseoSans/MuseoSans_500-webfont.woff | Bin 32072 -> 0 bytes .../MuseoSans/MuseoSans_500-webfont.woff2 | Bin 23588 -> 0 bytes .../MuseoSans/MuseoSans_700-webfont.woff | Bin 31928 -> 0 bytes .../MuseoSans/MuseoSans_700-webfont.woff2 | Bin 24092 -> 0 bytes public/fonts/Rubik/Rubik-Black.otf | Bin 96336 -> 0 bytes public/fonts/Rubik/Rubik-Bold.otf | Bin 101792 -> 0 bytes public/fonts/Rubik/Rubik-Medium.otf | Bin 100476 -> 0 bytes public/index.html | 1 - public/manifest.json | 15 - public/static/js/2.01291e3c.chunk.js | 3 - .../static/js/2.01291e3c.chunk.js.LICENSE.txt | 174 - public/static/js/2.01291e3c.chunk.js.map | 1 - public/static/js/main.900511f9.chunk.js | 2 - public/static/js/main.900511f9.chunk.js.map | 1 - public/static/js/main.dabea017.chunk.js | 2 - public/static/js/main.dabea017.chunk.js.map | 1 - public/static/js/runtime-main.5b925903.js | 2 - public/static/js/runtime-main.5b925903.js.map | 1 - .../3-cassettes-open-1-left.d6d9aa73.svg | 85 - .../3-cassettes-open-2-left.a9ee8d4c.svg | 89 - .../3-cassettes-open-3-left.08fed660.svg | 91 - .../4-cassettes-open-1-left.7b00c51f.svg | 95 - .../4-cassettes-open-2-left.b3d9541c.svg | 97 - .../4-cassettes-open-3-left.e8f1667c.svg | 97 - .../4-cassettes-open-4-left.bc1a9829.svg | 101 - .../static/media/acceptor-left.f37bcb1a.svg | 1 - public/static/media/both-filled.7af80d5f.svg | 1 - .../media/carousel-left-arrow.c6575d9d.svg | 6 - .../media/carousel-right-arrow.1d5e04d1.svg | 8 - public/static/media/cash-in.c06970a7.svg | 10 - public/static/media/cash-out.f029ae96.svg | 10 - .../static/media/cashbox-empty.828bd3b9.svg | 14 - .../media/cashout-cassette-1.fac6c691.svg | 1 - .../media/cashout-cassette-2.34a98cfa.svg | 1 - public/static/media/closed.b853a619.svg | 12 - public/static/media/comet.0a722656.svg | 9 - public/static/media/comet.431ab3d7.svg | 10 - public/static/media/comet.56af080c.svg | 9 - public/static/media/comet.77ebaba5.svg | 8 - public/static/media/comet.8877f6c3.svg | 7 - public/static/media/comet.8aef4281.svg | 8 - public/static/media/comet.9dc291f2.svg | 11 - public/static/media/comet.aaf93613.svg | 10 - public/static/media/comet.c4eaa20d.svg | 7 - public/static/media/complete.99ba27f3.svg | 9 - public/static/media/complete.d94d5045.svg | 9 - public/static/media/copy.f4cea549.svg | 13 - .../static/media/crossed-camera.28e8f7eb.svg | 15 - public/static/media/current.68045777.svg | 9 - public/static/media/current.9bbfa93f.svg | 9 - .../media/custom-requirement.38819635.svg | 1 - public/static/media/disabled.347e2b5e.svg | 29 - public/static/media/disabled.aede2073.svg | 9 - public/static/media/dispenser-1.e4200f4e.svg | 1 - public/static/media/dispenser-2.9f7807a5.svg | 1 - public/static/media/down.919a0c2a.svg | 12 - .../static/media/download_logs.219c88ac.svg | 14 - public/static/media/empty-table.250884a9.svg | 49 - public/static/media/empty.631601f2.svg | 8 - public/static/media/empty.862ae4bb.svg | 8 - public/static/media/enabled.5aae4510.svg | 9 - public/static/media/enabled.a058fdfc.svg | 12 - public/static/media/equal.f4103789.svg | 12 - public/static/media/false.347e5864.svg | 12 - public/static/media/full.67b8cd67.svg | 9 - .../media/icon-bitcoin-colour.bd8da481.svg | 7 - .../icon-bitcoincash-colour.ed917caa.svg | 4 - .../media/icon-dash-colour.e01c021b.svg | 1 - .../media/icon-ethereum-colour.761723a2.svg | 11 - .../media/icon-litecoin-colour.bd861b5e.svg | 4 - .../media/icon-monero-colour.650b7bd1.svg | 1 - .../media/icon-tether-colour.92d7fda4.svg | 1 - .../media/icon-zcash-colour.68b1c20b.svg | 15 - public/static/media/keyboard.cc22b859.svg | 25 - public/static/media/keypad.dfb6094e.svg | 18 - public/static/media/list.65e6f8cb.svg | 16 - public/static/media/logo-white.d997c674.svg | 20 - public/static/media/logo.8ee79eab.svg | 20 - public/static/media/month_change.58940268.svg | 19 - .../media/month_change_right.0c3eb9a1.svg | 19 - .../media/notification-zodiac.e2897b39.svg | 13 - public/static/media/notification.a9712ffd.svg | 13 - public/static/media/open.7196c113.svg | 12 - public/static/media/pumpkin.877c3432.svg | 4 - public/static/media/regular.3140e691.svg | 16 - public/static/media/right.d3dd4af6.svg | 24 - public/static/media/right_white.3e1a2119.svg | 24 - public/static/media/spring2.9f3bb2f7.svg | 4 - public/static/media/stripes.876e4081.svg | 28 - public/static/media/tomato.4b561f6f.svg | 11 - public/static/media/tomato.b3903800.svg | 4 - public/static/media/transaction.d1309f34.svg | 19 - public/static/media/true.b3b76849.svg | 9 - public/static/media/up.bcdf0fc7.svg | 12 - public/static/media/white.144118ff.svg | 23 - public/static/media/white.158a991b.svg | 7 - public/static/media/white.16f4b162.svg | 15 - public/static/media/white.1ca0dea7.svg | 9 - public/static/media/white.20ca66ec.svg | 11 - public/static/media/white.341f0eae.svg | 7 - public/static/media/white.41439910.svg | 11 - public/static/media/white.4532ac56.svg | 11 - public/static/media/white.460daa02.svg | 8 - public/static/media/white.4676bf59.svg | 14 - public/static/media/white.47196e40.svg | 10 - public/static/media/white.51296906.svg | 9 - public/static/media/white.5750bfd1.svg | 12 - public/static/media/white.5a37327b.svg | 9 - public/static/media/white.5f161f2c.svg | 9 - public/static/media/white.636f4cd1.svg | 10 - public/static/media/white.6dd4c28a.svg | 8 - public/static/media/white.81edd31f.svg | 12 - public/static/media/white.8406a3ba.svg | 13 - public/static/media/white.87f75e06.svg | 9 - public/static/media/white.8c4085b7.svg | 11 - public/static/media/white.8ccc4767.svg | 19 - public/static/media/white.958fe55d.svg | 9 - public/static/media/white.9814829c.svg | 10 - public/static/media/white.9f2c5216.svg | 11 - public/static/media/white.b7754662.svg | 9 - public/static/media/white.bd0d7dca.svg | 10 - public/static/media/white.cc7667ff.svg | 10 - public/static/media/white.e53d9d4a.svg | 7 - public/static/media/white.e72682b5.svg | 11 - public/static/media/white.e8851a0a.svg | 9 - public/static/media/white.f97c75d2.svg | 19 - public/static/media/white.fa4681e8.svg | 11 - public/static/media/white.fe6ed797.svg | 18 - .../static/media/zodiac-resized.70523fd1.svg | 19 - .../static/media/zodiac-resized.c4907e4b.svg | 20 - public/static/media/zodiac.088002a2.svg | 7 - public/static/media/zodiac.13543418.svg | 12 - public/static/media/zodiac.1806a875.svg | 12 - public/static/media/zodiac.1bc04c23.svg | 9 - public/static/media/zodiac.1bd00dea.svg | 10 - public/static/media/zodiac.2fe856d5.svg | 11 - public/static/media/zodiac.3b13c0b7.svg | 11 - public/static/media/zodiac.5547e32c.svg | 17 - public/static/media/zodiac.594ae9e7.svg | 7 - public/static/media/zodiac.6cff3051.svg | 12 - public/static/media/zodiac.71910a69.svg | 10 - public/static/media/zodiac.74570495.svg | 9 - public/static/media/zodiac.779a5bbc.svg | 7 - public/static/media/zodiac.84e03611.svg | 9 - public/static/media/zodiac.8bc58042.svg | 13 - public/static/media/zodiac.8c3f113c.svg | 8 - public/static/media/zodiac.8c7b512b.svg | 14 - public/static/media/zodiac.9be6e999.svg | 23 - public/static/media/zodiac.9cfc97dd.svg | 18 - public/static/media/zodiac.a976fef2.svg | 10 - public/static/media/zodiac.aa028a2c.svg | 19 - public/static/media/zodiac.b27733af.svg | 11 - public/static/media/zodiac.bb7722c5.svg | 11 - public/static/media/zodiac.ce4a1545.svg | 12 - public/static/media/zodiac.cfe5467c.svg | 14 - public/static/media/zodiac.e161cf6b.svg | 11 - public/static/media/zodiac.e181d06a.svg | 11 - public/static/media/zodiac.e42149ea.svg | 11 - public/static/media/zodiac.eea12e4f.svg | 10 - public/static/media/zodiac.f3536991.svg | 11 - public/wizard-background.svg | 204 - test/fixtures/new-settings.json | 136 - test/fixtures/two-way-btc.json | 351 - test/integration/README.md | 1 - test/integration/balance.sh | 35 - test/integration/bitcoind.sh | 7 - test/unit/filter-config-accounts.js | 31 - test/unit/itbit-calculate-price.js | 78 - test/unit/itbit-get-currency-rates.js | 48 - test/unit/itbit-trade.js | 35 - test/unit/new-settings-loader.js | 17 - test/unit/settings-loader-load-fixture.js | 50 - {test => tests}/stress/child.js | 0 {test => tests}/stress/index.js | 0 {test => tests}/stress/load-tx-dummy-data.js | 0 .../stress/queries-performance-analyzer.js | 0 .../stress/scripts/create-machines.sh | 0 {test => tests}/stress/scripts/index.js | 0 {test => tests}/stress/test-server.js | 0 .../stress/utils/default-config.json | 0 {test => tests}/stress/utils/index.js | 0 {test => tests}/stress/utils/init-cert.js | 0 {test => tests}/stress/utils/save-config.js | 0 {test => tests}/stress/utils/variables.js | 0 tools/check-user-count.js | 14 - tools/create-lamassu-ca.sh | 54 - .../digitalocean}/createblockstorage.sh | 0 .../digitalocean}/migratedata.sh | 0 tools/modify.js | 11 - tools/show.js | 25 - 303 files changed, 40 insertions(+), 81654 deletions(-) delete mode 100644 Dockerfiles/admin.Dockerfile create mode 100644 Dockerfiles/common.Dockerfile delete mode 100755 bin/convert-txs.js delete mode 100755 bin/insecure-dev.sh delete mode 100644 bin/lamassu-display-config.js delete mode 100644 bin/lamassu-eth-sweep-old-addresses.js delete mode 100644 bin/migrate-config.js delete mode 100644 dev/coinatmradar.js delete mode 100644 dev/coinatmradarserver.js delete mode 100644 dev/config.js delete mode 100644 dev/double-dispense.js delete mode 100644 dev/double-spend-scenario.js delete mode 100644 dev/get-compat-trigger.js delete mode 100644 dev/json-rpc.js delete mode 100644 dev/notify.js delete mode 100644 dev/ofac-match.js delete mode 100644 dev/plugins.js delete mode 100644 dev/recreate-seeds.js delete mode 100644 dev/send-message.js delete mode 100644 dev/strike.js delete mode 100644 lamassu-remote-install/README.md delete mode 100644 lamassu-remote-install/Vagrantfile delete mode 100644 lamassu-remote-install/default.sql delete mode 100755 lamassu-remote-install/install delete mode 100644 lib/admin/accounts.js delete mode 100644 lib/admin/admin-server.js delete mode 100644 lib/admin/admin-support.js delete mode 100644 lib/admin/funding.js delete mode 100644 lib/admin/login.js delete mode 100644 lib/admin/pairing.js delete mode 100644 lib/admin/public/bower.json delete mode 100644 lib/admin/public/bower_components/gridism/.bower.json delete mode 100644 lib/admin/public/bower_components/gridism/LICENSE delete mode 100644 lib/admin/public/bower_components/gridism/README.md delete mode 100644 lib/admin/public/bower_components/gridism/bower.json delete mode 100644 lib/admin/public/bower_components/gridism/gridism.css delete mode 100644 lib/admin/public/bower_components/qr-code/.bower.json delete mode 100644 lib/admin/public/bower_components/qr-code/README.md delete mode 100644 lib/admin/public/bower_components/qr-code/bower.json delete mode 100644 lib/admin/public/bower_components/qr-code/index.html delete mode 100644 lib/admin/public/bower_components/qr-code/index.js delete mode 100644 lib/admin/public/bower_components/qr-code/package.json delete mode 100644 lib/admin/public/bower_components/qr-code/src/polymer/qr-code.html delete mode 100644 lib/admin/public/bower_components/qr-code/src/qr-code.html delete mode 100644 lib/admin/public/bower_components/qr-code/src/qr-code.js delete mode 100644 lib/admin/public/bower_components/qrcodejs/.bower.json delete mode 100644 lib/admin/public/bower_components/qrcodejs/LICENSE delete mode 100644 lib/admin/public/bower_components/qrcodejs/README.md delete mode 100644 lib/admin/public/bower_components/qrcodejs/bower.json delete mode 100644 lib/admin/public/bower_components/qrcodejs/index.html delete mode 100644 lib/admin/public/bower_components/qrcodejs/index.svg delete mode 100644 lib/admin/public/bower_components/qrcodejs/jquery.min.js delete mode 100644 lib/admin/public/bower_components/qrcodejs/qrcode.js delete mode 100644 lib/admin/public/bower_components/qrcodejs/qrcode.min.js delete mode 100644 lib/admin/public/bower_components/qrious/.bower.json delete mode 100644 lib/admin/public/bower_components/qrious/LICENSE.md delete mode 100644 lib/admin/public/bower_components/qrious/bower.json delete mode 100644 lib/admin/public/bower_components/qrjs/.bower.json delete mode 100644 lib/admin/public/bower_components/qrjs/README.md delete mode 100644 lib/admin/public/bower_components/qrjs/bower.json delete mode 100644 lib/admin/public/bower_components/qrjs/package.json delete mode 100644 lib/admin/public/bower_components/qrjs/qr.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/.bower.json delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/CustomElements.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/CustomElements.min.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/HTMLImports.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/HTMLImports.min.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/MutationObserver.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/MutationObserver.min.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/README.md delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/ShadowDOM.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/ShadowDOM.min.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/bower.json delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/package.json delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/webcomponents-lite.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/webcomponents-lite.min.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/webcomponents.js delete mode 100644 lib/admin/public/bower_components/webcomponentsjs/webcomponents.min.js delete mode 100644 lib/admin/public/elm.js delete mode 100644 lib/admin/public/favicon.ico delete mode 100644 lib/admin/public/index.html delete mode 100644 lib/admin/public/lamassu-elm.js delete mode 100644 lib/admin/public/styles.css delete mode 100644 lib/admin/public/support-index.html delete mode 100644 lib/admin/schemas/bitgo.json delete mode 100644 lib/admin/schemas/bitstamp.json delete mode 100644 lib/admin/schemas/blockcypher.json delete mode 100644 lib/admin/schemas/infura.json delete mode 100644 lib/admin/schemas/itbit.json delete mode 100644 lib/admin/schemas/kraken.json delete mode 100644 lib/admin/schemas/mailgun.json delete mode 100644 lib/admin/schemas/strike.json delete mode 100644 lib/admin/schemas/twilio.json delete mode 100644 lib/admin/server.js delete mode 100644 lib/admin/transactions.js delete mode 100644 lib/new-admin/README.md delete mode 100644 public/asset-manifest.json delete mode 100644 public/assets/wizard/fullexample.commissions.png delete mode 100644 public/assets/wizard/fullexample.locale.png delete mode 100644 public/assets/wizard/fullexample.twilio.png delete mode 100644 public/assets/wizard/fullexample.wallet.png delete mode 100644 public/favicon.ico delete mode 100644 public/fonts/BPmono/BPmono.ttf delete mode 100644 public/fonts/BPmono/BPmonoBold.ttf delete mode 100644 public/fonts/BPmono/BPmonoItalic.ttf delete mode 100644 public/fonts/MontHeavy/mont-bold-webfont.woff delete mode 100644 public/fonts/MontHeavy/mont-bold-webfont.woff2 delete mode 100644 public/fonts/MontHeavy/mont-heavy-webfont.woff delete mode 100644 public/fonts/MontHeavy/mont-heavy-webfont.woff2 delete mode 100644 public/fonts/MuseoSans/MuseoSans_500-webfont.woff delete mode 100644 public/fonts/MuseoSans/MuseoSans_500-webfont.woff2 delete mode 100644 public/fonts/MuseoSans/MuseoSans_700-webfont.woff delete mode 100644 public/fonts/MuseoSans/MuseoSans_700-webfont.woff2 delete mode 100644 public/fonts/Rubik/Rubik-Black.otf delete mode 100644 public/fonts/Rubik/Rubik-Bold.otf delete mode 100644 public/fonts/Rubik/Rubik-Medium.otf delete mode 100644 public/index.html delete mode 100644 public/manifest.json delete mode 100644 public/static/js/2.01291e3c.chunk.js delete mode 100644 public/static/js/2.01291e3c.chunk.js.LICENSE.txt delete mode 100644 public/static/js/2.01291e3c.chunk.js.map delete mode 100644 public/static/js/main.900511f9.chunk.js delete mode 100644 public/static/js/main.900511f9.chunk.js.map delete mode 100644 public/static/js/main.dabea017.chunk.js delete mode 100644 public/static/js/main.dabea017.chunk.js.map delete mode 100644 public/static/js/runtime-main.5b925903.js delete mode 100644 public/static/js/runtime-main.5b925903.js.map delete mode 100644 public/static/media/3-cassettes-open-1-left.d6d9aa73.svg delete mode 100644 public/static/media/3-cassettes-open-2-left.a9ee8d4c.svg delete mode 100644 public/static/media/3-cassettes-open-3-left.08fed660.svg delete mode 100644 public/static/media/4-cassettes-open-1-left.7b00c51f.svg delete mode 100644 public/static/media/4-cassettes-open-2-left.b3d9541c.svg delete mode 100644 public/static/media/4-cassettes-open-3-left.e8f1667c.svg delete mode 100644 public/static/media/4-cassettes-open-4-left.bc1a9829.svg delete mode 100644 public/static/media/acceptor-left.f37bcb1a.svg delete mode 100644 public/static/media/both-filled.7af80d5f.svg delete mode 100644 public/static/media/carousel-left-arrow.c6575d9d.svg delete mode 100644 public/static/media/carousel-right-arrow.1d5e04d1.svg delete mode 100644 public/static/media/cash-in.c06970a7.svg delete mode 100644 public/static/media/cash-out.f029ae96.svg delete mode 100644 public/static/media/cashbox-empty.828bd3b9.svg delete mode 100644 public/static/media/cashout-cassette-1.fac6c691.svg delete mode 100644 public/static/media/cashout-cassette-2.34a98cfa.svg delete mode 100644 public/static/media/closed.b853a619.svg delete mode 100644 public/static/media/comet.0a722656.svg delete mode 100644 public/static/media/comet.431ab3d7.svg delete mode 100644 public/static/media/comet.56af080c.svg delete mode 100644 public/static/media/comet.77ebaba5.svg delete mode 100644 public/static/media/comet.8877f6c3.svg delete mode 100644 public/static/media/comet.8aef4281.svg delete mode 100644 public/static/media/comet.9dc291f2.svg delete mode 100644 public/static/media/comet.aaf93613.svg delete mode 100644 public/static/media/comet.c4eaa20d.svg delete mode 100644 public/static/media/complete.99ba27f3.svg delete mode 100644 public/static/media/complete.d94d5045.svg delete mode 100644 public/static/media/copy.f4cea549.svg delete mode 100644 public/static/media/crossed-camera.28e8f7eb.svg delete mode 100644 public/static/media/current.68045777.svg delete mode 100644 public/static/media/current.9bbfa93f.svg delete mode 100644 public/static/media/custom-requirement.38819635.svg delete mode 100644 public/static/media/disabled.347e2b5e.svg delete mode 100644 public/static/media/disabled.aede2073.svg delete mode 100644 public/static/media/dispenser-1.e4200f4e.svg delete mode 100644 public/static/media/dispenser-2.9f7807a5.svg delete mode 100644 public/static/media/down.919a0c2a.svg delete mode 100644 public/static/media/download_logs.219c88ac.svg delete mode 100644 public/static/media/empty-table.250884a9.svg delete mode 100644 public/static/media/empty.631601f2.svg delete mode 100644 public/static/media/empty.862ae4bb.svg delete mode 100644 public/static/media/enabled.5aae4510.svg delete mode 100644 public/static/media/enabled.a058fdfc.svg delete mode 100644 public/static/media/equal.f4103789.svg delete mode 100644 public/static/media/false.347e5864.svg delete mode 100644 public/static/media/full.67b8cd67.svg delete mode 100644 public/static/media/icon-bitcoin-colour.bd8da481.svg delete mode 100644 public/static/media/icon-bitcoincash-colour.ed917caa.svg delete mode 100644 public/static/media/icon-dash-colour.e01c021b.svg delete mode 100644 public/static/media/icon-ethereum-colour.761723a2.svg delete mode 100644 public/static/media/icon-litecoin-colour.bd861b5e.svg delete mode 100644 public/static/media/icon-monero-colour.650b7bd1.svg delete mode 100644 public/static/media/icon-tether-colour.92d7fda4.svg delete mode 100644 public/static/media/icon-zcash-colour.68b1c20b.svg delete mode 100644 public/static/media/keyboard.cc22b859.svg delete mode 100644 public/static/media/keypad.dfb6094e.svg delete mode 100644 public/static/media/list.65e6f8cb.svg delete mode 100644 public/static/media/logo-white.d997c674.svg delete mode 100644 public/static/media/logo.8ee79eab.svg delete mode 100644 public/static/media/month_change.58940268.svg delete mode 100644 public/static/media/month_change_right.0c3eb9a1.svg delete mode 100644 public/static/media/notification-zodiac.e2897b39.svg delete mode 100644 public/static/media/notification.a9712ffd.svg delete mode 100644 public/static/media/open.7196c113.svg delete mode 100644 public/static/media/pumpkin.877c3432.svg delete mode 100644 public/static/media/regular.3140e691.svg delete mode 100644 public/static/media/right.d3dd4af6.svg delete mode 100644 public/static/media/right_white.3e1a2119.svg delete mode 100644 public/static/media/spring2.9f3bb2f7.svg delete mode 100644 public/static/media/stripes.876e4081.svg delete mode 100644 public/static/media/tomato.4b561f6f.svg delete mode 100644 public/static/media/tomato.b3903800.svg delete mode 100644 public/static/media/transaction.d1309f34.svg delete mode 100644 public/static/media/true.b3b76849.svg delete mode 100644 public/static/media/up.bcdf0fc7.svg delete mode 100644 public/static/media/white.144118ff.svg delete mode 100644 public/static/media/white.158a991b.svg delete mode 100644 public/static/media/white.16f4b162.svg delete mode 100644 public/static/media/white.1ca0dea7.svg delete mode 100644 public/static/media/white.20ca66ec.svg delete mode 100644 public/static/media/white.341f0eae.svg delete mode 100644 public/static/media/white.41439910.svg delete mode 100644 public/static/media/white.4532ac56.svg delete mode 100644 public/static/media/white.460daa02.svg delete mode 100644 public/static/media/white.4676bf59.svg delete mode 100644 public/static/media/white.47196e40.svg delete mode 100644 public/static/media/white.51296906.svg delete mode 100644 public/static/media/white.5750bfd1.svg delete mode 100644 public/static/media/white.5a37327b.svg delete mode 100644 public/static/media/white.5f161f2c.svg delete mode 100644 public/static/media/white.636f4cd1.svg delete mode 100644 public/static/media/white.6dd4c28a.svg delete mode 100644 public/static/media/white.81edd31f.svg delete mode 100644 public/static/media/white.8406a3ba.svg delete mode 100644 public/static/media/white.87f75e06.svg delete mode 100644 public/static/media/white.8c4085b7.svg delete mode 100644 public/static/media/white.8ccc4767.svg delete mode 100644 public/static/media/white.958fe55d.svg delete mode 100644 public/static/media/white.9814829c.svg delete mode 100644 public/static/media/white.9f2c5216.svg delete mode 100644 public/static/media/white.b7754662.svg delete mode 100644 public/static/media/white.bd0d7dca.svg delete mode 100644 public/static/media/white.cc7667ff.svg delete mode 100644 public/static/media/white.e53d9d4a.svg delete mode 100644 public/static/media/white.e72682b5.svg delete mode 100644 public/static/media/white.e8851a0a.svg delete mode 100644 public/static/media/white.f97c75d2.svg delete mode 100644 public/static/media/white.fa4681e8.svg delete mode 100644 public/static/media/white.fe6ed797.svg delete mode 100644 public/static/media/zodiac-resized.70523fd1.svg delete mode 100644 public/static/media/zodiac-resized.c4907e4b.svg delete mode 100644 public/static/media/zodiac.088002a2.svg delete mode 100644 public/static/media/zodiac.13543418.svg delete mode 100644 public/static/media/zodiac.1806a875.svg delete mode 100644 public/static/media/zodiac.1bc04c23.svg delete mode 100644 public/static/media/zodiac.1bd00dea.svg delete mode 100644 public/static/media/zodiac.2fe856d5.svg delete mode 100644 public/static/media/zodiac.3b13c0b7.svg delete mode 100644 public/static/media/zodiac.5547e32c.svg delete mode 100644 public/static/media/zodiac.594ae9e7.svg delete mode 100644 public/static/media/zodiac.6cff3051.svg delete mode 100644 public/static/media/zodiac.71910a69.svg delete mode 100644 public/static/media/zodiac.74570495.svg delete mode 100644 public/static/media/zodiac.779a5bbc.svg delete mode 100644 public/static/media/zodiac.84e03611.svg delete mode 100644 public/static/media/zodiac.8bc58042.svg delete mode 100644 public/static/media/zodiac.8c3f113c.svg delete mode 100644 public/static/media/zodiac.8c7b512b.svg delete mode 100644 public/static/media/zodiac.9be6e999.svg delete mode 100644 public/static/media/zodiac.9cfc97dd.svg delete mode 100644 public/static/media/zodiac.a976fef2.svg delete mode 100644 public/static/media/zodiac.aa028a2c.svg delete mode 100644 public/static/media/zodiac.b27733af.svg delete mode 100644 public/static/media/zodiac.bb7722c5.svg delete mode 100644 public/static/media/zodiac.ce4a1545.svg delete mode 100644 public/static/media/zodiac.cfe5467c.svg delete mode 100644 public/static/media/zodiac.e161cf6b.svg delete mode 100644 public/static/media/zodiac.e181d06a.svg delete mode 100644 public/static/media/zodiac.e42149ea.svg delete mode 100644 public/static/media/zodiac.eea12e4f.svg delete mode 100644 public/static/media/zodiac.f3536991.svg delete mode 100644 public/wizard-background.svg delete mode 100644 test/fixtures/new-settings.json delete mode 100644 test/fixtures/two-way-btc.json delete mode 100644 test/integration/README.md delete mode 100644 test/integration/balance.sh delete mode 100644 test/integration/bitcoind.sh delete mode 100644 test/unit/filter-config-accounts.js delete mode 100644 test/unit/itbit-calculate-price.js delete mode 100644 test/unit/itbit-get-currency-rates.js delete mode 100644 test/unit/itbit-trade.js delete mode 100644 test/unit/new-settings-loader.js delete mode 100644 test/unit/settings-loader-load-fixture.js rename {test => tests}/stress/child.js (100%) rename {test => tests}/stress/index.js (100%) rename {test => tests}/stress/load-tx-dummy-data.js (100%) rename {test => tests}/stress/queries-performance-analyzer.js (100%) rename {test => tests}/stress/scripts/create-machines.sh (100%) rename {test => tests}/stress/scripts/index.js (100%) rename {test => tests}/stress/test-server.js (100%) rename {test => tests}/stress/utils/default-config.json (100%) rename {test => tests}/stress/utils/index.js (100%) rename {test => tests}/stress/utils/init-cert.js (100%) rename {test => tests}/stress/utils/save-config.js (100%) rename {test => tests}/stress/utils/variables.js (100%) delete mode 100644 tools/check-user-count.js delete mode 100644 tools/create-lamassu-ca.sh rename {digitalocean => tools/digitalocean}/createblockstorage.sh (100%) rename {digitalocean => tools/digitalocean}/migratedata.sh (100%) delete mode 100644 tools/modify.js delete mode 100644 tools/show.js diff --git a/.gitignore b/.gitignore index 640a7a13..e8979698 100644 --- a/.gitignore +++ b/.gitignore @@ -33,8 +33,8 @@ seeds/ mnemonics/ certs/ blockchains/ -test/stress/machines -test/stress/config.json +tests/stress/machines +tests/stress/config.json lamassu.json terraform.* diff --git a/Dockerfiles/admin.Dockerfile b/Dockerfiles/admin.Dockerfile deleted file mode 100644 index a4a3902f..00000000 --- a/Dockerfiles/admin.Dockerfile +++ /dev/null @@ -1,32 +0,0 @@ -FROM node:14 as build-admin - -WORKDIR /app - -# COPY new-lamassu-admin/src packages/lamassu-admin/src -# COPY new-lamassu-admin/patches packages/lamassu-admin/patches -# COPY new-lamassu-admin/public packages/lamassu-admin/public -# COPY new-lamassu-admin/nginx packages/lamassu-admin/nginx -# COPY new-lamassu-admin/.env packages/lamassu-admin/.env -# COPY new-lamassu-admin/.eslintrc.js packages/lamassu-admin/.eslintrc.js -# COPY new-lamassu-admin/jsconfig.json packages/lamassu-admin/jsconfig.json -# COPY new-lamassu-admin/package.json packages/lamassu-admin/package.json - -COPY new-lamassu-admin packages/lamassu-admin - -WORKDIR /app/packages/lamassu-admin - -# RUN npm install - -RUN npm run build - -FROM nginx:1.21.4-alpine as production-admin - -ENV NODE_ENV=production - -COPY --from=build-admin /app/packages/lamassu-admin/build /usr/share/nginx/html/ -RUN rm /etc/nginx/conf.d/default.conf -COPY --from=build-admin /app/packages/lamassu-admin/nginx/nginx.conf /etc/nginx/conf.d - -EXPOSE 80 - -CMD [ "nginx", "-g", "daemon off;" ] \ No newline at end of file diff --git a/Dockerfiles/common.Dockerfile b/Dockerfiles/common.Dockerfile new file mode 100644 index 00000000..c913e8bf --- /dev/null +++ b/Dockerfiles/common.Dockerfile @@ -0,0 +1,36 @@ +FROM ubuntu:20.04 as base + +ARG DEBIAN_FRONTEND=noninteractive +ENV TZ=Europe/Lisbon + +RUN apt-get update + +RUN apt-get install -y -q curl \ + sudo \ + git \ + python2-minimal \ + build-essential \ + libpq-dev \ + net-tools + +RUN curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash - +RUN apt-get install nodejs -y -q + +FROM base as build-l-s + +WORKDIR /app + +COPY bin/ packages/lamassu-server/bin +COPY lib/ packages/lamassu-server/lib +COPY data/ packages/lamassu-server/data +COPY tools/ packages/lamassu-server/tools +COPY migrations/ packages/lamassu-server/migrations +COPY package.json packages/lamassu-server/package.json +COPY Lamassu_CA.pem packages/lamassu-server/Lamassu_CA.pem + +WORKDIR /app/packages/lamassu-server + +RUN chmod +x tools/build-docker-certs.sh +RUN chmod +x bin/lamassu-server-entrypoint.sh + +RUN npm install \ No newline at end of file diff --git a/bin/convert-txs.js b/bin/convert-txs.js deleted file mode 100755 index e4e685cc..00000000 --- a/bin/convert-txs.js +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/env node - - -var pgp = require('pg-promise')() - -require('../lib/environment-helper') -const { PSQL_URL } = require('../lib/constants') - -var db = pgp(PSQL_URL) - -db.manyOrNone(`select * from transactions where incoming=false - and stage='final_request' and authority='machine'`) - .then(rs => - db.tx(t => - t.batch(rs.map(r => db.none(`insert into cash_in_txs (session_id, - device_fingerprint, to_address, crypto_atoms, crypto_code, fiat, - currency_code, fee, tx_hash, error, created) values ($1, $2, $3, $4, $5, - $6, $7, $8, $9, $10, $11)`, [r.session_id, r.device_fingerprint, - r.to_address, r.satoshis, r.crypto_code, r.fiat, r.currency_code, r.fee, - r.tx_hash, r.error, r.created])) - ) - ) - ) - .then(() => db.manyOrNone(`select * from transactions where incoming=true - and stage='initial_request' and authority='pending'`)) - .then(rs => - db.tx(t => - t.batch(rs.map(r => db.none(`insert into cash_out_txs (session_id, - device_fingerprint, to_address, crypto_atoms, crypto_code, fiat, - currency_code, tx_hash, phone, error, created) values ($1, $2, $3, $4, $5, - $6, $7, $8, $9, $10, $11)`, [r.session_id, r.device_fingerprint, - r.to_address, r.satoshis, r.crypto_code, r.fiat, r.currency_code, - r.tx_hash, r.phone, r.error, r.created])) - ) - ) - ) - .then(() => db.manyOrNone(`select * from transactions where incoming=true - and stage='dispense' and authority='authorized'`)) - .then(rs => - db.tx(t => - t.batch(rs.map(r => - db.none(`update cash_out_txs set dispensed=true where session_id=$1`, [r.session_id]) - .then(() => db.none(`insert into cash_out_actions (session_id, action, - created) values ($1, $2, $3)`, [r.session_id, 'dispensed', r.created])) - )) - ) - ) - .then(() => pgp.end()) - .then(() => console.log('Success.')) - .catch(e => { - console.log(e) - pgp.end() - }) diff --git a/bin/insecure-dev.sh b/bin/insecure-dev.sh deleted file mode 100755 index 053e8c0e..00000000 --- a/bin/insecure-dev.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -node bin/new-lamassu-admin-server --dev & node bin/new-graphql-dev-insecure \ No newline at end of file diff --git a/bin/lamassu-display-config.js b/bin/lamassu-display-config.js deleted file mode 100644 index 83fad452..00000000 --- a/bin/lamassu-display-config.js +++ /dev/null @@ -1,14 +0,0 @@ -require('../lib/environment-helper') - -const settingsLoader = require('../lib/new-settings-loader') -const pp = require('../lib/pp') - -settingsLoader.loadLatest() - .then(r => { - pp('config')(r) - process.exit(0) - }) - .catch(e => { - console.log(e.stack) - process.exit(1) - }) \ No newline at end of file diff --git a/bin/lamassu-eth-sweep-old-addresses.js b/bin/lamassu-eth-sweep-old-addresses.js deleted file mode 100644 index dcd88dd7..00000000 --- a/bin/lamassu-eth-sweep-old-addresses.js +++ /dev/null @@ -1,75 +0,0 @@ -require('../lib/environment-helper') - -const hdkey = require('ethereumjs-wallet/hdkey') -const _ = require('lodash/fp') -const hkdf = require('futoin-hkdf') -const pify = require('pify') -const fs = pify(require('fs')) -const Web3 = require('web3') -const web3 = new Web3() - -const db = require('../lib/db') -const configManager = require('../lib/new-config-manager') -const { loadLatest } = require('../lib/new-settings-loader') -const mnemonicHelpers = require('../lib/mnemonic-helpers') -const { sweep } = require('../lib/wallet') -const ph = require('../lib/plugin-helper') - -const MNEMONIC_PATH = process.env.MNEMONIC_PATH - -function fetchWallet (settings, cryptoCode) { - return fs.readFile(MNEMONIC_PATH, 'utf8') - .then(mnemonic => { - const masterSeed = mnemonicHelpers.toEntropyBuffer(mnemonic) - const plugin = configManager.getWalletSettings(cryptoCode, settings.config).wallet - const wallet = ph.load(ph.WALLET, plugin) - const rawAccount = settings.accounts[plugin] - const account = _.set('seed', computeSeed(masterSeed), rawAccount) - if (_.isFunction(wallet.run)) wallet.run(account) - return { wallet, account } - }) -} - -function computeSeed (masterSeed) { - return hkdf(masterSeed, 32, { salt: 'lamassu-server-salt', info: 'wallet-seed' }) -} - -function paymentHdNode (account) { - const masterSeed = account.seed - if (!masterSeed) throw new Error('No master seed!') - const key = hdkey.fromMasterSeed(masterSeed) - return key.derivePath("m/44'/60'/0'/0'") -} - -const getHdIndices = db => { - const sql = `SELECT id, crypto_code, hd_index FROM cash_out_txs WHERE hd_index IS NOT NULL AND status IN ('confirmed', 'instant') AND crypto_code = 'ETH'` - return db.any(sql) -} - -const getCashoutAddresses = (settings, indices) => { - return Promise.all(_.map(it => { - return fetchWallet(settings, it.crypto_code) - .then(({ wallet, account }) => Promise.all([wallet, paymentHdNode(account).deriveChild(it.hd_index).getWallet().getChecksumAddressString()])) - .then(([wallet, address]) => Promise.all([address, wallet._balance(false, address, 'ETH')])) - .then(([address, balance]) => ({ address, balance: balance.toNumber(), cryptoCode: it.crypto_code, index: it.hd_index, txId: it.id })) - }, indices)) -} - -Promise.all([getHdIndices(db), loadLatest()]) - .then(([indices, settings]) => Promise.all([settings, getCashoutAddresses(settings, indices)])) - .then(([settings, addresses]) => { - console.log('Found these cash-out addresses for ETH:') - console.log(addresses) - - return Promise.all(_.map(it => { - // If the address only has dust in it, don't bother sweeping - if (web3.utils.fromWei(it.balance.toString()) > 0.00001) { - console.log(`Address ${it.address} found to have ${web3.utils.fromWei(it.balance.toString())} ETH in it. Sweeping...`) - return sweep(settings, it.txId, it.cryptoCode, it.index) - } - - console.log(`Address ${it.address} contains no significant balance (${web3.utils.fromWei(it.balance.toString())}). Skipping the sweep process...`) - return Promise.resolve() - }, addresses)) - }) - .then(() => console.log('Process finished!')) diff --git a/bin/migrate-config.js b/bin/migrate-config.js deleted file mode 100644 index bab5f5a5..00000000 --- a/bin/migrate-config.js +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/env node - -'use strict' - -const pgp = require('pg-promise')() - -require('../lib/environment-helper') -const { PSQL_URL } = require('../lib/constants') - -const db = pgp(PSQL_URL) - -db.many('select data from user_config', 'exchanges') - .then(rows => { - const config = rows.filter(r => r.type === 'exchanges')[0].data - const brain = rows.filter(r => r.type === 'unit')[0].data - const settings = config.exchanges.settings - const compliance = settings.compliance - const newConfig = { - global: { - cashInTransactionLimit: compliance.maximum.limit, - cashOutTransactionLimit: settings.fiatTxLimit, - cashInCommission: settings.commission, - cashOutCommission: settings.fiatCommission || settings.commission, - idVerificationEnabled: compliance.idVerificationEnabled, - idVerificationLimit: compliance.idVerificationLimit, - lowBalanceMargin: settings.lowBalanceMargin, - zeroConfLimit: settings.zeroConfLimit, - fiatCurrency: settings.currency, - topCashOutDenomination: settings.cartridges[0], - bottomCashOutDenomination: settings.cartridges[1], - virtualCashOutDenomination: settings.virtualCartridges[0], - machineLanguages: brain.locale.localeInfo.primaryLocales, - coins: settings.coins - }, - accounts: settings.plugins.settings - } - - db.none('insert into user_config (type, data) values ($1, $2)', ['global', newConfig]) - .then(() => { - console.log('Success.') - process.exit(0) - }) - .catch(err => { - console.error('Error: %s', err) - process.exit(1) - }) - }) diff --git a/dev/coinatmradar.js b/dev/coinatmradar.js deleted file mode 100644 index 4f4cf1be..00000000 --- a/dev/coinatmradar.js +++ /dev/null @@ -1,15 +0,0 @@ -const car = require('../lib/coinatmradar/coinatmradar') -const plugins = require('../lib/plugins') - -require('../lib/new-settings-loader').loadLatest() - .then(settings => { - const pi = plugins(settings) - - return pi.getRawRates() - .then(rates => { - return car.update(rates, settings) - .then(require('../lib/pp')('DEBUG100')) - .catch(console.log) - .then(() => process.exit()) - }) - }) diff --git a/dev/coinatmradarserver.js b/dev/coinatmradarserver.js deleted file mode 100644 index 5a561ad0..00000000 --- a/dev/coinatmradarserver.js +++ /dev/null @@ -1,14 +0,0 @@ -const express = require('express') -const app = express() - -app.use(express.raw({ type: '*/*' })) - -app.post('/api/lamassu', (req, res) => { - console.log(req.headers) - console.log(req.body.toString()) - res.send('Hello World!') -}) - -app.listen(3200, () => console.log('Example app listening on port 3200!')) - -// "url": "https://coinatmradar.info/api/lamassu/" diff --git a/dev/config.js b/dev/config.js deleted file mode 100644 index 97a2d33a..00000000 --- a/dev/config.js +++ /dev/null @@ -1,8 +0,0 @@ -const settingsLoader = require('../lib/new-settings-loader') -const configManager = require('../lib/new-config-manager') - -settingsLoader.loadLatest() - .then(settings => { - const config = settings.config - require('../lib/pp')('config')(configManager.getAllCryptoCurrencies(config)) - }) diff --git a/dev/double-dispense.js b/dev/double-dispense.js deleted file mode 100644 index 81a652d7..00000000 --- a/dev/double-dispense.js +++ /dev/null @@ -1,19 +0,0 @@ -const got = require('got') - -const tx = { - sessionId: 'a9fdfedc-1d45-11e6-be13-2f68ff6306b9', - toAddress: '1DrK44np3gMKuvcGeFVv9Jk67zodP52eMu', - fiat: 10 -} - -const headers = { - 'content-type': 'application/json', - 'session-id': '36f17fbe-1d44-11e6-a1a9-bbe8a5a41617' -} - -const body = JSON.stringify({tx: tx}) -got('http://localhost:3000/dispense', {body: body, json: true, headers: headers}) - .then(res => { - console.log(res.body) - }) - .catch(console.log) diff --git a/dev/double-spend-scenario.js b/dev/double-spend-scenario.js deleted file mode 100644 index eef96ccb..00000000 --- a/dev/double-spend-scenario.js +++ /dev/null @@ -1,60 +0,0 @@ -var db = require('../lib/postgresql_interface') -var connectionString = 'postgres://lamassu:lamassu@localhost/lamassu' -db.init(connectionString) - -var session = { - id: '6ede611c-cd03-11e5-88ee-2b5fcfdb0bc2', - fingerprint: 'xx:xx' -} -var tx = { - fiat: 40, - satoshis: 6980000, - toAddress: '1xxx', - currencyCode: 'CAD', - incoming: false -} - -var tx2 = { - fiat: 0, - satoshis: 6980000, - toAddress: '1xxx', - currencyCode: 'CAD', - incoming: false -} - -db.addOutgoingTx(session, tx, function (err, res) { - console.log('DEBUG1') - console.log(err) - console.log(res) -}) - -db.addOutgoingTx(session, tx2, function (err, res) { - console.log('DEBUG2') - console.log(err) - console.log(res) -}) - -/* -setTimeout(function () { - db.addOutgoingTx(session, tx2, function (err, res) { - console.log('DEBUG2') - console.log(err) - console.log(res) - }) -}, 0) -*/ - -var bills = { - uuid: 'c630338c-cd03-11e5-a9df-dbc9be2e9fbb', - currency: 'CAD', - toAddress: '1xxx', - deviceTime: Date.now(), - satoshis: 6980000, - fiat: 40 -} - -/* -db.recordBill(session, bills, function (err) { - console.log(err) -}) -*/ diff --git a/dev/get-compat-trigger.js b/dev/get-compat-trigger.js deleted file mode 100644 index 0b3e9035..00000000 --- a/dev/get-compat-trigger.js +++ /dev/null @@ -1,10 +0,0 @@ -const complianceTriggers = require('../lib/compliance-triggers') -const settingsLoader = require('../lib/new-settings-loader') -const configManager = require('../lib/new-config-manager') - -settingsLoader.loadLatest().then(settings => { - const triggers = configManager.getTriggers(settings.config) - const response = complianceTriggers.getBackwardsCompatibleTriggers(triggers) - console.log(response) -}) - diff --git a/dev/json-rpc.js b/dev/json-rpc.js deleted file mode 100644 index 01f49cdd..00000000 --- a/dev/json-rpc.js +++ /dev/null @@ -1,19 +0,0 @@ -const rpc = require('../lib/plugins/common/json-rpc') - -const method = '' - -// const url = null -// const url = 'https://httpstat.us/500' -// const url = 'https://httpstat.us/400' -const url = 'https://httpstat.us/200' - -const account = { - username: 'test', - password: 'test', - port: 8080, - url -} - -rpc.fetch(account, method) - .then(res => console.log('got result', res)) - .catch(err => console.error('gor error', err)) diff --git a/dev/notify.js b/dev/notify.js deleted file mode 100644 index 5bb41bcf..00000000 --- a/dev/notify.js +++ /dev/null @@ -1,31 +0,0 @@ -require('es6-promise').polyfill() - -var notifier = require('../lib/notifier') -var db = require('../lib/postgresql_interface') -const { PSQL_URL } = require('../lib/constants') - -function getBalances () { - return [ - {fiatBalance: 23.2345, fiatCode: 'USD', cryptoCode: 'BTC'}, - {fiatBalance: 23, fiatCode: 'USD', cryptoCode: 'ETH'} - ] -} - -db.init(PSQL_URL) -notifier.init(db, getBalances, {lowBalanceThreshold: 10}) -console.log('DEBUG0') -notifier.checkStatus() - .then(function (alertRec) { - console.log('DEBUG1') - console.log('%j', alertRec) - var subject = notifier.alertSubject(alertRec) - console.log(subject) - var body = notifier.printEmailAlerts(alertRec) - console.log(body) - console.log(notifier.alertFingerprint(alertRec)) - process.exit(0) - }) - .catch(function (err) { - console.log(err.stack) - process.exit(1) - }) diff --git a/dev/ofac-match.js b/dev/ofac-match.js deleted file mode 100644 index 1088724b..00000000 --- a/dev/ofac-match.js +++ /dev/null @@ -1,16 +0,0 @@ -const compliance = require('../lib/compliance') -const ofac = require('../lib/ofac/index') - -const [customerId, firstName, lastName, dateOfBirth] = process.argv.slice(2) - -const customer = { - id: customerId, - idCardData: {firstName, lastName, dateOfBirth} -} - -const deviceId = 'test-device' - -ofac.load() - .then(() => compliance.validationPatch(deviceId, true, customer)) - .then(console.log) - .catch(err => console.log(err)) diff --git a/dev/plugins.js b/dev/plugins.js deleted file mode 100644 index 30488199..00000000 --- a/dev/plugins.js +++ /dev/null @@ -1,10 +0,0 @@ -const plugins = require('../lib/plugins') -const settingsLoader = require('../lib/new-settings-loader') -const pp = require('../lib/pp') - -settingsLoader.loadLatest() - .then(settings => { - console.log('DEBUG300') - const pi = plugins(settings) - pi.getRates().then(r => console.log(JSON.stringify(r))) - }) diff --git a/dev/recreate-seeds.js b/dev/recreate-seeds.js deleted file mode 100644 index 8acb3920..00000000 --- a/dev/recreate-seeds.js +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env node - -'use strict' - -const fs = require('fs') -const path = require('path') -const os = require('os') -const bip39 = require('bip39') - -require('../lib/environment-helper') -const setEnvVariable = require('../tools/set-env-var') - -if (process.env.MNEMONIC_PATH && !process.env.SEED_PATH) { - const mnemonic = fs.readFileSync(process.env.MNEMONIC_PATH, 'utf8') - const seed = bip39.mnemonicToEntropy(mnemonic.split('\n').join(' ').trim()).toString('hex') - - setEnvVariable('SEED_PATH', path.resolve(os.homedir(), '.lamassu', 'seeds', 'seed.txt')) - - if (!fs.existsSync(path.dirname(process.env.SEED_PATH))) { - fs.mkdirSync(path.dirname(process.env.SEED_PATH)) - } - - if (!fs.existsSync(process.env.SEED_PATH)) { - fs.writeFileSync(process.env.SEED_PATH, seed, 'utf8') - } -} diff --git a/dev/send-message.js b/dev/send-message.js deleted file mode 100644 index dcf8acd2..00000000 --- a/dev/send-message.js +++ /dev/null @@ -1,30 +0,0 @@ -require('es6-promise').polyfill() - -var config = require('../lib/new-settings-loader') -var sms = require('../lib/sms') - -var rand = Math.floor(Math.random() * 1e6) -var db = config.connection -var rec = { - email: { - subject: 'Test email ' + rand, - body: 'This is a test email from lamassu-server' - }, - sms: { - toNumber: '666', - body: '[Lamassu] This is a test sms ' + rand - } -} - -config.loadLatest(db) - .then(function (config) { - sms.sendMessage(config, rec) - .then(function () { - console.log('Success.') - process.exit(0) - }) - .catch(function (err) { - console.log(err.stack) - process.exit(1) - }) - }) diff --git a/dev/strike.js b/dev/strike.js deleted file mode 100644 index c7bb0390..00000000 --- a/dev/strike.js +++ /dev/null @@ -1,20 +0,0 @@ -const strike = require('../lib/plugins/wallet/strike/strike') -const BN = require('../lib/bn') - -const account = {token: 'xxx'} - -strike.newAddress(account, { cryptoCode: 'BTC', cryptoAtoms: new BN(10000) }) - .then(r => { - console.log(r) - - const toAddress = r - const requested = null - const cryptoCode = 'BTC' - - setInterval(() => { - strike.getStatus(account, toAddress, requested, cryptoCode) - .then(console.log) - .catch(r => console.log(r.message)) - }, 2000) - }) - .catch(console.log) diff --git a/docker-compose.yaml b/docker-compose.yaml index 0b261b35..bf75645a 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -125,19 +125,4 @@ services: - LOG_LEVEL=info depends_on: lamassu-server: - condition: service_started - - # admin: - # container_name: lamassu-admin - # build: - # context: . - # dockerfile: Dockerfiles/admin.Dockerfile - # target: production-admin - # restart: always - # ports: - # - 80:80 - # networks: - # - lamassu-network - # depends_on: - # lamassu-admin-server: - # condition: service_started \ No newline at end of file + condition: service_started \ No newline at end of file diff --git a/lamassu-remote-install/README.md b/lamassu-remote-install/README.md deleted file mode 100644 index f1aa6c6a..00000000 --- a/lamassu-remote-install/README.md +++ /dev/null @@ -1,23 +0,0 @@ -lamassu-remote-install -=============== - -This will install your Lamassu Bitcoin Machine remote server. - -Instructions ------------- - -1. Start a new Digital Ocean droplet - -2. ssh into the droplet - - ``` - ssh root@ - ``` - -3. Run the following command once you're logged in (default branch name is master): - - ``` - curl -sS https://raw.githubusercontent.com/lamassu/lamassu-server/master/lamassu-remote-install/install | bash -s -- - ``` - -4. You should be set. Just follow the instructions on the screen to open your dashboard. diff --git a/lamassu-remote-install/Vagrantfile b/lamassu-remote-install/Vagrantfile deleted file mode 100644 index f49511f3..00000000 --- a/lamassu-remote-install/Vagrantfile +++ /dev/null @@ -1,72 +0,0 @@ -# -*- mode: ruby -*- -# vi: set ft=ruby : - -# All Vagrant configuration is done below. The "2" in Vagrant.configure -# configures the configuration version (we support older styles for -# backwards compatibility). Please don't change it unless you know what -# you're doing. -Vagrant.configure(2) do |config| - # The most common configuration options are documented and commented below. - # For a complete reference, please see the online documentation at - # https://docs.vagrantup.com. - - # Every Vagrant development environment requires a box. You can search for - # boxes at https://atlas.hashicorp.com/search. - config.vm.box = "ubuntu/xenial64" - - # Disable automatic box update checking. If you disable this, then - # boxes will only be checked for updates when the user runs - # `vagrant box outdated`. This is not recommended. - # config.vm.box_check_update = false - - # Create a forwarded port mapping which allows access to a specific port - # within the machine from a port on the host machine. In the example below, - # accessing "localhost:8080" will access port 80 on the guest machine. - config.vm.network "forwarded_port", guest: 8081, host: 8091 - - # Create a private network, which allows host-only access to the machine - # using a specific IP. - # config.vm.network "private_network", ip: "192.168.33.10" - - # Create a public network, which generally matched to bridged network. - # Bridged networks make the machine appear as another physical device on - # your network. - # config.vm.network "public_network" - - # Share an additional folder to the guest VM. The first argument is - # the path on the host to the actual folder. The second argument is - # the path on the guest to mount the folder. And the optional third - # argument is a set of non-required options. - config.vm.synced_folder ".", "/vagrant" - config.vm.synced_folder "../lamassu-scripts", "/lamassu-scripts" - - # Provider-specific configuration so you can fine-tune various - # backing providers for Vagrant. These expose provider-specific options. - # Example for VirtualBox: - # - config.vm.provider "virtualbox" do |vb| - # # Display the VirtualBox GUI when booting the machine - # vb.gui = true - # - # # Customize the amount of memory on the VM: - vb.memory = "2048" - end - # - # View the documentation for the provider you are using for more - # information on available options. - - # Define a Vagrant Push strategy for pushing to Atlas. Other push strategies - # such as FTP and Heroku are also available. See the documentation at - # https://docs.vagrantup.com/v2/push/atlas.html for more information. - # config.push.define "atlas" do |push| - # push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME" - # end - - # Enable provisioning with a shell script. Additional provisioners such as - # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the - # documentation for more information about their specific syntax and use. - # config.vm.provision "shell", inline: <<-SHELL - # sudo apt-get update - # sudo apt-get install -y apache2 - # SHELL -end diff --git a/lamassu-remote-install/default.sql b/lamassu-remote-install/default.sql deleted file mode 100644 index 8fbb08e3..00000000 --- a/lamassu-remote-install/default.sql +++ /dev/null @@ -1,40 +0,0 @@ -COPY user_config (id, type, data) FROM stdin; -1 exchanges {"exchanges" : {\ - "settings": {\ - "commission": 1.0,\ - "compliance": {\ - "maximum": {\ - "limit": null\ - }\ - }\ - },\ - "plugins" : {\ - "current": {\ - "ticker": "bitpay",\ - "transfer": "bitgo"\ - },\ - "settings": {\ - "bitpay": {},\ - "bitgo" : {}\ - }\ - }\ - }\ -} -\. - -COPY user_config (id, type, data) FROM stdin; -2 unit { "brain": {\ - "unit": {\ - "ssn": "xx-1234-45",\ - "owner": "Unlisted"\ - },\ - "locale": {\ - "currency": "USD",\ - "localeInfo": {\ - "primaryLocale": "en-US",\ - "primaryLocales": ["en-US"]\ - }\ - }\ - }\ -} -\. diff --git a/lamassu-remote-install/install b/lamassu-remote-install/install deleted file mode 100755 index b4dd5dd5..00000000 --- a/lamassu-remote-install/install +++ /dev/null @@ -1,280 +0,0 @@ -#!/usr/bin/env bash -set -e - -export LOG_FILE=/tmp/install.log - -CERT_DIR=/etc/ssl/certs -KEY_DIR=/etc/ssl/private -CONFIG_DIR=/etc/lamassu -MIGRATE_STATE_PATH=$CONFIG_DIR/.migrate -LAMASSU_CA_PATH=$CERT_DIR/Lamassu_CA.pem -CA_KEY_PATH=$KEY_DIR/Lamassu_OP_Root_CA.key -CA_PATH=$CERT_DIR/Lamassu_OP_Root_CA.pem -SERVER_KEY_PATH=$KEY_DIR/Lamassu_OP.key -SERVER_CERT_PATH=$CERT_DIR/Lamassu_OP.pem -MNEMONIC_DIR=$CONFIG_DIR/mnemonics -MNEMONIC_FILE=$MNEMONIC_DIR/mnemonic.txt -BACKUP_DIR=/var/backups/postgresql -BLOCKCHAIN_DIR=/mnt/blockchains -OFAC_DATA_DIR=/var/lamassu/ofac -ID_PHOTO_CARD_DIR=/opt/lamassu-server/idphotocard -FRONTCAMERA_DIR=/opt/lamassu-server/frontcamera -OPERATOR_DIR=/opt/lamassu-server/operatordata - -# Look into http://unix.stackexchange.com/questions/140734/configure-localtime-dpkg-reconfigure-tzdata - -decho () { - echo `date +"%H:%M:%S"` $1 - echo `date +"%H:%M:%S"` $1 >> $LOG_FILE -} - -retry() { - local -r -i max_attempts="$1"; shift - local -r cmd="$@" - local -i attempt_num=1 - - until $cmd - do - if (( attempt_num == max_attempts )) - then - echo - echo "****************************************************************" - echo "Attempt $attempt_num failed and there are no more attempts left! ($cmd)" - return 1 - else - echo - echo "****************************************************************" - echo "Attempt $attempt_num failed! Trying again in $attempt_num seconds..." - sleep $(( attempt_num++ )) - fi - done -} - -rm -f $LOG_FILE - -cat <<'FIG' - _ -| | __ _ _ __ ___ __ _ ___ ___ _ _ ___ ___ _ ____ _____ _ __ -| |/ _` | '_ ` _ \ / _` / __/ __| | | |_____/ __|/ _ \ '__\ \ / / _ \ '__| -| | (_| | | | | | | (_| \__ \__ \ |_| |_____\__ \ __/ | \ V / __/ | -|_|\__,_|_| |_| |_|\__,_|___/___/\__,_| |___/\___|_| \_/ \___|_| -FIG - -echo -e "\nStarting \033[1mlamassu-server\033[0m install. This will take a few minutes...\n" - -if [ "$(whoami)" != "root" ]; then - echo -e "This script has to be run as \033[1mroot\033[0m user" - exit 3 -fi - -release=$(lsb_release -rs) -processor=$(uname -i) -if [ "$release" != "16.04" ] || [ "$processor" != "x86_64" ]; then - echo "You're attempting to install on an unsupported Linux distribution or release ("$release $processor")." - echo - uname -a - echo - echo "Please return to DigitalOcean and create a droplet running Ubuntu 16.04 x64 instead." - exit 1 -fi - -# So we don't run out of memory -decho "Enabling swap file for install only..." -fallocate -l 1G /swapfile >> $LOG_FILE 2>&1 -chmod 600 /swapfile >> $LOG_FILE 2>&1 -mkswap /swapfile >> $LOG_FILE 2>&1 -swapon /swapfile >> $LOG_FILE 2>&1 - -IP=$(ifconfig eth0 | grep "inet" | grep -v "inet6" | awk -F: '{print $2}' | awk '{print $1}') - -decho "Updating system..." -sleep 10 -curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - >> $LOG_FILE 2>&1 -apt update >> $LOG_FILE 2>&1 - -decho "Installing necessary packages..." -apt install nodejs python-minimal build-essential supervisor postgresql libpq-dev -y -q >> $LOG_FILE 2>&1 - -decho "Installing latest npm package manager for node..." -retry 3 npm -g --unsafe-perm install npm@5 >> $LOG_FILE 2>&1 -NODE_MODULES=$(npm -g root) -NPM_BIN=$(npm -g bin) - -decho "Installing lamassu-server..." -retry 3 npm -g --unsafe-perm install lamassu/lamassu-server#${1-master} >> $LOG_FILE 2>&1 - -decho "Generating mnemonic..." -mkdir -p $MNEMONIC_DIR >> $LOG_FILE 2>&1 -SEED=$(openssl rand -hex 32) -MNEMONIC=$(bip39 $SEED) -echo "$MNEMONIC" > $MNEMONIC_FILE - -decho "Creating postgres user..." -POSTGRES_PW=$(hkdf postgres-pw $SEED) -su -l postgres >> $LOG_FILE 2>&1 <> $LOG_FILE 2>&1 -mkdir -p $CONFIG_DIR >> $LOG_FILE 2>&1 - -decho "Generating SSL certificates..." - -openssl genrsa \ - -out $CA_KEY_PATH \ - 4096 >> $LOG_FILE 2>&1 - -openssl req \ - -x509 \ - -sha256 \ - -new \ - -nodes \ - -key $CA_KEY_PATH \ - -days 3650 \ - -out $CA_PATH \ - -subj "/C=IS/ST=/L=Reykjavik/O=Lamassu Operator CA/CN=lamassu-operator.is" \ - >> $LOG_FILE 2>&1 - -openssl genrsa \ - -out $SERVER_KEY_PATH \ - 4096 >> $LOG_FILE 2>&1 - -openssl req -new \ - -key $SERVER_KEY_PATH \ - -out /tmp/Lamassu_OP.csr.pem \ - -subj "/C=IS/ST=/L=Reykjavik/O=Lamassu Operator/CN=$IP" \ - -reqexts SAN \ - -sha256 \ - -config <(cat /etc/ssl/openssl.cnf \ - <(printf "[SAN]\nsubjectAltName=IP.1:$IP")) \ - >> $LOG_FILE 2>&1 - -openssl x509 \ - -req -in /tmp/Lamassu_OP.csr.pem \ - -CA $CA_PATH \ - -CAkey $CA_KEY_PATH \ - -CAcreateserial \ - -out $SERVER_CERT_PATH \ - -extfile <(cat /etc/ssl/openssl.cnf \ - <(printf "[SAN]\nsubjectAltName=IP.1:$IP")) \ - -extensions SAN \ - -days 3650 >> $LOG_FILE 2>&1 - -rm /tmp/Lamassu_OP.csr.pem - -decho "Copying Lamassu certificate authority..." -LAMASSU_CA_FILE=$NODE_MODULES/lamassu-server/Lamassu_CA.pem -cp $LAMASSU_CA_FILE $LAMASSU_CA_PATH - -mkdir -p $OFAC_DATA_DIR - -cat < $CONFIG_DIR/lamassu.json -{ - "postgresql": "postgres://lamassu_pg:$POSTGRES_PW@localhost/lamassu", - "mnemonicPath": "$MNEMONIC_FILE", - "lamassuCaPath": "$LAMASSU_CA_PATH", - "caPath": "$CA_PATH", - "certPath": "$SERVER_CERT_PATH", - "keyPath": "$SERVER_KEY_PATH", - "hostname": "$IP", - "logLevel": "info", - "migrateStatePath": "$MIGRATE_STATE_PATH", - "blockchainDir": "$BLOCKCHAIN_DIR", - "ofacDataDir": "$OFAC_DATA_DIR", - "idPhotoCardDir": "$ID_PHOTO_CARD_DIR", - "frontCameraDir": "$FRONTCAMERA_DIR", - "operatorDataDir": "$OPERATOR_DIR" - "strike": { - "baseUrl": "https://api.strike.acinq.co/api/" - }, - "coinAtmRadar": { - "url": "https://coinatmradar.info/api/lamassu/" - }, - "ofacSources": [ - { - "name": "sdn_advanced", - "url": "https://www.treasury.gov/ofac/downloads/sanctions/1.0/sdn_advanced.xml" - }, - { - "name": "cons_advanced", - "url": "https://www.treasury.gov/ofac/downloads/sanctions/1.0/cons_advanced.xml" - } - ] -} -EOF - -decho "Setting up database tables..." -lamassu-migrate >> $LOG_FILE 2>&1 - -decho "Setting up lamassu-admin..." -ADMIN_REGISTRATION_URL=`lamassu-register admin 2>> $LOG_FILE` - -decho "Setting up backups..." -BIN=$(npm -g bin) -BACKUP_CMD=$BIN/lamassu-backup-pg -mkdir -p $BACKUP_DIR -BACKUP_CRON="@daily $BACKUP_CMD > /dev/null" -(crontab -l 2>/dev/null || echo -n ""; echo "$BACKUP_CRON") | crontab - >> $LOG_FILE 2>&1 -$BACKUP_CMD >> $LOG_FILE 2>&1 - -decho "Setting up firewall..." -ufw allow ssh >> $LOG_FILE 2>&1 -ufw allow 443/tcp >> $LOG_FILE 2>&1 # Admin -ufw allow 3000/tcp >> $LOG_FILE 2>&1 # Server -ufw allow 8071/tcp >> $LOG_FILE 2>&1 # Lamassu support -ufw -f enable >> $LOG_FILE 2>&1 - -decho "Setting up supervisor..." -cat < /etc/supervisor/conf.d/lamassu-server.conf -[program:lamassu-server] -command=${NPM_BIN}/lamassu-server -autostart=true -autorestart=true -stderr_logfile=/var/log/supervisor/lamassu-server.err.log -stdout_logfile=/var/log/supervisor/lamassu-server.out.log -environment=HOME="/root" -EOF - -cat < /etc/supervisor/conf.d/lamassu-admin-server.conf -[program:lamassu-admin-server] -command=${NPM_BIN}/lamassu-admin-server -autostart=true -autorestart=true -stderr_logfile=/var/log/supervisor/lamassu-admin-server.err.log -stdout_logfile=/var/log/supervisor/lamassu-admin-server.out.log -environment=HOME="/root" -EOF - -service supervisor restart >> $LOG_FILE 2>&1 - -decho "Disabling swap file..." -swapoff /swapfile >> $LOG_FILE 2>&1 - -# disable exitting on error in case DO changes motd scripts -set +e -chmod -x /etc/update-motd.d/*-release-upgrade -chmod -x /etc/update-motd.d/*-updates-available -chmod -x /etc/update-motd.d/*-reboot-required -chmod -x /etc/update-motd.d/*-help-text -chmod -x /etc/update-motd.d/*-cloudguest -set -e - -# reset terminal to link new executables -hash -r - -echo -decho "Done! Now it's time to configure Lamassu stack." -echo -echo -e "\n*** IMPORTANT ***" -echo "In a private space, run lamassu-mnemonic, write down the words" -echo "and keep them in a safe place." -echo -echo "This secret will allow you to retrieve system passwords, such " -echo "as the keys to your Ethereum account. However, you must still " -echo "backup your wallets separately. Visit support.lamassu.is for " -echo "details on regularly backing up your wallets and coins." -echo -echo -echo "Activation URL for lamassu-admin:" -echo $ADMIN_REGISTRATION_URL diff --git a/lib/admin/accounts.js b/lib/admin/accounts.js deleted file mode 100644 index 8ae3084a..00000000 --- a/lib/admin/accounts.js +++ /dev/null @@ -1,133 +0,0 @@ -const path = require('path') -const fs = require('fs') - -const _ = require('lodash/fp') - -const db = require('../db') -const configValidate = require('./config-validate') -const config = require('./config') - -function loadSchemas () { - const schemasRoot = path.resolve(__dirname, 'schemas') - const schemaFiles = fs.readdirSync(schemasRoot) - const stripJson = fileName => fileName.slice(0, -5) - const readSchema = fileName => JSON.parse(fs.readFileSync(path.resolve(schemasRoot, fileName))) - return _.zipObject(_.map(stripJson, schemaFiles), _.map(readSchema, schemaFiles)) -} - -const schemas = loadSchemas() - -function fetchAccounts () { - return db.oneOrNone('select data from user_config where type=$1 and schema_version=$2', ['accounts', configValidate.SETTINGS_LOADER_SCHEMA_VERSION]) - .then(row => { - // Hard code this for now - const accounts = [{ - code: 'blockcypher', - display: 'Blockcypher', - fields: [ - { code: 'confidenceFactor', display: 'Confidence Factor', fieldType: 'integer', required: true, value: 40 } - ] - }] - - return row - ? Promise.resolve(row.data.accounts) - : db.none('insert into user_config (type, data, valid) values ($1, $2, $3)', ['accounts', {accounts}, true]) - .then(fetchAccounts) - }) -} - -function selectedAccounts () { - const mapAccount = v => v.fieldLocator.fieldType === 'account' && - v.fieldValue.value - - const mapSchema = code => schemas[code] - return config.fetchConfig() - .then(conf => { - const accountCodes = _.uniq(conf.map(mapAccount) - .filter(_.identity)) - - return _.sortBy(_.get('display'), accountCodes.map(mapSchema) - .filter(_.identity)) - }) -} - -function fetchAccountSchema (account) { - return schemas[account] -} - -function mergeAccount (oldAccount, newAccount) { - if (!newAccount) return oldAccount - - const newFields = newAccount.fields - - const updateWithData = oldField => { - const newField = _.find(r => r.code === oldField.code, newFields) - const newValue = _.isUndefined(newField) ? oldField.value : newField.value - return _.set('value', newValue, oldField) - } - - const updatedFields = oldAccount.fields.map(updateWithData) - - return _.set('fields', updatedFields, oldAccount) -} - -function getAccounts (accountCode) { - const schema = fetchAccountSchema(accountCode) - if (!schema) return Promise.reject(new Error('No schema for: ' + accountCode)) - - return fetchAccounts() - .then(accounts => { - if (_.isEmpty(accounts)) return [schema] - const account = _.find(r => r.code === accountCode, accounts) - const mergedAccount = mergeAccount(schema, account) - - return updateAccounts(mergedAccount, accounts) - }) -} - -function elideSecrets (account) { - const elideSecret = field => { - return field.fieldType === 'password' - ? _.set('value', !_.isEmpty(field.value), field) - : field - } - - return _.set('fields', account.fields.map(elideSecret), account) -} - -function getAccount (accountCode) { - return getAccounts(accountCode) - .then(accounts => _.find(r => r.code === accountCode, accounts)) - .then(elideSecrets) -} - -function save (accounts) { - return db.none('update user_config set data=$1 where type=$2 and schema_version=$3', [{accounts: accounts}, 'accounts', configValidate.SETTINGS_LOADER_SCHEMA_VERSION]) -} - -function updateAccounts (newAccount, accounts) { - const accountCode = newAccount.code - const isPresent = _.some(_.matchesProperty('code', accountCode), accounts) - const updateAccount = r => r.code === accountCode - ? newAccount - : r - - return isPresent - ? _.map(updateAccount, accounts) - : _.concat(accounts, newAccount) -} - -function updateAccount (account) { - return getAccounts(account.code) - .then(accounts => { - const merged = mergeAccount(_.find(_.matchesProperty('code', account.code), accounts), account) - return save(updateAccounts(merged, accounts)) - }) - .then(() => getAccount(account.code)) -} - -module.exports = { - selectedAccounts, - getAccount, - updateAccount -} diff --git a/lib/admin/admin-server.js b/lib/admin/admin-server.js deleted file mode 100644 index fe179ae8..00000000 --- a/lib/admin/admin-server.js +++ /dev/null @@ -1,342 +0,0 @@ -const EventEmitter = require('events') -const qs = require('querystring') -const fs = require('fs') -const path = require('path') -const express = require('express') -const app = express() -const https = require('https') -const serveStatic = require('serve-static') -const cookieParser = require('cookie-parser') -const argv = require('minimist')(process.argv.slice(2)) -const got = require('got') -const morgan = require('morgan') -const helmet = require('helmet') -// const WebSocket = require('ws') -const http = require('http') -// const SocketIo = require('socket.io') -const makeDir = require('make-dir') -const _ = require('lodash/fp') - -const machineLoader = require('../machine-loader') -const T = require('../time') -const logger = require('../logger') - -const accounts = require('./accounts') -const config = require('./config') -const login = require('./login') -const pairing = require('./pairing') -const server = require('./server') -const transactions = require('./transactions') -const customers = require('../customers') -const logs = require('../logs') -const funding = require('./funding') -const supportServer = require('./admin-support') - -const NEVER = new Date(Date.now() + 100 * T.years) -const REAUTHENTICATE_INTERVAL = T.minute - -const HOSTNAME = process.env.HOSTNAME -const KEY_PATH = process.env.KEY_PATH -const CERT_PATH = process.env.CERT_PATH -const ID_PHOTO_CARD_DIR = process.env.ID_PHOTO_CARD_DIR -const FRONT_CAMERA_DIR = process.env.FRONT_CAMERA_DIR -const OPERATOR_DATA_DIR = process.env.OPERATOR_DATA_DIR - -const devMode = argv.dev - -const version = require('../../package.json').version -logger.info('Version: %s', version) - -if (!HOSTNAME) { - logger.error('no hostname specified.') - process.exit(1) -} - -module.exports = {run} - -function dbNotify () { - return got.post('http://localhost:3030/dbChange') - .catch(e => logger.error('lamassu-server not responding')) -} - -const skip = (req, res) => req.path === '/api/status/' && res.statusCode === 200 - -// Note: no rate limiting applied since that would allow an attacker to -// easily DDoS by just hitting the aggregate rate limit. We assume the -// attacker has unlimited unique IP addresses. -// -// The best we can do at the application level is to make the authentication -// lookup very fast. There will only be a few users at most, so it's not a problem -// to keep them in memory, but we need to update right after a new one is added. -// For now, we believe that probability of sustained DDoS by saturating our ability to -// fetch from the DB is pretty low. - -app.use(morgan('dev', {skip})) -app.use(helmet({noCache: true})) -app.use(cookieParser()) -app.use(register) -app.use(authenticate) -app.use(express.json()) - -app.get('/api/totem', (req, res) => { - const name = req.query.name - - if (!name) return res.status(400).send('Name is required') - - return pairing.totem(HOSTNAME, name) - .then(totem => res.send(totem)) -}) - -app.get('/api/accounts', (req, res) => { - accounts.selectedAccounts() - .then(accounts => res.json({accounts: accounts})) -}) - -app.get('/api/account/:account', (req, res) => { - accounts.getAccount(req.params.account) - .then(account => res.json(account)) -}) - -app.post('/api/account', (req, res) => { - return accounts.updateAccount(req.body) - .then(account => res.json(account)) - .then(() => dbNotify()) -}) - -app.get('/api/config/:config', (req, res, next) => - config.fetchConfigGroup(req.params.config) - .then(c => res.json(c)) - .catch(next)) - -app.post('/api/config', (req, res, next) => { - config.saveConfigGroup(req.body) - .then(c => res.json(c)) - .then(() => dbNotify()) - .catch(next) -}) - -app.get('/api/accounts/account/:account', (req, res) => { - accounts.getAccount(req.params.account) - .then(r => res.send(r)) -}) - -app.get('/api/machines', (req, res) => { - machineLoader.getMachineNames() - .then(r => res.send({machines: r})) -}) - -app.post('/api/machines', (req, res) => { - machineLoader.setMachine(req.body) - .then(() => machineLoader.getMachineNames()) - .then(r => res.send({machines: r})) - .then(() => dbNotify()) -}) - -app.get('/api/funding', (req, res) => { - return funding.getFunding() - .then(r => res.json(r)) -}) - -app.get('/api/funding/:cryptoCode', (req, res) => { - const cryptoCode = req.params.cryptoCode - - return funding.getFunding(cryptoCode) - .then(r => res.json(r)) -}) - -app.get('/api/status', (req, res, next) => { - return Promise.all([server.status(), config.validateCurrentConfig()]) - .then(([serverStatus, invalidConfigGroups]) => res.send({ - server: serverStatus, - invalidConfigGroups - })) - .catch(next) -}) - -app.get('/api/transactions', (req, res, next) => { - return transactions.batch() - .then(r => res.send({transactions: r})) - .catch(next) -}) - -app.get('/api/transaction/:id', (req, res, next) => { - return transactions.single(req.params.id) - .then(r => { - if (!r) return res.status(404).send({Error: 'Not found'}) - return res.send(r) - }) -}) - -app.patch('/api/transaction/:id', (req, res, next) => { - if (!req.query.cancel) return res.status(400).send({Error: 'Requires cancel'}) - - return transactions.cancel(req.params.id) - .then(r => { - return res.send(r) - }) - .catch(() => res.status(404).send({Error: 'Not found'})) -}) - -app.get('/api/customers', (req, res, next) => { - return customers.batch() - .then(r => res.send({customers: r})) - .catch(next) -}) - -app.get('/api/customer/:id', (req, res, next) => { - return customers.getById(req.params.id) - .then(r => { - if (!r) return res.status(404).send({Error: 'Not found'}) - return res.send(r) - }) -}) - -app.get('/api/logs/:deviceId', (req, res, next) => { - return logs.getMachineLogs(req.params.deviceId) - .then(r => res.send(r)) - .catch(next) -}) - -app.get('/api/logs', (req, res, next) => { - return machineLoader.getMachines() - .then(machines => { - const firstMachine = _.first(machines) - if (!firstMachine) return res.status(404).send({Error: 'No machines'}) - return logs.getMachineLogs(firstMachine.deviceId) - .then(r => res.send(r)) - }) - .catch(next) -}) - -app.patch('/api/customer/:id', (req, res, next) => { - if (!req.params.id) return res.status(400).send({Error: 'Requires id'}) - const token = req.token || req.cookies.token - return customers.update(req.params.id, req.query, token) - .then(r => res.send(r)) - .catch(() => res.status(404).send({Error: 'Not found'})) -}) - -app.use((err, req, res, next) => { - logger.error(err) - - return res.status(500).send(err.message) -}) - -const certOptions = { - key: fs.readFileSync(KEY_PATH), - cert: fs.readFileSync(CERT_PATH) -} - -app.use(serveStatic(path.resolve(__dirname, 'public'))) - -if (!fs.existsSync(ID_PHOTO_CARD_DIR)) { - makeDir.sync(ID_PHOTO_CARD_DIR) -} - -if (!fs.existsSync(FRONT_CAMERA_DIR)) { - makeDir.sync(FRONT_CAMERA_DIR) -} - -if (!fs.existsSync(OPERATOR_DATA_DIR)) { - makeDir.sync(OPERATOR_DATA_DIR) -} - -app.use('/id-card-photo', serveStatic(ID_PHOTO_CARD_DIR, {index: false})) -app.use('/front-camera-photo', serveStatic(FRONT_CAMERA_DIR, {index: false})) -app.use('/operator-data', serveStatic(OPERATOR_DATA_DIR, {index: false})) - -function register (req, res, next) { - const otp = req.query.otp - - if (!otp) return next() - - return login.register(otp) - .then(r => { - if (r.expired) return res.status(401).send('OTP expired, generate new registration link') - - // Maybe user is using old registration key, attempt to authenticate - if (!r.success) return next() - - const cookieOpts = { - httpOnly: true, - secure: true, - domain: HOSTNAME, - sameSite: true, - expires: NEVER - } - - const token = r.token - req.token = token - res.cookie('token', token, cookieOpts) - next() - }) -} - -function authenticate (req, res, next) { - const token = req.token || req.cookies.token - - return login.authenticate(token) - .then(success => { - if (!success) return res.status(401).send('Authentication failed') - next() - }) -} - -process.on('unhandledRejection', err => { - logger.error(err.stack) - process.exit(1) -}) - -const socketServer = http.createServer() -const io = SocketIo(socketServer) -socketServer.listen(3060) -const socketEmitter = new EventEmitter() - -io.on('connection', client => { - client.on('message', msg => socketEmitter.emit('message', msg)) -}) - -const webServer = https.createServer(certOptions, app) -const wss = new WebSocket.Server({server: webServer}) - -function establishSocket (ws, token) { - return login.authenticate(token) - .then(success => { - if (!success) return ws.close(1008, 'Authentication error') - - const listener = data => { - ws.send(JSON.stringify(data)) - } - - // Reauthenticate every once in a while, in case token expired - setInterval(() => { - return login.authenticate(token) - .then(success => { - if (!success) { - socketEmitter.removeListener('message', listener) - ws.close() - } - }) - }, REAUTHENTICATE_INTERVAL) - - socketEmitter.on('message', listener) - ws.send('Testing123') - }) -} - -wss.on('connection', ws => { - const token = qs.parse(ws.upgradeReq.headers.cookie).token - - return establishSocket(ws, token) -}) - -function run () { - const serverPort = devMode ? 8072 : 443 - const supportPort = 8071 - - const serverLog = `lamassu-admin-server listening on port ${serverPort}` - const supportLog = `lamassu-support-server listening on port ${supportPort}` - - webServer.listen(serverPort, () => logger.info(serverLog)) - supportServer.run(supportPort).then(logger.info(supportLog)) -} diff --git a/lib/admin/admin-support.js b/lib/admin/admin-support.js deleted file mode 100644 index 13fd5f9d..00000000 --- a/lib/admin/admin-support.js +++ /dev/null @@ -1,39 +0,0 @@ -const fs = require('fs') -const cookieParser = require('cookie-parser') -const helmet = require('helmet') -const morgan = require('morgan') -const express = require('express') -const app = express() -const https = require('https') -const _ = require('lodash/fp') -const serveStatic = require('serve-static') -const path = require('path') - -const KEY_PATH = process.env.KEY_PATH -const CERT_PATH = process.env.CERT_PATH -const LAMASSU_CA_PATH = process.env.LAMASSU_CA_PATH - -app.use(morgan('dev')) -app.use(helmet({noCache: true})) -app.use(cookieParser()) -app.use(express.json()) -app.use(serveStatic(path.resolve(__dirname, '..', '..', 'public'), { - 'index': ['support-index.html'] -})) - -const certOptions = { - key: fs.readFileSync(KEY_PATH), - cert: fs.readFileSync(CERT_PATH), - ca: [fs.readFileSync(LAMASSU_CA_PATH)], - requestCert: true, - rejectUnauthorized: true -} - -function run (port) { - return new Promise((resolve, reject) => { - const webServer = https.createServer(certOptions, app) - webServer.listen(port, resolve) - }) -} - -module.exports = { run } diff --git a/lib/admin/funding.js b/lib/admin/funding.js deleted file mode 100644 index a448cf6a..00000000 --- a/lib/admin/funding.js +++ /dev/null @@ -1,99 +0,0 @@ -const _ = require('lodash/fp') -const BN = require('../bn') -const settingsLoader = require('./settings-loader') -const configManager = require('./config-manager') -const wallet = require('../wallet') -const ticker = require('../ticker') -const { utils: coinUtils } = require('@lamassu/coins') -const machineLoader = require('../machine-loader') - -module.exports = {getFunding} - -function allScopes (cryptoScopes, machineScopes) { - const scopes = [] - cryptoScopes.forEach(c => { - machineScopes.forEach(m => scopes.push([c, m])) - }) - - return scopes -} - -function allMachineScopes (machineList, machineScope) { - const machineScopes = [] - - if (machineScope === 'global' || machineScope === 'both') machineScopes.push('global') - if (machineScope === 'specific' || machineScope === 'both') machineList.forEach(r => machineScopes.push(r)) - - return machineScopes -} - -function getCryptos (config, machineList) { - const scopes = allScopes(['global'], allMachineScopes(machineList, 'both')) - const scoped = scope => configManager.scopedValue(scope[0], scope[1], 'cryptoCurrencies', config) - - return _.uniq(_.flatten(_.map(scoped, scopes))) -} - -function fetchMachines () { - return machineLoader.getMachines() - .then(machineList => machineList.map(r => r.deviceId)) -} - -function computeCrypto (cryptoCode, _balance) { - const cryptoRec = coinUtils.getCryptoCurrency(cryptoCode) - const unitScale = cryptoRec.unitScale - - return new BN(_balance).shiftedBy(-unitScale).decimalPlaces(5) -} - -function computeFiat (rate, cryptoCode, _balance) { - const cryptoRec = coinUtils.getCryptoCurrency(cryptoCode) - const unitScale = cryptoRec.unitScale - - return new BN(_balance).shiftedBy(-unitScale).times(rate).decimalPlaces(5) -} - -function getFunding (_cryptoCode) { - return Promise.all([settingsLoader.loadLatest(), fetchMachines()]) - .then(([settings, machineList]) => { - const config = configManager.unscoped(settings.config) - const cryptoCodes = getCryptos(settings.config, machineList) - const cryptoCode = _cryptoCode || cryptoCodes[0] - const fiatCode = config.fiatCurrency - const pareCoins = c => _.includes(c.cryptoCode, cryptoCodes) - const cryptoCurrencies = coinUtils.cryptoCurrencies() - const cryptoDisplays = _.filter(pareCoins, cryptoCurrencies) - const cryptoRec = coinUtils.getCryptoCurrency(cryptoCode) - - if (!cryptoRec) throw new Error(`Unsupported coin: ${cryptoCode}`) - - const promises = [ - wallet.newFunding(settings, cryptoCode), - ticker.getRates(settings, fiatCode, cryptoCode) - ] - - return Promise.all(promises) - .then(([fundingRec, ratesRec]) => { - const rates = ratesRec.rates - const rate = (rates.ask.plus(rates.bid)).div(2) - const fundingConfirmedBalance = fundingRec.fundingConfirmedBalance - const fiatConfirmedBalance = computeFiat(rate, cryptoCode, fundingConfirmedBalance) - const pending = fundingRec.fundingPendingBalance - const fiatPending = computeFiat(rate, cryptoCode, pending) - const fundingAddress = fundingRec.fundingAddress - const fundingAddressUrl = coinUtils.buildUrl(cryptoCode, fundingAddress) - - return { - cryptoCode, - cryptoDisplays, - fundingAddress, - fundingAddressUrl, - confirmedBalance: computeCrypto(cryptoCode, fundingConfirmedBalance).toFormat(5), - pending: computeCrypto(cryptoCode, pending).toFormat(5), - fiatConfirmedBalance: fiatConfirmedBalance.toFormat(2), - fiatPending: fiatPending.toFormat(2), - fiatCode - } - }) - }) -} diff --git a/lib/admin/login.js b/lib/admin/login.js deleted file mode 100644 index c7cf852b..00000000 --- a/lib/admin/login.js +++ /dev/null @@ -1,48 +0,0 @@ -const crypto = require('crypto') - -const db = require('../db') - -function generateOTP (name) { - const otp = crypto.randomBytes(32).toString('hex') - - const sql = 'insert into one_time_passes (token, name) values ($1, $2)' - - return db.none(sql, [otp, name]) - .then(() => otp) -} - -function validateOTP (otp) { - const sql = `delete from one_time_passes - where token=$1 - returning name, created < now() - interval '1 hour' as expired` - - return db.one(sql, [otp]) - .then(r => ({success: !r.expired, expired: r.expired, name: r.name})) - .catch(() => ({success: false, expired: false})) -} - -function register (otp) { - return validateOTP(otp) - .then(r => { - if (!r.success) return r - - const token = crypto.randomBytes(32).toString('hex') - const sql = 'insert into user_tokens (token, name) values ($1, $2)' - - return db.none(sql, [token, r.name]) - .then(() => ({success: true, token: token})) - }) - .catch(() => ({success: false, expired: false})) -} - -function authenticate (token) { - const sql = 'select token from user_tokens where token=$1' - - return db.one(sql, [token]).then(() => true).catch(() => false) -} - -module.exports = { - generateOTP, - register, - authenticate -} diff --git a/lib/admin/pairing.js b/lib/admin/pairing.js deleted file mode 100644 index 7d520bbf..00000000 --- a/lib/admin/pairing.js +++ /dev/null @@ -1,32 +0,0 @@ -const fs = require('fs') -const pify = require('pify') -const readFile = pify(fs.readFile) -const crypto = require('crypto') -const baseX = require('base-x') - -const db = require('../db') -const pairing = require('../pairing') - -const ALPHA_BASE = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:' -const bsAlpha = baseX(ALPHA_BASE) - -const CA_PATH = process.env.CA_PATH - -const unpair = pairing.unpair - -function totem (hostname, name) { - return readFile(CA_PATH) - .then(data => { - const caHash = crypto.createHash('sha256').update(data).digest() - const token = crypto.randomBytes(32) - const hexToken = token.toString('hex') - const caHexToken = crypto.createHash('sha256').update(hexToken).digest('hex') - const buf = Buffer.concat([caHash, token, Buffer.from(hostname)]) - const sql = 'insert into pairing_tokens (token, name) values ($1, $3), ($2, $3)' - - return db.none(sql, [hexToken, caHexToken, name]) - .then(() => bsAlpha.encode(buf)) - }) -} - -module.exports = {totem, unpair} diff --git a/lib/admin/public/bower.json b/lib/admin/public/bower.json deleted file mode 100644 index d21a9346..00000000 --- a/lib/admin/public/bower.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "lamassu-admin-elm", - "homepage": "https://github.com/lamassu/lamassu-admin-elm", - "authors": [ - "Josh Harvey " - ], - "description": "", - "main": "", - "license": "MIT", - "private": true, - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ] -} diff --git a/lib/admin/public/bower_components/gridism/.bower.json b/lib/admin/public/bower_components/gridism/.bower.json deleted file mode 100644 index 38f81cc3..00000000 --- a/lib/admin/public/bower_components/gridism/.bower.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "gridism", - "version": "0.2.2", - "author": "Coby Chapple", - "homepage": "http://cobyism.com/gridism", - "main": "./gridism.css", - "repository": { - "type": "git", - "url": "git://github.com/cobyism/gridism.git" - }, - "ignore": [ - "shapeshifter/", - "**/*.yml", - "**/*.html" - ], - "license": "MIT", - "_release": "0.2.2", - "_resolution": { - "type": "version", - "tag": "0.2.2", - "commit": "490be0b6813d701dcc35a82b0bcc8f639e5ad63f" - }, - "_source": "https://github.com/cobyism/gridism.git", - "_target": "^0.2.2", - "_originalSource": "gridism", - "_direct": true -} \ No newline at end of file diff --git a/lib/admin/public/bower_components/gridism/LICENSE b/lib/admin/public/bower_components/gridism/LICENSE deleted file mode 100644 index ee27726e..00000000 --- a/lib/admin/public/bower_components/gridism/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (c) 2013 Coby Chapple. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the 'Software'), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/lib/admin/public/bower_components/gridism/README.md b/lib/admin/public/bower_components/gridism/README.md deleted file mode 100644 index a60072ef..00000000 --- a/lib/admin/public/bower_components/gridism/README.md +++ /dev/null @@ -1,80 +0,0 @@ -# Gridism - -A simple responsive CSS grid. [View the demo →](http://cobyism.com/gridism/) - -## Why? - -### My process - -When I design web layouts, my thought process usually goes something like this: - -> Alright, in this section, I want a bit that’s one third of the section’s width, -> and then next to that I want another bit that’s two thirds of the sections’s width. -> Now, in the next section… - -I don’t think in 12 or 16 column grids. Instead, my mental model basically just consists of the page being divided up into multiple full-width vertical sections, and each vertical section being divided up into simple fractions of the section width. - -### Existing grid frameworks - -Most frameworks I’ve used don’t match that thought process *at all*. I usually have to: - -1. Remember how many columns are in the grid for the particular framework I’m using. -1. Decide how I want to divide up this particular section’s content. -1. Mentally do the conversion from what I want to see (one quarter + three quarters, for example) into the number of columns I need for the grid I’m using. -1. Remember the class naming structure for the framework I’m using. Is it `.span3`, `.grid_3`, `.col-3`, or something else altogether? -1. Deal with other hassles like clearing floats, messing with column padding to have the gutters look right, indicating which elements are the first in a row, and so forth. - -Only the second step should be necessary. - -### Gridism’s Goals - -I couldn’t find a framework that matched this mental model of how I work, so I started hacking on Gridism with the following goals: - -- Class names should be memorable and self-evident. -- Gutters and basic content padding should be taken care of. -- Clearing floats should be done automatically. -- Wrapped grid sections should be independant of vertical page sections. -- Frequently required utility classes should be provided. -- Common patterns for Responsive Design™ should be built-in. - -I hope you find that this project is living up to those goals. If not, please [create an issue](https://github.com/cobyism/gridism/issues/new) and let me know. - -## Installation - -### 1. Get the files - -The easiest way to use Gridism in your project is via the [Bower](http://twitter.github.com/bower) package manager. - -```sh -bower install gridism -``` - -Elsewise, [download the zip folder](https://github.com/cobyism/gridism/archive/gh-pages.zip), extract it, and copy `gridism.css` into your project’s folder. Boom. Done. - -### 2. Link the stylesheet - -Add the following stylesheet to your HTML’s `` section: - -```html - -``` - -**Note:** If you didn’t install using Bower, you need to adjust the path of CSS file to match your file structure. - -### 3. Viewport scale - -Add the following meta tag to your HTML’s `` section: - -```html - -``` - -Without this meta tag, mobiles and tablets might load your page as a scaled-down version of the desktop size, instead of resizing the content to match the device’s actual viewport width. - -## Contributing - -I’d :heart: to receive contributions to this project. It doesn’t matter if it’s just a typo, or if you’re proposing an overhaul of the entire project—I’ll gladly take a look at your changes. Fork at will! :grinning:. - -## License - -Go nuts. See [LICENSE](https://github.com/cobyism/gridism/blob/gh-pages/LICENSE) (MIT). diff --git a/lib/admin/public/bower_components/gridism/bower.json b/lib/admin/public/bower_components/gridism/bower.json deleted file mode 100644 index fd0bbdc3..00000000 --- a/lib/admin/public/bower_components/gridism/bower.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "gridism", - "version": "0.2.1", - "author": "Coby Chapple", - "homepage": "http://cobyism.com/gridism", - "main": "./gridism.css", - "repository": { - "type": "git", - "url": "git://github.com/cobyism/gridism.git" - }, - "ignore": [ - "shapeshifter/", - "**/*.yml", - "**/*.html" - ], - "license": "MIT" -} diff --git a/lib/admin/public/bower_components/gridism/gridism.css b/lib/admin/public/bower_components/gridism/gridism.css deleted file mode 100644 index 11894bc6..00000000 --- a/lib/admin/public/bower_components/gridism/gridism.css +++ /dev/null @@ -1,132 +0,0 @@ -/* - * Gridism - * A simple, responsive, and handy CSS grid by @cobyism - * https://github.com/cobyism/gridism - */ - -/* Preserve some sanity */ -.grid, -.unit { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} - -/* Set up some rules to govern the grid */ -.grid { - display: block; - clear: both; -} -.grid .unit { - float: left; - width: 100%; - padding: 10px; -} - -/* This ensures the outer gutters are equal to the (doubled) inner gutters. */ -.grid .unit:first-child { padding-left: 20px; } -.grid .unit:last-child { padding-right: 20px; } - -/* Nested grids already have padding though, so let's nuke it */ -.unit .unit:first-child { padding-left: 0; } -.unit .unit:last-child { padding-right: 0; } -.unit .grid:first-child > .unit { padding-top: 0; } -.unit .grid:last-child > .unit { padding-bottom: 0; } - -/* Let people nuke the gutters/padding completely in a couple of ways */ -.no-gutters .unit, -.unit.no-gutters { - padding: 0 !important; -} - -/* Wrapping at a maximum width is optional */ -.wrap .grid, -.grid.wrap { - max-width: 978px; - margin: 0 auto; -} - -/* Width classes also have shorthand versions numbered as fractions - * For example: for a grid unit 1/3 (one third) of the parent width, - * simply apply class="w-1-3" to the element. */ -.grid .whole, .grid .w-1-1 { width: 100%; } -.grid .half, .grid .w-1-2 { width: 50%; } -.grid .one-third, .grid .w-1-3 { width: 33.3332%; } -.grid .two-thirds, .grid .w-2-3 { width: 66.6665%; } -.grid .one-quarter, -.grid .one-fourth, .grid .w-1-4 { width: 25%; } -.grid .three-quarters, -.grid .three-fourths, .grid .w-3-4 { width: 75%; } -.grid .one-fifth, .grid .w-1-5 { width: 20%; } -.grid .two-fifths, .grid .w-2-5 { width: 40%; } -.grid .three-fifths, .grid .w-3-5 { width: 60%; } -.grid .four-fifths, .grid .w-4-5 { width: 80%; } -.grid .golden-small, .grid .w-g-s { width: 38.2716%; } /* Golden section: smaller piece */ -.grid .golden-large, .grid .w-g-l { width: 61.7283%; } /* Golden section: larger piece */ - -/* Clearfix after every .grid */ -.grid { - *zoom: 1; -} -.grid:before, .grid:after { - display: table; - content: ""; - line-height: 0; -} -.grid:after { - clear: both; -} - -/* Utility classes */ -.align-center { text-align: center; } -.align-left { text-align: left; } -.align-right { text-align: right; } -.pull-left { float: left; } -.pull-right { float: right; } - -/* A property for a better rendering of images in units: in - this way bigger pictures are just resized if the unit - becomes smaller */ -.unit img { - max-width: 100%; -} - -/* Hide elements using this class by default */ -.only-on-mobiles { - display: none !important; -} - -/* Responsive Stuff */ -@media screen and (max-width: 568px) { - /* Stack anything that isn't full-width on smaller screens - and doesn't provide the no-stacking-on-mobiles class */ - .grid:not(.no-stacking-on-mobiles) > .unit { - width: 100% !important; - padding-left: 20px; - padding-right: 20px; - } - .unit .grid .unit { - padding-left: 0px; - padding-right: 0px; - } - - /* Sometimes, you just want to be different on small screens */ - .center-on-mobiles { - text-align: center !important; - } - .hide-on-mobiles { - display: none !important; - } - .only-on-mobiles { - display: block !important; - } -} - -/* Expand the wrap a bit further on larger screens */ -@media screen and (min-width: 1180px) { - .wider .grid, - .grid.wider { - max-width: 1180px; - margin: 0 auto; - } -} diff --git a/lib/admin/public/bower_components/qr-code/.bower.json b/lib/admin/public/bower_components/qr-code/.bower.json deleted file mode 100644 index a7cec63b..00000000 --- a/lib/admin/public/bower_components/qr-code/.bower.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "name": "qr-code", - "version": "0.1.8", - "homepage": "https://github.com/educastellano/qr-code", - "authors": [ - "Eduard Castellano " - ], - "description": "Web Component for generating QR codes", - "main": "src/qr-code.js", - "keywords": [ - "qr", - "qrcode", - "qr-code", - "webcomponent", - "customelement", - "web-components" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests", - "demo" - ], - "dependencies": { - "qrjs": "~0.1.2" - }, - "_release": "0.1.8", - "_resolution": { - "type": "version", - "tag": "v0.1.8", - "commit": "28a413834c62d8ec7f5b3f3005fe2ee78e47e647" - }, - "_source": "https://github.com/educastellano/qr-code.git", - "_target": "^0.1.8", - "_originalSource": "webcomponent-qr-code", - "_direct": true -} \ No newline at end of file diff --git a/lib/admin/public/bower_components/qr-code/README.md b/lib/admin/public/bower_components/qr-code/README.md deleted file mode 100644 index a3841583..00000000 --- a/lib/admin/public/bower_components/qr-code/README.md +++ /dev/null @@ -1,94 +0,0 @@ -# <qr-code> - -Web Component for generating QR Codes, using (a [fork](https://github.com/educastellano/qr.js) of) [qr.js](https://github.com/lifthrasiir/qr.js) lib. - -> Maintained by [Eduard Castellano](https://github.com/educastellano). - -## Demo - -> [Check it live](http://educastellano.github.io/qr-code/demo). - -## Usage - -* **NPM and Browserify** ([polyfill](https://github.com/WebComponents/webcomponentsjs) and the component): - - Install: - - ```sh - npm install webcomponents.js - npm install webcomponent-qr-code - ``` - - Import: - - ```js - require('webcomponents.js'); - require('webcomponent-qr-code'); - ``` - -* **Bower** ([polyfill](https://github.com/WebComponents/webcomponentsjs), [qr.js](https://github.com/educastellano/qr.js) and the component): - - Install: - - ```sh - bower install webcomponentsjs - bower install webcomponent-qr-code - ``` - - Import: - - ```html - - - - ``` - - > You can also import the component with [HTML Imports](http://w3c.github.io/webcomponents/spec/imports/), but you still need to import the polyfill and the qr.js lib separately: - > - > ```html - > - > ``` - -* **Start using it!** - - ```html - - ``` - - - -## Options - -Attribute | Options | Default | Description ---- | --- | --- | --- -`data` | *string* | `null` | The information encoded by the QR code. -`format` | `png`, `html`, `svg` | `png` | Format of the QR code rendered inside the component. -`modulesize` | *int* | `5` | Size of the modules in *pixels*. -`margin` | *int* | `4` | Margin of the QR code in *modules*. - - -## Contributing - -1. Fork it! -2. Create your feature branch: `git checkout -b my-new-feature` -3. Commit your changes: `git commit -m 'Add some feature'` -4. Push to the branch: `git push origin my-new-feature` -5. Submit a pull request :D - -## History - -* v0.1.7 April 11, 2015 - * Support for SVG -* v0.1.6 April 10, 2015 - * Default attributes - * qr.js removed and used as a dependency - * Available in NPM -* v0.1.1 March 31, 2015 - * Framework-agnostic webcomponent (no use of Polymer) - * Available in Bower -* v0.0.1 September 18, 2013 - * Started project using [boilerplate-element](https://github.com/customelements/boilerplate-element) - -## License - -[MIT License](http://opensource.org/licenses/MIT) diff --git a/lib/admin/public/bower_components/qr-code/bower.json b/lib/admin/public/bower_components/qr-code/bower.json deleted file mode 100644 index 14e071e0..00000000 --- a/lib/admin/public/bower_components/qr-code/bower.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "name": "qr-code", - "version": "0.1.7", - "homepage": "https://github.com/educastellano/qr-code", - "authors": [ - "Eduard Castellano " - ], - "description": "Web Component for generating QR codes", - "main": "src/qr-code.js", - "keywords": [ - "qr", - "qrcode", - "qr-code", - "webcomponent", - "customelement", - "web-components" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests", - "demo" - ], - "dependencies": { - "qrjs": "~0.1.2" - } -} diff --git a/lib/admin/public/bower_components/qr-code/index.html b/lib/admin/public/bower_components/qr-code/index.html deleted file mode 100644 index a8d632d7..00000000 --- a/lib/admin/public/bower_components/qr-code/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - <qr-code> - - - Demo here - - \ No newline at end of file diff --git a/lib/admin/public/bower_components/qr-code/index.js b/lib/admin/public/bower_components/qr-code/index.js deleted file mode 100644 index 14ece1cf..00000000 --- a/lib/admin/public/bower_components/qr-code/index.js +++ /dev/null @@ -1 +0,0 @@ -require('./src/qr-code.js') \ No newline at end of file diff --git a/lib/admin/public/bower_components/qr-code/package.json b/lib/admin/public/bower_components/qr-code/package.json deleted file mode 100644 index 7381b8b5..00000000 --- a/lib/admin/public/bower_components/qr-code/package.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "name": "webcomponent-qr-code", - "version": "0.1.8", - "description": "Web Component for generating QR codes", - "main": "qr-code.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "repository": { - "type": "git", - "url": "https://github.com/educastellano/qr-code.git" - }, - "keywords": [ - "qr", - "qrcode", - "qr-code", - "webcomponent", - "custom-element" - ], - "author": "Eduard Castellano", - "license": "MIT", - "bugs": { - "url": "https://github.com/educastellano/qr-code/issues" - }, - "homepage": "https://github.com/educastellano/qr-code", - "dependencies": { - "qrjs": "^0.1.2" - } -} diff --git a/lib/admin/public/bower_components/qr-code/src/polymer/qr-code.html b/lib/admin/public/bower_components/qr-code/src/polymer/qr-code.html deleted file mode 100644 index a228615a..00000000 --- a/lib/admin/public/bower_components/qr-code/src/polymer/qr-code.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - \ No newline at end of file diff --git a/lib/admin/public/bower_components/qr-code/src/qr-code.html b/lib/admin/public/bower_components/qr-code/src/qr-code.html deleted file mode 100644 index 71882d90..00000000 --- a/lib/admin/public/bower_components/qr-code/src/qr-code.html +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/lib/admin/public/bower_components/qr-code/src/qr-code.js b/lib/admin/public/bower_components/qr-code/src/qr-code.js deleted file mode 100644 index 2b11b09b..00000000 --- a/lib/admin/public/bower_components/qr-code/src/qr-code.js +++ /dev/null @@ -1,144 +0,0 @@ -'use strict'; - -(function(definition) { - if (typeof define === 'function' && define.amd) { - define(['QRCode'], definition); - } else if (typeof module === 'object' && module.exports) { - var QRCode = require('qrjs'); - module.exports = definition(QRCode); - } else { - definition(window.QRCode); - } -})(function(QRCode) { -// -// Prototype -// -var proto = Object.create(HTMLElement.prototype, { - // - // Attributes - // - attrs: { - value: { - data: null, - format: 'png', - modulesize: 5, - margin: 4 - } - }, - defineAttributes: { - value: function () { - var attrs = Object.keys(this.attrs), - attr; - for (var i=0; i' - } - } - else { - this.shadowRoot.innerHTML = '
qr-code: no data!
' - } - } - }, - generatePNG: { - value: function () { - try { - var img = document.createElement('img'); - img.src = QRCode.generatePNG(this.data, this.getOptions()); - this.clear(); - this.shadowRoot.appendChild(img); - } - catch (e) { - this.shadowRoot.innerHTML = '
qr-code: no canvas support!
' - } - } - }, - generateHTML: { - value: function () { - var div = QRCode.generateHTML(this.data, this.getOptions()); - this.clear(); - this.shadowRoot.appendChild(div); - } - }, - generateSVG: { - value: function () { - var div = QRCode.generateSVG(this.data, this.getOptions()); - this.clear(); - this.shadowRoot.appendChild(div); - } - }, - clear: { - value: function () { - while (this.shadowRoot.lastChild) { - this.shadowRoot.removeChild(this.shadowRoot.lastChild); - } - } - } -}); -// -// Register -// -document.registerElement('qr-code', { - prototype: proto -}); -}); - - diff --git a/lib/admin/public/bower_components/qrcodejs/.bower.json b/lib/admin/public/bower_components/qrcodejs/.bower.json deleted file mode 100644 index a4bd9ee3..00000000 --- a/lib/admin/public/bower_components/qrcodejs/.bower.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "qrcodejs", - "version": "0.1.0", - "homepage": "https://github.com/CatTail/qrcodejs", - "authors": [ - "davidshimjs ssm0123@gmail.com" - ], - "description": "Cross-browser QRCode generator for javascript", - "main": "qrcode.js", - "keywords": [ - "qrcode" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ], - "_release": "0.1.0", - "_resolution": { - "type": "version", - "tag": "v0.1.0", - "commit": "71340740270b3c9d797ecaa7d7a75af36037217d" - }, - "_source": "https://github.com/CatTail/qrcodejs.git", - "_target": "^0.1.0", - "_originalSource": "qrcodejs", - "_direct": true -} \ No newline at end of file diff --git a/lib/admin/public/bower_components/qrcodejs/LICENSE b/lib/admin/public/bower_components/qrcodejs/LICENSE deleted file mode 100644 index 93c33233..00000000 --- a/lib/admin/public/bower_components/qrcodejs/LICENSE +++ /dev/null @@ -1,14 +0,0 @@ -The MIT License (MIT) ---------------------- -Copyright (c) 2012 davidshimjs - -Permission is hereby granted, free of charge, -to any person obtaining a copy of this software and associated documentation files (the "Software"), -to deal in the Software without restriction, -including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/lib/admin/public/bower_components/qrcodejs/README.md b/lib/admin/public/bower_components/qrcodejs/README.md deleted file mode 100644 index ce0da3b7..00000000 --- a/lib/admin/public/bower_components/qrcodejs/README.md +++ /dev/null @@ -1,43 +0,0 @@ -# QRCode.js -QRCode.js is javascript library for making QRCode. QRCode.js supports Cross-browser with HTML5 Canvas and table tag in DOM. -QRCode.js has no dependencies. - -## Basic Usages -``` -
- -``` - -or with some options - -``` -var qrcode = new QRCode("test", { - text: "http://jindo.dev.naver.com/collie", - width: 128, - height: 128, - colorDark : "#000000", - colorLight : "#ffffff", - correctLevel : QRCode.CorrectLevel.H -}); -``` - -and you can use some methods - -``` -qrcode.clear(); // clear the code. -qrcode.makeCode("http://naver.com"); // make another code. -``` - -## Browser Compatibility -IE6~10, Chrome, Firefox, Safari, Opera, Mobile Safari, Android, Windows Mobile, ETC. - -## License -MIT License - -## Contact -twitter @davidshimjs - -[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/davidshimjs/qrcodejs/trend.png)](https://bitdeli.com/free "Bitdeli Badge") - diff --git a/lib/admin/public/bower_components/qrcodejs/bower.json b/lib/admin/public/bower_components/qrcodejs/bower.json deleted file mode 100644 index 47aec06c..00000000 --- a/lib/admin/public/bower_components/qrcodejs/bower.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "name": "qrcodejs", - "version": "0.1.0", - "homepage": "https://github.com/CatTail/qrcodejs", - "authors": [ - "davidshimjs ssm0123@gmail.com" - ], - "description": "Cross-browser QRCode generator for javascript", - "main": "qrcode.js", - "keywords": [ - "qrcode" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ] -} diff --git a/lib/admin/public/bower_components/qrcodejs/index.html b/lib/admin/public/bower_components/qrcodejs/index.html deleted file mode 100644 index fc16f3d9..00000000 --- a/lib/admin/public/bower_components/qrcodejs/index.html +++ /dev/null @@ -1,44 +0,0 @@ - - - -Cross-Browser QRCode generator for Javascript - - - - - - -
-
- - - \ No newline at end of file diff --git a/lib/admin/public/bower_components/qrcodejs/index.svg b/lib/admin/public/bower_components/qrcodejs/index.svg deleted file mode 100644 index fabe56aa..00000000 --- a/lib/admin/public/bower_components/qrcodejs/index.svg +++ /dev/null @@ -1,37 +0,0 @@ - - - - - -
- -
- - - -
-
diff --git a/lib/admin/public/bower_components/qrcodejs/jquery.min.js b/lib/admin/public/bower_components/qrcodejs/jquery.min.js deleted file mode 100644 index 2740cc4c..00000000 --- a/lib/admin/public/bower_components/qrcodejs/jquery.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v1.8.3 jquery.com | jquery.org/license */ -(function(e,t){function _(e){var t=M[e]={};return v.each(e.split(y),function(e,n){t[n]=!0}),t}function H(e,n,r){if(r===t&&e.nodeType===1){var i="data-"+n.replace(P,"-$1").toLowerCase();r=e.getAttribute(i);if(typeof r=="string"){try{r=r==="true"?!0:r==="false"?!1:r==="null"?null:+r+""===r?+r:D.test(r)?v.parseJSON(r):r}catch(s){}v.data(e,n,r)}else r=t}return r}function B(e){var t;for(t in e){if(t==="data"&&v.isEmptyObject(e[t]))continue;if(t!=="toJSON")return!1}return!0}function et(){return!1}function tt(){return!0}function ut(e){return!e||!e.parentNode||e.parentNode.nodeType===11}function at(e,t){do e=e[t];while(e&&e.nodeType!==1);return e}function ft(e,t,n){t=t||0;if(v.isFunction(t))return v.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return v.grep(e,function(e,r){return e===t===n});if(typeof t=="string"){var r=v.grep(e,function(e){return e.nodeType===1});if(it.test(t))return v.filter(t,r,!n);t=v.filter(t,r)}return v.grep(e,function(e,r){return v.inArray(e,t)>=0===n})}function lt(e){var t=ct.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function At(e,t){if(t.nodeType!==1||!v.hasData(e))return;var n,r,i,s=v._data(e),o=v._data(t,s),u=s.events;if(u){delete o.handle,o.events={};for(n in u)for(r=0,i=u[n].length;r").appendTo(i.body),n=t.css("display");t.remove();if(n==="none"||n===""){Pt=i.body.appendChild(Pt||v.extend(i.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!Ht||!Pt.createElement)Ht=(Pt.contentWindow||Pt.contentDocument).document,Ht.write(""),Ht.close();t=Ht.body.appendChild(Ht.createElement(e)),n=Dt(t,"display"),i.body.removeChild(Pt)}return Wt[e]=n,n}function fn(e,t,n,r){var i;if(v.isArray(t))v.each(t,function(t,i){n||sn.test(e)?r(e,i):fn(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&v.type(t)==="object")for(i in t)fn(e+"["+i+"]",t[i],n,r);else r(e,t)}function Cn(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i,s,o=t.toLowerCase().split(y),u=0,a=o.length;if(v.isFunction(n))for(;u)[^>]*$|#([\w\-]*)$)/,E=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,S=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,T=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,N=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,C=/^-ms-/,k=/-([\da-z])/gi,L=function(e,t){return(t+"").toUpperCase()},A=function(){i.addEventListener?(i.removeEventListener("DOMContentLoaded",A,!1),v.ready()):i.readyState==="complete"&&(i.detachEvent("onreadystatechange",A),v.ready())},O={};v.fn=v.prototype={constructor:v,init:function(e,n,r){var s,o,u,a;if(!e)return this;if(e.nodeType)return this.context=this[0]=e,this.length=1,this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?s=[null,e,null]:s=w.exec(e);if(s&&(s[1]||!n)){if(s[1])return n=n instanceof v?n[0]:n,a=n&&n.nodeType?n.ownerDocument||n:i,e=v.parseHTML(s[1],a,!0),E.test(s[1])&&v.isPlainObject(n)&&this.attr.call(e,n,!0),v.merge(this,e);o=i.getElementById(s[2]);if(o&&o.parentNode){if(o.id!==s[2])return r.find(e);this.length=1,this[0]=o}return this.context=i,this.selector=e,this}return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e)}return v.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))},selector:"",jquery:"1.8.3",length:0,size:function(){return this.length},toArray:function(){return l.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e,t,n){var r=v.merge(this.constructor(),e);return r.prevObject=this,r.context=this.context,t==="find"?r.selector=this.selector+(this.selector?" ":"")+n:t&&(r.selector=this.selector+"."+t+"("+n+")"),r},each:function(e,t){return v.each(this,e,t)},ready:function(e){return v.ready.promise().done(e),this},eq:function(e){return e=+e,e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(l.apply(this,arguments),"slice",l.call(arguments).join(","))},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:[].sort,splice:[].splice},v.fn.init.prototype=v.fn,v.extend=v.fn.extend=function(){var e,n,r,i,s,o,u=arguments[0]||{},a=1,f=arguments.length,l=!1;typeof u=="boolean"&&(l=u,u=arguments[1]||{},a=2),typeof u!="object"&&!v.isFunction(u)&&(u={}),f===a&&(u=this,--a);for(;a0)return;r.resolveWith(i,[v]),v.fn.trigger&&v(i).trigger("ready").off("ready")},isFunction:function(e){return v.type(e)==="function"},isArray:Array.isArray||function(e){return v.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):O[h.call(e)]||"object"},isPlainObject:function(e){if(!e||v.type(e)!=="object"||e.nodeType||v.isWindow(e))return!1;try{if(e.constructor&&!p.call(e,"constructor")&&!p.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||p.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){var r;return!e||typeof e!="string"?null:(typeof t=="boolean"&&(n=t,t=0),t=t||i,(r=E.exec(e))?[t.createElement(r[1])]:(r=v.buildFragment([e],t,n?null:[]),v.merge([],(r.cacheable?v.clone(r.fragment):r.fragment).childNodes)))},parseJSON:function(t){if(!t||typeof t!="string")return null;t=v.trim(t);if(e.JSON&&e.JSON.parse)return e.JSON.parse(t);if(S.test(t.replace(T,"@").replace(N,"]").replace(x,"")))return(new Function("return "+t))();v.error("Invalid JSON: "+t)},parseXML:function(n){var r,i;if(!n||typeof n!="string")return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(s){r=t}return(!r||!r.documentElement||r.getElementsByTagName("parsererror").length)&&v.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&g.test(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(C,"ms-").replace(k,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,n,r){var i,s=0,o=e.length,u=o===t||v.isFunction(e);if(r){if(u){for(i in e)if(n.apply(e[i],r)===!1)break}else for(;s0&&e[0]&&e[a-1]||a===0||v.isArray(e));if(f)for(;u-1)a.splice(n,1),i&&(n<=o&&o--,n<=u&&u--)}),this},has:function(e){return v.inArray(e,a)>-1},empty:function(){return a=[],this},disable:function(){return a=f=n=t,this},disabled:function(){return!a},lock:function(){return f=t,n||c.disable(),this},locked:function(){return!f},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],a&&(!r||f)&&(i?f.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,r){var s=r[0],o=e[t];i[r[1]](v.isFunction(o)?function(){var e=o.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===i?n:this,[e])}:n[s])}),e=null}).promise()},promise:function(e){return e!=null?v.extend(e,r):r}},i={};return r.pipe=r.then,v.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=o.fire,i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=l.call(arguments),r=n.length,i=r!==1||e&&v.isFunction(e.promise)?r:0,s=i===1?e:v.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?l.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t
a",n=p.getElementsByTagName("*"),r=p.getElementsByTagName("a")[0];if(!n||!r||!n.length)return{};s=i.createElement("select"),o=s.appendChild(i.createElement("option")),u=p.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:r.getAttribute("href")==="/a",opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:u.value==="on",optSelected:o.selected,getSetAttribute:p.className!=="t",enctype:!!i.createElement("form").enctype,html5Clone:i.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:i.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},u.checked=!0,t.noCloneChecked=u.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!o.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",h=function(){t.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick"),p.detachEvent("onclick",h)),u=i.createElement("input"),u.value="t",u.setAttribute("type","radio"),t.radioValue=u.value==="t",u.setAttribute("checked","checked"),u.setAttribute("name","t"),p.appendChild(u),a=i.createDocumentFragment(),a.appendChild(p.lastChild),t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,t.appendChecked=u.checked,a.removeChild(u),a.appendChild(p);if(p.attachEvent)for(l in{submit:!0,change:!0,focusin:!0})f="on"+l,c=f in p,c||(p.setAttribute(f,"return;"),c=typeof p[f]=="function"),t[l+"Bubbles"]=c;return v(function(){var n,r,s,o,u="padding:0;margin:0;border:0;display:block;overflow:hidden;",a=i.getElementsByTagName("body")[0];if(!a)return;n=i.createElement("div"),n.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",a.insertBefore(n,a.firstChild),r=i.createElement("div"),n.appendChild(r),r.innerHTML="
t
",s=r.getElementsByTagName("td"),s[0].style.cssText="padding:0;margin:0;border:0;display:none",c=s[0].offsetHeight===0,s[0].style.display="",s[1].style.display="none",t.reliableHiddenOffsets=c&&s[0].offsetHeight===0,r.innerHTML="",r.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",t.boxSizing=r.offsetWidth===4,t.doesNotIncludeMarginInBodyOffset=a.offsetTop!==1,e.getComputedStyle&&(t.pixelPosition=(e.getComputedStyle(r,null)||{}).top!=="1%",t.boxSizingReliable=(e.getComputedStyle(r,null)||{width:"4px"}).width==="4px",o=i.createElement("div"),o.style.cssText=r.style.cssText=u,o.style.marginRight=o.style.width="0",r.style.width="1px",r.appendChild(o),t.reliableMarginRight=!parseFloat((e.getComputedStyle(o,null)||{}).marginRight)),typeof r.style.zoom!="undefined"&&(r.innerHTML="",r.style.cssText=u+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=r.offsetWidth===3,r.style.display="block",r.style.overflow="visible",r.innerHTML="
",r.firstChild.style.width="5px",t.shrinkWrapBlocks=r.offsetWidth!==3,n.style.zoom=1),a.removeChild(n),n=r=s=o=null}),a.removeChild(p),n=r=s=o=u=a=p=null,t}();var D=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;v.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(v.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?v.cache[e[v.expando]]:e[v.expando],!!e&&!B(e)},data:function(e,n,r,i){if(!v.acceptData(e))return;var s,o,u=v.expando,a=typeof n=="string",f=e.nodeType,l=f?v.cache:e,c=f?e[u]:e[u]&&u;if((!c||!l[c]||!i&&!l[c].data)&&a&&r===t)return;c||(f?e[u]=c=v.deletedIds.pop()||v.guid++:c=u),l[c]||(l[c]={},f||(l[c].toJSON=v.noop));if(typeof n=="object"||typeof n=="function")i?l[c]=v.extend(l[c],n):l[c].data=v.extend(l[c].data,n);return s=l[c],i||(s.data||(s.data={}),s=s.data),r!==t&&(s[v.camelCase(n)]=r),a?(o=s[n],o==null&&(o=s[v.camelCase(n)])):o=s,o},removeData:function(e,t,n){if(!v.acceptData(e))return;var r,i,s,o=e.nodeType,u=o?v.cache:e,a=o?e[v.expando]:v.expando;if(!u[a])return;if(t){r=n?u[a]:u[a].data;if(r){v.isArray(t)||(t in r?t=[t]:(t=v.camelCase(t),t in r?t=[t]:t=t.split(" ")));for(i=0,s=t.length;i1,null,!1))},removeData:function(e){return this.each(function(){v.removeData(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=v._data(e,t),n&&(!r||v.isArray(n)?r=v._data(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),s=v._queueHooks(e,t),o=function(){v.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return v._data(e,n)||v._data(e,n,{empty:v.Callbacks("once memory").add(function(){v.removeData(e,t+"queue",!0),v.removeData(e,n,!0)})})}}),v.fn.extend({queue:function(e,n){var r=2;return typeof e!="string"&&(n=e,e="fx",r--),arguments.length1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})},prop:function(e,t){return v.access(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return e=v.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,s,o,u;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(e&&typeof e=="string"){t=e.split(y);for(n=0,r=this.length;n=0)r=r.replace(" "+n[s]+" "," ");i.className=e?v.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=v(this),u=t,a=e.split(y);while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n==="undefined"||n==="boolean")this.className&&v._data(this,"__className__",this.className),this.className=this.className||e===!1?"":v._data(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n=0)return!0;return!1},val:function(e){var n,r,i,s=this[0];if(!arguments.length){if(s)return n=v.valHooks[s.type]||v.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,typeof r=="string"?r.replace(R,""):r==null?"":r);return}return i=v.isFunction(e),this.each(function(r){var s,o=v(this);if(this.nodeType!==1)return;i?s=e.call(this,r,o.val()):s=e,s==null?s="":typeof s=="number"?s+="":v.isArray(s)&&(s=v.map(s,function(e){return e==null?"":e+""})),n=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()];if(!n||!("set"in n)||n.set(this,s,"value")===t)this.value=s})}}),v.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,s=e.type==="select-one"||i<0,o=s?null:[],u=s?i+1:r.length,a=i<0?u:s?i:0;for(;a=0}),n.length||(e.selectedIndex=-1),n}}},attrFn:{},attr:function(e,n,r,i){var s,o,u,a=e.nodeType;if(!e||a===3||a===8||a===2)return;if(i&&v.isFunction(v.fn[n]))return v(e)[n](r);if(typeof e.getAttribute=="undefined")return v.prop(e,n,r);u=a!==1||!v.isXMLDoc(e),u&&(n=n.toLowerCase(),o=v.attrHooks[n]||(X.test(n)?F:j));if(r!==t){if(r===null){v.removeAttr(e,n);return}return o&&"set"in o&&u&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r)}return o&&"get"in o&&u&&(s=o.get(e,n))!==null?s:(s=e.getAttribute(n),s===null?t:s)},removeAttr:function(e,t){var n,r,i,s,o=0;if(t&&e.nodeType===1){r=t.split(y);for(;o=0}})});var $=/^(?:textarea|input|select)$/i,J=/^([^\.]*|)(?:\.(.+)|)$/,K=/(?:^|\s)hover(\.\S+|)\b/,Q=/^key/,G=/^(?:mouse|contextmenu)|click/,Y=/^(?:focusinfocus|focusoutblur)$/,Z=function(e){return v.event.special.hover?e:e.replace(K,"mouseenter$1 mouseleave$1")};v.event={add:function(e,n,r,i,s){var o,u,a,f,l,c,h,p,d,m,g;if(e.nodeType===3||e.nodeType===8||!n||!r||!(o=v._data(e)))return;r.handler&&(d=r,r=d.handler,s=d.selector),r.guid||(r.guid=v.guid++),a=o.events,a||(o.events=a={}),u=o.handle,u||(o.handle=u=function(e){return typeof v=="undefined"||!!e&&v.event.triggered===e.type?t:v.event.dispatch.apply(u.elem,arguments)},u.elem=e),n=v.trim(Z(n)).split(" ");for(f=0;f=0&&(y=y.slice(0,-1),a=!0),y.indexOf(".")>=0&&(b=y.split("."),y=b.shift(),b.sort());if((!s||v.event.customEvent[y])&&!v.event.global[y])return;n=typeof n=="object"?n[v.expando]?n:new v.Event(y,n):new v.Event(y),n.type=y,n.isTrigger=!0,n.exclusive=a,n.namespace=b.join("."),n.namespace_re=n.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h=y.indexOf(":")<0?"on"+y:"";if(!s){u=v.cache;for(f in u)u[f].events&&u[f].events[y]&&v.event.trigger(n,r,u[f].handle.elem,!0);return}n.result=t,n.target||(n.target=s),r=r!=null?v.makeArray(r):[],r.unshift(n),p=v.event.special[y]||{};if(p.trigger&&p.trigger.apply(s,r)===!1)return;m=[[s,p.bindType||y]];if(!o&&!p.noBubble&&!v.isWindow(s)){g=p.delegateType||y,l=Y.test(g+y)?s:s.parentNode;for(c=s;l;l=l.parentNode)m.push([l,g]),c=l;c===(s.ownerDocument||i)&&m.push([c.defaultView||c.parentWindow||e,g])}for(f=0;f=0:v.find(h,this,null,[s]).length),u[h]&&f.push(c);f.length&&w.push({elem:s,matches:f})}d.length>m&&w.push({elem:this,matches:d.slice(m)});for(r=0;r0?this.on(t,null,e,n):this.trigger(t)},Q.test(t)&&(v.event.fixHooks[t]=v.event.keyHooks),G.test(t)&&(v.event.fixHooks[t]=v.event.mouseHooks)}),function(e,t){function nt(e,t,n,r){n=n||[],t=t||g;var i,s,a,f,l=t.nodeType;if(!e||typeof e!="string")return n;if(l!==1&&l!==9)return[];a=o(t);if(!a&&!r)if(i=R.exec(e))if(f=i[1]){if(l===9){s=t.getElementById(f);if(!s||!s.parentNode)return n;if(s.id===f)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(f))&&u(t,s)&&s.id===f)return n.push(s),n}else{if(i[2])return S.apply(n,x.call(t.getElementsByTagName(e),0)),n;if((f=i[3])&&Z&&t.getElementsByClassName)return S.apply(n,x.call(t.getElementsByClassName(f),0)),n}return vt(e.replace(j,"$1"),t,n,r,a)}function rt(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function it(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function st(e){return N(function(t){return t=+t,N(function(n,r){var i,s=e([],n.length,t),o=s.length;while(o--)n[i=s[o]]&&(n[i]=!(r[i]=n[i]))})})}function ot(e,t,n){if(e===t)return n;var r=e.nextSibling;while(r){if(r===t)return-1;r=r.nextSibling}return 1}function ut(e,t){var n,r,s,o,u,a,f,l=L[d][e+" "];if(l)return t?0:l.slice(0);u=e,a=[],f=i.preFilter;while(u){if(!n||(r=F.exec(u)))r&&(u=u.slice(r[0].length)||u),a.push(s=[]);n=!1;if(r=I.exec(u))s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=r[0].replace(j," ");for(o in i.filter)(r=J[o].exec(u))&&(!f[o]||(r=f[o](r)))&&(s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=o,n.matches=r);if(!n)break}return t?u.length:u?nt.error(e):L(e,a).slice(0)}function at(e,t,r){var i=t.dir,s=r&&t.dir==="parentNode",o=w++;return t.first?function(t,n,r){while(t=t[i])if(s||t.nodeType===1)return e(t,n,r)}:function(t,r,u){if(!u){var a,f=b+" "+o+" ",l=f+n;while(t=t[i])if(s||t.nodeType===1){if((a=t[d])===l)return t.sizset;if(typeof a=="string"&&a.indexOf(f)===0){if(t.sizset)return t}else{t[d]=l;if(e(t,r,u))return t.sizset=!0,t;t.sizset=!1}}}else while(t=t[i])if(s||t.nodeType===1)if(e(t,r,u))return t}}function ft(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function lt(e,t,n,r,i){var s,o=[],u=0,a=e.length,f=t!=null;for(;u-1&&(s[f]=!(o[f]=c))}}else g=lt(g===o?g.splice(d,g.length):g),i?i(null,o,g,a):S.apply(o,g)})}function ht(e){var t,n,r,s=e.length,o=i.relative[e[0].type],u=o||i.relative[" "],a=o?1:0,f=at(function(e){return e===t},u,!0),l=at(function(e){return T.call(t,e)>-1},u,!0),h=[function(e,n,r){return!o&&(r||n!==c)||((t=n).nodeType?f(e,n,r):l(e,n,r))}];for(;a1&&ft(h),a>1&&e.slice(0,a-1).join("").replace(j,"$1"),n,a0,s=e.length>0,o=function(u,a,f,l,h){var p,d,v,m=[],y=0,w="0",x=u&&[],T=h!=null,N=c,C=u||s&&i.find.TAG("*",h&&a.parentNode||a),k=b+=N==null?1:Math.E;T&&(c=a!==g&&a,n=o.el);for(;(p=C[w])!=null;w++){if(s&&p){for(d=0;v=e[d];d++)if(v(p,a,f)){l.push(p);break}T&&(b=k,n=++o.el)}r&&((p=!v&&p)&&y--,u&&x.push(p))}y+=w;if(r&&w!==y){for(d=0;v=t[d];d++)v(x,m,a,f);if(u){if(y>0)while(w--)!x[w]&&!m[w]&&(m[w]=E.call(l));m=lt(m)}S.apply(l,m),T&&!u&&m.length>0&&y+t.length>1&&nt.uniqueSort(l)}return T&&(b=k,c=N),x};return o.el=0,r?N(o):o}function dt(e,t,n){var r=0,i=t.length;for(;r2&&(f=u[0]).type==="ID"&&t.nodeType===9&&!s&&i.relative[u[1].type]){t=i.find.ID(f.matches[0].replace($,""),t,s)[0];if(!t)return n;e=e.slice(u.shift().length)}for(o=J.POS.test(e)?-1:u.length-1;o>=0;o--){f=u[o];if(i.relative[l=f.type])break;if(c=i.find[l])if(r=c(f.matches[0].replace($,""),z.test(u[0].type)&&t.parentNode||t,s)){u.splice(o,1),e=r.length&&u.join("");if(!e)return S.apply(n,x.call(r,0)),n;break}}}return a(e,h)(r,t,s,n,z.test(e)),n}function mt(){}var n,r,i,s,o,u,a,f,l,c,h=!0,p="undefined",d=("sizcache"+Math.random()).replace(".",""),m=String,g=e.document,y=g.documentElement,b=0,w=0,E=[].pop,S=[].push,x=[].slice,T=[].indexOf||function(e){var t=0,n=this.length;for(;ti.cacheLength&&delete e[t.shift()],e[n+" "]=r},e)},k=C(),L=C(),A=C(),O="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",_=M.replace("w","w#"),D="([*^$|!~]?=)",P="\\["+O+"*("+M+")"+O+"*(?:"+D+O+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+_+")|)|)"+O+"*\\]",H=":("+M+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+P+")|[^:]|\\\\.)*|.*))\\)|)",B=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+O+"*((?:-\\d)?\\d*)"+O+"*\\)|)(?=[^-]|$)",j=new RegExp("^"+O+"+|((?:^|[^\\\\])(?:\\\\.)*)"+O+"+$","g"),F=new RegExp("^"+O+"*,"+O+"*"),I=new RegExp("^"+O+"*([\\x20\\t\\r\\n\\f>+~])"+O+"*"),q=new RegExp(H),R=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,U=/^:not/,z=/[\x20\t\r\n\f]*[+~]/,W=/:not\($/,X=/h\d/i,V=/input|select|textarea|button/i,$=/\\(?!\\)/g,J={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),NAME:new RegExp("^\\[name=['\"]?("+M+")['\"]?\\]"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+H),POS:new RegExp(B,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+O+"*(even|odd|(([+-]|)(\\d*)n|)"+O+"*(?:([+-]|)"+O+"*(\\d+)|))"+O+"*\\)|)","i"),needsContext:new RegExp("^"+O+"*[>+~]|"+B,"i")},K=function(e){var t=g.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}},Q=K(function(e){return e.appendChild(g.createComment("")),!e.getElementsByTagName("*").length}),G=K(function(e){return e.innerHTML="",e.firstChild&&typeof e.firstChild.getAttribute!==p&&e.firstChild.getAttribute("href")==="#"}),Y=K(function(e){e.innerHTML="";var t=typeof e.lastChild.getAttribute("multiple");return t!=="boolean"&&t!=="string"}),Z=K(function(e){return e.innerHTML="",!e.getElementsByClassName||!e.getElementsByClassName("e").length?!1:(e.lastChild.className="e",e.getElementsByClassName("e").length===2)}),et=K(function(e){e.id=d+0,e.innerHTML="
",y.insertBefore(e,y.firstChild);var t=g.getElementsByName&&g.getElementsByName(d).length===2+g.getElementsByName(d+0).length;return r=!g.getElementById(d),y.removeChild(e),t});try{x.call(y.childNodes,0)[0].nodeType}catch(tt){x=function(e){var t,n=[];for(;t=this[e];e++)n.push(t);return n}}nt.matches=function(e,t){return nt(e,null,null,t)},nt.matchesSelector=function(e,t){return nt(t,null,null,[e]).length>0},s=nt.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=s(e)}else if(i===3||i===4)return e.nodeValue}else for(;t=e[r];r++)n+=s(t);return n},o=nt.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?t.nodeName!=="HTML":!1},u=nt.contains=y.contains?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!(r&&r.nodeType===1&&n.contains&&n.contains(r))}:y.compareDocumentPosition?function(e,t){return t&&!!(e.compareDocumentPosition(t)&16)}:function(e,t){while(t=t.parentNode)if(t===e)return!0;return!1},nt.attr=function(e,t){var n,r=o(e);return r||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):r||Y?e.getAttribute(t):(n=e.getAttributeNode(t),n?typeof e[t]=="boolean"?e[t]?t:null:n.specified?n.value:null:null)},i=nt.selectors={cacheLength:50,createPseudo:N,match:J,attrHandle:G?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},find:{ID:r?function(e,t,n){if(typeof t.getElementById!==p&&!n){var r=t.getElementById(e);return r&&r.parentNode?[r]:[]}}:function(e,n,r){if(typeof n.getElementById!==p&&!r){var i=n.getElementById(e);return i?i.id===e||typeof i.getAttributeNode!==p&&i.getAttributeNode("id").value===e?[i]:t:[]}},TAG:Q?function(e,t){if(typeof t.getElementsByTagName!==p)return t.getElementsByTagName(e)}:function(e,t){var n=t.getElementsByTagName(e);if(e==="*"){var r,i=[],s=0;for(;r=n[s];s++)r.nodeType===1&&i.push(r);return i}return n},NAME:et&&function(e,t){if(typeof t.getElementsByName!==p)return t.getElementsByName(name)},CLASS:Z&&function(e,t,n){if(typeof t.getElementsByClassName!==p&&!n)return t.getElementsByClassName(e)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace($,""),e[3]=(e[4]||e[5]||"").replace($,""),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1]==="nth"?(e[2]||nt.error(e[0]),e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd")),e[4]=+(e[6]+e[7]||e[2]==="odd")):e[2]&&nt.error(e[0]),e},PSEUDO:function(e){var t,n;if(J.CHILD.test(e[0]))return null;if(e[3])e[2]=e[3];else if(t=e[4])q.test(t)&&(n=ut(t,!0))&&(n=t.indexOf(")",t.length-n)-t.length)&&(t=t.slice(0,n),e[0]=e[0].slice(0,n)),e[2]=t;return e.slice(0,3)}},filter:{ID:r?function(e){return e=e.replace($,""),function(t){return t.getAttribute("id")===e}}:function(e){return e=e.replace($,""),function(t){var n=typeof t.getAttributeNode!==p&&t.getAttributeNode("id");return n&&n.value===e}},TAG:function(e){return e==="*"?function(){return!0}:(e=e.replace($,"").toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[d][e+" "];return t||(t=new RegExp("(^|"+O+")"+e+"("+O+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==p&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r,i){var s=nt.attr(r,e);return s==null?t==="!=":t?(s+="",t==="="?s===n:t==="!="?s!==n:t==="^="?n&&s.indexOf(n)===0:t==="*="?n&&s.indexOf(n)>-1:t==="$="?n&&s.substr(s.length-n.length)===n:t==="~="?(" "+s+" ").indexOf(n)>-1:t==="|="?s===n||s.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r){return e==="nth"?function(e){var t,i,s=e.parentNode;if(n===1&&r===0)return!0;if(s){i=0;for(t=s.firstChild;t;t=t.nextSibling)if(t.nodeType===1){i++;if(e===t)break}}return i-=r,i===n||i%n===0&&i/n>=0}:function(t){var n=t;switch(e){case"only":case"first":while(n=n.previousSibling)if(n.nodeType===1)return!1;if(e==="first")return!0;n=t;case"last":while(n=n.nextSibling)if(n.nodeType===1)return!1;return!0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||nt.error("unsupported pseudo: "+e);return r[d]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?N(function(e,n){var i,s=r(e,t),o=s.length;while(o--)i=T.call(e,s[o]),e[i]=!(n[i]=s[o])}):function(e){return r(e,0,n)}):r}},pseudos:{not:N(function(e){var t=[],n=[],r=a(e.replace(j,"$1"));return r[d]?N(function(e,t,n,i){var s,o=r(e,null,i,[]),u=e.length;while(u--)if(s=o[u])e[u]=!(t[u]=s)}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:N(function(e){return function(t){return nt(e,t).length>0}}),contains:N(function(e){return function(t){return(t.textContent||t.innerText||s(t)).indexOf(e)>-1}}),enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&!!e.checked||t==="option"&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},parent:function(e){return!i.pseudos.empty(e)},empty:function(e){var t;e=e.firstChild;while(e){if(e.nodeName>"@"||(t=e.nodeType)===3||t===4)return!1;e=e.nextSibling}return!0},header:function(e){return X.test(e.nodeName)},text:function(e){var t,n;return e.nodeName.toLowerCase()==="input"&&(t=e.type)==="text"&&((n=e.getAttribute("type"))==null||n.toLowerCase()===t)},radio:rt("radio"),checkbox:rt("checkbox"),file:rt("file"),password:rt("password"),image:rt("image"),submit:it("submit"),reset:it("reset"),button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},input:function(e){return V.test(e.nodeName)},focus:function(e){var t=e.ownerDocument;return e===t.activeElement&&(!t.hasFocus||t.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},active:function(e){return e===e.ownerDocument.activeElement},first:st(function(){return[0]}),last:st(function(e,t){return[t-1]}),eq:st(function(e,t,n){return[n<0?n+t:n]}),even:st(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:st(function(e,t,n){for(var r=n<0?n+t:n;++r",e.querySelectorAll("[selected]").length||i.push("\\["+O+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||i.push(":checked")}),K(function(e){e.innerHTML="

",e.querySelectorAll("[test^='']").length&&i.push("[*^$]="+O+"*(?:\"\"|'')"),e.innerHTML="",e.querySelectorAll(":enabled").length||i.push(":enabled",":disabled")}),i=new RegExp(i.join("|")),vt=function(e,r,s,o,u){if(!o&&!u&&!i.test(e)){var a,f,l=!0,c=d,h=r,p=r.nodeType===9&&e;if(r.nodeType===1&&r.nodeName.toLowerCase()!=="object"){a=ut(e),(l=r.getAttribute("id"))?c=l.replace(n,"\\$&"):r.setAttribute("id",c),c="[id='"+c+"'] ",f=a.length;while(f--)a[f]=c+a[f].join("");h=z.test(e)&&r.parentNode||r,p=a.join(",")}if(p)try{return S.apply(s,x.call(h.querySelectorAll(p),0)),s}catch(v){}finally{l||r.removeAttribute("id")}}return t(e,r,s,o,u)},u&&(K(function(t){e=u.call(t,"div");try{u.call(t,"[test!='']:sizzle"),s.push("!=",H)}catch(n){}}),s=new RegExp(s.join("|")),nt.matchesSelector=function(t,n){n=n.replace(r,"='$1']");if(!o(t)&&!s.test(n)&&!i.test(n))try{var a=u.call(t,n);if(a||e||t.document&&t.document.nodeType!==11)return a}catch(f){}return nt(n,null,null,[t]).length>0})}(),i.pseudos.nth=i.pseudos.eq,i.filters=mt.prototype=i.pseudos,i.setFilters=new mt,nt.attr=v.attr,v.find=nt,v.expr=nt.selectors,v.expr[":"]=v.expr.pseudos,v.unique=nt.uniqueSort,v.text=nt.getText,v.isXMLDoc=nt.isXML,v.contains=nt.contains}(e);var nt=/Until$/,rt=/^(?:parents|prev(?:Until|All))/,it=/^.[^:#\[\.,]*$/,st=v.expr.match.needsContext,ot={children:!0,contents:!0,next:!0,prev:!0};v.fn.extend({find:function(e){var t,n,r,i,s,o,u=this;if(typeof e!="string")return v(e).filter(function(){for(t=0,n=u.length;t0)for(i=r;i=0:v.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=st.test(e)||typeof e!="string"?v(e,t||this.context):0;for(;r-1:v.find.matchesSelector(n,e)){s.push(n);break}n=n.parentNode}}return s=s.length>1?v.unique(s):s,this.pushStack(s,"closest",e)},index:function(e){return e?typeof e=="string"?v.inArray(this[0],v(e)):v.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?v(e,t):v.makeArray(e&&e.nodeType?[e]:e),r=v.merge(this.get(),n);return this.pushStack(ut(n[0])||ut(r[0])?r:v.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),v.fn.andSelf=v.fn.addBack,v.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return at(e,"nextSibling")},prev:function(e){return at(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return v.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return nt.test(e)||(r=n),r&&typeof r=="string"&&(i=v.filter(r,i)),i=this.length>1&&!ot[e]?v.unique(i):i,this.length>1&&rt.test(e)&&(i=i.reverse()),this.pushStack(i,e,l.call(arguments).join(","))}}),v.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),t.length===1?v.find.matchesSelector(t[0],e)?[t[0]]:[]:v.find.matches(e,t)},dir:function(e,n,r){var i=[],s=e[n];while(s&&s.nodeType!==9&&(r===t||s.nodeType!==1||!v(s).is(r)))s.nodeType===1&&i.push(s),s=s[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var ct="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ht=/ jQuery\d+="(?:null|\d+)"/g,pt=/^\s+/,dt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt=/<([\w:]+)/,mt=/]","i"),Et=/^(?:checkbox|radio)$/,St=/checked\s*(?:[^=]|=\s*.checked.)/i,xt=/\/(java|ecma)script/i,Tt=/^\s*\s*$/g,Nt={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},Ct=lt(i),kt=Ct.appendChild(i.createElement("div"));Nt.optgroup=Nt.option,Nt.tbody=Nt.tfoot=Nt.colgroup=Nt.caption=Nt.thead,Nt.th=Nt.td,v.support.htmlSerialize||(Nt._default=[1,"X
","
"]),v.fn.extend({text:function(e){return v.access(this,function(e){return e===t?v.text(this):this.empty().append((this[0]&&this[0].ownerDocument||i).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(v.isFunction(e))return this.each(function(t){v(this).wrapAll(e.call(this,t))});if(this[0]){var t=v(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&e.firstChild.nodeType===1)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(e,this.firstChild)})},before:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(e,this),"before",this.selector)}},after:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this.nextSibling)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(this,e),"after",this.selector)}},remove:function(e,t){var n,r=0;for(;(n=this[r])!=null;r++)if(!e||v.filter(e,[n]).length)!t&&n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),v.cleanData([n])),n.parentNode&&n.parentNode.removeChild(n);return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++){e.nodeType===1&&v.cleanData(e.getElementsByTagName("*"));while(e.firstChild)e.removeChild(e.firstChild)}return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return v.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(ht,""):t;if(typeof e=="string"&&!yt.test(e)&&(v.support.htmlSerialize||!wt.test(e))&&(v.support.leadingWhitespace||!pt.test(e))&&!Nt[(vt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(dt,"<$1>");try{for(;r1&&typeof f=="string"&&St.test(f))return this.each(function(){v(this).domManip(e,n,r)});if(v.isFunction(f))return this.each(function(i){var s=v(this);e[0]=f.call(this,i,n?s.html():t),s.domManip(e,n,r)});if(this[0]){i=v.buildFragment(e,this,l),o=i.fragment,s=o.firstChild,o.childNodes.length===1&&(o=s);if(s){n=n&&v.nodeName(s,"tr");for(u=i.cacheable||c-1;a0?this.clone(!0):this).get(),v(o[i])[t](r),s=s.concat(r);return this.pushStack(s,e,o.selector)}}),v.extend({clone:function(e,t,n){var r,i,s,o;v.support.html5Clone||v.isXMLDoc(e)||!wt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(kt.innerHTML=e.outerHTML,kt.removeChild(o=kt.firstChild));if((!v.support.noCloneEvent||!v.support.noCloneChecked)&&(e.nodeType===1||e.nodeType===11)&&!v.isXMLDoc(e)){Ot(e,o),r=Mt(e),i=Mt(o);for(s=0;r[s];++s)i[s]&&Ot(r[s],i[s])}if(t){At(e,o);if(n){r=Mt(e),i=Mt(o);for(s=0;r[s];++s)At(r[s],i[s])}}return r=i=null,o},clean:function(e,t,n,r){var s,o,u,a,f,l,c,h,p,d,m,g,y=t===i&&Ct,b=[];if(!t||typeof t.createDocumentFragment=="undefined")t=i;for(s=0;(u=e[s])!=null;s++){typeof u=="number"&&(u+="");if(!u)continue;if(typeof u=="string")if(!gt.test(u))u=t.createTextNode(u);else{y=y||lt(t),c=t.createElement("div"),y.appendChild(c),u=u.replace(dt,"<$1>"),a=(vt.exec(u)||["",""])[1].toLowerCase(),f=Nt[a]||Nt._default,l=f[0],c.innerHTML=f[1]+u+f[2];while(l--)c=c.lastChild;if(!v.support.tbody){h=mt.test(u),p=a==="table"&&!h?c.firstChild&&c.firstChild.childNodes:f[1]===""&&!h?c.childNodes:[];for(o=p.length-1;o>=0;--o)v.nodeName(p[o],"tbody")&&!p[o].childNodes.length&&p[o].parentNode.removeChild(p[o])}!v.support.leadingWhitespace&&pt.test(u)&&c.insertBefore(t.createTextNode(pt.exec(u)[0]),c.firstChild),u=c.childNodes,c.parentNode.removeChild(c)}u.nodeType?b.push(u):v.merge(b,u)}c&&(u=c=y=null);if(!v.support.appendChecked)for(s=0;(u=b[s])!=null;s++)v.nodeName(u,"input")?_t(u):typeof u.getElementsByTagName!="undefined"&&v.grep(u.getElementsByTagName("input"),_t);if(n){m=function(e){if(!e.type||xt.test(e.type))return r?r.push(e.parentNode?e.parentNode.removeChild(e):e):n.appendChild(e)};for(s=0;(u=b[s])!=null;s++)if(!v.nodeName(u,"script")||!m(u))n.appendChild(u),typeof u.getElementsByTagName!="undefined"&&(g=v.grep(v.merge([],u.getElementsByTagName("script")),m),b.splice.apply(b,[s+1,0].concat(g)),s+=g.length)}return b},cleanData:function(e,t){var n,r,i,s,o=0,u=v.expando,a=v.cache,f=v.support.deleteExpando,l=v.event.special;for(;(i=e[o])!=null;o++)if(t||v.acceptData(i)){r=i[u],n=r&&a[r];if(n){if(n.events)for(s in n.events)l[s]?v.event.remove(i,s):v.removeEvent(i,s,n.handle);a[r]&&(delete a[r],f?delete i[u]:i.removeAttribute?i.removeAttribute(u):i[u]=null,v.deletedIds.push(r))}}}}),function(){var e,t;v.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e=v.uaMatch(o.userAgent),t={},e.browser&&(t[e.browser]=!0,t.version=e.version),t.chrome?t.webkit=!0:t.webkit&&(t.safari=!0),v.browser=t,v.sub=function(){function e(t,n){return new e.fn.init(t,n)}v.extend(!0,e,this),e.superclass=this,e.fn=e.prototype=this(),e.fn.constructor=e,e.sub=this.sub,e.fn.init=function(r,i){return i&&i instanceof v&&!(i instanceof e)&&(i=e(i)),v.fn.init.call(this,r,i,t)},e.fn.init.prototype=e.fn;var t=e(i);return e}}();var Dt,Pt,Ht,Bt=/alpha\([^)]*\)/i,jt=/opacity=([^)]*)/,Ft=/^(top|right|bottom|left)$/,It=/^(none|table(?!-c[ea]).+)/,qt=/^margin/,Rt=new RegExp("^("+m+")(.*)$","i"),Ut=new RegExp("^("+m+")(?!px)[a-z%]+$","i"),zt=new RegExp("^([-+])=("+m+")","i"),Wt={BODY:"block"},Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:0,fontWeight:400},$t=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"],Kt=v.fn.toggle;v.fn.extend({css:function(e,n){return v.access(this,function(e,n,r){return r!==t?v.style(e,n,r):v.css(e,n)},e,n,arguments.length>1)},show:function(){return Yt(this,!0)},hide:function(){return Yt(this)},toggle:function(e,t){var n=typeof e=="boolean";return v.isFunction(e)&&v.isFunction(t)?Kt.apply(this,arguments):this.each(function(){(n?e:Gt(this))?v(this).show():v(this).hide()})}}),v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Dt(e,"opacity");return n===""?"1":n}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":v.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var s,o,u,a=v.camelCase(n),f=e.style;n=v.cssProps[a]||(v.cssProps[a]=Qt(f,a)),u=v.cssHooks[n]||v.cssHooks[a];if(r===t)return u&&"get"in u&&(s=u.get(e,!1,i))!==t?s:f[n];o=typeof r,o==="string"&&(s=zt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(v.css(e,n)),o="number");if(r==null||o==="number"&&isNaN(r))return;o==="number"&&!v.cssNumber[a]&&(r+="px");if(!u||!("set"in u)||(r=u.set(e,r,i))!==t)try{f[n]=r}catch(l){}},css:function(e,n,r,i){var s,o,u,a=v.camelCase(n);return n=v.cssProps[a]||(v.cssProps[a]=Qt(e.style,a)),u=v.cssHooks[n]||v.cssHooks[a],u&&"get"in u&&(s=u.get(e,!0,i)),s===t&&(s=Dt(e,n)),s==="normal"&&n in Vt&&(s=Vt[n]),r||i!==t?(o=parseFloat(s),r||v.isNumeric(o)?o||0:s):s},swap:function(e,t,n){var r,i,s={};for(i in t)s[i]=e.style[i],e.style[i]=t[i];r=n.call(e);for(i in t)e.style[i]=s[i];return r}}),e.getComputedStyle?Dt=function(t,n){var r,i,s,o,u=e.getComputedStyle(t,null),a=t.style;return u&&(r=u.getPropertyValue(n)||u[n],r===""&&!v.contains(t.ownerDocument,t)&&(r=v.style(t,n)),Ut.test(r)&&qt.test(n)&&(i=a.width,s=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=r,r=u.width,a.width=i,a.minWidth=s,a.maxWidth=o)),r}:i.documentElement.currentStyle&&(Dt=function(e,t){var n,r,i=e.currentStyle&&e.currentStyle[t],s=e.style;return i==null&&s&&s[t]&&(i=s[t]),Ut.test(i)&&!Ft.test(t)&&(n=s.left,r=e.runtimeStyle&&e.runtimeStyle.left,r&&(e.runtimeStyle.left=e.currentStyle.left),s.left=t==="fontSize"?"1em":i,i=s.pixelLeft+"px",s.left=n,r&&(e.runtimeStyle.left=r)),i===""?"auto":i}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&It.test(Dt(e,"display"))?v.swap(e,Xt,function(){return tn(e,t,r)}):tn(e,t,r)},set:function(e,n,r){return Zt(e,n,r?en(e,t,r,v.support.boxSizing&&v.css(e,"boxSizing")==="border-box"):0)}}}),v.support.opacity||(v.cssHooks.opacity={get:function(e,t){return jt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=v.isNumeric(t)?"alpha(opacity="+t*100+")":"",s=r&&r.filter||n.filter||"";n.zoom=1;if(t>=1&&v.trim(s.replace(Bt,""))===""&&n.removeAttribute){n.removeAttribute("filter");if(r&&!r.filter)return}n.filter=Bt.test(s)?s.replace(Bt,i):s+" "+i}}),v(function(){v.support.reliableMarginRight||(v.cssHooks.marginRight={get:function(e,t){return v.swap(e,{display:"inline-block"},function(){if(t)return Dt(e,"marginRight")})}}),!v.support.pixelPosition&&v.fn.position&&v.each(["top","left"],function(e,t){v.cssHooks[t]={get:function(e,n){if(n){var r=Dt(e,t);return Ut.test(r)?v(e).position()[t]+"px":r}}}})}),v.expr&&v.expr.filters&&(v.expr.filters.hidden=function(e){return e.offsetWidth===0&&e.offsetHeight===0||!v.support.reliableHiddenOffsets&&(e.style&&e.style.display||Dt(e,"display"))==="none"},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){var r,i=typeof n=="string"?n.split(" "):[n],s={};for(r=0;r<4;r++)s[e+$t[r]+t]=i[r]||i[r-2]||i[0];return s}},qt.test(e)||(v.cssHooks[e+t].set=Zt)});var rn=/%20/g,sn=/\[\]$/,on=/\r?\n/g,un=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,an=/^(?:select|textarea)/i;v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?v.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||an.test(this.nodeName)||un.test(this.type))}).map(function(e,t){var n=v(this).val();return n==null?null:v.isArray(n)?v.map(n,function(e,n){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),v.param=function(e,n){var r,i=[],s=function(e,t){t=v.isFunction(t)?t():t==null?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};n===t&&(n=v.ajaxSettings&&v.ajaxSettings.traditional);if(v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){s(this.name,this.value)});else for(r in e)fn(r,e[r],n,s);return i.join("&").replace(rn,"+")};var ln,cn,hn=/#.*$/,pn=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,dn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/\?/,yn=/)<[^<]*)*<\/script>/gi,bn=/([?&])_=[^&]*/,wn=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,En=v.fn.load,Sn={},xn={},Tn=["*/"]+["*"];try{cn=s.href}catch(Nn){cn=i.createElement("a"),cn.href="",cn=cn.href}ln=wn.exec(cn.toLowerCase())||[],v.fn.load=function(e,n,r){if(typeof e!="string"&&En)return En.apply(this,arguments);if(!this.length)return this;var i,s,o,u=this,a=e.indexOf(" ");return a>=0&&(i=e.slice(a,e.length),e=e.slice(0,a)),v.isFunction(n)?(r=n,n=t):n&&typeof n=="object"&&(s="POST"),v.ajax({url:e,type:s,dataType:"html",data:n,complete:function(e,t){r&&u.each(r,o||[e.responseText,t,e])}}).done(function(e){o=arguments,u.html(i?v("
").append(e.replace(yn,"")).find(i):e)}),this},v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.each(["get","post"],function(e,n){v[n]=function(e,r,i,s){return v.isFunction(r)&&(s=s||i,i=r,r=t),v.ajax({type:n,url:e,data:r,success:i,dataType:s})}}),v.extend({getScript:function(e,n){return v.get(e,t,n,"script")},getJSON:function(e,t,n){return v.get(e,t,n,"json")},ajaxSetup:function(e,t){return t?Ln(e,v.ajaxSettings):(t=e,e=v.ajaxSettings),Ln(e,t),e},ajaxSettings:{url:cn,isLocal:dn.test(ln[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Tn},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:Cn(Sn),ajaxTransport:Cn(xn),ajax:function(e,n){function T(e,n,s,a){var l,y,b,w,S,T=n;if(E===2)return;E=2,u&&clearTimeout(u),o=t,i=a||"",x.readyState=e>0?4:0,s&&(w=An(c,x,s));if(e>=200&&e<300||e===304)c.ifModified&&(S=x.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=x.getResponseHeader("Etag"),S&&(v.etag[r]=S)),e===304?(T="notmodified",l=!0):(l=On(c,w),T=l.state,y=l.data,b=l.error,l=!b);else{b=T;if(!T||e)T="error",e<0&&(e=0)}x.status=e,x.statusText=(n||T)+"",l?d.resolveWith(h,[y,T,x]):d.rejectWith(h,[x,T,b]),x.statusCode(g),g=t,f&&p.trigger("ajax"+(l?"Success":"Error"),[x,c,l?y:b]),m.fireWith(h,[x,T]),f&&(p.trigger("ajaxComplete",[x,c]),--v.active||v.event.trigger("ajaxStop"))}typeof e=="object"&&(n=e,e=t),n=n||{};var r,i,s,o,u,a,f,l,c=v.ajaxSetup({},n),h=c.context||c,p=h!==c&&(h.nodeType||h instanceof v)?v(h):v.event,d=v.Deferred(),m=v.Callbacks("once memory"),g=c.statusCode||{},b={},w={},E=0,S="canceled",x={readyState:0,setRequestHeader:function(e,t){if(!E){var n=e.toLowerCase();e=w[n]=w[n]||e,b[e]=t}return this},getAllResponseHeaders:function(){return E===2?i:null},getResponseHeader:function(e){var n;if(E===2){if(!s){s={};while(n=pn.exec(i))s[n[1].toLowerCase()]=n[2]}n=s[e.toLowerCase()]}return n===t?null:n},overrideMimeType:function(e){return E||(c.mimeType=e),this},abort:function(e){return e=e||S,o&&o.abort(e),T(0,e),this}};d.promise(x),x.success=x.done,x.error=x.fail,x.complete=m.add,x.statusCode=function(e){if(e){var t;if(E<2)for(t in e)g[t]=[g[t],e[t]];else t=e[x.status],x.always(t)}return this},c.url=((e||c.url)+"").replace(hn,"").replace(mn,ln[1]+"//"),c.dataTypes=v.trim(c.dataType||"*").toLowerCase().split(y),c.crossDomain==null&&(a=wn.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]===ln[1]&&a[2]===ln[2]&&(a[3]||(a[1]==="http:"?80:443))==(ln[3]||(ln[1]==="http:"?80:443)))),c.data&&c.processData&&typeof c.data!="string"&&(c.data=v.param(c.data,c.traditional)),kn(Sn,c,n,x);if(E===2)return x;f=c.global,c.type=c.type.toUpperCase(),c.hasContent=!vn.test(c.type),f&&v.active++===0&&v.event.trigger("ajaxStart");if(!c.hasContent){c.data&&(c.url+=(gn.test(c.url)?"&":"?")+c.data,delete c.data),r=c.url;if(c.cache===!1){var N=v.now(),C=c.url.replace(bn,"$1_="+N);c.url=C+(C===c.url?(gn.test(c.url)?"&":"?")+"_="+N:"")}}(c.data&&c.hasContent&&c.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",c.contentType),c.ifModified&&(r=r||c.url,v.lastModified[r]&&x.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&x.setRequestHeader("If-None-Match",v.etag[r])),x.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+(c.dataTypes[0]!=="*"?", "+Tn+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)x.setRequestHeader(l,c.headers[l]);if(!c.beforeSend||c.beforeSend.call(h,x,c)!==!1&&E!==2){S="abort";for(l in{success:1,error:1,complete:1})x[l](c[l]);o=kn(xn,c,n,x);if(!o)T(-1,"No Transport");else{x.readyState=1,f&&p.trigger("ajaxSend",[x,c]),c.async&&c.timeout>0&&(u=setTimeout(function(){x.abort("timeout")},c.timeout));try{E=1,o.send(b,T)}catch(k){if(!(E<2))throw k;T(-1,k)}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var Mn=[],_n=/\?/,Dn=/(=)\?(?=&|$)|\?\?/,Pn=v.now();v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mn.pop()||v.expando+"_"+Pn++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(n,r,i){var s,o,u,a=n.data,f=n.url,l=n.jsonp!==!1,c=l&&Dn.test(f),h=l&&!c&&typeof a=="string"&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Dn.test(a);if(n.dataTypes[0]==="jsonp"||c||h)return s=n.jsonpCallback=v.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,o=e[s],c?n.url=f.replace(Dn,"$1"+s):h?n.data=a.replace(Dn,"$1"+s):l&&(n.url+=(_n.test(f)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return u||v.error(s+" was not called"),u[0]},n.dataTypes[0]="json",e[s]=function(){u=arguments},i.always(function(){e[s]=o,n[s]&&(n.jsonpCallback=r.jsonpCallback,Mn.push(s)),u&&v.isFunction(o)&&o(u[0]),u=o=t}),"script"}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),v.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=i.head||i.getElementsByTagName("head")[0]||i.documentElement;return{send:function(s,o){n=i.createElement("script"),n.async="async",e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,i){if(i||!n.readyState||/loaded|complete/.test(n.readyState))n.onload=n.onreadystatechange=null,r&&n.parentNode&&r.removeChild(n),n=t,i||o(200,"success")},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(0,1)}}}});var Hn,Bn=e.ActiveXObject?function(){for(var e in Hn)Hn[e](0,1)}:!1,jn=0;v.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&Fn()||In()}:Fn,function(e){v.extend(v.support,{ajax:!!e,cors:!!e&&"withCredentials"in e})}(v.ajaxSettings.xhr()),v.support.ajax&&v.ajaxTransport(function(n){if(!n.crossDomain||v.support.cors){var r;return{send:function(i,s){var o,u,a=n.xhr();n.username?a.open(n.type,n.url,n.async,n.username,n.password):a.open(n.type,n.url,n.async);if(n.xhrFields)for(u in n.xhrFields)a[u]=n.xhrFields[u];n.mimeType&&a.overrideMimeType&&a.overrideMimeType(n.mimeType),!n.crossDomain&&!i["X-Requested-With"]&&(i["X-Requested-With"]="XMLHttpRequest");try{for(u in i)a.setRequestHeader(u,i[u])}catch(f){}a.send(n.hasContent&&n.data||null),r=function(e,i){var u,f,l,c,h;try{if(r&&(i||a.readyState===4)){r=t,o&&(a.onreadystatechange=v.noop,Bn&&delete Hn[o]);if(i)a.readyState!==4&&a.abort();else{u=a.status,l=a.getAllResponseHeaders(),c={},h=a.responseXML,h&&h.documentElement&&(c.xml=h);try{c.text=a.responseText}catch(p){}try{f=a.statusText}catch(p){f=""}!u&&n.isLocal&&!n.crossDomain?u=c.text?200:404:u===1223&&(u=204)}}}catch(d){i||s(-1,d)}c&&s(u,f,c,l)},n.async?a.readyState===4?setTimeout(r,0):(o=++jn,Bn&&(Hn||(Hn={},v(e).unload(Bn)),Hn[o]=r),a.onreadystatechange=r):r()},abort:function(){r&&r(0,1)}}}});var qn,Rn,Un=/^(?:toggle|show|hide)$/,zn=new RegExp("^(?:([-+])=|)("+m+")([a-z%]*)$","i"),Wn=/queueHooks$/,Xn=[Gn],Vn={"*":[function(e,t){var n,r,i=this.createTween(e,t),s=zn.exec(t),o=i.cur(),u=+o||0,a=1,f=20;if(s){n=+s[2],r=s[3]||(v.cssNumber[e]?"":"px");if(r!=="px"&&u){u=v.css(i.elem,e,!0)||n||1;do a=a||".5",u/=a,v.style(i.elem,e,u+r);while(a!==(a=i.cur()/o)&&a!==1&&--f)}i.unit=r,i.start=u,i.end=s[1]?u+(s[1]+1)*n:n}return i}]};v.Animation=v.extend(Kn,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;r-1,f={},l={},c,h;a?(l=i.position(),c=l.top,h=l.left):(c=parseFloat(o)||0,h=parseFloat(u)||0),v.isFunction(t)&&(t=t.call(e,n,s)),t.top!=null&&(f.top=t.top-s.top+c),t.left!=null&&(f.left=t.left-s.left+h),"using"in t?t.using.call(e,f):i.css(f)}},v.fn.extend({position:function(){if(!this[0])return;var e=this[0],t=this.offsetParent(),n=this.offset(),r=er.test(t[0].nodeName)?{top:0,left:0}:t.offset();return n.top-=parseFloat(v.css(e,"marginTop"))||0,n.left-=parseFloat(v.css(e,"marginLeft"))||0,r.top+=parseFloat(v.css(t[0],"borderTopWidth"))||0,r.left+=parseFloat(v.css(t[0],"borderLeftWidth"))||0,{top:n.top-r.top,left:n.left-r.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||i.body;while(e&&!er.test(e.nodeName)&&v.css(e,"position")==="static")e=e.offsetParent;return e||i.body})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);v.fn[e]=function(i){return v.access(this,function(e,i,s){var o=tr(e);if(s===t)return o?n in o?o[n]:o.document.documentElement[i]:e[i];o?o.scrollTo(r?v(o).scrollLeft():s,r?s:v(o).scrollTop()):e[i]=s},e,i,arguments.length,null)}}),v.each({Height:"height",Width:"width"},function(e,n){v.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){v.fn[i]=function(i,s){var o=arguments.length&&(r||typeof i!="boolean"),u=r||(i===!0||s===!0?"margin":"border");return v.access(this,function(n,r,i){var s;return v.isWindow(n)?n.document.documentElement["client"+e]:n.nodeType===9?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?v.css(n,r,i,u):v.style(n,r,i,u)},n,o?i:t,o,null)}})}),e.jQuery=e.$=v,typeof define=="function"&&define.amd&&define.amd.ajQuery&&define("jquery",[],function(){return v})})(window); \ No newline at end of file diff --git a/lib/admin/public/bower_components/qrcodejs/qrcode.js b/lib/admin/public/bower_components/qrcodejs/qrcode.js deleted file mode 100644 index c1217a38..00000000 --- a/lib/admin/public/bower_components/qrcodejs/qrcode.js +++ /dev/null @@ -1,609 +0,0 @@ -/** - * @fileoverview - * - Using the 'QRCode for Javascript library' - * - Fixed dataset of 'QRCode for Javascript library' for support full-spec. - * - this library has no dependencies. - * - * @author davidshimjs - * @see http://www.d-project.com/ - * @see http://jeromeetienne.github.com/jquery-qrcode/ - */ -var QRCode; - -(function () { - //--------------------------------------------------------------------- - // QRCode for JavaScript - // - // Copyright (c) 2009 Kazuhiko Arase - // - // URL: http://www.d-project.com/ - // - // Licensed under the MIT license: - // http://www.opensource.org/licenses/mit-license.php - // - // The word "QR Code" is registered trademark of - // DENSO WAVE INCORPORATED - // http://www.denso-wave.com/qrcode/faqpatent-e.html - // - //--------------------------------------------------------------------- - function QR8bitByte(data) { - this.mode = QRMode.MODE_8BIT_BYTE; - this.data = data; - this.parsedData = []; - - // Added to support UTF-8 Characters - for (var i = 0, l = this.data.length; i < l; i++) { - var byteArray = []; - var code = this.data.charCodeAt(i); - - if (code > 0x10000) { - byteArray[0] = 0xF0 | ((code & 0x1C0000) >>> 18); - byteArray[1] = 0x80 | ((code & 0x3F000) >>> 12); - byteArray[2] = 0x80 | ((code & 0xFC0) >>> 6); - byteArray[3] = 0x80 | (code & 0x3F); - } else if (code > 0x800) { - byteArray[0] = 0xE0 | ((code & 0xF000) >>> 12); - byteArray[1] = 0x80 | ((code & 0xFC0) >>> 6); - byteArray[2] = 0x80 | (code & 0x3F); - } else if (code > 0x80) { - byteArray[0] = 0xC0 | ((code & 0x7C0) >>> 6); - byteArray[1] = 0x80 | (code & 0x3F); - } else { - byteArray[0] = code; - } - - this.parsedData.push(byteArray); - } - - this.parsedData = Array.prototype.concat.apply([], this.parsedData); - - if (this.parsedData.length != this.data.length) { - this.parsedData.unshift(191); - this.parsedData.unshift(187); - this.parsedData.unshift(239); - } - } - - QR8bitByte.prototype = { - getLength: function (buffer) { - return this.parsedData.length; - }, - write: function (buffer) { - for (var i = 0, l = this.parsedData.length; i < l; i++) { - buffer.put(this.parsedData[i], 8); - } - } - }; - - function QRCodeModel(typeNumber, errorCorrectLevel) { - this.typeNumber = typeNumber; - this.errorCorrectLevel = errorCorrectLevel; - this.modules = null; - this.moduleCount = 0; - this.dataCache = null; - this.dataList = []; - } - - QRCodeModel.prototype={addData:function(data){var newData=new QR8bitByte(data);this.dataList.push(newData);this.dataCache=null;},isDark:function(row,col){if(row<0||this.moduleCount<=row||col<0||this.moduleCount<=col){throw new Error(row+","+col);} - return this.modules[row][col];},getModuleCount:function(){return this.moduleCount;},make:function(){this.makeImpl(false,this.getBestMaskPattern());},makeImpl:function(test,maskPattern){this.moduleCount=this.typeNumber*4+17;this.modules=new Array(this.moduleCount);for(var row=0;row=7){this.setupTypeNumber(test);} - if(this.dataCache==null){this.dataCache=QRCodeModel.createData(this.typeNumber,this.errorCorrectLevel,this.dataList);} - this.mapData(this.dataCache,maskPattern);},setupPositionProbePattern:function(row,col){for(var r=-1;r<=7;r++){if(row+r<=-1||this.moduleCount<=row+r)continue;for(var c=-1;c<=7;c++){if(col+c<=-1||this.moduleCount<=col+c)continue;if((0<=r&&r<=6&&(c==0||c==6))||(0<=c&&c<=6&&(r==0||r==6))||(2<=r&&r<=4&&2<=c&&c<=4)){this.modules[row+r][col+c]=true;}else{this.modules[row+r][col+c]=false;}}}},getBestMaskPattern:function(){var minLostPoint=0;var pattern=0;for(var i=0;i<8;i++){this.makeImpl(true,i);var lostPoint=QRUtil.getLostPoint(this);if(i==0||minLostPoint>lostPoint){minLostPoint=lostPoint;pattern=i;}} - return pattern;},createMovieClip:function(target_mc,instance_name,depth){var qr_mc=target_mc.createEmptyMovieClip(instance_name,depth);var cs=1;this.make();for(var row=0;row>i)&1)==1);this.modules[Math.floor(i/3)][i%3+this.moduleCount-8-3]=mod;} - for(var i=0;i<18;i++){var mod=(!test&&((bits>>i)&1)==1);this.modules[i%3+this.moduleCount-8-3][Math.floor(i/3)]=mod;}},setupTypeInfo:function(test,maskPattern){var data=(this.errorCorrectLevel<<3)|maskPattern;var bits=QRUtil.getBCHTypeInfo(data);for(var i=0;i<15;i++){var mod=(!test&&((bits>>i)&1)==1);if(i<6){this.modules[i][8]=mod;}else if(i<8){this.modules[i+1][8]=mod;}else{this.modules[this.moduleCount-15+i][8]=mod;}} - for(var i=0;i<15;i++){var mod=(!test&&((bits>>i)&1)==1);if(i<8){this.modules[8][this.moduleCount-i-1]=mod;}else if(i<9){this.modules[8][15-i-1+1]=mod;}else{this.modules[8][15-i-1]=mod;}} - this.modules[this.moduleCount-8][8]=(!test);},mapData:function(data,maskPattern){var inc=-1;var row=this.moduleCount-1;var bitIndex=7;var byteIndex=0;for(var col=this.moduleCount-1;col>0;col-=2){if(col==6)col--;while(true){for(var c=0;c<2;c++){if(this.modules[row][col-c]==null){var dark=false;if(byteIndex>>bitIndex)&1)==1);} - var mask=QRUtil.getMask(maskPattern,row,col-c);if(mask){dark=!dark;} - this.modules[row][col-c]=dark;bitIndex--;if(bitIndex==-1){byteIndex++;bitIndex=7;}}} - row+=inc;if(row<0||this.moduleCount<=row){row-=inc;inc=-inc;break;}}}}};QRCodeModel.PAD0=0xEC;QRCodeModel.PAD1=0x11;QRCodeModel.createData=function(typeNumber,errorCorrectLevel,dataList){var rsBlocks=QRRSBlock.getRSBlocks(typeNumber,errorCorrectLevel);var buffer=new QRBitBuffer();for(var i=0;itotalDataCount*8){throw new Error("code length overflow. (" - +buffer.getLengthInBits() - +">" - +totalDataCount*8 - +")");} - if(buffer.getLengthInBits()+4<=totalDataCount*8){buffer.put(0,4);} - while(buffer.getLengthInBits()%8!=0){buffer.putBit(false);} - while(true){if(buffer.getLengthInBits()>=totalDataCount*8){break;} - buffer.put(QRCodeModel.PAD0,8);if(buffer.getLengthInBits()>=totalDataCount*8){break;} - buffer.put(QRCodeModel.PAD1,8);} - return QRCodeModel.createBytes(buffer,rsBlocks);};QRCodeModel.createBytes=function(buffer,rsBlocks){var offset=0;var maxDcCount=0;var maxEcCount=0;var dcdata=new Array(rsBlocks.length);var ecdata=new Array(rsBlocks.length);for(var r=0;r=0)?modPoly.get(modIndex):0;}} - var totalCodeCount=0;for(var i=0;i=0){d^=(QRUtil.G15<<(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G15)));} - return((data<<10)|d)^QRUtil.G15_MASK;},getBCHTypeNumber:function(data){var d=data<<12;while(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G18)>=0){d^=(QRUtil.G18<<(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G18)));} - return(data<<12)|d;},getBCHDigit:function(data){var digit=0;while(data!=0){digit++;data>>>=1;} - return digit;},getPatternPosition:function(typeNumber){return QRUtil.PATTERN_POSITION_TABLE[typeNumber-1];},getMask:function(maskPattern,i,j){switch(maskPattern){case QRMaskPattern.PATTERN000:return(i+j)%2==0;case QRMaskPattern.PATTERN001:return i%2==0;case QRMaskPattern.PATTERN010:return j%3==0;case QRMaskPattern.PATTERN011:return(i+j)%3==0;case QRMaskPattern.PATTERN100:return(Math.floor(i/2)+Math.floor(j/3))%2==0;case QRMaskPattern.PATTERN101:return(i*j)%2+(i*j)%3==0;case QRMaskPattern.PATTERN110:return((i*j)%2+(i*j)%3)%2==0;case QRMaskPattern.PATTERN111:return((i*j)%3+(i+j)%2)%2==0;default:throw new Error("bad maskPattern:"+maskPattern);}},getErrorCorrectPolynomial:function(errorCorrectLength){var a=new QRPolynomial([1],0);for(var i=0;i5){lostPoint+=(3+sameCount-5);}}} - for(var row=0;row=256){n-=255;} - return QRMath.EXP_TABLE[n];},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)};for(var i=0;i<8;i++){QRMath.EXP_TABLE[i]=1<>>(7-index%8))&1)==1;},put:function(num,length){for(var i=0;i>>(length-i-1))&1)==1);}},getLengthInBits:function(){return this.length;},putBit:function(bit){var bufIndex=Math.floor(this.length/8);if(this.buffer.length<=bufIndex){this.buffer.push(0);} - if(bit){this.buffer[bufIndex]|=(0x80>>>(this.length%8));} - this.length++;}};var QRCodeLimitLength=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]]; - - function _isSupportCanvas() { - return typeof CanvasRenderingContext2D != "undefined"; - } - - // android 2.x doesn't support Data-URI spec - function _getAndroid() { - var android = false; - var sAgent = navigator.userAgent; - - if (/android/i.test(sAgent)) { // android - android = true; - aMat = sAgent.toString().match(/android ([0-9]\.[0-9])/i); - - if (aMat && aMat[1]) { - android = parseFloat(aMat[1]); - } - } - - return android; - } - - var svgDrawer = (function() { - - var Drawing = function (el, htOption) { - this._el = el; - this._htOption = htOption; - }; - - Drawing.prototype.draw = function (oQRCode) { - var _htOption = this._htOption; - var _el = this._el; - var nCount = oQRCode.getModuleCount(); - var nWidth = Math.floor(_htOption.width / nCount); - var nHeight = Math.floor(_htOption.height / nCount); - - this.clear(); - - function makeSVG(tag, attrs) { - var el = document.createElementNS('http://www.w3.org/2000/svg', tag); - for (var k in attrs) - if (attrs.hasOwnProperty(k)) el.setAttribute(k, attrs[k]); - return el; - } - - var svg = makeSVG("svg" , {'viewBox': '0 0 ' + String(nCount) + " " + String(nCount), 'width': '100%', 'height': '100%', 'fill': _htOption.colorLight}); - svg.setAttributeNS("http://www.w3.org/2000/xmlns/", "xmlns:xlink", "http://www.w3.org/1999/xlink"); - _el.appendChild(svg); - - svg.appendChild(makeSVG("rect", {"fill": _htOption.colorDark, "width": "1", "height": "1", "id": "template"})); - - for (var row = 0; row < nCount; row++) { - for (var col = 0; col < nCount; col++) { - if (oQRCode.isDark(row, col)) { - var child = makeSVG("use", {"x": String(row), "y": String(col)}); - child.setAttributeNS("http://www.w3.org/1999/xlink", "href", "#template") - svg.appendChild(child); - } - } - } - }; - Drawing.prototype.clear = function () { - while (this._el.hasChildNodes()) - this._el.removeChild(this._el.lastChild); - }; - return Drawing; - })(); - - var useSVG = document.documentElement.tagName.toLowerCase() === "svg"; - - // Drawing in DOM by using Table tag - var Drawing = useSVG ? svgDrawer : !_isSupportCanvas() ? (function () { - var Drawing = function (el, htOption) { - this._el = el; - this._htOption = htOption; - }; - - /** - * Draw the QRCode - * - * @param {QRCode} oQRCode - */ - Drawing.prototype.draw = function (oQRCode) { - var _htOption = this._htOption; - var _el = this._el; - var nCount = oQRCode.getModuleCount(); - var nWidth = Math.floor(_htOption.width / nCount); - var nHeight = Math.floor(_htOption.height / nCount); - var aHTML = ['
']; - - for (var row = 0; row < nCount; row++) { - aHTML.push(''); - - for (var col = 0; col < nCount; col++) { - aHTML.push(''); - } - - aHTML.push(''); - } - - aHTML.push('
'); - _el.innerHTML = aHTML.join(''); - - // Fix the margin values as real size. - var elTable = _el.childNodes[0]; - var nLeftMarginTable = (_htOption.width - elTable.offsetWidth) / 2; - var nTopMarginTable = (_htOption.height - elTable.offsetHeight) / 2; - - if (nLeftMarginTable > 0 && nTopMarginTable > 0) { - elTable.style.margin = nTopMarginTable + "px " + nLeftMarginTable + "px"; - } - }; - - /** - * Clear the QRCode - */ - Drawing.prototype.clear = function () { - this._el.innerHTML = ''; - }; - - return Drawing; - })() : (function () { // Drawing in Canvas - function _onMakeImage() { - this._elImage.src = this._elCanvas.toDataURL("image/png"); - this._elImage.style.display = "block"; - this._elCanvas.style.display = "none"; - } - - // Android 2.1 bug workaround - // http://code.google.com/p/android/issues/detail?id=5141 - if (this._android && this._android <= 2.1) { - var factor = 1 / window.devicePixelRatio; - var drawImage = CanvasRenderingContext2D.prototype.drawImage; - CanvasRenderingContext2D.prototype.drawImage = function (image, sx, sy, sw, sh, dx, dy, dw, dh) { - if (("nodeName" in image) && /img/i.test(image.nodeName)) { - for (var i = arguments.length - 1; i >= 1; i--) { - arguments[i] = arguments[i] * factor; - } - } else if (typeof dw == "undefined") { - arguments[1] *= factor; - arguments[2] *= factor; - arguments[3] *= factor; - arguments[4] *= factor; - } - - drawImage.apply(this, arguments); - }; - } - - /** - * Check whether the user's browser supports Data URI or not - * - * @private - * @param {Function} fSuccess Occurs if it supports Data URI - * @param {Function} fFail Occurs if it doesn't support Data URI - */ - function _safeSetDataURI(fSuccess, fFail) { - var self = this; - self._fFail = fFail; - self._fSuccess = fSuccess; - - // Check it just once - if (self._bSupportDataURI === null) { - var el = document.createElement("img"); - var fOnError = function() { - self._bSupportDataURI = false; - - if (self._fFail) { - _fFail.call(self); - } - }; - var fOnSuccess = function() { - self._bSupportDataURI = true; - - if (self._fSuccess) { - self._fSuccess.call(self); - } - }; - - el.onabort = fOnError; - el.onerror = fOnError; - el.onload = fOnSuccess; - el.src = "data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="; // the Image contains 1px data. - return; - } else if (self._bSupportDataURI === true && self._fSuccess) { - self._fSuccess.call(self); - } else if (self._bSupportDataURI === false && self._fFail) { - self._fFail.call(self); - } - }; - - /** - * Drawing QRCode by using canvas - * - * @constructor - * @param {HTMLElement} el - * @param {Object} htOption QRCode Options - */ - var Drawing = function (el, htOption) { - this._bIsPainted = false; - this._android = _getAndroid(); - - this._htOption = htOption; - this._elCanvas = document.createElement("canvas"); - this._elCanvas.width = htOption.width; - this._elCanvas.height = htOption.height; - el.appendChild(this._elCanvas); - this._el = el; - this._oContext = this._elCanvas.getContext("2d"); - this._bIsPainted = false; - this._elImage = document.createElement("img"); - this._elImage.alt = "Scan me!"; - this._elImage.style.display = "none"; - this._el.appendChild(this._elImage); - this._bSupportDataURI = null; - }; - - /** - * Draw the QRCode - * - * @param {QRCode} oQRCode - */ - Drawing.prototype.draw = function (oQRCode) { - var _elImage = this._elImage; - var _oContext = this._oContext; - var _htOption = this._htOption; - - var nCount = oQRCode.getModuleCount(); - var nWidth = _htOption.width / nCount; - var nHeight = _htOption.height / nCount; - var nRoundedWidth = Math.round(nWidth); - var nRoundedHeight = Math.round(nHeight); - - _elImage.style.display = "none"; - this.clear(); - - for (var row = 0; row < nCount; row++) { - for (var col = 0; col < nCount; col++) { - var bIsDark = oQRCode.isDark(row, col); - var nLeft = col * nWidth; - var nTop = row * nHeight; - _oContext.strokeStyle = bIsDark ? _htOption.colorDark : _htOption.colorLight; - _oContext.lineWidth = 1; - _oContext.fillStyle = bIsDark ? _htOption.colorDark : _htOption.colorLight; - _oContext.fillRect(nLeft, nTop, nWidth, nHeight); - - // 안티 앨리어싱 방지 처리 - _oContext.strokeRect( - Math.floor(nLeft) + 0.5, - Math.floor(nTop) + 0.5, - nRoundedWidth, - nRoundedHeight - ); - - _oContext.strokeRect( - Math.ceil(nLeft) - 0.5, - Math.ceil(nTop) - 0.5, - nRoundedWidth, - nRoundedHeight - ); - } - } - - this._bIsPainted = true; - }; - - /** - * Make the image from Canvas if the browser supports Data URI. - */ - Drawing.prototype.makeImage = function () { - if (this._bIsPainted) { - _safeSetDataURI.call(this, _onMakeImage); - } - }; - - /** - * Return whether the QRCode is painted or not - * - * @return {Boolean} - */ - Drawing.prototype.isPainted = function () { - return this._bIsPainted; - }; - - /** - * Clear the QRCode - */ - Drawing.prototype.clear = function () { - this._oContext.clearRect(0, 0, this._elCanvas.width, this._elCanvas.height); - this._bIsPainted = false; - }; - - /** - * @private - * @param {Number} nNumber - */ - Drawing.prototype.round = function (nNumber) { - if (!nNumber) { - return nNumber; - } - - return Math.floor(nNumber * 1000) / 1000; - }; - - return Drawing; - })(); - - /** - * Get the type by string length - * - * @private - * @param {String} sText - * @param {Number} nCorrectLevel - * @return {Number} type - */ - function _getTypeNumber(sText, nCorrectLevel) { - var nType = 1; - var length = _getUTF8Length(sText); - - for (var i = 0, len = QRCodeLimitLength.length; i <= len; i++) { - var nLimit = 0; - - switch (nCorrectLevel) { - case QRErrorCorrectLevel.L : - nLimit = QRCodeLimitLength[i][0]; - break; - case QRErrorCorrectLevel.M : - nLimit = QRCodeLimitLength[i][1]; - break; - case QRErrorCorrectLevel.Q : - nLimit = QRCodeLimitLength[i][2]; - break; - case QRErrorCorrectLevel.H : - nLimit = QRCodeLimitLength[i][3]; - break; - } - - if (length <= nLimit) { - break; - } else { - nType++; - } - } - - if (nType > QRCodeLimitLength.length) { - throw new Error("Too long data"); - } - - return nType; - } - - function _getUTF8Length(sText) { - var replacedText = encodeURI(sText).toString().replace(/\%[0-9a-fA-F]{2}/g, 'a'); - return replacedText.length + (replacedText.length != sText ? 3 : 0); - } - - /** - * @class QRCode - * @constructor - * @example - * new QRCode(document.getElementById("test"), "http://jindo.dev.naver.com/collie"); - * - * @example - * var oQRCode = new QRCode("test", { - * text : "http://naver.com", - * width : 128, - * height : 128 - * }); - * - * oQRCode.clear(); // Clear the QRCode. - * oQRCode.makeCode("http://map.naver.com"); // Re-create the QRCode. - * - * @param {HTMLElement|String} el target element or 'id' attribute of element. - * @param {Object|String} vOption - * @param {String} vOption.text QRCode link data - * @param {Number} [vOption.width=256] - * @param {Number} [vOption.height=256] - * @param {String} [vOption.colorDark="#000000"] - * @param {String} [vOption.colorLight="#ffffff"] - * @param {QRCode.CorrectLevel} [vOption.correctLevel=QRCode.CorrectLevel.H] [L|M|Q|H] - */ - QRCode = function (el, vOption) { - this._htOption = { - width : 256, - height : 256, - typeNumber : 4, - colorDark : "#000000", - colorLight : "#ffffff", - correctLevel : QRErrorCorrectLevel.H - }; - - if (typeof vOption === 'string') { - vOption = { - text : vOption - }; - } - - // Overwrites options - if (vOption) { - for (var i in vOption) { - this._htOption[i] = vOption[i]; - } - } - - if (typeof el == "string") { - el = document.getElementById(el); - } - - this._android = _getAndroid(); - this._el = el; - this._oQRCode = null; - this._oDrawing = new Drawing(this._el, this._htOption); - - if (this._htOption.text) { - this.makeCode(this._htOption.text); - } - }; - - /** - * Make the QRCode - * - * @param {String} sText link data - */ - QRCode.prototype.makeCode = function (sText) { - this._oQRCode = new QRCodeModel(_getTypeNumber(sText, this._htOption.correctLevel), this._htOption.correctLevel); - this._oQRCode.addData(sText); - this._oQRCode.make(); - this._el.title = sText; - this._oDrawing.draw(this._oQRCode); - this.makeImage(); - }; - - /** - * Make the Image from Canvas element - * - It occurs automatically - * - Android below 3 doesn't support Data-URI spec. - * - * @private - */ - QRCode.prototype.makeImage = function () { - if (typeof this._oDrawing.makeImage == "function" && (!this._android || this._android >= 3)) { - this._oDrawing.makeImage(); - } - }; - - /** - * Clear the QRCode - */ - QRCode.prototype.clear = function () { - this._oDrawing.clear(); - }; - - /** - * @name QRCode.CorrectLevel - */ - QRCode.CorrectLevel = QRErrorCorrectLevel; -})(); diff --git a/lib/admin/public/bower_components/qrcodejs/qrcode.min.js b/lib/admin/public/bower_components/qrcodejs/qrcode.min.js deleted file mode 100644 index 993e88f3..00000000 --- a/lib/admin/public/bower_components/qrcodejs/qrcode.min.js +++ /dev/null @@ -1 +0,0 @@ -var QRCode;!function(){function a(a){this.mode=c.MODE_8BIT_BYTE,this.data=a,this.parsedData=[];for(var b=[],d=0,e=this.data.length;e>d;d++){var f=this.data.charCodeAt(d);f>65536?(b[0]=240|(1835008&f)>>>18,b[1]=128|(258048&f)>>>12,b[2]=128|(4032&f)>>>6,b[3]=128|63&f):f>2048?(b[0]=224|(61440&f)>>>12,b[1]=128|(4032&f)>>>6,b[2]=128|63&f):f>128?(b[0]=192|(1984&f)>>>6,b[1]=128|63&f):b[0]=f,this.parsedData=this.parsedData.concat(b)}this.parsedData.length!=this.data.length&&(this.parsedData.unshift(191),this.parsedData.unshift(187),this.parsedData.unshift(239))}function b(a,b){this.typeNumber=a,this.errorCorrectLevel=b,this.modules=null,this.moduleCount=0,this.dataCache=null,this.dataList=[]}function i(a,b){if(void 0==a.length)throw new Error(a.length+"/"+b);for(var c=0;c=f;f++){var h=0;switch(b){case d.L:h=l[f][0];break;case d.M:h=l[f][1];break;case d.Q:h=l[f][2];break;case d.H:h=l[f][3]}if(h>=e)break;c++}if(c>l.length)throw new Error("Too long data");return c}function s(a){var b=encodeURI(a).toString().replace(/\%[0-9a-fA-F]{2}/g,"a");return b.length+(b.length!=a?3:0)}a.prototype={getLength:function(){return this.parsedData.length},write:function(a){for(var b=0,c=this.parsedData.length;c>b;b++)a.put(this.parsedData[b],8)}},b.prototype={addData:function(b){var c=new a(b);this.dataList.push(c),this.dataCache=null},isDark:function(a,b){if(0>a||this.moduleCount<=a||0>b||this.moduleCount<=b)throw new Error(a+","+b);return this.modules[a][b]},getModuleCount:function(){return this.moduleCount},make:function(){this.makeImpl(!1,this.getBestMaskPattern())},makeImpl:function(a,c){this.moduleCount=4*this.typeNumber+17,this.modules=new Array(this.moduleCount);for(var d=0;d=7&&this.setupTypeNumber(a),null==this.dataCache&&(this.dataCache=b.createData(this.typeNumber,this.errorCorrectLevel,this.dataList)),this.mapData(this.dataCache,c)},setupPositionProbePattern:function(a,b){for(var c=-1;7>=c;c++)if(!(-1>=a+c||this.moduleCount<=a+c))for(var d=-1;7>=d;d++)-1>=b+d||this.moduleCount<=b+d||(this.modules[a+c][b+d]=c>=0&&6>=c&&(0==d||6==d)||d>=0&&6>=d&&(0==c||6==c)||c>=2&&4>=c&&d>=2&&4>=d?!0:!1)},getBestMaskPattern:function(){for(var a=0,b=0,c=0;8>c;c++){this.makeImpl(!0,c);var d=f.getLostPoint(this);(0==c||a>d)&&(a=d,b=c)}return b},createMovieClip:function(a,b,c){var d=a.createEmptyMovieClip(b,c),e=1;this.make();for(var f=0;f=g;g++)for(var h=-2;2>=h;h++)this.modules[d+g][e+h]=-2==g||2==g||-2==h||2==h||0==g&&0==h?!0:!1}},setupTypeNumber:function(a){for(var b=f.getBCHTypeNumber(this.typeNumber),c=0;18>c;c++){var d=!a&&1==(1&b>>c);this.modules[Math.floor(c/3)][c%3+this.moduleCount-8-3]=d}for(var c=0;18>c;c++){var d=!a&&1==(1&b>>c);this.modules[c%3+this.moduleCount-8-3][Math.floor(c/3)]=d}},setupTypeInfo:function(a,b){for(var c=this.errorCorrectLevel<<3|b,d=f.getBCHTypeInfo(c),e=0;15>e;e++){var g=!a&&1==(1&d>>e);6>e?this.modules[e][8]=g:8>e?this.modules[e+1][8]=g:this.modules[this.moduleCount-15+e][8]=g}for(var e=0;15>e;e++){var g=!a&&1==(1&d>>e);8>e?this.modules[8][this.moduleCount-e-1]=g:9>e?this.modules[8][15-e-1+1]=g:this.modules[8][15-e-1]=g}this.modules[this.moduleCount-8][8]=!a},mapData:function(a,b){for(var c=-1,d=this.moduleCount-1,e=7,g=0,h=this.moduleCount-1;h>0;h-=2)for(6==h&&h--;;){for(var i=0;2>i;i++)if(null==this.modules[d][h-i]){var j=!1;g>>e));var k=f.getMask(b,d,h-i);k&&(j=!j),this.modules[d][h-i]=j,e--,-1==e&&(g++,e=7)}if(d+=c,0>d||this.moduleCount<=d){d-=c,c=-c;break}}}},b.PAD0=236,b.PAD1=17,b.createData=function(a,c,d){for(var e=j.getRSBlocks(a,c),g=new k,h=0;h8*l)throw new Error("code length overflow. ("+g.getLengthInBits()+">"+8*l+")");for(g.getLengthInBits()+4<=8*l&&g.put(0,4);0!=g.getLengthInBits()%8;)g.putBit(!1);for(;;){if(g.getLengthInBits()>=8*l)break;if(g.put(b.PAD0,8),g.getLengthInBits()>=8*l)break;g.put(b.PAD1,8)}return b.createBytes(g,e)},b.createBytes=function(a,b){for(var c=0,d=0,e=0,g=new Array(b.length),h=new Array(b.length),j=0;j=0?p.get(q):0}}for(var r=0,m=0;mm;m++)for(var j=0;jm;m++)for(var j=0;j=0;)b^=f.G15<=0;)b^=f.G18<>>=1;return b},getPatternPosition:function(a){return f.PATTERN_POSITION_TABLE[a-1]},getMask:function(a,b,c){switch(a){case e.PATTERN000:return 0==(b+c)%2;case e.PATTERN001:return 0==b%2;case e.PATTERN010:return 0==c%3;case e.PATTERN011:return 0==(b+c)%3;case e.PATTERN100:return 0==(Math.floor(b/2)+Math.floor(c/3))%2;case e.PATTERN101:return 0==b*c%2+b*c%3;case e.PATTERN110:return 0==(b*c%2+b*c%3)%2;case e.PATTERN111:return 0==(b*c%3+(b+c)%2)%2;default:throw new Error("bad maskPattern:"+a)}},getErrorCorrectPolynomial:function(a){for(var b=new i([1],0),c=0;a>c;c++)b=b.multiply(new i([1,g.gexp(c)],0));return b},getLengthInBits:function(a,b){if(b>=1&&10>b)switch(a){case c.MODE_NUMBER:return 10;case c.MODE_ALPHA_NUM:return 9;case c.MODE_8BIT_BYTE:return 8;case c.MODE_KANJI:return 8;default:throw new Error("mode:"+a)}else if(27>b)switch(a){case c.MODE_NUMBER:return 12;case c.MODE_ALPHA_NUM:return 11;case c.MODE_8BIT_BYTE:return 16;case c.MODE_KANJI:return 10;default:throw new Error("mode:"+a)}else{if(!(41>b))throw new Error("type:"+b);switch(a){case c.MODE_NUMBER:return 14;case c.MODE_ALPHA_NUM:return 13;case c.MODE_8BIT_BYTE:return 16;case c.MODE_KANJI:return 12;default:throw new Error("mode:"+a)}}},getLostPoint:function(a){for(var b=a.getModuleCount(),c=0,d=0;b>d;d++)for(var e=0;b>e;e++){for(var f=0,g=a.isDark(d,e),h=-1;1>=h;h++)if(!(0>d+h||d+h>=b))for(var i=-1;1>=i;i++)0>e+i||e+i>=b||(0!=h||0!=i)&&g==a.isDark(d+h,e+i)&&f++;f>5&&(c+=3+f-5)}for(var d=0;b-1>d;d++)for(var e=0;b-1>e;e++){var j=0;a.isDark(d,e)&&j++,a.isDark(d+1,e)&&j++,a.isDark(d,e+1)&&j++,a.isDark(d+1,e+1)&&j++,(0==j||4==j)&&(c+=3)}for(var d=0;b>d;d++)for(var e=0;b-6>e;e++)a.isDark(d,e)&&!a.isDark(d,e+1)&&a.isDark(d,e+2)&&a.isDark(d,e+3)&&a.isDark(d,e+4)&&!a.isDark(d,e+5)&&a.isDark(d,e+6)&&(c+=40);for(var e=0;b>e;e++)for(var d=0;b-6>d;d++)a.isDark(d,e)&&!a.isDark(d+1,e)&&a.isDark(d+2,e)&&a.isDark(d+3,e)&&a.isDark(d+4,e)&&!a.isDark(d+5,e)&&a.isDark(d+6,e)&&(c+=40);for(var k=0,e=0;b>e;e++)for(var d=0;b>d;d++)a.isDark(d,e)&&k++;var l=Math.abs(100*k/b/b-50)/5;return c+=10*l}},g={glog:function(a){if(1>a)throw new Error("glog("+a+")");return g.LOG_TABLE[a]},gexp:function(a){for(;0>a;)a+=255;for(;a>=256;)a-=255;return g.EXP_TABLE[a]},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)},h=0;8>h;h++)g.EXP_TABLE[h]=1<h;h++)g.EXP_TABLE[h]=g.EXP_TABLE[h-4]^g.EXP_TABLE[h-5]^g.EXP_TABLE[h-6]^g.EXP_TABLE[h-8];for(var h=0;255>h;h++)g.LOG_TABLE[g.EXP_TABLE[h]]=h;i.prototype={get:function(a){return this.num[a]},getLength:function(){return this.num.length},multiply:function(a){for(var b=new Array(this.getLength()+a.getLength()-1),c=0;cf;f++)for(var g=c[3*f+0],h=c[3*f+1],i=c[3*f+2],k=0;g>k;k++)e.push(new j(h,i));return e},j.getRsBlockTable=function(a,b){switch(b){case d.L:return j.RS_BLOCK_TABLE[4*(a-1)+0];case d.M:return j.RS_BLOCK_TABLE[4*(a-1)+1];case d.Q:return j.RS_BLOCK_TABLE[4*(a-1)+2];case d.H:return j.RS_BLOCK_TABLE[4*(a-1)+3];default:return void 0}},k.prototype={get:function(a){var b=Math.floor(a/8);return 1==(1&this.buffer[b]>>>7-a%8)},put:function(a,b){for(var c=0;b>c;c++)this.putBit(1==(1&a>>>b-c-1))},getLengthInBits:function(){return this.length},putBit:function(a){var b=Math.floor(this.length/8);this.buffer.length<=b&&this.buffer.push(0),a&&(this.buffer[b]|=128>>>this.length%8),this.length++}};var l=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]],o=function(){var a=function(a,b){this._el=a,this._htOption=b};return a.prototype.draw=function(a){function g(a,b){var c=document.createElementNS("http://www.w3.org/2000/svg",a);for(var d in b)b.hasOwnProperty(d)&&c.setAttribute(d,b[d]);return c}var b=this._htOption,c=this._el,d=a.getModuleCount();Math.floor(b.width/d),Math.floor(b.height/d),this.clear();var h=g("svg",{viewBox:"0 0 "+String(d)+" "+String(d),width:"100%",height:"100%",fill:b.colorLight});h.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),c.appendChild(h),h.appendChild(g("rect",{fill:b.colorDark,width:"1",height:"1",id:"template"}));for(var i=0;d>i;i++)for(var j=0;d>j;j++)if(a.isDark(i,j)){var k=g("use",{x:String(i),y:String(j)});k.setAttributeNS("http://www.w3.org/1999/xlink","href","#template"),h.appendChild(k)}},a.prototype.clear=function(){for(;this._el.hasChildNodes();)this._el.removeChild(this._el.lastChild)},a}(),p="svg"===document.documentElement.tagName.toLowerCase(),q=p?o:m()?function(){function a(){this._elImage.src=this._elCanvas.toDataURL("image/png"),this._elImage.style.display="block",this._elCanvas.style.display="none"}function d(a,b){var c=this;if(c._fFail=b,c._fSuccess=a,null===c._bSupportDataURI){var d=document.createElement("img"),e=function(){c._bSupportDataURI=!1,c._fFail&&_fFail.call(c)},f=function(){c._bSupportDataURI=!0,c._fSuccess&&c._fSuccess.call(c)};return d.onabort=e,d.onerror=e,d.onload=f,d.src="data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==",void 0}c._bSupportDataURI===!0&&c._fSuccess?c._fSuccess.call(c):c._bSupportDataURI===!1&&c._fFail&&c._fFail.call(c)}if(this._android&&this._android<=2.1){var b=1/window.devicePixelRatio,c=CanvasRenderingContext2D.prototype.drawImage;CanvasRenderingContext2D.prototype.drawImage=function(a,d,e,f,g,h,i,j){if("nodeName"in a&&/img/i.test(a.nodeName))for(var l=arguments.length-1;l>=1;l--)arguments[l]=arguments[l]*b;else"undefined"==typeof j&&(arguments[1]*=b,arguments[2]*=b,arguments[3]*=b,arguments[4]*=b);c.apply(this,arguments)}}var e=function(a,b){this._bIsPainted=!1,this._android=n(),this._htOption=b,this._elCanvas=document.createElement("canvas"),this._elCanvas.width=b.width,this._elCanvas.height=b.height,a.appendChild(this._elCanvas),this._el=a,this._oContext=this._elCanvas.getContext("2d"),this._bIsPainted=!1,this._elImage=document.createElement("img"),this._elImage.style.display="none",this._el.appendChild(this._elImage),this._bSupportDataURI=null};return e.prototype.draw=function(a){var b=this._elImage,c=this._oContext,d=this._htOption,e=a.getModuleCount(),f=d.width/e,g=d.height/e,h=Math.round(f),i=Math.round(g);b.style.display="none",this.clear();for(var j=0;e>j;j++)for(var k=0;e>k;k++){var l=a.isDark(j,k),m=k*f,n=j*g;c.strokeStyle=l?d.colorDark:d.colorLight,c.lineWidth=1,c.fillStyle=l?d.colorDark:d.colorLight,c.fillRect(m,n,f,g),c.strokeRect(Math.floor(m)+.5,Math.floor(n)+.5,h,i),c.strokeRect(Math.ceil(m)-.5,Math.ceil(n)-.5,h,i)}this._bIsPainted=!0},e.prototype.makeImage=function(){this._bIsPainted&&d.call(this,a)},e.prototype.isPainted=function(){return this._bIsPainted},e.prototype.clear=function(){this._oContext.clearRect(0,0,this._elCanvas.width,this._elCanvas.height),this._bIsPainted=!1},e.prototype.round=function(a){return a?Math.floor(1e3*a)/1e3:a},e}():function(){var a=function(a,b){this._el=a,this._htOption=b};return a.prototype.draw=function(a){for(var b=this._htOption,c=this._el,d=a.getModuleCount(),e=Math.floor(b.width/d),f=Math.floor(b.height/d),g=[''],h=0;d>h;h++){g.push("");for(var i=0;d>i;i++)g.push('');g.push("")}g.push("
"),c.innerHTML=g.join("");var j=c.childNodes[0],k=(b.width-j.offsetWidth)/2,l=(b.height-j.offsetHeight)/2;k>0&&l>0&&(j.style.margin=l+"px "+k+"px")},a.prototype.clear=function(){this._el.innerHTML=""},a}();QRCode=function(a,b){if(this._htOption={width:256,height:256,typeNumber:4,colorDark:"#000000",colorLight:"#ffffff",correctLevel:d.H},"string"==typeof b&&(b={text:b}),b)for(var c in b)this._htOption[c]=b[c];"string"==typeof a&&(a=document.getElementById(a)),this._android=n(),this._el=a,this._oQRCode=null,this._oDrawing=new q(this._el,this._htOption),this._htOption.text&&this.makeCode(this._htOption.text)},QRCode.prototype.makeCode=function(a){this._oQRCode=new b(r(a,this._htOption.correctLevel),this._htOption.correctLevel),this._oQRCode.addData(a),this._oQRCode.make(),this._el.title=a,this._oDrawing.draw(this._oQRCode),this.makeImage()},QRCode.prototype.makeImage=function(){"function"==typeof this._oDrawing.makeImage&&(!this._android||this._android>=3)&&this._oDrawing.makeImage()},QRCode.prototype.clear=function(){this._oDrawing.clear()},QRCode.CorrectLevel=d}(); \ No newline at end of file diff --git a/lib/admin/public/bower_components/qrious/.bower.json b/lib/admin/public/bower_components/qrious/.bower.json deleted file mode 100644 index 3891e55c..00000000 --- a/lib/admin/public/bower_components/qrious/.bower.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "name": "qrious", - "version": "2.0.2", - "description": "Library for QR code generation using canvas", - "homepage": "https://github.com/neocotic/qrious", - "authors": [ - { - "name": "Alasdair Mercer", - "email": "mercer.alasdair@gmail.com", - "homepage": "http://neocotic.com" - } - ], - "license": "GPL-3.0", - "keywords": [ - "qr", - "code", - "encode", - "canvas", - "image" - ], - "repository": { - "type": "git", - "url": "https://github.com/neocotic/qrious.git" - }, - "main": "dist/umd/qrious.js", - "ignore": [ - "src/", - ".*", - "AUTHORS.md", - "CHANGES.md", - "CONTRIBUTING.md", - "demo.html", - "Gruntfile.js", - "package.json", - "README.md" - ], - "_release": "2.0.2", - "_resolution": { - "type": "version", - "tag": "2.0.2", - "commit": "1ffd092e97ab3ba212fad21ab865eb1754155296" - }, - "_source": "https://github.com/neocotic/qrious.git", - "_target": "^2.0.2", - "_originalSource": "qrious", - "_direct": true -} \ No newline at end of file diff --git a/lib/admin/public/bower_components/qrious/LICENSE.md b/lib/admin/public/bower_components/qrious/LICENSE.md deleted file mode 100644 index 7ac38638..00000000 --- a/lib/admin/public/bower_components/qrious/LICENSE.md +++ /dev/null @@ -1,16 +0,0 @@ -QRious -Copyright (C) 2016 Alasdair Mercer -Copyright (C) 2010 Tom Zerucha - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . diff --git a/lib/admin/public/bower_components/qrious/bower.json b/lib/admin/public/bower_components/qrious/bower.json deleted file mode 100644 index 25a23fb3..00000000 --- a/lib/admin/public/bower_components/qrious/bower.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "name": "qrious", - "version": "2.0.2", - "description": "Library for QR code generation using canvas", - "homepage": "https://github.com/neocotic/qrious", - "authors": [ - { - "name": "Alasdair Mercer", - "email": "mercer.alasdair@gmail.com", - "homepage": "http://neocotic.com" - } - ], - "license": "GPL-3.0", - "keywords": [ - "qr", - "code", - "encode", - "canvas", - "image" - ], - "repository": { - "type": "git", - "url": "https://github.com/neocotic/qrious.git" - }, - "main": "dist/umd/qrious.js", - "ignore": [ - "src/", - ".*", - "AUTHORS.md", - "CHANGES.md", - "CONTRIBUTING.md", - "demo.html", - "Gruntfile.js", - "package.json", - "README.md" - ] -} diff --git a/lib/admin/public/bower_components/qrjs/.bower.json b/lib/admin/public/bower_components/qrjs/.bower.json deleted file mode 100644 index a754ab2d..00000000 --- a/lib/admin/public/bower_components/qrjs/.bower.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "name": "qrjs", - "main": "qr.js", - "version": "0.1.2", - "homepage": "https://github.com/educastellano/qr.js", - "authors": [ - "Kang Seonghoon ", - "Eduard Castellano " - ], - "description": "QR code generator in Javascript", - "moduleType": [ - "globals" - ], - "keywords": [ - "qr", - "qr.js", - "qrcode" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ], - "_release": "0.1.2", - "_resolution": { - "type": "version", - "tag": "v0.1.2", - "commit": "dbfa732cb309195a51a656b021f309d354154e04" - }, - "_source": "https://github.com/educastellano/qr.js.git", - "_target": "~0.1.2", - "_originalSource": "qrjs" -} \ No newline at end of file diff --git a/lib/admin/public/bower_components/qrjs/README.md b/lib/admin/public/bower_components/qrjs/README.md deleted file mode 100644 index 549a9b24..00000000 --- a/lib/admin/public/bower_components/qrjs/README.md +++ /dev/null @@ -1,8 +0,0 @@ -# qr.js: QR code generator in pure Javascript (2011) - -This is a fairly standalone script for producing QR code on the fly. -Originally developed for my own interest, the code is fully commented and well-structured. -The code is in the public domain (or to be exact, [Creative Commons Zero](https://creativecommons.org/publicdomain/zero/1.0/)), -and you can use it for absolutely any purpose. - -See also a [node.js module based on qr.js](https://github.com/shesek/qruri), packaged by Nadav Ivgi. diff --git a/lib/admin/public/bower_components/qrjs/bower.json b/lib/admin/public/bower_components/qrjs/bower.json deleted file mode 100644 index 39261ebf..00000000 --- a/lib/admin/public/bower_components/qrjs/bower.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "qrjs", - "main": "qr.js", - "version": "0.1.2", - "homepage": "https://github.com/educastellano/qr.js", - "authors": [ - "Kang Seonghoon ", - "Eduard Castellano " - ], - "description": "QR code generator in Javascript", - "moduleType": [ - "globals" - ], - "keywords": [ - "qr", - "qr.js", - "qrcode" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests" - ] -} diff --git a/lib/admin/public/bower_components/qrjs/package.json b/lib/admin/public/bower_components/qrjs/package.json deleted file mode 100644 index 58b852ba..00000000 --- a/lib/admin/public/bower_components/qrjs/package.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "name": "qrjs", - "version": "0.1.1", - "description": "QR code generator in Javascript", - "main": "qr.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "repository": { - "type": "git", - "url": "https://github.com/educastellano/qr.js.git" - }, - "keywords": [ - "qr", - "qr.js", - "qrcode" - ], - "author": "Kang Seonghoon ", - "license": "MIT", - "bugs": { - "url": "https://github.com/educastellano/qr.js/issues" - }, - "homepage": "https://github.com/educastellano/qr.js" -} diff --git a/lib/admin/public/bower_components/qrjs/qr.js b/lib/admin/public/bower_components/qrjs/qr.js deleted file mode 100644 index 2dd08112..00000000 --- a/lib/admin/public/bower_components/qrjs/qr.js +++ /dev/null @@ -1,804 +0,0 @@ -/* qr.js -- QR code generator in Javascript (revision 2011-01-19) - * Written by Kang Seonghoon . - * - * This source code is in the public domain; if your jurisdiction does not - * recognize the public domain the terms of Creative Commons CC0 license - * apply. In the other words, you can always do what you want. - */ -(function(root, name, definition) { - if (typeof define === 'function' && define.amd) { - define([], definition); - } else if (typeof module === 'object' && module.exports) { - module.exports = definition(); - } else { - root[name] = definition(); - } -})(this, 'QRCode', function() { -/* Quick overview: QR code composed of 2D array of modules (a rectangular - * area that conveys one bit of information); some modules are fixed to help - * the recognition of the code, and remaining data modules are further divided - * into 8-bit code words which are augumented by Reed-Solomon error correcting - * codes (ECC). There could be multiple ECCs, in the case the code is so large - * that it is helpful to split the raw data into several chunks. - * - * The number of modules is determined by the code's "version", ranging from 1 - * (21x21) to 40 (177x177). How many ECC bits are used is determined by the - * ECC level (L/M/Q/H). The number and size (and thus the order of generator - * polynomial) of ECCs depend to the version and ECC level. - */ - -// per-version information (cf. JIS X 0510:2004 pp. 30--36, 71) -// -// [0]: the degree of generator polynomial by ECC levels -// [1]: # of code blocks by ECC levels -// [2]: left-top positions of alignment patterns -// -// the number in this table (in particular, [0]) does not exactly match with -// the numbers in the specficiation. see augumenteccs below for the reason. -var VERSIONS = [ - null, - [[10, 7,17,13], [ 1, 1, 1, 1], []], - [[16,10,28,22], [ 1, 1, 1, 1], [4,16]], - [[26,15,22,18], [ 1, 1, 2, 2], [4,20]], - [[18,20,16,26], [ 2, 1, 4, 2], [4,24]], - [[24,26,22,18], [ 2, 1, 4, 4], [4,28]], - [[16,18,28,24], [ 4, 2, 4, 4], [4,32]], - [[18,20,26,18], [ 4, 2, 5, 6], [4,20,36]], - [[22,24,26,22], [ 4, 2, 6, 6], [4,22,40]], - [[22,30,24,20], [ 5, 2, 8, 8], [4,24,44]], - [[26,18,28,24], [ 5, 4, 8, 8], [4,26,48]], - [[30,20,24,28], [ 5, 4,11, 8], [4,28,52]], - [[22,24,28,26], [ 8, 4,11,10], [4,30,56]], - [[22,26,22,24], [ 9, 4,16,12], [4,32,60]], - [[24,30,24,20], [ 9, 4,16,16], [4,24,44,64]], - [[24,22,24,30], [10, 6,18,12], [4,24,46,68]], - [[28,24,30,24], [10, 6,16,17], [4,24,48,72]], - [[28,28,28,28], [11, 6,19,16], [4,28,52,76]], - [[26,30,28,28], [13, 6,21,18], [4,28,54,80]], - [[26,28,26,26], [14, 7,25,21], [4,28,56,84]], - [[26,28,28,30], [16, 8,25,20], [4,32,60,88]], - [[26,28,30,28], [17, 8,25,23], [4,26,48,70,92]], - [[28,28,24,30], [17, 9,34,23], [4,24,48,72,96]], - [[28,30,30,30], [18, 9,30,25], [4,28,52,76,100]], - [[28,30,30,30], [20,10,32,27], [4,26,52,78,104]], - [[28,26,30,30], [21,12,35,29], [4,30,56,82,108]], - [[28,28,30,28], [23,12,37,34], [4,28,56,84,112]], - [[28,30,30,30], [25,12,40,34], [4,32,60,88,116]], - [[28,30,30,30], [26,13,42,35], [4,24,48,72,96,120]], - [[28,30,30,30], [28,14,45,38], [4,28,52,76,100,124]], - [[28,30,30,30], [29,15,48,40], [4,24,50,76,102,128]], - [[28,30,30,30], [31,16,51,43], [4,28,54,80,106,132]], - [[28,30,30,30], [33,17,54,45], [4,32,58,84,110,136]], - [[28,30,30,30], [35,18,57,48], [4,28,56,84,112,140]], - [[28,30,30,30], [37,19,60,51], [4,32,60,88,116,144]], - [[28,30,30,30], [38,19,63,53], [4,28,52,76,100,124,148]], - [[28,30,30,30], [40,20,66,56], [4,22,48,74,100,126,152]], - [[28,30,30,30], [43,21,70,59], [4,26,52,78,104,130,156]], - [[28,30,30,30], [45,22,74,62], [4,30,56,82,108,134,160]], - [[28,30,30,30], [47,24,77,65], [4,24,52,80,108,136,164]], - [[28,30,30,30], [49,25,81,68], [4,28,56,84,112,140,168]]]; - -// mode constants (cf. Table 2 in JIS X 0510:2004 p. 16) -var MODE_TERMINATOR = 0; -var MODE_NUMERIC = 1, MODE_ALPHANUMERIC = 2, MODE_OCTET = 4, MODE_KANJI = 8; - -// validation regexps -var NUMERIC_REGEXP = /^\d*$/; -var ALPHANUMERIC_REGEXP = /^[A-Za-z0-9 $%*+\-./:]*$/; -var ALPHANUMERIC_OUT_REGEXP = /^[A-Z0-9 $%*+\-./:]*$/; - -// ECC levels (cf. Table 22 in JIS X 0510:2004 p. 45) -var ECCLEVEL_L = 1, ECCLEVEL_M = 0, ECCLEVEL_Q = 3, ECCLEVEL_H = 2; - -// GF(2^8)-to-integer mapping with a reducing polynomial x^8+x^4+x^3+x^2+1 -// invariant: GF256_MAP[GF256_INVMAP[i]] == i for all i in [1,256) -var GF256_MAP = [], GF256_INVMAP = [-1]; -for (var i = 0, v = 1; i < 255; ++i) { - GF256_MAP.push(v); - GF256_INVMAP[v] = i; - v = (v * 2) ^ (v >= 128 ? 0x11d : 0); -} - -// generator polynomials up to degree 30 -// (should match with polynomials in JIS X 0510:2004 Appendix A) -// -// generator polynomial of degree K is product of (x-\alpha^0), (x-\alpha^1), -// ..., (x-\alpha^(K-1)). by convention, we omit the K-th coefficient (always 1) -// from the result; also other coefficients are written in terms of the exponent -// to \alpha to avoid the redundant calculation. (see also calculateecc below.) -var GF256_GENPOLY = [[]]; -for (var i = 0; i < 30; ++i) { - var prevpoly = GF256_GENPOLY[i], poly = []; - for (var j = 0; j <= i; ++j) { - var a = (j < i ? GF256_MAP[prevpoly[j]] : 0); - var b = GF256_MAP[(i + (prevpoly[j-1] || 0)) % 255]; - poly.push(GF256_INVMAP[a ^ b]); - } - GF256_GENPOLY.push(poly); -} - -// alphanumeric character mapping (cf. Table 5 in JIS X 0510:2004 p. 19) -var ALPHANUMERIC_MAP = {}; -for (var i = 0; i < 45; ++i) { - ALPHANUMERIC_MAP['0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:'.charAt(i)] = i; -} - -// mask functions in terms of row # and column # -// (cf. Table 20 in JIS X 0510:2004 p. 42) -var MASKFUNCS = [ - function(i,j) { return (i+j) % 2 == 0; }, - function(i,j) { return i % 2 == 0; }, - function(i,j) { return j % 3 == 0; }, - function(i,j) { return (i+j) % 3 == 0; }, - function(i,j) { return (((i/2)|0) + ((j/3)|0)) % 2 == 0; }, - function(i,j) { return (i*j) % 2 + (i*j) % 3 == 0; }, - function(i,j) { return ((i*j) % 2 + (i*j) % 3) % 2 == 0; }, - function(i,j) { return ((i+j) % 2 + (i*j) % 3) % 2 == 0; }]; - -// returns true when the version information has to be embeded. -var needsverinfo = function(ver) { return ver > 6; }; - -// returns the size of entire QR code for given version. -var getsizebyver = function(ver) { return 4 * ver + 17; }; - -// returns the number of bits available for code words in this version. -var nfullbits = function(ver) { - /* - * |<--------------- n --------------->| - * | |<----- n-17 ---->| | - * +-------+ ///+-------+ ---- - * | | ///| | ^ - * | 9x9 | @@@@@ ///| 9x8 | | - * | | # # # @5x5@ # # # | | | - * +-------+ @@@@@ +-------+ | - * # ---| - * ^ | - * # | - * @@@@@ @@@@@ @@@@@ | n - * @5x5@ @5x5@ @5x5@ n-17 - * @@@@@ @@@@@ @@@@@ | | - * # | | - * ////// v | - * //////# ---| - * +-------+ @@@@@ @@@@@ | - * | | @5x5@ @5x5@ | - * | 8x9 | @@@@@ @@@@@ | - * | | v - * +-------+ ---- - * - * when the entire code has n^2 modules and there are m^2-3 alignment - * patterns, we have: - * - 225 (= 9x9 + 9x8 + 8x9) modules for finder patterns and - * format information; - * - 2n-34 (= 2(n-17)) modules for timing patterns; - * - 36 (= 3x6 + 6x3) modules for version information, if any; - * - 25m^2-75 (= (m^2-3)(5x5)) modules for alignment patterns - * if any, but 10m-20 (= 2(m-2)x5) of them overlaps with - * timing patterns. - */ - var v = VERSIONS[ver]; - var nbits = 16*ver*ver + 128*ver + 64; // finder, timing and format info. - if (needsverinfo(ver)) nbits -= 36; // version information - if (v[2].length) { // alignment patterns - nbits -= 25 * v[2].length * v[2].length - 10 * v[2].length - 55; - } - return nbits; -}; - -// returns the number of bits available for data portions (i.e. excludes ECC -// bits but includes mode and length bits) in this version and ECC level. -var ndatabits = function(ver, ecclevel) { - var nbits = nfullbits(ver) & ~7; // no sub-octet code words - var v = VERSIONS[ver]; - nbits -= 8 * v[0][ecclevel] * v[1][ecclevel]; // ecc bits - return nbits; -} - -// returns the number of bits required for the length of data. -// (cf. Table 3 in JIS X 0510:2004 p. 16) -var ndatalenbits = function(ver, mode) { - switch (mode) { - case MODE_NUMERIC: return (ver < 10 ? 10 : ver < 27 ? 12 : 14); - case MODE_ALPHANUMERIC: return (ver < 10 ? 9 : ver < 27 ? 11 : 13); - case MODE_OCTET: return (ver < 10 ? 8 : 16); - case MODE_KANJI: return (ver < 10 ? 8 : ver < 27 ? 10 : 12); - } -}; - -// returns the maximum length of data possible in given configuration. -var getmaxdatalen = function(ver, mode, ecclevel) { - var nbits = ndatabits(ver, ecclevel) - 4 - ndatalenbits(ver, mode); // 4 for mode bits - switch (mode) { - case MODE_NUMERIC: - return ((nbits/10) | 0) * 3 + (nbits%10 < 4 ? 0 : nbits%10 < 7 ? 1 : 2); - case MODE_ALPHANUMERIC: - return ((nbits/11) | 0) * 2 + (nbits%11 < 6 ? 0 : 1); - case MODE_OCTET: - return (nbits/8) | 0; - case MODE_KANJI: - return (nbits/13) | 0; - } -}; - -// checks if the given data can be encoded in given mode, and returns -// the converted data for the further processing if possible. otherwise -// returns null. -// -// this function does not check the length of data; it is a duty of -// encode function below (as it depends on the version and ECC level too). -var validatedata = function(mode, data) { - switch (mode) { - case MODE_NUMERIC: - if (!data.match(NUMERIC_REGEXP)) return null; - return data; - - case MODE_ALPHANUMERIC: - if (!data.match(ALPHANUMERIC_REGEXP)) return null; - return data.toUpperCase(); - - case MODE_OCTET: - if (typeof data === 'string') { // encode as utf-8 string - var newdata = []; - for (var i = 0; i < data.length; ++i) { - var ch = data.charCodeAt(i); - if (ch < 0x80) { - newdata.push(ch); - } else if (ch < 0x800) { - newdata.push(0xc0 | (ch >> 6), - 0x80 | (ch & 0x3f)); - } else if (ch < 0x10000) { - newdata.push(0xe0 | (ch >> 12), - 0x80 | ((ch >> 6) & 0x3f), - 0x80 | (ch & 0x3f)); - } else { - newdata.push(0xf0 | (ch >> 18), - 0x80 | ((ch >> 12) & 0x3f), - 0x80 | ((ch >> 6) & 0x3f), - 0x80 | (ch & 0x3f)); - } - } - return newdata; - } else { - return data; - } - } -}; - -// returns the code words (sans ECC bits) for given data and configurations. -// requires data to be preprocessed by validatedata. no length check is -// performed, and everything has to be checked before calling this function. -var encode = function(ver, mode, data, maxbuflen) { - var buf = []; - var bits = 0, remaining = 8; - var datalen = data.length; - - // this function is intentionally no-op when n=0. - var pack = function(x, n) { - if (n >= remaining) { - buf.push(bits | (x >> (n -= remaining))); - while (n >= 8) buf.push((x >> (n -= 8)) & 255); - bits = 0; - remaining = 8; - } - if (n > 0) bits |= (x & ((1 << n) - 1)) << (remaining -= n); - }; - - var nlenbits = ndatalenbits(ver, mode); - pack(mode, 4); - pack(datalen, nlenbits); - - switch (mode) { - case MODE_NUMERIC: - for (var i = 2; i < datalen; i += 3) { - pack(parseInt(data.substring(i-2,i+1), 10), 10); - } - pack(parseInt(data.substring(i-2), 10), [0,4,7][datalen%3]); - break; - - case MODE_ALPHANUMERIC: - for (var i = 1; i < datalen; i += 2) { - pack(ALPHANUMERIC_MAP[data.charAt(i-1)] * 45 + - ALPHANUMERIC_MAP[data.charAt(i)], 11); - } - if (datalen % 2 == 1) { - pack(ALPHANUMERIC_MAP[data.charAt(i-1)], 6); - } - break; - - case MODE_OCTET: - for (var i = 0; i < datalen; ++i) { - pack(data[i], 8); - } - break; - }; - - // final bits. it is possible that adding terminator causes the buffer - // to overflow, but then the buffer truncated to the maximum size will - // be valid as the truncated terminator mode bits and padding is - // identical in appearance (cf. JIS X 0510:2004 sec 8.4.8). - pack(MODE_TERMINATOR, 4); - if (remaining < 8) buf.push(bits); - - // the padding to fill up the remaining space. we should not add any - // words when the overflow already occurred. - while (buf.length + 1 < maxbuflen) buf.push(0xec, 0x11); - if (buf.length < maxbuflen) buf.push(0xec); - return buf; -}; - -// calculates ECC code words for given code words and generator polynomial. -// -// this is quite similar to CRC calculation as both Reed-Solomon and CRC use -// the certain kind of cyclic codes, which is effectively the division of -// zero-augumented polynomial by the generator polynomial. the only difference -// is that Reed-Solomon uses GF(2^8), instead of CRC's GF(2), and Reed-Solomon -// uses the different generator polynomial than CRC's. -var calculateecc = function(poly, genpoly) { - var modulus = poly.slice(0); - var polylen = poly.length, genpolylen = genpoly.length; - for (var i = 0; i < genpolylen; ++i) modulus.push(0); - for (var i = 0; i < polylen; ) { - var quotient = GF256_INVMAP[modulus[i++]]; - if (quotient >= 0) { - for (var j = 0; j < genpolylen; ++j) { - modulus[i+j] ^= GF256_MAP[(quotient + genpoly[j]) % 255]; - } - } - } - return modulus.slice(polylen); -}; - -// auguments ECC code words to given code words. the resulting words are -// ready to be encoded in the matrix. -// -// the much of actual augumenting procedure follows JIS X 0510:2004 sec 8.7. -// the code is simplified using the fact that the size of each code & ECC -// blocks is almost same; for example, when we have 4 blocks and 46 data words -// the number of code words in those blocks are 11, 11, 12, 12 respectively. -var augumenteccs = function(poly, nblocks, genpoly) { - var subsizes = []; - var subsize = (poly.length / nblocks) | 0, subsize0 = 0; - var pivot = nblocks - poly.length % nblocks; - for (var i = 0; i < pivot; ++i) { - subsizes.push(subsize0); - subsize0 += subsize; - } - for (var i = pivot; i < nblocks; ++i) { - subsizes.push(subsize0); - subsize0 += subsize+1; - } - subsizes.push(subsize0); - - var eccs = []; - for (var i = 0; i < nblocks; ++i) { - eccs.push(calculateecc(poly.slice(subsizes[i], subsizes[i+1]), genpoly)); - } - - var result = []; - var nitemsperblock = (poly.length / nblocks) | 0; - for (var i = 0; i < nitemsperblock; ++i) { - for (var j = 0; j < nblocks; ++j) { - result.push(poly[subsizes[j] + i]); - } - } - for (var j = pivot; j < nblocks; ++j) { - result.push(poly[subsizes[j+1] - 1]); - } - for (var i = 0; i < genpoly.length; ++i) { - for (var j = 0; j < nblocks; ++j) { - result.push(eccs[j][i]); - } - } - return result; -}; - -// auguments BCH(p+q,q) code to the polynomial over GF(2), given the proper -// genpoly. the both input and output are in binary numbers, and unlike -// calculateecc genpoly should include the 1 bit for the highest degree. -// -// actual polynomials used for this procedure are as follows: -// - p=10, q=5, genpoly=x^10+x^8+x^5+x^4+x^2+x+1 (JIS X 0510:2004 Appendix C) -// - p=18, q=6, genpoly=x^12+x^11+x^10+x^9+x^8+x^5+x^2+1 (ibid. Appendix D) -var augumentbch = function(poly, p, genpoly, q) { - var modulus = poly << q; - for (var i = p - 1; i >= 0; --i) { - if ((modulus >> (q+i)) & 1) modulus ^= genpoly << i; - } - return (poly << q) | modulus; -}; - -// creates the base matrix for given version. it returns two matrices, one of -// them is the actual one and the another represents the "reserved" portion -// (e.g. finder and timing patterns) of the matrix. -// -// some entries in the matrix may be undefined, rather than 0 or 1. this is -// intentional (no initialization needed!), and putdata below will fill -// the remaining ones. -var makebasematrix = function(ver) { - var v = VERSIONS[ver], n = getsizebyver(ver); - var matrix = [], reserved = []; - for (var i = 0; i < n; ++i) { - matrix.push([]); - reserved.push([]); - } - - var blit = function(y, x, h, w, bits) { - for (var i = 0; i < h; ++i) { - for (var j = 0; j < w; ++j) { - matrix[y+i][x+j] = (bits[i] >> j) & 1; - reserved[y+i][x+j] = 1; - } - } - }; - - // finder patterns and a part of timing patterns - // will also mark the format information area (not yet written) as reserved. - blit(0, 0, 9, 9, [0x7f, 0x41, 0x5d, 0x5d, 0x5d, 0x41, 0x17f, 0x00, 0x40]); - blit(n-8, 0, 8, 9, [0x100, 0x7f, 0x41, 0x5d, 0x5d, 0x5d, 0x41, 0x7f]); - blit(0, n-8, 9, 8, [0xfe, 0x82, 0xba, 0xba, 0xba, 0x82, 0xfe, 0x00, 0x00]); - - // the rest of timing patterns - for (var i = 9; i < n-8; ++i) { - matrix[6][i] = matrix[i][6] = ~i & 1; - reserved[6][i] = reserved[i][6] = 1; - } - - // alignment patterns - var aligns = v[2], m = aligns.length; - for (var i = 0; i < m; ++i) { - var minj = (i==0 || i==m-1 ? 1 : 0), maxj = (i==0 ? m-1 : m); - for (var j = minj; j < maxj; ++j) { - blit(aligns[i], aligns[j], 5, 5, [0x1f, 0x11, 0x15, 0x11, 0x1f]); - } - } - - // version information - if (needsverinfo(ver)) { - var code = augumentbch(ver, 6, 0x1f25, 12); - var k = 0; - for (var i = 0; i < 6; ++i) { - for (var j = 0; j < 3; ++j) { - matrix[i][(n-11)+j] = matrix[(n-11)+j][i] = (code >> k++) & 1; - reserved[i][(n-11)+j] = reserved[(n-11)+j][i] = 1; - } - } - } - - return {matrix: matrix, reserved: reserved}; -}; - -// fills the data portion (i.e. unmarked in reserved) of the matrix with given -// code words. the size of code words should be no more than available bits, -// and remaining bits are padded to 0 (cf. JIS X 0510:2004 sec 8.7.3). -var putdata = function(matrix, reserved, buf) { - var n = matrix.length; - var k = 0, dir = -1; - for (var i = n-1; i >= 0; i -= 2) { - if (i == 6) --i; // skip the entire timing pattern column - var jj = (dir < 0 ? n-1 : 0); - for (var j = 0; j < n; ++j) { - for (var ii = i; ii > i-2; --ii) { - if (!reserved[jj][ii]) { - // may overflow, but (undefined >> x) - // is 0 so it will auto-pad to zero. - matrix[jj][ii] = (buf[k >> 3] >> (~k&7)) & 1; - ++k; - } - } - jj += dir; - } - dir = -dir; - } - return matrix; -}; - -// XOR-masks the data portion of the matrix. repeating the call with the same -// arguments will revert the prior call (convenient in the matrix evaluation). -var maskdata = function(matrix, reserved, mask) { - var maskf = MASKFUNCS[mask]; - var n = matrix.length; - for (var i = 0; i < n; ++i) { - for (var j = 0; j < n; ++j) { - if (!reserved[i][j]) matrix[i][j] ^= maskf(i,j); - } - } - return matrix; -} - -// puts the format information. -var putformatinfo = function(matrix, reserved, ecclevel, mask) { - var n = matrix.length; - var code = augumentbch((ecclevel << 3) | mask, 5, 0x537, 10) ^ 0x5412; - for (var i = 0; i < 15; ++i) { - var r = [0,1,2,3,4,5,7,8,n-7,n-6,n-5,n-4,n-3,n-2,n-1][i]; - var c = [n-1,n-2,n-3,n-4,n-5,n-6,n-7,n-8,7,5,4,3,2,1,0][i]; - matrix[r][8] = matrix[8][c] = (code >> i) & 1; - // we don't have to mark those bits reserved; always done - // in makebasematrix above. - } - return matrix; -}; - -// evaluates the resulting matrix and returns the score (lower is better). -// (cf. JIS X 0510:2004 sec 8.8.2) -// -// the evaluation procedure tries to avoid the problematic patterns naturally -// occuring from the original matrix. for example, it penaltizes the patterns -// which just look like the finder pattern which will confuse the decoder. -// we choose the mask which results in the lowest score among 8 possible ones. -// -// note: zxing seems to use the same procedure and in many cases its choice -// agrees to ours, but sometimes it does not. practically it doesn't matter. -var evaluatematrix = function(matrix) { - // N1+(k-5) points for each consecutive row of k same-colored modules, - // where k >= 5. no overlapping row counts. - var PENALTY_CONSECUTIVE = 3; - // N2 points for each 2x2 block of same-colored modules. - // overlapping block does count. - var PENALTY_TWOBYTWO = 3; - // N3 points for each pattern with >4W:1B:1W:3B:1W:1B or - // 1B:1W:3B:1W:1B:>4W, or their multiples (e.g. highly unlikely, - // but 13W:3B:3W:9B:3W:3B counts). - var PENALTY_FINDERLIKE = 40; - // N4*k points for every (5*k)% deviation from 50% black density. - // i.e. k=1 for 55~60% and 40~45%, k=2 for 60~65% and 35~40%, etc. - var PENALTY_DENSITY = 10; - - var evaluategroup = function(groups) { // assumes [W,B,W,B,W,...,B,W] - var score = 0; - for (var i = 0; i < groups.length; ++i) { - if (groups[i] >= 5) score += PENALTY_CONSECUTIVE + (groups[i]-5); - } - for (var i = 5; i < groups.length; i += 2) { - var p = groups[i]; - if (groups[i-1] == p && groups[i-2] == 3*p && groups[i-3] == p && - groups[i-4] == p && (groups[i-5] >= 4*p || groups[i+1] >= 4*p)) { - // this part differs from zxing... - score += PENALTY_FINDERLIKE; - } - } - return score; - }; - - var n = matrix.length; - var score = 0, nblacks = 0; - for (var i = 0; i < n; ++i) { - var row = matrix[i]; - var groups; - - // evaluate the current row - groups = [0]; // the first empty group of white - for (var j = 0; j < n; ) { - var k; - for (k = 0; j < n && row[j]; ++k) ++j; - groups.push(k); - for (k = 0; j < n && !row[j]; ++k) ++j; - groups.push(k); - } - score += evaluategroup(groups); - - // evaluate the current column - groups = [0]; - for (var j = 0; j < n; ) { - var k; - for (k = 0; j < n && matrix[j][i]; ++k) ++j; - groups.push(k); - for (k = 0; j < n && !matrix[j][i]; ++k) ++j; - groups.push(k); - } - score += evaluategroup(groups); - - // check the 2x2 box and calculate the density - var nextrow = matrix[i+1] || []; - nblacks += row[0]; - for (var j = 1; j < n; ++j) { - var p = row[j]; - nblacks += p; - // at least comparison with next row should be strict... - if (row[j-1] == p && nextrow[j] === p && nextrow[j-1] === p) { - score += PENALTY_TWOBYTWO; - } - } - } - - score += PENALTY_DENSITY * ((Math.abs(nblacks / n / n - 0.5) / 0.05) | 0); - return score; -}; - -// returns the fully encoded QR code matrix which contains given data. -// it also chooses the best mask automatically when mask is -1. -var generate = function(data, ver, mode, ecclevel, mask) { - var v = VERSIONS[ver]; - var buf = encode(ver, mode, data, ndatabits(ver, ecclevel) >> 3); - buf = augumenteccs(buf, v[1][ecclevel], GF256_GENPOLY[v[0][ecclevel]]); - - var result = makebasematrix(ver); - var matrix = result.matrix, reserved = result.reserved; - putdata(matrix, reserved, buf); - - if (mask < 0) { - // find the best mask - maskdata(matrix, reserved, 0); - putformatinfo(matrix, reserved, ecclevel, 0); - var bestmask = 0, bestscore = evaluatematrix(matrix); - maskdata(matrix, reserved, 0); - for (mask = 1; mask < 8; ++mask) { - maskdata(matrix, reserved, mask); - putformatinfo(matrix, reserved, ecclevel, mask); - var score = evaluatematrix(matrix); - if (bestscore > score) { - bestscore = score; - bestmask = mask; - } - maskdata(matrix, reserved, mask); - } - mask = bestmask; - } - - maskdata(matrix, reserved, mask); - putformatinfo(matrix, reserved, ecclevel, mask); - return matrix; -}; - -// the public interface is trivial; the options available are as follows: -// -// - version: an integer in [1,40]. when omitted (or -1) the smallest possible -// version is chosen. -// - mode: one of 'numeric', 'alphanumeric', 'octet'. when omitted the smallest -// possible mode is chosen. -// - ecclevel: one of 'L', 'M', 'Q', 'H'. defaults to 'L'. -// - mask: an integer in [0,7]. when omitted (or -1) the best mask is chosen. -// -// for generate{HTML,PNG}: -// -// - modulesize: a number. this is a size of each modules in pixels, and -// defaults to 5px. -// - margin: a number. this is a size of margin in *modules*, and defaults to -// 4 (white modules). the specficiation mandates the margin no less than 4 -// modules, so it is better not to alter this value unless you know what -// you're doing. -var QRCode = { - 'generate': function(data, options) { - var MODES = {'numeric': MODE_NUMERIC, 'alphanumeric': MODE_ALPHANUMERIC, - 'octet': MODE_OCTET}; - var ECCLEVELS = {'L': ECCLEVEL_L, 'M': ECCLEVEL_M, 'Q': ECCLEVEL_Q, - 'H': ECCLEVEL_H}; - - options = options || {}; - var ver = options.version || -1; - var ecclevel = ECCLEVELS[(options.ecclevel || 'L').toUpperCase()]; - var mode = options.mode ? MODES[options.mode.toLowerCase()] : -1; - var mask = 'mask' in options ? options.mask : -1; - - if (mode < 0) { - if (typeof data === 'string') { - if (data.match(NUMERIC_REGEXP)) { - mode = MODE_NUMERIC; - } else if (data.match(ALPHANUMERIC_OUT_REGEXP)) { - // while encode supports case-insensitive - // encoding, we restrict the data to be - // uppercased when auto-selecting the mode. - mode = MODE_ALPHANUMERIC; - } else { - mode = MODE_OCTET; - } - } else { - mode = MODE_OCTET; - } - } else if (!(mode == MODE_NUMERIC || mode == MODE_ALPHANUMERIC || - mode == MODE_OCTET)) { - throw 'invalid or unsupported mode'; - } - - data = validatedata(mode, data); - if (data === null) throw 'invalid data format'; - - if (ecclevel < 0 || ecclevel > 3) throw 'invalid ECC level'; - - if (ver < 0) { - for (ver = 1; ver <= 40; ++ver) { - if (data.length <= getmaxdatalen(ver, mode, ecclevel)) break; - } - if (ver > 40) throw 'too large data'; - } else if (ver < 1 || ver > 40) { - throw 'invalid version'; - } - - if (mask != -1 && (mask < 0 || mask > 8)) throw 'invalid mask'; - - return generate(data, ver, mode, ecclevel, mask); - }, - - 'generateHTML': function(data, options) { - options = options || {}; - var matrix = QRCode['generate'](data, options); - var modsize = Math.max(options.modulesize || 5, 0.5); - var margin = Math.max(options.margin !== null ? options.margin : 4, 0.0); - - var e = document.createElement('div'); - var n = matrix.length; - var html = ['']; - for (var i = 0; i < n; ++i) { - html.push(''); - for (var j = 0; j < n; ++j) { - html.push(''); - } - html.push(''); - } - e.className = 'qrcode'; - e.innerHTML = html.join('') + '
'; - return e; - }, - - 'generateSVG': function(data, options) { - options = options || {}; - var matrix = QRCode['generate'](data, options); - var n = matrix.length; - var modsize = Math.max(options.modulesize || 5, 0.5); - var margin = Math.max(options.margin !== null ? options.margin : 4, 0.0); - var size = modsize * (n + 2 * margin); - - var common = ' class= "fg"'+' width="'+modsize+'" height="'+modsize+'"/>'; - - var e = document.createElementNS('http://www.w3.org/2000/svg', 'svg'); - e.setAttribute('viewBox', '0 0 '+size+' '+size); - e.setAttribute('style', 'shape-rendering:crispEdges'); - if (options.modulesize) { - e.setAttribute('width', size); - e.setAttribute('height', size); - } - - var svg = [ - '', - '', - ]; - - var yo = margin * modsize; - for (var y = 0; y < n; ++y) { - var xo = margin * modsize; - for (var x = 0; x < n; ++x) { - if (matrix[y][x]) - svg.push('>> 0) + (counter++ + "__"); - }; - WeakMap.prototype = { - set: function(key, value) { - var entry = key[this.name]; - if (entry && entry[0] === key) entry[1] = value; else defineProperty(key, this.name, { - value: [ key, value ], - writable: true - }); - return this; - }, - get: function(key) { - var entry; - return (entry = key[this.name]) && entry[0] === key ? entry[1] : undefined; - }, - "delete": function(key) { - var entry = key[this.name]; - if (!entry || entry[0] !== key) return false; - entry[0] = entry[1] = undefined; - return true; - }, - has: function(key) { - var entry = key[this.name]; - if (!entry) return false; - return entry[0] === key; - } - }; - window.WeakMap = WeakMap; - })(); -} - -(function(global) { - if (global.JsMutationObserver) { - return; - } - var registrationsTable = new WeakMap(); - var setImmediate; - if (/Trident|Edge/.test(navigator.userAgent)) { - setImmediate = setTimeout; - } else if (window.setImmediate) { - setImmediate = window.setImmediate; - } else { - var setImmediateQueue = []; - var sentinel = String(Math.random()); - window.addEventListener("message", function(e) { - if (e.data === sentinel) { - var queue = setImmediateQueue; - setImmediateQueue = []; - queue.forEach(function(func) { - func(); - }); - } - }); - setImmediate = function(func) { - setImmediateQueue.push(func); - window.postMessage(sentinel, "*"); - }; - } - var isScheduled = false; - var scheduledObservers = []; - function scheduleCallback(observer) { - scheduledObservers.push(observer); - if (!isScheduled) { - isScheduled = true; - setImmediate(dispatchCallbacks); - } - } - function wrapIfNeeded(node) { - return window.ShadowDOMPolyfill && window.ShadowDOMPolyfill.wrapIfNeeded(node) || node; - } - function dispatchCallbacks() { - isScheduled = false; - var observers = scheduledObservers; - scheduledObservers = []; - observers.sort(function(o1, o2) { - return o1.uid_ - o2.uid_; - }); - var anyNonEmpty = false; - observers.forEach(function(observer) { - var queue = observer.takeRecords(); - removeTransientObserversFor(observer); - if (queue.length) { - observer.callback_(queue, observer); - anyNonEmpty = true; - } - }); - if (anyNonEmpty) dispatchCallbacks(); - } - function removeTransientObserversFor(observer) { - observer.nodes_.forEach(function(node) { - var registrations = registrationsTable.get(node); - if (!registrations) return; - registrations.forEach(function(registration) { - if (registration.observer === observer) registration.removeTransientObservers(); - }); - }); - } - function forEachAncestorAndObserverEnqueueRecord(target, callback) { - for (var node = target; node; node = node.parentNode) { - var registrations = registrationsTable.get(node); - if (registrations) { - for (var j = 0; j < registrations.length; j++) { - var registration = registrations[j]; - var options = registration.options; - if (node !== target && !options.subtree) continue; - var record = callback(options); - if (record) registration.enqueue(record); - } - } - } - } - var uidCounter = 0; - function JsMutationObserver(callback) { - this.callback_ = callback; - this.nodes_ = []; - this.records_ = []; - this.uid_ = ++uidCounter; - } - JsMutationObserver.prototype = { - observe: function(target, options) { - target = wrapIfNeeded(target); - if (!options.childList && !options.attributes && !options.characterData || options.attributeOldValue && !options.attributes || options.attributeFilter && options.attributeFilter.length && !options.attributes || options.characterDataOldValue && !options.characterData) { - throw new SyntaxError(); - } - var registrations = registrationsTable.get(target); - if (!registrations) registrationsTable.set(target, registrations = []); - var registration; - for (var i = 0; i < registrations.length; i++) { - if (registrations[i].observer === this) { - registration = registrations[i]; - registration.removeListeners(); - registration.options = options; - break; - } - } - if (!registration) { - registration = new Registration(this, target, options); - registrations.push(registration); - this.nodes_.push(target); - } - registration.addListeners(); - }, - disconnect: function() { - this.nodes_.forEach(function(node) { - var registrations = registrationsTable.get(node); - for (var i = 0; i < registrations.length; i++) { - var registration = registrations[i]; - if (registration.observer === this) { - registration.removeListeners(); - registrations.splice(i, 1); - break; - } - } - }, this); - this.records_ = []; - }, - takeRecords: function() { - var copyOfRecords = this.records_; - this.records_ = []; - return copyOfRecords; - } - }; - function MutationRecord(type, target) { - this.type = type; - this.target = target; - this.addedNodes = []; - this.removedNodes = []; - this.previousSibling = null; - this.nextSibling = null; - this.attributeName = null; - this.attributeNamespace = null; - this.oldValue = null; - } - function copyMutationRecord(original) { - var record = new MutationRecord(original.type, original.target); - record.addedNodes = original.addedNodes.slice(); - record.removedNodes = original.removedNodes.slice(); - record.previousSibling = original.previousSibling; - record.nextSibling = original.nextSibling; - record.attributeName = original.attributeName; - record.attributeNamespace = original.attributeNamespace; - record.oldValue = original.oldValue; - return record; - } - var currentRecord, recordWithOldValue; - function getRecord(type, target) { - return currentRecord = new MutationRecord(type, target); - } - function getRecordWithOldValue(oldValue) { - if (recordWithOldValue) return recordWithOldValue; - recordWithOldValue = copyMutationRecord(currentRecord); - recordWithOldValue.oldValue = oldValue; - return recordWithOldValue; - } - function clearRecords() { - currentRecord = recordWithOldValue = undefined; - } - function recordRepresentsCurrentMutation(record) { - return record === recordWithOldValue || record === currentRecord; - } - function selectRecord(lastRecord, newRecord) { - if (lastRecord === newRecord) return lastRecord; - if (recordWithOldValue && recordRepresentsCurrentMutation(lastRecord)) return recordWithOldValue; - return null; - } - function Registration(observer, target, options) { - this.observer = observer; - this.target = target; - this.options = options; - this.transientObservedNodes = []; - } - Registration.prototype = { - enqueue: function(record) { - var records = this.observer.records_; - var length = records.length; - if (records.length > 0) { - var lastRecord = records[length - 1]; - var recordToReplaceLast = selectRecord(lastRecord, record); - if (recordToReplaceLast) { - records[length - 1] = recordToReplaceLast; - return; - } - } else { - scheduleCallback(this.observer); - } - records[length] = record; - }, - addListeners: function() { - this.addListeners_(this.target); - }, - addListeners_: function(node) { - var options = this.options; - if (options.attributes) node.addEventListener("DOMAttrModified", this, true); - if (options.characterData) node.addEventListener("DOMCharacterDataModified", this, true); - if (options.childList) node.addEventListener("DOMNodeInserted", this, true); - if (options.childList || options.subtree) node.addEventListener("DOMNodeRemoved", this, true); - }, - removeListeners: function() { - this.removeListeners_(this.target); - }, - removeListeners_: function(node) { - var options = this.options; - if (options.attributes) node.removeEventListener("DOMAttrModified", this, true); - if (options.characterData) node.removeEventListener("DOMCharacterDataModified", this, true); - if (options.childList) node.removeEventListener("DOMNodeInserted", this, true); - if (options.childList || options.subtree) node.removeEventListener("DOMNodeRemoved", this, true); - }, - addTransientObserver: function(node) { - if (node === this.target) return; - this.addListeners_(node); - this.transientObservedNodes.push(node); - var registrations = registrationsTable.get(node); - if (!registrations) registrationsTable.set(node, registrations = []); - registrations.push(this); - }, - removeTransientObservers: function() { - var transientObservedNodes = this.transientObservedNodes; - this.transientObservedNodes = []; - transientObservedNodes.forEach(function(node) { - this.removeListeners_(node); - var registrations = registrationsTable.get(node); - for (var i = 0; i < registrations.length; i++) { - if (registrations[i] === this) { - registrations.splice(i, 1); - break; - } - } - }, this); - }, - handleEvent: function(e) { - e.stopImmediatePropagation(); - switch (e.type) { - case "DOMAttrModified": - var name = e.attrName; - var namespace = e.relatedNode.namespaceURI; - var target = e.target; - var record = new getRecord("attributes", target); - record.attributeName = name; - record.attributeNamespace = namespace; - var oldValue = e.attrChange === MutationEvent.ADDITION ? null : e.prevValue; - forEachAncestorAndObserverEnqueueRecord(target, function(options) { - if (!options.attributes) return; - if (options.attributeFilter && options.attributeFilter.length && options.attributeFilter.indexOf(name) === -1 && options.attributeFilter.indexOf(namespace) === -1) { - return; - } - if (options.attributeOldValue) return getRecordWithOldValue(oldValue); - return record; - }); - break; - - case "DOMCharacterDataModified": - var target = e.target; - var record = getRecord("characterData", target); - var oldValue = e.prevValue; - forEachAncestorAndObserverEnqueueRecord(target, function(options) { - if (!options.characterData) return; - if (options.characterDataOldValue) return getRecordWithOldValue(oldValue); - return record; - }); - break; - - case "DOMNodeRemoved": - this.addTransientObserver(e.target); - - case "DOMNodeInserted": - var changedNode = e.target; - var addedNodes, removedNodes; - if (e.type === "DOMNodeInserted") { - addedNodes = [ changedNode ]; - removedNodes = []; - } else { - addedNodes = []; - removedNodes = [ changedNode ]; - } - var previousSibling = changedNode.previousSibling; - var nextSibling = changedNode.nextSibling; - var record = getRecord("childList", e.target.parentNode); - record.addedNodes = addedNodes; - record.removedNodes = removedNodes; - record.previousSibling = previousSibling; - record.nextSibling = nextSibling; - forEachAncestorAndObserverEnqueueRecord(e.relatedNode, function(options) { - if (!options.childList) return; - return record; - }); - } - clearRecords(); - } - }; - global.JsMutationObserver = JsMutationObserver; - if (!global.MutationObserver) { - global.MutationObserver = JsMutationObserver; - JsMutationObserver._isPolyfilled = true; - } -})(self); - -(function(scope) { - "use strict"; - if (!window.performance) { - var start = Date.now(); - window.performance = { - now: function() { - return Date.now() - start; - } - }; - } - if (!window.requestAnimationFrame) { - window.requestAnimationFrame = function() { - var nativeRaf = window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame; - return nativeRaf ? function(callback) { - return nativeRaf(function() { - callback(performance.now()); - }); - } : function(callback) { - return window.setTimeout(callback, 1e3 / 60); - }; - }(); - } - if (!window.cancelAnimationFrame) { - window.cancelAnimationFrame = function() { - return window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || function(id) { - clearTimeout(id); - }; - }(); - } - var workingDefaultPrevented = function() { - var e = document.createEvent("Event"); - e.initEvent("foo", true, true); - e.preventDefault(); - return e.defaultPrevented; - }(); - if (!workingDefaultPrevented) { - var origPreventDefault = Event.prototype.preventDefault; - Event.prototype.preventDefault = function() { - if (!this.cancelable) { - return; - } - origPreventDefault.call(this); - Object.defineProperty(this, "defaultPrevented", { - get: function() { - return true; - }, - configurable: true - }); - }; - } - var isIE = /Trident/.test(navigator.userAgent); - if (!window.CustomEvent || isIE && typeof window.CustomEvent !== "function") { - window.CustomEvent = function(inType, params) { - params = params || {}; - var e = document.createEvent("CustomEvent"); - e.initCustomEvent(inType, Boolean(params.bubbles), Boolean(params.cancelable), params.detail); - return e; - }; - window.CustomEvent.prototype = window.Event.prototype; - } - if (!window.Event || isIE && typeof window.Event !== "function") { - var origEvent = window.Event; - window.Event = function(inType, params) { - params = params || {}; - var e = document.createEvent("Event"); - e.initEvent(inType, Boolean(params.bubbles), Boolean(params.cancelable)); - return e; - }; - window.Event.prototype = origEvent.prototype; - } -})(window.WebComponents); - -window.CustomElements = window.CustomElements || { - flags: {} -}; - -(function(scope) { - var flags = scope.flags; - var modules = []; - var addModule = function(module) { - modules.push(module); - }; - var initializeModules = function() { - modules.forEach(function(module) { - module(scope); - }); - }; - scope.addModule = addModule; - scope.initializeModules = initializeModules; - scope.hasNative = Boolean(document.registerElement); - scope.isIE = /Trident/.test(navigator.userAgent); - scope.useNative = !flags.register && scope.hasNative && !window.ShadowDOMPolyfill && (!window.HTMLImports || window.HTMLImports.useNative); -})(window.CustomElements); - -window.CustomElements.addModule(function(scope) { - var IMPORT_LINK_TYPE = window.HTMLImports ? window.HTMLImports.IMPORT_LINK_TYPE : "none"; - function forSubtree(node, cb) { - findAllElements(node, function(e) { - if (cb(e)) { - return true; - } - forRoots(e, cb); - }); - forRoots(node, cb); - } - function findAllElements(node, find, data) { - var e = node.firstElementChild; - if (!e) { - e = node.firstChild; - while (e && e.nodeType !== Node.ELEMENT_NODE) { - e = e.nextSibling; - } - } - while (e) { - if (find(e, data) !== true) { - findAllElements(e, find, data); - } - e = e.nextElementSibling; - } - return null; - } - function forRoots(node, cb) { - var root = node.shadowRoot; - while (root) { - forSubtree(root, cb); - root = root.olderShadowRoot; - } - } - function forDocumentTree(doc, cb) { - _forDocumentTree(doc, cb, []); - } - function _forDocumentTree(doc, cb, processingDocuments) { - doc = window.wrap(doc); - if (processingDocuments.indexOf(doc) >= 0) { - return; - } - processingDocuments.push(doc); - var imports = doc.querySelectorAll("link[rel=" + IMPORT_LINK_TYPE + "]"); - for (var i = 0, l = imports.length, n; i < l && (n = imports[i]); i++) { - if (n.import) { - _forDocumentTree(n.import, cb, processingDocuments); - } - } - cb(doc); - } - scope.forDocumentTree = forDocumentTree; - scope.forSubtree = forSubtree; -}); - -window.CustomElements.addModule(function(scope) { - var flags = scope.flags; - var forSubtree = scope.forSubtree; - var forDocumentTree = scope.forDocumentTree; - function addedNode(node, isAttached) { - return added(node, isAttached) || addedSubtree(node, isAttached); - } - function added(node, isAttached) { - if (scope.upgrade(node, isAttached)) { - return true; - } - if (isAttached) { - attached(node); - } - } - function addedSubtree(node, isAttached) { - forSubtree(node, function(e) { - if (added(e, isAttached)) { - return true; - } - }); - } - var hasThrottledAttached = window.MutationObserver._isPolyfilled && flags["throttle-attached"]; - scope.hasPolyfillMutations = hasThrottledAttached; - scope.hasThrottledAttached = hasThrottledAttached; - var isPendingMutations = false; - var pendingMutations = []; - function deferMutation(fn) { - pendingMutations.push(fn); - if (!isPendingMutations) { - isPendingMutations = true; - setTimeout(takeMutations); - } - } - function takeMutations() { - isPendingMutations = false; - var $p = pendingMutations; - for (var i = 0, l = $p.length, p; i < l && (p = $p[i]); i++) { - p(); - } - pendingMutations = []; - } - function attached(element) { - if (hasThrottledAttached) { - deferMutation(function() { - _attached(element); - }); - } else { - _attached(element); - } - } - function _attached(element) { - if (element.__upgraded__ && !element.__attached) { - element.__attached = true; - if (element.attachedCallback) { - element.attachedCallback(); - } - } - } - function detachedNode(node) { - detached(node); - forSubtree(node, function(e) { - detached(e); - }); - } - function detached(element) { - if (hasThrottledAttached) { - deferMutation(function() { - _detached(element); - }); - } else { - _detached(element); - } - } - function _detached(element) { - if (element.__upgraded__ && element.__attached) { - element.__attached = false; - if (element.detachedCallback) { - element.detachedCallback(); - } - } - } - function inDocument(element) { - var p = element; - var doc = window.wrap(document); - while (p) { - if (p == doc) { - return true; - } - p = p.parentNode || p.nodeType === Node.DOCUMENT_FRAGMENT_NODE && p.host; - } - } - function watchShadow(node) { - if (node.shadowRoot && !node.shadowRoot.__watched) { - flags.dom && console.log("watching shadow-root for: ", node.localName); - var root = node.shadowRoot; - while (root) { - observe(root); - root = root.olderShadowRoot; - } - } - } - function handler(root, mutations) { - if (flags.dom) { - var mx = mutations[0]; - if (mx && mx.type === "childList" && mx.addedNodes) { - if (mx.addedNodes) { - var d = mx.addedNodes[0]; - while (d && d !== document && !d.host) { - d = d.parentNode; - } - var u = d && (d.URL || d._URL || d.host && d.host.localName) || ""; - u = u.split("/?").shift().split("/").pop(); - } - } - console.group("mutations (%d) [%s]", mutations.length, u || ""); - } - var isAttached = inDocument(root); - mutations.forEach(function(mx) { - if (mx.type === "childList") { - forEach(mx.addedNodes, function(n) { - if (!n.localName) { - return; - } - addedNode(n, isAttached); - }); - forEach(mx.removedNodes, function(n) { - if (!n.localName) { - return; - } - detachedNode(n); - }); - } - }); - flags.dom && console.groupEnd(); - } - function takeRecords(node) { - node = window.wrap(node); - if (!node) { - node = window.wrap(document); - } - while (node.parentNode) { - node = node.parentNode; - } - var observer = node.__observer; - if (observer) { - handler(node, observer.takeRecords()); - takeMutations(); - } - } - var forEach = Array.prototype.forEach.call.bind(Array.prototype.forEach); - function observe(inRoot) { - if (inRoot.__observer) { - return; - } - var observer = new MutationObserver(handler.bind(this, inRoot)); - observer.observe(inRoot, { - childList: true, - subtree: true - }); - inRoot.__observer = observer; - } - function upgradeDocument(doc) { - doc = window.wrap(doc); - flags.dom && console.group("upgradeDocument: ", doc.baseURI.split("/").pop()); - var isMainDocument = doc === window.wrap(document); - addedNode(doc, isMainDocument); - observe(doc); - flags.dom && console.groupEnd(); - } - function upgradeDocumentTree(doc) { - forDocumentTree(doc, upgradeDocument); - } - var originalCreateShadowRoot = Element.prototype.createShadowRoot; - if (originalCreateShadowRoot) { - Element.prototype.createShadowRoot = function() { - var root = originalCreateShadowRoot.call(this); - window.CustomElements.watchShadow(this); - return root; - }; - } - scope.watchShadow = watchShadow; - scope.upgradeDocumentTree = upgradeDocumentTree; - scope.upgradeDocument = upgradeDocument; - scope.upgradeSubtree = addedSubtree; - scope.upgradeAll = addedNode; - scope.attached = attached; - scope.takeRecords = takeRecords; -}); - -window.CustomElements.addModule(function(scope) { - var flags = scope.flags; - function upgrade(node, isAttached) { - if (node.localName === "template") { - if (window.HTMLTemplateElement && HTMLTemplateElement.decorate) { - HTMLTemplateElement.decorate(node); - } - } - if (!node.__upgraded__ && node.nodeType === Node.ELEMENT_NODE) { - var is = node.getAttribute("is"); - var definition = scope.getRegisteredDefinition(node.localName) || scope.getRegisteredDefinition(is); - if (definition) { - if (is && definition.tag == node.localName || !is && !definition.extends) { - return upgradeWithDefinition(node, definition, isAttached); - } - } - } - } - function upgradeWithDefinition(element, definition, isAttached) { - flags.upgrade && console.group("upgrade:", element.localName); - if (definition.is) { - element.setAttribute("is", definition.is); - } - implementPrototype(element, definition); - element.__upgraded__ = true; - created(element); - if (isAttached) { - scope.attached(element); - } - scope.upgradeSubtree(element, isAttached); - flags.upgrade && console.groupEnd(); - return element; - } - function implementPrototype(element, definition) { - if (Object.__proto__) { - element.__proto__ = definition.prototype; - } else { - customMixin(element, definition.prototype, definition.native); - element.__proto__ = definition.prototype; - } - } - function customMixin(inTarget, inSrc, inNative) { - var used = {}; - var p = inSrc; - while (p !== inNative && p !== HTMLElement.prototype) { - var keys = Object.getOwnPropertyNames(p); - for (var i = 0, k; k = keys[i]; i++) { - if (!used[k]) { - Object.defineProperty(inTarget, k, Object.getOwnPropertyDescriptor(p, k)); - used[k] = 1; - } - } - p = Object.getPrototypeOf(p); - } - } - function created(element) { - if (element.createdCallback) { - element.createdCallback(); - } - } - scope.upgrade = upgrade; - scope.upgradeWithDefinition = upgradeWithDefinition; - scope.implementPrototype = implementPrototype; -}); - -window.CustomElements.addModule(function(scope) { - var isIE = scope.isIE; - var upgradeDocumentTree = scope.upgradeDocumentTree; - var upgradeAll = scope.upgradeAll; - var upgradeWithDefinition = scope.upgradeWithDefinition; - var implementPrototype = scope.implementPrototype; - var useNative = scope.useNative; - function register(name, options) { - var definition = options || {}; - if (!name) { - throw new Error("document.registerElement: first argument `name` must not be empty"); - } - if (name.indexOf("-") < 0) { - throw new Error("document.registerElement: first argument ('name') must contain a dash ('-'). Argument provided was '" + String(name) + "'."); - } - if (isReservedTag(name)) { - throw new Error("Failed to execute 'registerElement' on 'Document': Registration failed for type '" + String(name) + "'. The type name is invalid."); - } - if (getRegisteredDefinition(name)) { - throw new Error("DuplicateDefinitionError: a type with name '" + String(name) + "' is already registered"); - } - if (!definition.prototype) { - definition.prototype = Object.create(HTMLElement.prototype); - } - definition.__name = name.toLowerCase(); - if (definition.extends) { - definition.extends = definition.extends.toLowerCase(); - } - definition.lifecycle = definition.lifecycle || {}; - definition.ancestry = ancestry(definition.extends); - resolveTagName(definition); - resolvePrototypeChain(definition); - overrideAttributeApi(definition.prototype); - registerDefinition(definition.__name, definition); - definition.ctor = generateConstructor(definition); - definition.ctor.prototype = definition.prototype; - definition.prototype.constructor = definition.ctor; - if (scope.ready) { - upgradeDocumentTree(document); - } - return definition.ctor; - } - function overrideAttributeApi(prototype) { - if (prototype.setAttribute._polyfilled) { - return; - } - var setAttribute = prototype.setAttribute; - prototype.setAttribute = function(name, value) { - changeAttribute.call(this, name, value, setAttribute); - }; - var removeAttribute = prototype.removeAttribute; - prototype.removeAttribute = function(name) { - changeAttribute.call(this, name, null, removeAttribute); - }; - prototype.setAttribute._polyfilled = true; - } - function changeAttribute(name, value, operation) { - name = name.toLowerCase(); - var oldValue = this.getAttribute(name); - operation.apply(this, arguments); - var newValue = this.getAttribute(name); - if (this.attributeChangedCallback && newValue !== oldValue) { - this.attributeChangedCallback(name, oldValue, newValue); - } - } - function isReservedTag(name) { - for (var i = 0; i < reservedTagList.length; i++) { - if (name === reservedTagList[i]) { - return true; - } - } - } - var reservedTagList = [ "annotation-xml", "color-profile", "font-face", "font-face-src", "font-face-uri", "font-face-format", "font-face-name", "missing-glyph" ]; - function ancestry(extnds) { - var extendee = getRegisteredDefinition(extnds); - if (extendee) { - return ancestry(extendee.extends).concat([ extendee ]); - } - return []; - } - function resolveTagName(definition) { - var baseTag = definition.extends; - for (var i = 0, a; a = definition.ancestry[i]; i++) { - baseTag = a.is && a.tag; - } - definition.tag = baseTag || definition.__name; - if (baseTag) { - definition.is = definition.__name; - } - } - function resolvePrototypeChain(definition) { - if (!Object.__proto__) { - var nativePrototype = HTMLElement.prototype; - if (definition.is) { - var inst = document.createElement(definition.tag); - nativePrototype = Object.getPrototypeOf(inst); - } - var proto = definition.prototype, ancestor; - var foundPrototype = false; - while (proto) { - if (proto == nativePrototype) { - foundPrototype = true; - } - ancestor = Object.getPrototypeOf(proto); - if (ancestor) { - proto.__proto__ = ancestor; - } - proto = ancestor; - } - if (!foundPrototype) { - console.warn(definition.tag + " prototype not found in prototype chain for " + definition.is); - } - definition.native = nativePrototype; - } - } - function instantiate(definition) { - return upgradeWithDefinition(domCreateElement(definition.tag), definition); - } - var registry = {}; - function getRegisteredDefinition(name) { - if (name) { - return registry[name.toLowerCase()]; - } - } - function registerDefinition(name, definition) { - registry[name] = definition; - } - function generateConstructor(definition) { - return function() { - return instantiate(definition); - }; - } - var HTML_NAMESPACE = "http://www.w3.org/1999/xhtml"; - function createElementNS(namespace, tag, typeExtension) { - if (namespace === HTML_NAMESPACE) { - return createElement(tag, typeExtension); - } else { - return domCreateElementNS(namespace, tag); - } - } - function createElement(tag, typeExtension) { - if (tag) { - tag = tag.toLowerCase(); - } - if (typeExtension) { - typeExtension = typeExtension.toLowerCase(); - } - var definition = getRegisteredDefinition(typeExtension || tag); - if (definition) { - if (tag == definition.tag && typeExtension == definition.is) { - return new definition.ctor(); - } - if (!typeExtension && !definition.is) { - return new definition.ctor(); - } - } - var element; - if (typeExtension) { - element = createElement(tag); - element.setAttribute("is", typeExtension); - return element; - } - element = domCreateElement(tag); - if (tag.indexOf("-") >= 0) { - implementPrototype(element, HTMLElement); - } - return element; - } - var domCreateElement = document.createElement.bind(document); - var domCreateElementNS = document.createElementNS.bind(document); - var isInstance; - if (!Object.__proto__ && !useNative) { - isInstance = function(obj, ctor) { - if (obj instanceof ctor) { - return true; - } - var p = obj; - while (p) { - if (p === ctor.prototype) { - return true; - } - p = p.__proto__; - } - return false; - }; - } else { - isInstance = function(obj, base) { - return obj instanceof base; - }; - } - function wrapDomMethodToForceUpgrade(obj, methodName) { - var orig = obj[methodName]; - obj[methodName] = function() { - var n = orig.apply(this, arguments); - upgradeAll(n); - return n; - }; - } - wrapDomMethodToForceUpgrade(Node.prototype, "cloneNode"); - wrapDomMethodToForceUpgrade(document, "importNode"); - document.registerElement = register; - document.createElement = createElement; - document.createElementNS = createElementNS; - scope.registry = registry; - scope.instanceof = isInstance; - scope.reservedTagList = reservedTagList; - scope.getRegisteredDefinition = getRegisteredDefinition; - document.register = document.registerElement; -}); - -(function(scope) { - var useNative = scope.useNative; - var initializeModules = scope.initializeModules; - var isIE = scope.isIE; - if (useNative) { - var nop = function() {}; - scope.watchShadow = nop; - scope.upgrade = nop; - scope.upgradeAll = nop; - scope.upgradeDocumentTree = nop; - scope.upgradeSubtree = nop; - scope.takeRecords = nop; - scope.instanceof = function(obj, base) { - return obj instanceof base; - }; - } else { - initializeModules(); - } - var upgradeDocumentTree = scope.upgradeDocumentTree; - var upgradeDocument = scope.upgradeDocument; - if (!window.wrap) { - if (window.ShadowDOMPolyfill) { - window.wrap = window.ShadowDOMPolyfill.wrapIfNeeded; - window.unwrap = window.ShadowDOMPolyfill.unwrapIfNeeded; - } else { - window.wrap = window.unwrap = function(node) { - return node; - }; - } - } - if (window.HTMLImports) { - window.HTMLImports.__importsParsingHook = function(elt) { - if (elt.import) { - upgradeDocument(wrap(elt.import)); - } - }; - } - function bootstrap() { - upgradeDocumentTree(window.wrap(document)); - window.CustomElements.ready = true; - var requestAnimationFrame = window.requestAnimationFrame || function(f) { - setTimeout(f, 16); - }; - requestAnimationFrame(function() { - setTimeout(function() { - window.CustomElements.readyTime = Date.now(); - if (window.HTMLImports) { - window.CustomElements.elapsed = window.CustomElements.readyTime - window.HTMLImports.readyTime; - } - document.dispatchEvent(new CustomEvent("WebComponentsReady", { - bubbles: true - })); - }); - }); - } - if (document.readyState === "complete" || scope.flags.eager) { - bootstrap(); - } else if (document.readyState === "interactive" && !window.attachEvent && (!window.HTMLImports || window.HTMLImports.ready)) { - bootstrap(); - } else { - var loadEvent = window.HTMLImports && !window.HTMLImports.ready ? "HTMLImportsLoaded" : "DOMContentLoaded"; - window.addEventListener(loadEvent, bootstrap); - } -})(window.CustomElements); \ No newline at end of file diff --git a/lib/admin/public/bower_components/webcomponentsjs/CustomElements.min.js b/lib/admin/public/bower_components/webcomponentsjs/CustomElements.min.js deleted file mode 100644 index a2761f17..00000000 --- a/lib/admin/public/bower_components/webcomponentsjs/CustomElements.min.js +++ /dev/null @@ -1,11 +0,0 @@ -/** - * @license - * Copyright (c) 2014 The Polymer Project Authors. All rights reserved. - * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt - * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt - * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt - * Code distributed by Google as part of the polymer project is also - * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt - */ -// @version 0.7.22 -"undefined"==typeof WeakMap&&!function(){var e=Object.defineProperty,t=Date.now()%1e9,n=function(){this.name="__st"+(1e9*Math.random()>>>0)+(t++ +"__")};n.prototype={set:function(t,n){var o=t[this.name];return o&&o[0]===t?o[1]=n:e(t,this.name,{value:[t,n],writable:!0}),this},get:function(e){var t;return(t=e[this.name])&&t[0]===e?t[1]:void 0},"delete":function(e){var t=e[this.name];return t&&t[0]===e?(t[0]=t[1]=void 0,!0):!1},has:function(e){var t=e[this.name];return t?t[0]===e:!1}},window.WeakMap=n}(),function(e){function t(e){E.push(e),b||(b=!0,w(o))}function n(e){return window.ShadowDOMPolyfill&&window.ShadowDOMPolyfill.wrapIfNeeded(e)||e}function o(){b=!1;var e=E;E=[],e.sort(function(e,t){return e.uid_-t.uid_});var t=!1;e.forEach(function(e){var n=e.takeRecords();r(e),n.length&&(e.callback_(n,e),t=!0)}),t&&o()}function r(e){e.nodes_.forEach(function(t){var n=v.get(t);n&&n.forEach(function(t){t.observer===e&&t.removeTransientObservers()})})}function i(e,t){for(var n=e;n;n=n.parentNode){var o=v.get(n);if(o)for(var r=0;r0){var r=n[o-1],i=p(r,e);if(i)return void(n[o-1]=i)}else t(this.observer);n[o]=e},addListeners:function(){this.addListeners_(this.target)},addListeners_:function(e){var t=this.options;t.attributes&&e.addEventListener("DOMAttrModified",this,!0),t.characterData&&e.addEventListener("DOMCharacterDataModified",this,!0),t.childList&&e.addEventListener("DOMNodeInserted",this,!0),(t.childList||t.subtree)&&e.addEventListener("DOMNodeRemoved",this,!0)},removeListeners:function(){this.removeListeners_(this.target)},removeListeners_:function(e){var t=this.options;t.attributes&&e.removeEventListener("DOMAttrModified",this,!0),t.characterData&&e.removeEventListener("DOMCharacterDataModified",this,!0),t.childList&&e.removeEventListener("DOMNodeInserted",this,!0),(t.childList||t.subtree)&&e.removeEventListener("DOMNodeRemoved",this,!0)},addTransientObserver:function(e){if(e!==this.target){this.addListeners_(e),this.transientObservedNodes.push(e);var t=v.get(e);t||v.set(e,t=[]),t.push(this)}},removeTransientObservers:function(){var e=this.transientObservedNodes;this.transientObservedNodes=[],e.forEach(function(e){this.removeListeners_(e);for(var t=v.get(e),n=0;n=0)){n.push(e);for(var o,r=e.querySelectorAll("link[rel="+a+"]"),d=0,s=r.length;s>d&&(o=r[d]);d++)o["import"]&&i(o["import"],t,n);t(e)}}var a=window.HTMLImports?window.HTMLImports.IMPORT_LINK_TYPE:"none";e.forDocumentTree=r,e.forSubtree=t}),window.CustomElements.addModule(function(e){function t(e,t){return n(e,t)||o(e,t)}function n(t,n){return e.upgrade(t,n)?!0:void(n&&a(t))}function o(e,t){b(e,function(e){return n(e,t)?!0:void 0})}function r(e){N.push(e),y||(y=!0,setTimeout(i))}function i(){y=!1;for(var e,t=N,n=0,o=t.length;o>n&&(e=t[n]);n++)e();N=[]}function a(e){_?r(function(){d(e)}):d(e)}function d(e){e.__upgraded__&&!e.__attached&&(e.__attached=!0,e.attachedCallback&&e.attachedCallback())}function s(e){u(e),b(e,function(e){u(e)})}function u(e){_?r(function(){c(e)}):c(e)}function c(e){e.__upgraded__&&e.__attached&&(e.__attached=!1,e.detachedCallback&&e.detachedCallback())}function l(e){for(var t=e,n=window.wrap(document);t;){if(t==n)return!0;t=t.parentNode||t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&t.host}}function f(e){if(e.shadowRoot&&!e.shadowRoot.__watched){g.dom&&console.log("watching shadow-root for: ",e.localName);for(var t=e.shadowRoot;t;)w(t),t=t.olderShadowRoot}}function p(e,n){if(g.dom){var o=n[0];if(o&&"childList"===o.type&&o.addedNodes&&o.addedNodes){for(var r=o.addedNodes[0];r&&r!==document&&!r.host;)r=r.parentNode;var i=r&&(r.URL||r._URL||r.host&&r.host.localName)||"";i=i.split("/?").shift().split("/").pop()}console.group("mutations (%d) [%s]",n.length,i||"")}var a=l(e);n.forEach(function(e){"childList"===e.type&&(M(e.addedNodes,function(e){e.localName&&t(e,a)}),M(e.removedNodes,function(e){e.localName&&s(e)}))}),g.dom&&console.groupEnd()}function m(e){for(e=window.wrap(e),e||(e=window.wrap(document));e.parentNode;)e=e.parentNode;var t=e.__observer;t&&(p(e,t.takeRecords()),i())}function w(e){if(!e.__observer){var t=new MutationObserver(p.bind(this,e));t.observe(e,{childList:!0,subtree:!0}),e.__observer=t}}function v(e){e=window.wrap(e),g.dom&&console.group("upgradeDocument: ",e.baseURI.split("/").pop());var n=e===window.wrap(document);t(e,n),w(e),g.dom&&console.groupEnd()}function h(e){E(e,v)}var g=e.flags,b=e.forSubtree,E=e.forDocumentTree,_=window.MutationObserver._isPolyfilled&&g["throttle-attached"];e.hasPolyfillMutations=_,e.hasThrottledAttached=_;var y=!1,N=[],M=Array.prototype.forEach.call.bind(Array.prototype.forEach),O=Element.prototype.createShadowRoot;O&&(Element.prototype.createShadowRoot=function(){var e=O.call(this);return window.CustomElements.watchShadow(this),e}),e.watchShadow=f,e.upgradeDocumentTree=h,e.upgradeDocument=v,e.upgradeSubtree=o,e.upgradeAll=t,e.attached=a,e.takeRecords=m}),window.CustomElements.addModule(function(e){function t(t,o){if("template"===t.localName&&window.HTMLTemplateElement&&HTMLTemplateElement.decorate&&HTMLTemplateElement.decorate(t),!t.__upgraded__&&t.nodeType===Node.ELEMENT_NODE){var r=t.getAttribute("is"),i=e.getRegisteredDefinition(t.localName)||e.getRegisteredDefinition(r);if(i&&(r&&i.tag==t.localName||!r&&!i["extends"]))return n(t,i,o)}}function n(t,n,r){return a.upgrade&&console.group("upgrade:",t.localName),n.is&&t.setAttribute("is",n.is),o(t,n),t.__upgraded__=!0,i(t),r&&e.attached(t),e.upgradeSubtree(t,r),a.upgrade&&console.groupEnd(),t}function o(e,t){Object.__proto__?e.__proto__=t.prototype:(r(e,t.prototype,t["native"]),e.__proto__=t.prototype)}function r(e,t,n){for(var o={},r=t;r!==n&&r!==HTMLElement.prototype;){for(var i,a=Object.getOwnPropertyNames(r),d=0;i=a[d];d++)o[i]||(Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i)),o[i]=1);r=Object.getPrototypeOf(r)}}function i(e){e.createdCallback&&e.createdCallback()}var a=e.flags;e.upgrade=t,e.upgradeWithDefinition=n,e.implementPrototype=o}),window.CustomElements.addModule(function(e){function t(t,o){var s=o||{};if(!t)throw new Error("document.registerElement: first argument `name` must not be empty");if(t.indexOf("-")<0)throw new Error("document.registerElement: first argument ('name') must contain a dash ('-'). Argument provided was '"+String(t)+"'.");if(r(t))throw new Error("Failed to execute 'registerElement' on 'Document': Registration failed for type '"+String(t)+"'. The type name is invalid.");if(u(t))throw new Error("DuplicateDefinitionError: a type with name '"+String(t)+"' is already registered");return s.prototype||(s.prototype=Object.create(HTMLElement.prototype)),s.__name=t.toLowerCase(),s["extends"]&&(s["extends"]=s["extends"].toLowerCase()),s.lifecycle=s.lifecycle||{},s.ancestry=i(s["extends"]),a(s),d(s),n(s.prototype),c(s.__name,s),s.ctor=l(s),s.ctor.prototype=s.prototype,s.prototype.constructor=s.ctor,e.ready&&v(document),s.ctor}function n(e){if(!e.setAttribute._polyfilled){var t=e.setAttribute;e.setAttribute=function(e,n){o.call(this,e,n,t)};var n=e.removeAttribute;e.removeAttribute=function(e){o.call(this,e,null,n)},e.setAttribute._polyfilled=!0}}function o(e,t,n){e=e.toLowerCase();var o=this.getAttribute(e);n.apply(this,arguments);var r=this.getAttribute(e);this.attributeChangedCallback&&r!==o&&this.attributeChangedCallback(e,o,r)}function r(e){for(var t=0;t<_.length;t++)if(e===_[t])return!0}function i(e){var t=u(e);return t?i(t["extends"]).concat([t]):[]}function a(e){for(var t,n=e["extends"],o=0;t=e.ancestry[o];o++)n=t.is&&t.tag;e.tag=n||e.__name,n&&(e.is=e.__name)}function d(e){if(!Object.__proto__){var t=HTMLElement.prototype;if(e.is){var n=document.createElement(e.tag);t=Object.getPrototypeOf(n)}for(var o,r=e.prototype,i=!1;r;)r==t&&(i=!0),o=Object.getPrototypeOf(r),o&&(r.__proto__=o),r=o;i||console.warn(e.tag+" prototype not found in prototype chain for "+e.is),e["native"]=t}}function s(e){return g(M(e.tag),e)}function u(e){return e?y[e.toLowerCase()]:void 0}function c(e,t){y[e]=t}function l(e){return function(){return s(e)}}function f(e,t,n){return e===N?p(t,n):O(e,t)}function p(e,t){e&&(e=e.toLowerCase()),t&&(t=t.toLowerCase());var n=u(t||e);if(n){if(e==n.tag&&t==n.is)return new n.ctor;if(!t&&!n.is)return new n.ctor}var o;return t?(o=p(e),o.setAttribute("is",t),o):(o=M(e),e.indexOf("-")>=0&&b(o,HTMLElement),o)}function m(e,t){var n=e[t];e[t]=function(){var e=n.apply(this,arguments);return h(e),e}}var w,v=(e.isIE,e.upgradeDocumentTree),h=e.upgradeAll,g=e.upgradeWithDefinition,b=e.implementPrototype,E=e.useNative,_=["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"],y={},N="http://www.w3.org/1999/xhtml",M=document.createElement.bind(document),O=document.createElementNS.bind(document);w=Object.__proto__||E?function(e,t){return e instanceof t}:function(e,t){if(e instanceof t)return!0;for(var n=e;n;){if(n===t.prototype)return!0;n=n.__proto__}return!1},m(Node.prototype,"cloneNode"),m(document,"importNode"),document.registerElement=t,document.createElement=p,document.createElementNS=f,e.registry=y,e["instanceof"]=w,e.reservedTagList=_,e.getRegisteredDefinition=u,document.register=document.registerElement}),function(e){function t(){i(window.wrap(document)),window.CustomElements.ready=!0;var e=window.requestAnimationFrame||function(e){setTimeout(e,16)};e(function(){setTimeout(function(){window.CustomElements.readyTime=Date.now(),window.HTMLImports&&(window.CustomElements.elapsed=window.CustomElements.readyTime-window.HTMLImports.readyTime),document.dispatchEvent(new CustomEvent("WebComponentsReady",{bubbles:!0}))})})}var n=e.useNative,o=e.initializeModules;e.isIE;if(n){var r=function(){};e.watchShadow=r,e.upgrade=r,e.upgradeAll=r,e.upgradeDocumentTree=r,e.upgradeSubtree=r,e.takeRecords=r,e["instanceof"]=function(e,t){return e instanceof t}}else o();var i=e.upgradeDocumentTree,a=e.upgradeDocument;if(window.wrap||(window.ShadowDOMPolyfill?(window.wrap=window.ShadowDOMPolyfill.wrapIfNeeded,window.unwrap=window.ShadowDOMPolyfill.unwrapIfNeeded):window.wrap=window.unwrap=function(e){return e}),window.HTMLImports&&(window.HTMLImports.__importsParsingHook=function(e){e["import"]&&a(wrap(e["import"]))}),"complete"===document.readyState||e.flags.eager)t();else if("interactive"!==document.readyState||window.attachEvent||window.HTMLImports&&!window.HTMLImports.ready){var d=window.HTMLImports&&!window.HTMLImports.ready?"HTMLImportsLoaded":"DOMContentLoaded";window.addEventListener(d,t)}else t()}(window.CustomElements); \ No newline at end of file diff --git a/lib/admin/public/bower_components/webcomponentsjs/HTMLImports.js b/lib/admin/public/bower_components/webcomponentsjs/HTMLImports.js deleted file mode 100644 index cc8ac641..00000000 --- a/lib/admin/public/bower_components/webcomponentsjs/HTMLImports.js +++ /dev/null @@ -1,1157 +0,0 @@ -/** - * @license - * Copyright (c) 2014 The Polymer Project Authors. All rights reserved. - * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt - * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt - * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt - * Code distributed by Google as part of the polymer project is also - * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt - */ -// @version 0.7.22 -if (typeof WeakMap === "undefined") { - (function() { - var defineProperty = Object.defineProperty; - var counter = Date.now() % 1e9; - var WeakMap = function() { - this.name = "__st" + (Math.random() * 1e9 >>> 0) + (counter++ + "__"); - }; - WeakMap.prototype = { - set: function(key, value) { - var entry = key[this.name]; - if (entry && entry[0] === key) entry[1] = value; else defineProperty(key, this.name, { - value: [ key, value ], - writable: true - }); - return this; - }, - get: function(key) { - var entry; - return (entry = key[this.name]) && entry[0] === key ? entry[1] : undefined; - }, - "delete": function(key) { - var entry = key[this.name]; - if (!entry || entry[0] !== key) return false; - entry[0] = entry[1] = undefined; - return true; - }, - has: function(key) { - var entry = key[this.name]; - if (!entry) return false; - return entry[0] === key; - } - }; - window.WeakMap = WeakMap; - })(); -} - -(function(global) { - if (global.JsMutationObserver) { - return; - } - var registrationsTable = new WeakMap(); - var setImmediate; - if (/Trident|Edge/.test(navigator.userAgent)) { - setImmediate = setTimeout; - } else if (window.setImmediate) { - setImmediate = window.setImmediate; - } else { - var setImmediateQueue = []; - var sentinel = String(Math.random()); - window.addEventListener("message", function(e) { - if (e.data === sentinel) { - var queue = setImmediateQueue; - setImmediateQueue = []; - queue.forEach(function(func) { - func(); - }); - } - }); - setImmediate = function(func) { - setImmediateQueue.push(func); - window.postMessage(sentinel, "*"); - }; - } - var isScheduled = false; - var scheduledObservers = []; - function scheduleCallback(observer) { - scheduledObservers.push(observer); - if (!isScheduled) { - isScheduled = true; - setImmediate(dispatchCallbacks); - } - } - function wrapIfNeeded(node) { - return window.ShadowDOMPolyfill && window.ShadowDOMPolyfill.wrapIfNeeded(node) || node; - } - function dispatchCallbacks() { - isScheduled = false; - var observers = scheduledObservers; - scheduledObservers = []; - observers.sort(function(o1, o2) { - return o1.uid_ - o2.uid_; - }); - var anyNonEmpty = false; - observers.forEach(function(observer) { - var queue = observer.takeRecords(); - removeTransientObserversFor(observer); - if (queue.length) { - observer.callback_(queue, observer); - anyNonEmpty = true; - } - }); - if (anyNonEmpty) dispatchCallbacks(); - } - function removeTransientObserversFor(observer) { - observer.nodes_.forEach(function(node) { - var registrations = registrationsTable.get(node); - if (!registrations) return; - registrations.forEach(function(registration) { - if (registration.observer === observer) registration.removeTransientObservers(); - }); - }); - } - function forEachAncestorAndObserverEnqueueRecord(target, callback) { - for (var node = target; node; node = node.parentNode) { - var registrations = registrationsTable.get(node); - if (registrations) { - for (var j = 0; j < registrations.length; j++) { - var registration = registrations[j]; - var options = registration.options; - if (node !== target && !options.subtree) continue; - var record = callback(options); - if (record) registration.enqueue(record); - } - } - } - } - var uidCounter = 0; - function JsMutationObserver(callback) { - this.callback_ = callback; - this.nodes_ = []; - this.records_ = []; - this.uid_ = ++uidCounter; - } - JsMutationObserver.prototype = { - observe: function(target, options) { - target = wrapIfNeeded(target); - if (!options.childList && !options.attributes && !options.characterData || options.attributeOldValue && !options.attributes || options.attributeFilter && options.attributeFilter.length && !options.attributes || options.characterDataOldValue && !options.characterData) { - throw new SyntaxError(); - } - var registrations = registrationsTable.get(target); - if (!registrations) registrationsTable.set(target, registrations = []); - var registration; - for (var i = 0; i < registrations.length; i++) { - if (registrations[i].observer === this) { - registration = registrations[i]; - registration.removeListeners(); - registration.options = options; - break; - } - } - if (!registration) { - registration = new Registration(this, target, options); - registrations.push(registration); - this.nodes_.push(target); - } - registration.addListeners(); - }, - disconnect: function() { - this.nodes_.forEach(function(node) { - var registrations = registrationsTable.get(node); - for (var i = 0; i < registrations.length; i++) { - var registration = registrations[i]; - if (registration.observer === this) { - registration.removeListeners(); - registrations.splice(i, 1); - break; - } - } - }, this); - this.records_ = []; - }, - takeRecords: function() { - var copyOfRecords = this.records_; - this.records_ = []; - return copyOfRecords; - } - }; - function MutationRecord(type, target) { - this.type = type; - this.target = target; - this.addedNodes = []; - this.removedNodes = []; - this.previousSibling = null; - this.nextSibling = null; - this.attributeName = null; - this.attributeNamespace = null; - this.oldValue = null; - } - function copyMutationRecord(original) { - var record = new MutationRecord(original.type, original.target); - record.addedNodes = original.addedNodes.slice(); - record.removedNodes = original.removedNodes.slice(); - record.previousSibling = original.previousSibling; - record.nextSibling = original.nextSibling; - record.attributeName = original.attributeName; - record.attributeNamespace = original.attributeNamespace; - record.oldValue = original.oldValue; - return record; - } - var currentRecord, recordWithOldValue; - function getRecord(type, target) { - return currentRecord = new MutationRecord(type, target); - } - function getRecordWithOldValue(oldValue) { - if (recordWithOldValue) return recordWithOldValue; - recordWithOldValue = copyMutationRecord(currentRecord); - recordWithOldValue.oldValue = oldValue; - return recordWithOldValue; - } - function clearRecords() { - currentRecord = recordWithOldValue = undefined; - } - function recordRepresentsCurrentMutation(record) { - return record === recordWithOldValue || record === currentRecord; - } - function selectRecord(lastRecord, newRecord) { - if (lastRecord === newRecord) return lastRecord; - if (recordWithOldValue && recordRepresentsCurrentMutation(lastRecord)) return recordWithOldValue; - return null; - } - function Registration(observer, target, options) { - this.observer = observer; - this.target = target; - this.options = options; - this.transientObservedNodes = []; - } - Registration.prototype = { - enqueue: function(record) { - var records = this.observer.records_; - var length = records.length; - if (records.length > 0) { - var lastRecord = records[length - 1]; - var recordToReplaceLast = selectRecord(lastRecord, record); - if (recordToReplaceLast) { - records[length - 1] = recordToReplaceLast; - return; - } - } else { - scheduleCallback(this.observer); - } - records[length] = record; - }, - addListeners: function() { - this.addListeners_(this.target); - }, - addListeners_: function(node) { - var options = this.options; - if (options.attributes) node.addEventListener("DOMAttrModified", this, true); - if (options.characterData) node.addEventListener("DOMCharacterDataModified", this, true); - if (options.childList) node.addEventListener("DOMNodeInserted", this, true); - if (options.childList || options.subtree) node.addEventListener("DOMNodeRemoved", this, true); - }, - removeListeners: function() { - this.removeListeners_(this.target); - }, - removeListeners_: function(node) { - var options = this.options; - if (options.attributes) node.removeEventListener("DOMAttrModified", this, true); - if (options.characterData) node.removeEventListener("DOMCharacterDataModified", this, true); - if (options.childList) node.removeEventListener("DOMNodeInserted", this, true); - if (options.childList || options.subtree) node.removeEventListener("DOMNodeRemoved", this, true); - }, - addTransientObserver: function(node) { - if (node === this.target) return; - this.addListeners_(node); - this.transientObservedNodes.push(node); - var registrations = registrationsTable.get(node); - if (!registrations) registrationsTable.set(node, registrations = []); - registrations.push(this); - }, - removeTransientObservers: function() { - var transientObservedNodes = this.transientObservedNodes; - this.transientObservedNodes = []; - transientObservedNodes.forEach(function(node) { - this.removeListeners_(node); - var registrations = registrationsTable.get(node); - for (var i = 0; i < registrations.length; i++) { - if (registrations[i] === this) { - registrations.splice(i, 1); - break; - } - } - }, this); - }, - handleEvent: function(e) { - e.stopImmediatePropagation(); - switch (e.type) { - case "DOMAttrModified": - var name = e.attrName; - var namespace = e.relatedNode.namespaceURI; - var target = e.target; - var record = new getRecord("attributes", target); - record.attributeName = name; - record.attributeNamespace = namespace; - var oldValue = e.attrChange === MutationEvent.ADDITION ? null : e.prevValue; - forEachAncestorAndObserverEnqueueRecord(target, function(options) { - if (!options.attributes) return; - if (options.attributeFilter && options.attributeFilter.length && options.attributeFilter.indexOf(name) === -1 && options.attributeFilter.indexOf(namespace) === -1) { - return; - } - if (options.attributeOldValue) return getRecordWithOldValue(oldValue); - return record; - }); - break; - - case "DOMCharacterDataModified": - var target = e.target; - var record = getRecord("characterData", target); - var oldValue = e.prevValue; - forEachAncestorAndObserverEnqueueRecord(target, function(options) { - if (!options.characterData) return; - if (options.characterDataOldValue) return getRecordWithOldValue(oldValue); - return record; - }); - break; - - case "DOMNodeRemoved": - this.addTransientObserver(e.target); - - case "DOMNodeInserted": - var changedNode = e.target; - var addedNodes, removedNodes; - if (e.type === "DOMNodeInserted") { - addedNodes = [ changedNode ]; - removedNodes = []; - } else { - addedNodes = []; - removedNodes = [ changedNode ]; - } - var previousSibling = changedNode.previousSibling; - var nextSibling = changedNode.nextSibling; - var record = getRecord("childList", e.target.parentNode); - record.addedNodes = addedNodes; - record.removedNodes = removedNodes; - record.previousSibling = previousSibling; - record.nextSibling = nextSibling; - forEachAncestorAndObserverEnqueueRecord(e.relatedNode, function(options) { - if (!options.childList) return; - return record; - }); - } - clearRecords(); - } - }; - global.JsMutationObserver = JsMutationObserver; - if (!global.MutationObserver) { - global.MutationObserver = JsMutationObserver; - JsMutationObserver._isPolyfilled = true; - } -})(self); - -(function(scope) { - "use strict"; - if (!window.performance) { - var start = Date.now(); - window.performance = { - now: function() { - return Date.now() - start; - } - }; - } - if (!window.requestAnimationFrame) { - window.requestAnimationFrame = function() { - var nativeRaf = window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame; - return nativeRaf ? function(callback) { - return nativeRaf(function() { - callback(performance.now()); - }); - } : function(callback) { - return window.setTimeout(callback, 1e3 / 60); - }; - }(); - } - if (!window.cancelAnimationFrame) { - window.cancelAnimationFrame = function() { - return window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || function(id) { - clearTimeout(id); - }; - }(); - } - var workingDefaultPrevented = function() { - var e = document.createEvent("Event"); - e.initEvent("foo", true, true); - e.preventDefault(); - return e.defaultPrevented; - }(); - if (!workingDefaultPrevented) { - var origPreventDefault = Event.prototype.preventDefault; - Event.prototype.preventDefault = function() { - if (!this.cancelable) { - return; - } - origPreventDefault.call(this); - Object.defineProperty(this, "defaultPrevented", { - get: function() { - return true; - }, - configurable: true - }); - }; - } - var isIE = /Trident/.test(navigator.userAgent); - if (!window.CustomEvent || isIE && typeof window.CustomEvent !== "function") { - window.CustomEvent = function(inType, params) { - params = params || {}; - var e = document.createEvent("CustomEvent"); - e.initCustomEvent(inType, Boolean(params.bubbles), Boolean(params.cancelable), params.detail); - return e; - }; - window.CustomEvent.prototype = window.Event.prototype; - } - if (!window.Event || isIE && typeof window.Event !== "function") { - var origEvent = window.Event; - window.Event = function(inType, params) { - params = params || {}; - var e = document.createEvent("Event"); - e.initEvent(inType, Boolean(params.bubbles), Boolean(params.cancelable)); - return e; - }; - window.Event.prototype = origEvent.prototype; - } -})(window.WebComponents); - -window.HTMLImports = window.HTMLImports || { - flags: {} -}; - -(function(scope) { - var IMPORT_LINK_TYPE = "import"; - var useNative = Boolean(IMPORT_LINK_TYPE in document.createElement("link")); - var hasShadowDOMPolyfill = Boolean(window.ShadowDOMPolyfill); - var wrap = function(node) { - return hasShadowDOMPolyfill ? window.ShadowDOMPolyfill.wrapIfNeeded(node) : node; - }; - var rootDocument = wrap(document); - var currentScriptDescriptor = { - get: function() { - var script = window.HTMLImports.currentScript || document.currentScript || (document.readyState !== "complete" ? document.scripts[document.scripts.length - 1] : null); - return wrap(script); - }, - configurable: true - }; - Object.defineProperty(document, "_currentScript", currentScriptDescriptor); - Object.defineProperty(rootDocument, "_currentScript", currentScriptDescriptor); - var isIE = /Trident/.test(navigator.userAgent); - function whenReady(callback, doc) { - doc = doc || rootDocument; - whenDocumentReady(function() { - watchImportsLoad(callback, doc); - }, doc); - } - var requiredReadyState = isIE ? "complete" : "interactive"; - var READY_EVENT = "readystatechange"; - function isDocumentReady(doc) { - return doc.readyState === "complete" || doc.readyState === requiredReadyState; - } - function whenDocumentReady(callback, doc) { - if (!isDocumentReady(doc)) { - var checkReady = function() { - if (doc.readyState === "complete" || doc.readyState === requiredReadyState) { - doc.removeEventListener(READY_EVENT, checkReady); - whenDocumentReady(callback, doc); - } - }; - doc.addEventListener(READY_EVENT, checkReady); - } else if (callback) { - callback(); - } - } - function markTargetLoaded(event) { - event.target.__loaded = true; - } - function watchImportsLoad(callback, doc) { - var imports = doc.querySelectorAll("link[rel=import]"); - var parsedCount = 0, importCount = imports.length, newImports = [], errorImports = []; - function checkDone() { - if (parsedCount == importCount && callback) { - callback({ - allImports: imports, - loadedImports: newImports, - errorImports: errorImports - }); - } - } - function loadedImport(e) { - markTargetLoaded(e); - newImports.push(this); - parsedCount++; - checkDone(); - } - function errorLoadingImport(e) { - errorImports.push(this); - parsedCount++; - checkDone(); - } - if (importCount) { - for (var i = 0, imp; i < importCount && (imp = imports[i]); i++) { - if (isImportLoaded(imp)) { - newImports.push(this); - parsedCount++; - checkDone(); - } else { - imp.addEventListener("load", loadedImport); - imp.addEventListener("error", errorLoadingImport); - } - } - } else { - checkDone(); - } - } - function isImportLoaded(link) { - return useNative ? link.__loaded || link.import && link.import.readyState !== "loading" : link.__importParsed; - } - if (useNative) { - new MutationObserver(function(mxns) { - for (var i = 0, l = mxns.length, m; i < l && (m = mxns[i]); i++) { - if (m.addedNodes) { - handleImports(m.addedNodes); - } - } - }).observe(document.head, { - childList: true - }); - function handleImports(nodes) { - for (var i = 0, l = nodes.length, n; i < l && (n = nodes[i]); i++) { - if (isImport(n)) { - handleImport(n); - } - } - } - function isImport(element) { - return element.localName === "link" && element.rel === "import"; - } - function handleImport(element) { - var loaded = element.import; - if (loaded) { - markTargetLoaded({ - target: element - }); - } else { - element.addEventListener("load", markTargetLoaded); - element.addEventListener("error", markTargetLoaded); - } - } - (function() { - if (document.readyState === "loading") { - var imports = document.querySelectorAll("link[rel=import]"); - for (var i = 0, l = imports.length, imp; i < l && (imp = imports[i]); i++) { - handleImport(imp); - } - } - })(); - } - whenReady(function(detail) { - window.HTMLImports.ready = true; - window.HTMLImports.readyTime = new Date().getTime(); - var evt = rootDocument.createEvent("CustomEvent"); - evt.initCustomEvent("HTMLImportsLoaded", true, true, detail); - rootDocument.dispatchEvent(evt); - }); - scope.IMPORT_LINK_TYPE = IMPORT_LINK_TYPE; - scope.useNative = useNative; - scope.rootDocument = rootDocument; - scope.whenReady = whenReady; - scope.isIE = isIE; -})(window.HTMLImports); - -(function(scope) { - var modules = []; - var addModule = function(module) { - modules.push(module); - }; - var initializeModules = function() { - modules.forEach(function(module) { - module(scope); - }); - }; - scope.addModule = addModule; - scope.initializeModules = initializeModules; -})(window.HTMLImports); - -window.HTMLImports.addModule(function(scope) { - var CSS_URL_REGEXP = /(url\()([^)]*)(\))/g; - var CSS_IMPORT_REGEXP = /(@import[\s]+(?!url\())([^;]*)(;)/g; - var path = { - resolveUrlsInStyle: function(style, linkUrl) { - var doc = style.ownerDocument; - var resolver = doc.createElement("a"); - style.textContent = this.resolveUrlsInCssText(style.textContent, linkUrl, resolver); - return style; - }, - resolveUrlsInCssText: function(cssText, linkUrl, urlObj) { - var r = this.replaceUrls(cssText, urlObj, linkUrl, CSS_URL_REGEXP); - r = this.replaceUrls(r, urlObj, linkUrl, CSS_IMPORT_REGEXP); - return r; - }, - replaceUrls: function(text, urlObj, linkUrl, regexp) { - return text.replace(regexp, function(m, pre, url, post) { - var urlPath = url.replace(/["']/g, ""); - if (linkUrl) { - urlPath = new URL(urlPath, linkUrl).href; - } - urlObj.href = urlPath; - urlPath = urlObj.href; - return pre + "'" + urlPath + "'" + post; - }); - } - }; - scope.path = path; -}); - -window.HTMLImports.addModule(function(scope) { - var xhr = { - async: true, - ok: function(request) { - return request.status >= 200 && request.status < 300 || request.status === 304 || request.status === 0; - }, - load: function(url, next, nextContext) { - var request = new XMLHttpRequest(); - if (scope.flags.debug || scope.flags.bust) { - url += "?" + Math.random(); - } - request.open("GET", url, xhr.async); - request.addEventListener("readystatechange", function(e) { - if (request.readyState === 4) { - var redirectedUrl = null; - try { - var locationHeader = request.getResponseHeader("Location"); - if (locationHeader) { - redirectedUrl = locationHeader.substr(0, 1) === "/" ? location.origin + locationHeader : locationHeader; - } - } catch (e) { - console.error(e.message); - } - next.call(nextContext, !xhr.ok(request) && request, request.response || request.responseText, redirectedUrl); - } - }); - request.send(); - return request; - }, - loadDocument: function(url, next, nextContext) { - this.load(url, next, nextContext).responseType = "document"; - } - }; - scope.xhr = xhr; -}); - -window.HTMLImports.addModule(function(scope) { - var xhr = scope.xhr; - var flags = scope.flags; - var Loader = function(onLoad, onComplete) { - this.cache = {}; - this.onload = onLoad; - this.oncomplete = onComplete; - this.inflight = 0; - this.pending = {}; - }; - Loader.prototype = { - addNodes: function(nodes) { - this.inflight += nodes.length; - for (var i = 0, l = nodes.length, n; i < l && (n = nodes[i]); i++) { - this.require(n); - } - this.checkDone(); - }, - addNode: function(node) { - this.inflight++; - this.require(node); - this.checkDone(); - }, - require: function(elt) { - var url = elt.src || elt.href; - elt.__nodeUrl = url; - if (!this.dedupe(url, elt)) { - this.fetch(url, elt); - } - }, - dedupe: function(url, elt) { - if (this.pending[url]) { - this.pending[url].push(elt); - return true; - } - var resource; - if (this.cache[url]) { - this.onload(url, elt, this.cache[url]); - this.tail(); - return true; - } - this.pending[url] = [ elt ]; - return false; - }, - fetch: function(url, elt) { - flags.load && console.log("fetch", url, elt); - if (!url) { - setTimeout(function() { - this.receive(url, elt, { - error: "href must be specified" - }, null); - }.bind(this), 0); - } else if (url.match(/^data:/)) { - var pieces = url.split(","); - var header = pieces[0]; - var body = pieces[1]; - if (header.indexOf(";base64") > -1) { - body = atob(body); - } else { - body = decodeURIComponent(body); - } - setTimeout(function() { - this.receive(url, elt, null, body); - }.bind(this), 0); - } else { - var receiveXhr = function(err, resource, redirectedUrl) { - this.receive(url, elt, err, resource, redirectedUrl); - }.bind(this); - xhr.load(url, receiveXhr); - } - }, - receive: function(url, elt, err, resource, redirectedUrl) { - this.cache[url] = resource; - var $p = this.pending[url]; - for (var i = 0, l = $p.length, p; i < l && (p = $p[i]); i++) { - this.onload(url, p, resource, err, redirectedUrl); - this.tail(); - } - this.pending[url] = null; - }, - tail: function() { - --this.inflight; - this.checkDone(); - }, - checkDone: function() { - if (!this.inflight) { - this.oncomplete(); - } - } - }; - scope.Loader = Loader; -}); - -window.HTMLImports.addModule(function(scope) { - var Observer = function(addCallback) { - this.addCallback = addCallback; - this.mo = new MutationObserver(this.handler.bind(this)); - }; - Observer.prototype = { - handler: function(mutations) { - for (var i = 0, l = mutations.length, m; i < l && (m = mutations[i]); i++) { - if (m.type === "childList" && m.addedNodes.length) { - this.addedNodes(m.addedNodes); - } - } - }, - addedNodes: function(nodes) { - if (this.addCallback) { - this.addCallback(nodes); - } - for (var i = 0, l = nodes.length, n, loading; i < l && (n = nodes[i]); i++) { - if (n.children && n.children.length) { - this.addedNodes(n.children); - } - } - }, - observe: function(root) { - this.mo.observe(root, { - childList: true, - subtree: true - }); - } - }; - scope.Observer = Observer; -}); - -window.HTMLImports.addModule(function(scope) { - var path = scope.path; - var rootDocument = scope.rootDocument; - var flags = scope.flags; - var isIE = scope.isIE; - var IMPORT_LINK_TYPE = scope.IMPORT_LINK_TYPE; - var IMPORT_SELECTOR = "link[rel=" + IMPORT_LINK_TYPE + "]"; - var importParser = { - documentSelectors: IMPORT_SELECTOR, - importsSelectors: [ IMPORT_SELECTOR, "link[rel=stylesheet]:not([type])", "style:not([type])", "script:not([type])", 'script[type="application/javascript"]', 'script[type="text/javascript"]' ].join(","), - map: { - link: "parseLink", - script: "parseScript", - style: "parseStyle" - }, - dynamicElements: [], - parseNext: function() { - var next = this.nextToParse(); - if (next) { - this.parse(next); - } - }, - parse: function(elt) { - if (this.isParsed(elt)) { - flags.parse && console.log("[%s] is already parsed", elt.localName); - return; - } - var fn = this[this.map[elt.localName]]; - if (fn) { - this.markParsing(elt); - fn.call(this, elt); - } - }, - parseDynamic: function(elt, quiet) { - this.dynamicElements.push(elt); - if (!quiet) { - this.parseNext(); - } - }, - markParsing: function(elt) { - flags.parse && console.log("parsing", elt); - this.parsingElement = elt; - }, - markParsingComplete: function(elt) { - elt.__importParsed = true; - this.markDynamicParsingComplete(elt); - if (elt.__importElement) { - elt.__importElement.__importParsed = true; - this.markDynamicParsingComplete(elt.__importElement); - } - this.parsingElement = null; - flags.parse && console.log("completed", elt); - }, - markDynamicParsingComplete: function(elt) { - var i = this.dynamicElements.indexOf(elt); - if (i >= 0) { - this.dynamicElements.splice(i, 1); - } - }, - parseImport: function(elt) { - elt.import = elt.__doc; - if (window.HTMLImports.__importsParsingHook) { - window.HTMLImports.__importsParsingHook(elt); - } - if (elt.import) { - elt.import.__importParsed = true; - } - this.markParsingComplete(elt); - if (elt.__resource && !elt.__error) { - elt.dispatchEvent(new CustomEvent("load", { - bubbles: false - })); - } else { - elt.dispatchEvent(new CustomEvent("error", { - bubbles: false - })); - } - if (elt.__pending) { - var fn; - while (elt.__pending.length) { - fn = elt.__pending.shift(); - if (fn) { - fn({ - target: elt - }); - } - } - } - this.parseNext(); - }, - parseLink: function(linkElt) { - if (nodeIsImport(linkElt)) { - this.parseImport(linkElt); - } else { - linkElt.href = linkElt.href; - this.parseGeneric(linkElt); - } - }, - parseStyle: function(elt) { - var src = elt; - elt = cloneStyle(elt); - src.__appliedElement = elt; - elt.__importElement = src; - this.parseGeneric(elt); - }, - parseGeneric: function(elt) { - this.trackElement(elt); - this.addElementToDocument(elt); - }, - rootImportForElement: function(elt) { - var n = elt; - while (n.ownerDocument.__importLink) { - n = n.ownerDocument.__importLink; - } - return n; - }, - addElementToDocument: function(elt) { - var port = this.rootImportForElement(elt.__importElement || elt); - port.parentNode.insertBefore(elt, port); - }, - trackElement: function(elt, callback) { - var self = this; - var done = function(e) { - elt.removeEventListener("load", done); - elt.removeEventListener("error", done); - if (callback) { - callback(e); - } - self.markParsingComplete(elt); - self.parseNext(); - }; - elt.addEventListener("load", done); - elt.addEventListener("error", done); - if (isIE && elt.localName === "style") { - var fakeLoad = false; - if (elt.textContent.indexOf("@import") == -1) { - fakeLoad = true; - } else if (elt.sheet) { - fakeLoad = true; - var csr = elt.sheet.cssRules; - var len = csr ? csr.length : 0; - for (var i = 0, r; i < len && (r = csr[i]); i++) { - if (r.type === CSSRule.IMPORT_RULE) { - fakeLoad = fakeLoad && Boolean(r.styleSheet); - } - } - } - if (fakeLoad) { - setTimeout(function() { - elt.dispatchEvent(new CustomEvent("load", { - bubbles: false - })); - }); - } - } - }, - parseScript: function(scriptElt) { - var script = document.createElement("script"); - script.__importElement = scriptElt; - script.src = scriptElt.src ? scriptElt.src : generateScriptDataUrl(scriptElt); - scope.currentScript = scriptElt; - this.trackElement(script, function(e) { - if (script.parentNode) { - script.parentNode.removeChild(script); - } - scope.currentScript = null; - }); - this.addElementToDocument(script); - }, - nextToParse: function() { - this._mayParse = []; - return !this.parsingElement && (this.nextToParseInDoc(rootDocument) || this.nextToParseDynamic()); - }, - nextToParseInDoc: function(doc, link) { - if (doc && this._mayParse.indexOf(doc) < 0) { - this._mayParse.push(doc); - var nodes = doc.querySelectorAll(this.parseSelectorsForNode(doc)); - for (var i = 0, l = nodes.length, n; i < l && (n = nodes[i]); i++) { - if (!this.isParsed(n)) { - if (this.hasResource(n)) { - return nodeIsImport(n) ? this.nextToParseInDoc(n.__doc, n) : n; - } else { - return; - } - } - } - } - return link; - }, - nextToParseDynamic: function() { - return this.dynamicElements[0]; - }, - parseSelectorsForNode: function(node) { - var doc = node.ownerDocument || node; - return doc === rootDocument ? this.documentSelectors : this.importsSelectors; - }, - isParsed: function(node) { - return node.__importParsed; - }, - needsDynamicParsing: function(elt) { - return this.dynamicElements.indexOf(elt) >= 0; - }, - hasResource: function(node) { - if (nodeIsImport(node) && node.__doc === undefined) { - return false; - } - return true; - } - }; - function nodeIsImport(elt) { - return elt.localName === "link" && elt.rel === IMPORT_LINK_TYPE; - } - function generateScriptDataUrl(script) { - var scriptContent = generateScriptContent(script); - return "data:text/javascript;charset=utf-8," + encodeURIComponent(scriptContent); - } - function generateScriptContent(script) { - return script.textContent + generateSourceMapHint(script); - } - function generateSourceMapHint(script) { - var owner = script.ownerDocument; - owner.__importedScripts = owner.__importedScripts || 0; - var moniker = script.ownerDocument.baseURI; - var num = owner.__importedScripts ? "-" + owner.__importedScripts : ""; - owner.__importedScripts++; - return "\n//# sourceURL=" + moniker + num + ".js\n"; - } - function cloneStyle(style) { - var clone = style.ownerDocument.createElement("style"); - clone.textContent = style.textContent; - path.resolveUrlsInStyle(clone); - return clone; - } - scope.parser = importParser; - scope.IMPORT_SELECTOR = IMPORT_SELECTOR; -}); - -window.HTMLImports.addModule(function(scope) { - var flags = scope.flags; - var IMPORT_LINK_TYPE = scope.IMPORT_LINK_TYPE; - var IMPORT_SELECTOR = scope.IMPORT_SELECTOR; - var rootDocument = scope.rootDocument; - var Loader = scope.Loader; - var Observer = scope.Observer; - var parser = scope.parser; - var importer = { - documents: {}, - documentPreloadSelectors: IMPORT_SELECTOR, - importsPreloadSelectors: [ IMPORT_SELECTOR ].join(","), - loadNode: function(node) { - importLoader.addNode(node); - }, - loadSubtree: function(parent) { - var nodes = this.marshalNodes(parent); - importLoader.addNodes(nodes); - }, - marshalNodes: function(parent) { - return parent.querySelectorAll(this.loadSelectorsForNode(parent)); - }, - loadSelectorsForNode: function(node) { - var doc = node.ownerDocument || node; - return doc === rootDocument ? this.documentPreloadSelectors : this.importsPreloadSelectors; - }, - loaded: function(url, elt, resource, err, redirectedUrl) { - flags.load && console.log("loaded", url, elt); - elt.__resource = resource; - elt.__error = err; - if (isImportLink(elt)) { - var doc = this.documents[url]; - if (doc === undefined) { - doc = err ? null : makeDocument(resource, redirectedUrl || url); - if (doc) { - doc.__importLink = elt; - this.bootDocument(doc); - } - this.documents[url] = doc; - } - elt.__doc = doc; - } - parser.parseNext(); - }, - bootDocument: function(doc) { - this.loadSubtree(doc); - this.observer.observe(doc); - parser.parseNext(); - }, - loadedAll: function() { - parser.parseNext(); - } - }; - var importLoader = new Loader(importer.loaded.bind(importer), importer.loadedAll.bind(importer)); - importer.observer = new Observer(); - function isImportLink(elt) { - return isLinkRel(elt, IMPORT_LINK_TYPE); - } - function isLinkRel(elt, rel) { - return elt.localName === "link" && elt.getAttribute("rel") === rel; - } - function hasBaseURIAccessor(doc) { - return !!Object.getOwnPropertyDescriptor(doc, "baseURI"); - } - function makeDocument(resource, url) { - var doc = document.implementation.createHTMLDocument(IMPORT_LINK_TYPE); - doc._URL = url; - var base = doc.createElement("base"); - base.setAttribute("href", url); - if (!doc.baseURI && !hasBaseURIAccessor(doc)) { - Object.defineProperty(doc, "baseURI", { - value: url - }); - } - var meta = doc.createElement("meta"); - meta.setAttribute("charset", "utf-8"); - doc.head.appendChild(meta); - doc.head.appendChild(base); - doc.body.innerHTML = resource; - if (window.HTMLTemplateElement && HTMLTemplateElement.bootstrap) { - HTMLTemplateElement.bootstrap(doc); - } - return doc; - } - if (!document.baseURI) { - var baseURIDescriptor = { - get: function() { - var base = document.querySelector("base"); - return base ? base.href : window.location.href; - }, - configurable: true - }; - Object.defineProperty(document, "baseURI", baseURIDescriptor); - Object.defineProperty(rootDocument, "baseURI", baseURIDescriptor); - } - scope.importer = importer; - scope.importLoader = importLoader; -}); - -window.HTMLImports.addModule(function(scope) { - var parser = scope.parser; - var importer = scope.importer; - var dynamic = { - added: function(nodes) { - var owner, parsed, loading; - for (var i = 0, l = nodes.length, n; i < l && (n = nodes[i]); i++) { - if (!owner) { - owner = n.ownerDocument; - parsed = parser.isParsed(owner); - } - loading = this.shouldLoadNode(n); - if (loading) { - importer.loadNode(n); - } - if (this.shouldParseNode(n) && parsed) { - parser.parseDynamic(n, loading); - } - } - }, - shouldLoadNode: function(node) { - return node.nodeType === 1 && matches.call(node, importer.loadSelectorsForNode(node)); - }, - shouldParseNode: function(node) { - return node.nodeType === 1 && matches.call(node, parser.parseSelectorsForNode(node)); - } - }; - importer.observer.addCallback = dynamic.added.bind(dynamic); - var matches = HTMLElement.prototype.matches || HTMLElement.prototype.matchesSelector || HTMLElement.prototype.webkitMatchesSelector || HTMLElement.prototype.mozMatchesSelector || HTMLElement.prototype.msMatchesSelector; -}); - -(function(scope) { - var initializeModules = scope.initializeModules; - var isIE = scope.isIE; - if (scope.useNative) { - return; - } - initializeModules(); - var rootDocument = scope.rootDocument; - function bootstrap() { - window.HTMLImports.importer.bootDocument(rootDocument); - } - if (document.readyState === "complete" || document.readyState === "interactive" && !window.attachEvent) { - bootstrap(); - } else { - document.addEventListener("DOMContentLoaded", bootstrap); - } -})(window.HTMLImports); \ No newline at end of file diff --git a/lib/admin/public/bower_components/webcomponentsjs/HTMLImports.min.js b/lib/admin/public/bower_components/webcomponentsjs/HTMLImports.min.js deleted file mode 100644 index dd5b1175..00000000 --- a/lib/admin/public/bower_components/webcomponentsjs/HTMLImports.min.js +++ /dev/null @@ -1,11 +0,0 @@ -/** - * @license - * Copyright (c) 2014 The Polymer Project Authors. All rights reserved. - * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt - * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt - * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt - * Code distributed by Google as part of the polymer project is also - * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt - */ -// @version 0.7.22 -"undefined"==typeof WeakMap&&!function(){var e=Object.defineProperty,t=Date.now()%1e9,n=function(){this.name="__st"+(1e9*Math.random()>>>0)+(t++ +"__")};n.prototype={set:function(t,n){var r=t[this.name];return r&&r[0]===t?r[1]=n:e(t,this.name,{value:[t,n],writable:!0}),this},get:function(e){var t;return(t=e[this.name])&&t[0]===e?t[1]:void 0},"delete":function(e){var t=e[this.name];return t&&t[0]===e?(t[0]=t[1]=void 0,!0):!1},has:function(e){var t=e[this.name];return t?t[0]===e:!1}},window.WeakMap=n}(),function(e){function t(e){E.push(e),g||(g=!0,f(r))}function n(e){return window.ShadowDOMPolyfill&&window.ShadowDOMPolyfill.wrapIfNeeded(e)||e}function r(){g=!1;var e=E;E=[],e.sort(function(e,t){return e.uid_-t.uid_});var t=!1;e.forEach(function(e){var n=e.takeRecords();o(e),n.length&&(e.callback_(n,e),t=!0)}),t&&r()}function o(e){e.nodes_.forEach(function(t){var n=v.get(t);n&&n.forEach(function(t){t.observer===e&&t.removeTransientObservers()})})}function i(e,t){for(var n=e;n;n=n.parentNode){var r=v.get(n);if(r)for(var o=0;o0){var o=n[r-1],i=m(o,e);if(i)return void(n[r-1]=i)}else t(this.observer);n[r]=e},addListeners:function(){this.addListeners_(this.target)},addListeners_:function(e){var t=this.options;t.attributes&&e.addEventListener("DOMAttrModified",this,!0),t.characterData&&e.addEventListener("DOMCharacterDataModified",this,!0),t.childList&&e.addEventListener("DOMNodeInserted",this,!0),(t.childList||t.subtree)&&e.addEventListener("DOMNodeRemoved",this,!0)},removeListeners:function(){this.removeListeners_(this.target)},removeListeners_:function(e){var t=this.options;t.attributes&&e.removeEventListener("DOMAttrModified",this,!0),t.characterData&&e.removeEventListener("DOMCharacterDataModified",this,!0),t.childList&&e.removeEventListener("DOMNodeInserted",this,!0),(t.childList||t.subtree)&&e.removeEventListener("DOMNodeRemoved",this,!0)},addTransientObserver:function(e){if(e!==this.target){this.addListeners_(e),this.transientObservedNodes.push(e);var t=v.get(e);t||v.set(e,t=[]),t.push(this)}},removeTransientObservers:function(){var e=this.transientObservedNodes;this.transientObservedNodes=[],e.forEach(function(e){this.removeListeners_(e);for(var t=v.get(e),n=0;nm&&(h=s[m]);m++)a(h)?(u.push(this),d++,n()):(h.addEventListener("load",r),h.addEventListener("error",i));else n()}function a(e){return l?e.__loaded||e["import"]&&"loading"!==e["import"].readyState:e.__importParsed}function s(e){for(var t,n=0,r=e.length;r>n&&(t=e[n]);n++)d(t)&&c(t)}function d(e){return"link"===e.localName&&"import"===e.rel}function c(e){var t=e["import"];t?o({target:e}):(e.addEventListener("load",o),e.addEventListener("error",o))}var u="import",l=Boolean(u in document.createElement("link")),h=Boolean(window.ShadowDOMPolyfill),m=function(e){return h?window.ShadowDOMPolyfill.wrapIfNeeded(e):e},p=m(document),f={get:function(){var e=window.HTMLImports.currentScript||document.currentScript||("complete"!==document.readyState?document.scripts[document.scripts.length-1]:null);return m(e)},configurable:!0};Object.defineProperty(document,"_currentScript",f),Object.defineProperty(p,"_currentScript",f);var v=/Trident/.test(navigator.userAgent),w=v?"complete":"interactive",b="readystatechange";l&&(new MutationObserver(function(e){for(var t,n=0,r=e.length;r>n&&(t=e[n]);n++)t.addedNodes&&s(t.addedNodes)}).observe(document.head,{childList:!0}),function(){if("loading"===document.readyState)for(var e,t=document.querySelectorAll("link[rel=import]"),n=0,r=t.length;r>n&&(e=t[n]);n++)c(e)}()),t(function(e){window.HTMLImports.ready=!0,window.HTMLImports.readyTime=(new Date).getTime();var t=p.createEvent("CustomEvent");t.initCustomEvent("HTMLImportsLoaded",!0,!0,e),p.dispatchEvent(t)}),e.IMPORT_LINK_TYPE=u,e.useNative=l,e.rootDocument=p,e.whenReady=t,e.isIE=v}(window.HTMLImports),function(e){var t=[],n=function(e){t.push(e)},r=function(){t.forEach(function(t){t(e)})};e.addModule=n,e.initializeModules=r}(window.HTMLImports),window.HTMLImports.addModule(function(e){var t=/(url\()([^)]*)(\))/g,n=/(@import[\s]+(?!url\())([^;]*)(;)/g,r={resolveUrlsInStyle:function(e,t){var n=e.ownerDocument,r=n.createElement("a");return e.textContent=this.resolveUrlsInCssText(e.textContent,t,r),e},resolveUrlsInCssText:function(e,r,o){var i=this.replaceUrls(e,o,r,t);return i=this.replaceUrls(i,o,r,n)},replaceUrls:function(e,t,n,r){return e.replace(r,function(e,r,o,i){var a=o.replace(/["']/g,"");return n&&(a=new URL(a,n).href),t.href=a,a=t.href,r+"'"+a+"'"+i})}};e.path=r}),window.HTMLImports.addModule(function(e){var t={async:!0,ok:function(e){return e.status>=200&&e.status<300||304===e.status||0===e.status},load:function(n,r,o){var i=new XMLHttpRequest;return(e.flags.debug||e.flags.bust)&&(n+="?"+Math.random()),i.open("GET",n,t.async),i.addEventListener("readystatechange",function(e){if(4===i.readyState){var n=null;try{var a=i.getResponseHeader("Location");a&&(n="/"===a.substr(0,1)?location.origin+a:a)}catch(e){console.error(e.message)}r.call(o,!t.ok(i)&&i,i.response||i.responseText,n)}}),i.send(),i},loadDocument:function(e,t,n){this.load(e,t,n).responseType="document"}};e.xhr=t}),window.HTMLImports.addModule(function(e){var t=e.xhr,n=e.flags,r=function(e,t){this.cache={},this.onload=e,this.oncomplete=t,this.inflight=0,this.pending={}};r.prototype={addNodes:function(e){this.inflight+=e.length;for(var t,n=0,r=e.length;r>n&&(t=e[n]);n++)this.require(t);this.checkDone()},addNode:function(e){this.inflight++,this.require(e),this.checkDone()},require:function(e){var t=e.src||e.href;e.__nodeUrl=t,this.dedupe(t,e)||this.fetch(t,e)},dedupe:function(e,t){if(this.pending[e])return this.pending[e].push(t),!0;return this.cache[e]?(this.onload(e,t,this.cache[e]),this.tail(),!0):(this.pending[e]=[t],!1)},fetch:function(e,r){if(n.load&&console.log("fetch",e,r),e)if(e.match(/^data:/)){var o=e.split(","),i=o[0],a=o[1];a=i.indexOf(";base64")>-1?atob(a):decodeURIComponent(a),setTimeout(function(){this.receive(e,r,null,a)}.bind(this),0)}else{var s=function(t,n,o){this.receive(e,r,t,n,o)}.bind(this);t.load(e,s)}else setTimeout(function(){this.receive(e,r,{error:"href must be specified"},null)}.bind(this),0)},receive:function(e,t,n,r,o){this.cache[e]=r;for(var i,a=this.pending[e],s=0,d=a.length;d>s&&(i=a[s]);s++)this.onload(e,i,r,n,o),this.tail();this.pending[e]=null},tail:function(){--this.inflight,this.checkDone()},checkDone:function(){this.inflight||this.oncomplete()}},e.Loader=r}),window.HTMLImports.addModule(function(e){var t=function(e){this.addCallback=e,this.mo=new MutationObserver(this.handler.bind(this))};t.prototype={handler:function(e){for(var t,n=0,r=e.length;r>n&&(t=e[n]);n++)"childList"===t.type&&t.addedNodes.length&&this.addedNodes(t.addedNodes)},addedNodes:function(e){this.addCallback&&this.addCallback(e);for(var t,n=0,r=e.length;r>n&&(t=e[n]);n++)t.children&&t.children.length&&this.addedNodes(t.children)},observe:function(e){this.mo.observe(e,{childList:!0,subtree:!0})}},e.Observer=t}),window.HTMLImports.addModule(function(e){function t(e){return"link"===e.localName&&e.rel===u}function n(e){var t=r(e);return"data:text/javascript;charset=utf-8,"+encodeURIComponent(t)}function r(e){return e.textContent+o(e)}function o(e){var t=e.ownerDocument;t.__importedScripts=t.__importedScripts||0;var n=e.ownerDocument.baseURI,r=t.__importedScripts?"-"+t.__importedScripts:"";return t.__importedScripts++,"\n//# sourceURL="+n+r+".js\n"}function i(e){var t=e.ownerDocument.createElement("style");return t.textContent=e.textContent,a.resolveUrlsInStyle(t),t}var a=e.path,s=e.rootDocument,d=e.flags,c=e.isIE,u=e.IMPORT_LINK_TYPE,l="link[rel="+u+"]",h={documentSelectors:l,importsSelectors:[l,"link[rel=stylesheet]:not([type])","style:not([type])","script:not([type])",'script[type="application/javascript"]','script[type="text/javascript"]'].join(","),map:{link:"parseLink",script:"parseScript",style:"parseStyle"},dynamicElements:[],parseNext:function(){var e=this.nextToParse();e&&this.parse(e)},parse:function(e){if(this.isParsed(e))return void(d.parse&&console.log("[%s] is already parsed",e.localName));var t=this[this.map[e.localName]];t&&(this.markParsing(e),t.call(this,e))},parseDynamic:function(e,t){this.dynamicElements.push(e),t||this.parseNext()},markParsing:function(e){d.parse&&console.log("parsing",e),this.parsingElement=e},markParsingComplete:function(e){e.__importParsed=!0,this.markDynamicParsingComplete(e),e.__importElement&&(e.__importElement.__importParsed=!0,this.markDynamicParsingComplete(e.__importElement)),this.parsingElement=null,d.parse&&console.log("completed",e)},markDynamicParsingComplete:function(e){var t=this.dynamicElements.indexOf(e);t>=0&&this.dynamicElements.splice(t,1)},parseImport:function(e){if(e["import"]=e.__doc,window.HTMLImports.__importsParsingHook&&window.HTMLImports.__importsParsingHook(e),e["import"]&&(e["import"].__importParsed=!0),this.markParsingComplete(e),e.__resource&&!e.__error?e.dispatchEvent(new CustomEvent("load",{bubbles:!1})):e.dispatchEvent(new CustomEvent("error",{bubbles:!1})),e.__pending)for(var t;e.__pending.length;)t=e.__pending.shift(),t&&t({target:e});this.parseNext()},parseLink:function(e){t(e)?this.parseImport(e):(e.href=e.href,this.parseGeneric(e))},parseStyle:function(e){var t=e;e=i(e),t.__appliedElement=e,e.__importElement=t,this.parseGeneric(e)},parseGeneric:function(e){this.trackElement(e),this.addElementToDocument(e)},rootImportForElement:function(e){for(var t=e;t.ownerDocument.__importLink;)t=t.ownerDocument.__importLink;return t},addElementToDocument:function(e){var t=this.rootImportForElement(e.__importElement||e);t.parentNode.insertBefore(e,t)},trackElement:function(e,t){var n=this,r=function(o){e.removeEventListener("load",r),e.removeEventListener("error",r),t&&t(o),n.markParsingComplete(e),n.parseNext()};if(e.addEventListener("load",r),e.addEventListener("error",r),c&&"style"===e.localName){var o=!1;if(-1==e.textContent.indexOf("@import"))o=!0;else if(e.sheet){o=!0;for(var i,a=e.sheet.cssRules,s=a?a.length:0,d=0;s>d&&(i=a[d]);d++)i.type===CSSRule.IMPORT_RULE&&(o=o&&Boolean(i.styleSheet))}o&&setTimeout(function(){e.dispatchEvent(new CustomEvent("load",{bubbles:!1}))})}},parseScript:function(t){var r=document.createElement("script");r.__importElement=t,r.src=t.src?t.src:n(t),e.currentScript=t,this.trackElement(r,function(t){r.parentNode&&r.parentNode.removeChild(r),e.currentScript=null}),this.addElementToDocument(r)},nextToParse:function(){return this._mayParse=[],!this.parsingElement&&(this.nextToParseInDoc(s)||this.nextToParseDynamic())},nextToParseInDoc:function(e,n){if(e&&this._mayParse.indexOf(e)<0){this._mayParse.push(e);for(var r,o=e.querySelectorAll(this.parseSelectorsForNode(e)),i=0,a=o.length;a>i&&(r=o[i]);i++)if(!this.isParsed(r))return this.hasResource(r)?t(r)?this.nextToParseInDoc(r.__doc,r):r:void 0}return n},nextToParseDynamic:function(){return this.dynamicElements[0]},parseSelectorsForNode:function(e){var t=e.ownerDocument||e;return t===s?this.documentSelectors:this.importsSelectors},isParsed:function(e){return e.__importParsed},needsDynamicParsing:function(e){return this.dynamicElements.indexOf(e)>=0},hasResource:function(e){return!t(e)||void 0!==e.__doc}};e.parser=h,e.IMPORT_SELECTOR=l}),window.HTMLImports.addModule(function(e){function t(e){return n(e,a)}function n(e,t){return"link"===e.localName&&e.getAttribute("rel")===t}function r(e){return!!Object.getOwnPropertyDescriptor(e,"baseURI")}function o(e,t){var n=document.implementation.createHTMLDocument(a);n._URL=t;var o=n.createElement("base");o.setAttribute("href",t),n.baseURI||r(n)||Object.defineProperty(n,"baseURI",{value:t});var i=n.createElement("meta");return i.setAttribute("charset","utf-8"),n.head.appendChild(i),n.head.appendChild(o),n.body.innerHTML=e,window.HTMLTemplateElement&&HTMLTemplateElement.bootstrap&&HTMLTemplateElement.bootstrap(n),n}var i=e.flags,a=e.IMPORT_LINK_TYPE,s=e.IMPORT_SELECTOR,d=e.rootDocument,c=e.Loader,u=e.Observer,l=e.parser,h={documents:{},documentPreloadSelectors:s,importsPreloadSelectors:[s].join(","),loadNode:function(e){m.addNode(e)},loadSubtree:function(e){var t=this.marshalNodes(e);m.addNodes(t)},marshalNodes:function(e){return e.querySelectorAll(this.loadSelectorsForNode(e))},loadSelectorsForNode:function(e){var t=e.ownerDocument||e;return t===d?this.documentPreloadSelectors:this.importsPreloadSelectors},loaded:function(e,n,r,a,s){if(i.load&&console.log("loaded",e,n),n.__resource=r,n.__error=a,t(n)){var d=this.documents[e];void 0===d&&(d=a?null:o(r,s||e),d&&(d.__importLink=n,this.bootDocument(d)),this.documents[e]=d),n.__doc=d}l.parseNext()},bootDocument:function(e){this.loadSubtree(e),this.observer.observe(e),l.parseNext()},loadedAll:function(){l.parseNext()}},m=new c(h.loaded.bind(h),h.loadedAll.bind(h));if(h.observer=new u,!document.baseURI){var p={get:function(){var e=document.querySelector("base");return e?e.href:window.location.href},configurable:!0};Object.defineProperty(document,"baseURI",p),Object.defineProperty(d,"baseURI",p)}e.importer=h,e.importLoader=m}),window.HTMLImports.addModule(function(e){var t=e.parser,n=e.importer,r={added:function(e){for(var r,o,i,a,s=0,d=e.length;d>s&&(a=e[s]);s++)r||(r=a.ownerDocument,o=t.isParsed(r)),i=this.shouldLoadNode(a),i&&n.loadNode(a),this.shouldParseNode(a)&&o&&t.parseDynamic(a,i)},shouldLoadNode:function(e){return 1===e.nodeType&&o.call(e,n.loadSelectorsForNode(e))},shouldParseNode:function(e){return 1===e.nodeType&&o.call(e,t.parseSelectorsForNode(e))}};n.observer.addCallback=r.added.bind(r);var o=HTMLElement.prototype.matches||HTMLElement.prototype.matchesSelector||HTMLElement.prototype.webkitMatchesSelector||HTMLElement.prototype.mozMatchesSelector||HTMLElement.prototype.msMatchesSelector}),function(e){function t(){window.HTMLImports.importer.bootDocument(r)}var n=e.initializeModules;e.isIE;if(!e.useNative){n();var r=e.rootDocument;"complete"===document.readyState||"interactive"===document.readyState&&!window.attachEvent?t():document.addEventListener("DOMContentLoaded",t)}}(window.HTMLImports); \ No newline at end of file diff --git a/lib/admin/public/bower_components/webcomponentsjs/MutationObserver.js b/lib/admin/public/bower_components/webcomponentsjs/MutationObserver.js deleted file mode 100644 index e58713b6..00000000 --- a/lib/admin/public/bower_components/webcomponentsjs/MutationObserver.js +++ /dev/null @@ -1,350 +0,0 @@ -/** - * @license - * Copyright (c) 2014 The Polymer Project Authors. All rights reserved. - * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt - * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt - * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt - * Code distributed by Google as part of the polymer project is also - * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt - */ -// @version 0.7.22 -if (typeof WeakMap === "undefined") { - (function() { - var defineProperty = Object.defineProperty; - var counter = Date.now() % 1e9; - var WeakMap = function() { - this.name = "__st" + (Math.random() * 1e9 >>> 0) + (counter++ + "__"); - }; - WeakMap.prototype = { - set: function(key, value) { - var entry = key[this.name]; - if (entry && entry[0] === key) entry[1] = value; else defineProperty(key, this.name, { - value: [ key, value ], - writable: true - }); - return this; - }, - get: function(key) { - var entry; - return (entry = key[this.name]) && entry[0] === key ? entry[1] : undefined; - }, - "delete": function(key) { - var entry = key[this.name]; - if (!entry || entry[0] !== key) return false; - entry[0] = entry[1] = undefined; - return true; - }, - has: function(key) { - var entry = key[this.name]; - if (!entry) return false; - return entry[0] === key; - } - }; - window.WeakMap = WeakMap; - })(); -} - -(function(global) { - if (global.JsMutationObserver) { - return; - } - var registrationsTable = new WeakMap(); - var setImmediate; - if (/Trident|Edge/.test(navigator.userAgent)) { - setImmediate = setTimeout; - } else if (window.setImmediate) { - setImmediate = window.setImmediate; - } else { - var setImmediateQueue = []; - var sentinel = String(Math.random()); - window.addEventListener("message", function(e) { - if (e.data === sentinel) { - var queue = setImmediateQueue; - setImmediateQueue = []; - queue.forEach(function(func) { - func(); - }); - } - }); - setImmediate = function(func) { - setImmediateQueue.push(func); - window.postMessage(sentinel, "*"); - }; - } - var isScheduled = false; - var scheduledObservers = []; - function scheduleCallback(observer) { - scheduledObservers.push(observer); - if (!isScheduled) { - isScheduled = true; - setImmediate(dispatchCallbacks); - } - } - function wrapIfNeeded(node) { - return window.ShadowDOMPolyfill && window.ShadowDOMPolyfill.wrapIfNeeded(node) || node; - } - function dispatchCallbacks() { - isScheduled = false; - var observers = scheduledObservers; - scheduledObservers = []; - observers.sort(function(o1, o2) { - return o1.uid_ - o2.uid_; - }); - var anyNonEmpty = false; - observers.forEach(function(observer) { - var queue = observer.takeRecords(); - removeTransientObserversFor(observer); - if (queue.length) { - observer.callback_(queue, observer); - anyNonEmpty = true; - } - }); - if (anyNonEmpty) dispatchCallbacks(); - } - function removeTransientObserversFor(observer) { - observer.nodes_.forEach(function(node) { - var registrations = registrationsTable.get(node); - if (!registrations) return; - registrations.forEach(function(registration) { - if (registration.observer === observer) registration.removeTransientObservers(); - }); - }); - } - function forEachAncestorAndObserverEnqueueRecord(target, callback) { - for (var node = target; node; node = node.parentNode) { - var registrations = registrationsTable.get(node); - if (registrations) { - for (var j = 0; j < registrations.length; j++) { - var registration = registrations[j]; - var options = registration.options; - if (node !== target && !options.subtree) continue; - var record = callback(options); - if (record) registration.enqueue(record); - } - } - } - } - var uidCounter = 0; - function JsMutationObserver(callback) { - this.callback_ = callback; - this.nodes_ = []; - this.records_ = []; - this.uid_ = ++uidCounter; - } - JsMutationObserver.prototype = { - observe: function(target, options) { - target = wrapIfNeeded(target); - if (!options.childList && !options.attributes && !options.characterData || options.attributeOldValue && !options.attributes || options.attributeFilter && options.attributeFilter.length && !options.attributes || options.characterDataOldValue && !options.characterData) { - throw new SyntaxError(); - } - var registrations = registrationsTable.get(target); - if (!registrations) registrationsTable.set(target, registrations = []); - var registration; - for (var i = 0; i < registrations.length; i++) { - if (registrations[i].observer === this) { - registration = registrations[i]; - registration.removeListeners(); - registration.options = options; - break; - } - } - if (!registration) { - registration = new Registration(this, target, options); - registrations.push(registration); - this.nodes_.push(target); - } - registration.addListeners(); - }, - disconnect: function() { - this.nodes_.forEach(function(node) { - var registrations = registrationsTable.get(node); - for (var i = 0; i < registrations.length; i++) { - var registration = registrations[i]; - if (registration.observer === this) { - registration.removeListeners(); - registrations.splice(i, 1); - break; - } - } - }, this); - this.records_ = []; - }, - takeRecords: function() { - var copyOfRecords = this.records_; - this.records_ = []; - return copyOfRecords; - } - }; - function MutationRecord(type, target) { - this.type = type; - this.target = target; - this.addedNodes = []; - this.removedNodes = []; - this.previousSibling = null; - this.nextSibling = null; - this.attributeName = null; - this.attributeNamespace = null; - this.oldValue = null; - } - function copyMutationRecord(original) { - var record = new MutationRecord(original.type, original.target); - record.addedNodes = original.addedNodes.slice(); - record.removedNodes = original.removedNodes.slice(); - record.previousSibling = original.previousSibling; - record.nextSibling = original.nextSibling; - record.attributeName = original.attributeName; - record.attributeNamespace = original.attributeNamespace; - record.oldValue = original.oldValue; - return record; - } - var currentRecord, recordWithOldValue; - function getRecord(type, target) { - return currentRecord = new MutationRecord(type, target); - } - function getRecordWithOldValue(oldValue) { - if (recordWithOldValue) return recordWithOldValue; - recordWithOldValue = copyMutationRecord(currentRecord); - recordWithOldValue.oldValue = oldValue; - return recordWithOldValue; - } - function clearRecords() { - currentRecord = recordWithOldValue = undefined; - } - function recordRepresentsCurrentMutation(record) { - return record === recordWithOldValue || record === currentRecord; - } - function selectRecord(lastRecord, newRecord) { - if (lastRecord === newRecord) return lastRecord; - if (recordWithOldValue && recordRepresentsCurrentMutation(lastRecord)) return recordWithOldValue; - return null; - } - function Registration(observer, target, options) { - this.observer = observer; - this.target = target; - this.options = options; - this.transientObservedNodes = []; - } - Registration.prototype = { - enqueue: function(record) { - var records = this.observer.records_; - var length = records.length; - if (records.length > 0) { - var lastRecord = records[length - 1]; - var recordToReplaceLast = selectRecord(lastRecord, record); - if (recordToReplaceLast) { - records[length - 1] = recordToReplaceLast; - return; - } - } else { - scheduleCallback(this.observer); - } - records[length] = record; - }, - addListeners: function() { - this.addListeners_(this.target); - }, - addListeners_: function(node) { - var options = this.options; - if (options.attributes) node.addEventListener("DOMAttrModified", this, true); - if (options.characterData) node.addEventListener("DOMCharacterDataModified", this, true); - if (options.childList) node.addEventListener("DOMNodeInserted", this, true); - if (options.childList || options.subtree) node.addEventListener("DOMNodeRemoved", this, true); - }, - removeListeners: function() { - this.removeListeners_(this.target); - }, - removeListeners_: function(node) { - var options = this.options; - if (options.attributes) node.removeEventListener("DOMAttrModified", this, true); - if (options.characterData) node.removeEventListener("DOMCharacterDataModified", this, true); - if (options.childList) node.removeEventListener("DOMNodeInserted", this, true); - if (options.childList || options.subtree) node.removeEventListener("DOMNodeRemoved", this, true); - }, - addTransientObserver: function(node) { - if (node === this.target) return; - this.addListeners_(node); - this.transientObservedNodes.push(node); - var registrations = registrationsTable.get(node); - if (!registrations) registrationsTable.set(node, registrations = []); - registrations.push(this); - }, - removeTransientObservers: function() { - var transientObservedNodes = this.transientObservedNodes; - this.transientObservedNodes = []; - transientObservedNodes.forEach(function(node) { - this.removeListeners_(node); - var registrations = registrationsTable.get(node); - for (var i = 0; i < registrations.length; i++) { - if (registrations[i] === this) { - registrations.splice(i, 1); - break; - } - } - }, this); - }, - handleEvent: function(e) { - e.stopImmediatePropagation(); - switch (e.type) { - case "DOMAttrModified": - var name = e.attrName; - var namespace = e.relatedNode.namespaceURI; - var target = e.target; - var record = new getRecord("attributes", target); - record.attributeName = name; - record.attributeNamespace = namespace; - var oldValue = e.attrChange === MutationEvent.ADDITION ? null : e.prevValue; - forEachAncestorAndObserverEnqueueRecord(target, function(options) { - if (!options.attributes) return; - if (options.attributeFilter && options.attributeFilter.length && options.attributeFilter.indexOf(name) === -1 && options.attributeFilter.indexOf(namespace) === -1) { - return; - } - if (options.attributeOldValue) return getRecordWithOldValue(oldValue); - return record; - }); - break; - - case "DOMCharacterDataModified": - var target = e.target; - var record = getRecord("characterData", target); - var oldValue = e.prevValue; - forEachAncestorAndObserverEnqueueRecord(target, function(options) { - if (!options.characterData) return; - if (options.characterDataOldValue) return getRecordWithOldValue(oldValue); - return record; - }); - break; - - case "DOMNodeRemoved": - this.addTransientObserver(e.target); - - case "DOMNodeInserted": - var changedNode = e.target; - var addedNodes, removedNodes; - if (e.type === "DOMNodeInserted") { - addedNodes = [ changedNode ]; - removedNodes = []; - } else { - addedNodes = []; - removedNodes = [ changedNode ]; - } - var previousSibling = changedNode.previousSibling; - var nextSibling = changedNode.nextSibling; - var record = getRecord("childList", e.target.parentNode); - record.addedNodes = addedNodes; - record.removedNodes = removedNodes; - record.previousSibling = previousSibling; - record.nextSibling = nextSibling; - forEachAncestorAndObserverEnqueueRecord(e.relatedNode, function(options) { - if (!options.childList) return; - return record; - }); - } - clearRecords(); - } - }; - global.JsMutationObserver = JsMutationObserver; - if (!global.MutationObserver) { - global.MutationObserver = JsMutationObserver; - JsMutationObserver._isPolyfilled = true; - } -})(self); \ No newline at end of file diff --git a/lib/admin/public/bower_components/webcomponentsjs/MutationObserver.min.js b/lib/admin/public/bower_components/webcomponentsjs/MutationObserver.min.js deleted file mode 100644 index 267b374e..00000000 --- a/lib/admin/public/bower_components/webcomponentsjs/MutationObserver.min.js +++ /dev/null @@ -1,11 +0,0 @@ -/** - * @license - * Copyright (c) 2014 The Polymer Project Authors. All rights reserved. - * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt - * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt - * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt - * Code distributed by Google as part of the polymer project is also - * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt - */ -// @version 0.7.22 -"undefined"==typeof WeakMap&&!function(){var e=Object.defineProperty,t=Date.now()%1e9,r=function(){this.name="__st"+(1e9*Math.random()>>>0)+(t++ +"__")};r.prototype={set:function(t,r){var i=t[this.name];return i&&i[0]===t?i[1]=r:e(t,this.name,{value:[t,r],writable:!0}),this},get:function(e){var t;return(t=e[this.name])&&t[0]===e?t[1]:void 0},"delete":function(e){var t=e[this.name];return t&&t[0]===e?(t[0]=t[1]=void 0,!0):!1},has:function(e){var t=e[this.name];return t?t[0]===e:!1}},window.WeakMap=r}(),function(e){function t(e){N.push(e),O||(O=!0,b(i))}function r(e){return window.ShadowDOMPolyfill&&window.ShadowDOMPolyfill.wrapIfNeeded(e)||e}function i(){O=!1;var e=N;N=[],e.sort(function(e,t){return e.uid_-t.uid_});var t=!1;e.forEach(function(e){var r=e.takeRecords();n(e),r.length&&(e.callback_(r,e),t=!0)}),t&&i()}function n(e){e.nodes_.forEach(function(t){var r=p.get(t);r&&r.forEach(function(t){t.observer===e&&t.removeTransientObservers()})})}function a(e,t){for(var r=e;r;r=r.parentNode){var i=p.get(r);if(i)for(var n=0;n0){var n=r[i-1],a=l(n,e);if(a)return void(r[i-1]=a)}else t(this.observer);r[i]=e},addListeners:function(){this.addListeners_(this.target)},addListeners_:function(e){var t=this.options;t.attributes&&e.addEventListener("DOMAttrModified",this,!0),t.characterData&&e.addEventListener("DOMCharacterDataModified",this,!0),t.childList&&e.addEventListener("DOMNodeInserted",this,!0),(t.childList||t.subtree)&&e.addEventListener("DOMNodeRemoved",this,!0)},removeListeners:function(){this.removeListeners_(this.target)},removeListeners_:function(e){var t=this.options;t.attributes&&e.removeEventListener("DOMAttrModified",this,!0),t.characterData&&e.removeEventListener("DOMCharacterDataModified",this,!0),t.childList&&e.removeEventListener("DOMNodeInserted",this,!0),(t.childList||t.subtree)&&e.removeEventListener("DOMNodeRemoved",this,!0)},addTransientObserver:function(e){if(e!==this.target){this.addListeners_(e),this.transientObservedNodes.push(e);var t=p.get(e);t||p.set(e,t=[]),t.push(this)}},removeTransientObservers:function(){var e=this.transientObservedNodes;this.transientObservedNodes=[],e.forEach(function(e){this.removeListeners_(e);for(var t=p.get(e),r=0;r` tags in the main document block the loading of such imports. This is to ensure the imports have loaded and any registered elements in them have been upgraded. - -The webcomponents.js and webcomponents-lite.js polyfills parse element definitions and handle their upgrade asynchronously. If prematurely fetching the element from the DOM before it has an opportunity to upgrade, you'll be working with an `HTMLUnknownElement`. - -For these situations (or when you need an approximate replacement for the Polymer 0.5 `polymer-ready` behavior), you can use the `WebComponentsReady` event as a signal before interacting with the element. The criteria for this event to fire is all Custom Elements with definitions registered by the time HTML Imports available at load time have loaded have upgraded. - -```js -window.addEventListener('WebComponentsReady', function(e) { - // imports are loaded and elements have been registered - console.log('Components are ready'); -}); -``` - -## Known Issues - - * [Limited CSS encapsulation](#encapsulation) - * [Element wrapping / unwrapping limitations](#wrapping) - * [Custom element's constructor property is unreliable](#constructor) - * [Contenteditable elements do not trigger MutationObserver](#contentedit) - * [ShadowCSS: :host-context(...):host(...) doesn't work](#hostcontext) - * [ShadowCSS: :host(.zot:not(.bar:nth-child(2))) doesn't work](#nestedparens) - * [HTML imports: document.currentScript doesn't work as expected](#currentscript) - * [execCommand isn't supported under Shadow DOM](#execcommand) - -### Limited CSS encapsulation -Under native Shadow DOM, CSS selectors cannot cross the shadow boundary. This means document level styles don't apply to shadow roots, and styles defined within a shadow root don't apply outside of that shadow root. [Several selectors](http://www.html5rocks.com/en/tutorials/webcomponents/shadowdom-201/) are provided to be able to deal with the shadow boundary. - -The Shadow DOM polyfill can't prevent document styles from leaking into shadow roots. It can, however, encapsulate styles within shadow roots to some extent. This behavior isn't automatically emulated by the Shadow DOM polyfill, but it can be achieved by manually using the included ShadowCSS shim: - -``` -WebComponents.ShadowCSS.shimStyling( shadowRoot, scope ); -``` - -... where `shadowRoot` is the shadow root of a DOM element, and `scope` is the name of the scope used to prefix the selectors. This removes all ` - - - - - - diff --git a/lib/admin/public/lamassu-elm.js b/lib/admin/public/lamassu-elm.js deleted file mode 100644 index 4f2a38b8..00000000 --- a/lib/admin/public/lamassu-elm.js +++ /dev/null @@ -1,13319 +0,0 @@ - -(function() { -'use strict'; - -function F2(fun) -{ - function wrapper(a) { return function(b) { return fun(a,b); }; } - wrapper.arity = 2; - wrapper.func = fun; - return wrapper; -} - -function F3(fun) -{ - function wrapper(a) { - return function(b) { return function(c) { return fun(a, b, c); }; }; - } - wrapper.arity = 3; - wrapper.func = fun; - return wrapper; -} - -function F4(fun) -{ - function wrapper(a) { return function(b) { return function(c) { - return function(d) { return fun(a, b, c, d); }; }; }; - } - wrapper.arity = 4; - wrapper.func = fun; - return wrapper; -} - -function F5(fun) -{ - function wrapper(a) { return function(b) { return function(c) { - return function(d) { return function(e) { return fun(a, b, c, d, e); }; }; }; }; - } - wrapper.arity = 5; - wrapper.func = fun; - return wrapper; -} - -function F6(fun) -{ - function wrapper(a) { return function(b) { return function(c) { - return function(d) { return function(e) { return function(f) { - return fun(a, b, c, d, e, f); }; }; }; }; }; - } - wrapper.arity = 6; - wrapper.func = fun; - return wrapper; -} - -function F7(fun) -{ - function wrapper(a) { return function(b) { return function(c) { - return function(d) { return function(e) { return function(f) { - return function(g) { return fun(a, b, c, d, e, f, g); }; }; }; }; }; }; - } - wrapper.arity = 7; - wrapper.func = fun; - return wrapper; -} - -function F8(fun) -{ - function wrapper(a) { return function(b) { return function(c) { - return function(d) { return function(e) { return function(f) { - return function(g) { return function(h) { - return fun(a, b, c, d, e, f, g, h); }; }; }; }; }; }; }; - } - wrapper.arity = 8; - wrapper.func = fun; - return wrapper; -} - -function F9(fun) -{ - function wrapper(a) { return function(b) { return function(c) { - return function(d) { return function(e) { return function(f) { - return function(g) { return function(h) { return function(i) { - return fun(a, b, c, d, e, f, g, h, i); }; }; }; }; }; }; }; }; - } - wrapper.arity = 9; - wrapper.func = fun; - return wrapper; -} - -function A2(fun, a, b) -{ - return fun.arity === 2 - ? fun.func(a, b) - : fun(a)(b); -} -function A3(fun, a, b, c) -{ - return fun.arity === 3 - ? fun.func(a, b, c) - : fun(a)(b)(c); -} -function A4(fun, a, b, c, d) -{ - return fun.arity === 4 - ? fun.func(a, b, c, d) - : fun(a)(b)(c)(d); -} -function A5(fun, a, b, c, d, e) -{ - return fun.arity === 5 - ? fun.func(a, b, c, d, e) - : fun(a)(b)(c)(d)(e); -} -function A6(fun, a, b, c, d, e, f) -{ - return fun.arity === 6 - ? fun.func(a, b, c, d, e, f) - : fun(a)(b)(c)(d)(e)(f); -} -function A7(fun, a, b, c, d, e, f, g) -{ - return fun.arity === 7 - ? fun.func(a, b, c, d, e, f, g) - : fun(a)(b)(c)(d)(e)(f)(g); -} -function A8(fun, a, b, c, d, e, f, g, h) -{ - return fun.arity === 8 - ? fun.func(a, b, c, d, e, f, g, h) - : fun(a)(b)(c)(d)(e)(f)(g)(h); -} -function A9(fun, a, b, c, d, e, f, g, h, i) -{ - return fun.arity === 9 - ? fun.func(a, b, c, d, e, f, g, h, i) - : fun(a)(b)(c)(d)(e)(f)(g)(h)(i); -} - -//import Native.List // - -var _elm_lang$core$Native_Array = function() { - -// A RRB-Tree has two distinct data types. -// Leaf -> "height" is always 0 -// "table" is an array of elements -// Node -> "height" is always greater than 0 -// "table" is an array of child nodes -// "lengths" is an array of accumulated lengths of the child nodes - -// M is the maximal table size. 32 seems fast. E is the allowed increase -// of search steps when concatting to find an index. Lower values will -// decrease balancing, but will increase search steps. -var M = 32; -var E = 2; - -// An empty array. -var empty = { - ctor: '_Array', - height: 0, - table: [] -}; - - -function get(i, array) -{ - if (i < 0 || i >= length(array)) - { - throw new Error( - 'Index ' + i + ' is out of range. Check the length of ' + - 'your array first or use getMaybe or getWithDefault.'); - } - return unsafeGet(i, array); -} - - -function unsafeGet(i, array) -{ - for (var x = array.height; x > 0; x--) - { - var slot = i >> (x * 5); - while (array.lengths[slot] <= i) - { - slot++; - } - if (slot > 0) - { - i -= array.lengths[slot - 1]; - } - array = array.table[slot]; - } - return array.table[i]; -} - - -// Sets the value at the index i. Only the nodes leading to i will get -// copied and updated. -function set(i, item, array) -{ - if (i < 0 || length(array) <= i) - { - return array; - } - return unsafeSet(i, item, array); -} - - -function unsafeSet(i, item, array) -{ - array = nodeCopy(array); - - if (array.height === 0) - { - array.table[i] = item; - } - else - { - var slot = getSlot(i, array); - if (slot > 0) - { - i -= array.lengths[slot - 1]; - } - array.table[slot] = unsafeSet(i, item, array.table[slot]); - } - return array; -} - - -function initialize(len, f) -{ - if (len <= 0) - { - return empty; - } - var h = Math.floor( Math.log(len) / Math.log(M) ); - return initialize_(f, h, 0, len); -} - -function initialize_(f, h, from, to) -{ - if (h === 0) - { - var table = new Array((to - from) % (M + 1)); - for (var i = 0; i < table.length; i++) - { - table[i] = f(from + i); - } - return { - ctor: '_Array', - height: 0, - table: table - }; - } - - var step = Math.pow(M, h); - var table = new Array(Math.ceil((to - from) / step)); - var lengths = new Array(table.length); - for (var i = 0; i < table.length; i++) - { - table[i] = initialize_(f, h - 1, from + (i * step), Math.min(from + ((i + 1) * step), to)); - lengths[i] = length(table[i]) + (i > 0 ? lengths[i-1] : 0); - } - return { - ctor: '_Array', - height: h, - table: table, - lengths: lengths - }; -} - -function fromList(list) -{ - if (list.ctor === '[]') - { - return empty; - } - - // Allocate M sized blocks (table) and write list elements to it. - var table = new Array(M); - var nodes = []; - var i = 0; - - while (list.ctor !== '[]') - { - table[i] = list._0; - list = list._1; - i++; - - // table is full, so we can push a leaf containing it into the - // next node. - if (i === M) - { - var leaf = { - ctor: '_Array', - height: 0, - table: table - }; - fromListPush(leaf, nodes); - table = new Array(M); - i = 0; - } - } - - // Maybe there is something left on the table. - if (i > 0) - { - var leaf = { - ctor: '_Array', - height: 0, - table: table.splice(0, i) - }; - fromListPush(leaf, nodes); - } - - // Go through all of the nodes and eventually push them into higher nodes. - for (var h = 0; h < nodes.length - 1; h++) - { - if (nodes[h].table.length > 0) - { - fromListPush(nodes[h], nodes); - } - } - - var head = nodes[nodes.length - 1]; - if (head.height > 0 && head.table.length === 1) - { - return head.table[0]; - } - else - { - return head; - } -} - -// Push a node into a higher node as a child. -function fromListPush(toPush, nodes) -{ - var h = toPush.height; - - // Maybe the node on this height does not exist. - if (nodes.length === h) - { - var node = { - ctor: '_Array', - height: h + 1, - table: [], - lengths: [] - }; - nodes.push(node); - } - - nodes[h].table.push(toPush); - var len = length(toPush); - if (nodes[h].lengths.length > 0) - { - len += nodes[h].lengths[nodes[h].lengths.length - 1]; - } - nodes[h].lengths.push(len); - - if (nodes[h].table.length === M) - { - fromListPush(nodes[h], nodes); - nodes[h] = { - ctor: '_Array', - height: h + 1, - table: [], - lengths: [] - }; - } -} - -// Pushes an item via push_ to the bottom right of a tree. -function push(item, a) -{ - var pushed = push_(item, a); - if (pushed !== null) - { - return pushed; - } - - var newTree = create(item, a.height); - return siblise(a, newTree); -} - -// Recursively tries to push an item to the bottom-right most -// tree possible. If there is no space left for the item, -// null will be returned. -function push_(item, a) -{ - // Handle resursion stop at leaf level. - if (a.height === 0) - { - if (a.table.length < M) - { - var newA = { - ctor: '_Array', - height: 0, - table: a.table.slice() - }; - newA.table.push(item); - return newA; - } - else - { - return null; - } - } - - // Recursively push - var pushed = push_(item, botRight(a)); - - // There was space in the bottom right tree, so the slot will - // be updated. - if (pushed !== null) - { - var newA = nodeCopy(a); - newA.table[newA.table.length - 1] = pushed; - newA.lengths[newA.lengths.length - 1]++; - return newA; - } - - // When there was no space left, check if there is space left - // for a new slot with a tree which contains only the item - // at the bottom. - if (a.table.length < M) - { - var newSlot = create(item, a.height - 1); - var newA = nodeCopy(a); - newA.table.push(newSlot); - newA.lengths.push(newA.lengths[newA.lengths.length - 1] + length(newSlot)); - return newA; - } - else - { - return null; - } -} - -// Converts an array into a list of elements. -function toList(a) -{ - return toList_(_elm_lang$core$Native_List.Nil, a); -} - -function toList_(list, a) -{ - for (var i = a.table.length - 1; i >= 0; i--) - { - list = - a.height === 0 - ? _elm_lang$core$Native_List.Cons(a.table[i], list) - : toList_(list, a.table[i]); - } - return list; -} - -// Maps a function over the elements of an array. -function map(f, a) -{ - var newA = { - ctor: '_Array', - height: a.height, - table: new Array(a.table.length) - }; - if (a.height > 0) - { - newA.lengths = a.lengths; - } - for (var i = 0; i < a.table.length; i++) - { - newA.table[i] = - a.height === 0 - ? f(a.table[i]) - : map(f, a.table[i]); - } - return newA; -} - -// Maps a function over the elements with their index as first argument. -function indexedMap(f, a) -{ - return indexedMap_(f, a, 0); -} - -function indexedMap_(f, a, from) -{ - var newA = { - ctor: '_Array', - height: a.height, - table: new Array(a.table.length) - }; - if (a.height > 0) - { - newA.lengths = a.lengths; - } - for (var i = 0; i < a.table.length; i++) - { - newA.table[i] = - a.height === 0 - ? A2(f, from + i, a.table[i]) - : indexedMap_(f, a.table[i], i == 0 ? from : from + a.lengths[i - 1]); - } - return newA; -} - -function foldl(f, b, a) -{ - if (a.height === 0) - { - for (var i = 0; i < a.table.length; i++) - { - b = A2(f, a.table[i], b); - } - } - else - { - for (var i = 0; i < a.table.length; i++) - { - b = foldl(f, b, a.table[i]); - } - } - return b; -} - -function foldr(f, b, a) -{ - if (a.height === 0) - { - for (var i = a.table.length; i--; ) - { - b = A2(f, a.table[i], b); - } - } - else - { - for (var i = a.table.length; i--; ) - { - b = foldr(f, b, a.table[i]); - } - } - return b; -} - -// TODO: currently, it slices the right, then the left. This can be -// optimized. -function slice(from, to, a) -{ - if (from < 0) - { - from += length(a); - } - if (to < 0) - { - to += length(a); - } - return sliceLeft(from, sliceRight(to, a)); -} - -function sliceRight(to, a) -{ - if (to === length(a)) - { - return a; - } - - // Handle leaf level. - if (a.height === 0) - { - var newA = { ctor:'_Array', height:0 }; - newA.table = a.table.slice(0, to); - return newA; - } - - // Slice the right recursively. - var right = getSlot(to, a); - var sliced = sliceRight(to - (right > 0 ? a.lengths[right - 1] : 0), a.table[right]); - - // Maybe the a node is not even needed, as sliced contains the whole slice. - if (right === 0) - { - return sliced; - } - - // Create new node. - var newA = { - ctor: '_Array', - height: a.height, - table: a.table.slice(0, right), - lengths: a.lengths.slice(0, right) - }; - if (sliced.table.length > 0) - { - newA.table[right] = sliced; - newA.lengths[right] = length(sliced) + (right > 0 ? newA.lengths[right - 1] : 0); - } - return newA; -} - -function sliceLeft(from, a) -{ - if (from === 0) - { - return a; - } - - // Handle leaf level. - if (a.height === 0) - { - var newA = { ctor:'_Array', height:0 }; - newA.table = a.table.slice(from, a.table.length + 1); - return newA; - } - - // Slice the left recursively. - var left = getSlot(from, a); - var sliced = sliceLeft(from - (left > 0 ? a.lengths[left - 1] : 0), a.table[left]); - - // Maybe the a node is not even needed, as sliced contains the whole slice. - if (left === a.table.length - 1) - { - return sliced; - } - - // Create new node. - var newA = { - ctor: '_Array', - height: a.height, - table: a.table.slice(left, a.table.length + 1), - lengths: new Array(a.table.length - left) - }; - newA.table[0] = sliced; - var len = 0; - for (var i = 0; i < newA.table.length; i++) - { - len += length(newA.table[i]); - newA.lengths[i] = len; - } - - return newA; -} - -// Appends two trees. -function append(a,b) -{ - if (a.table.length === 0) - { - return b; - } - if (b.table.length === 0) - { - return a; - } - - var c = append_(a, b); - - // Check if both nodes can be crunshed together. - if (c[0].table.length + c[1].table.length <= M) - { - if (c[0].table.length === 0) - { - return c[1]; - } - if (c[1].table.length === 0) - { - return c[0]; - } - - // Adjust .table and .lengths - c[0].table = c[0].table.concat(c[1].table); - if (c[0].height > 0) - { - var len = length(c[0]); - for (var i = 0; i < c[1].lengths.length; i++) - { - c[1].lengths[i] += len; - } - c[0].lengths = c[0].lengths.concat(c[1].lengths); - } - - return c[0]; - } - - if (c[0].height > 0) - { - var toRemove = calcToRemove(a, b); - if (toRemove > E) - { - c = shuffle(c[0], c[1], toRemove); - } - } - - return siblise(c[0], c[1]); -} - -// Returns an array of two nodes; right and left. One node _may_ be empty. -function append_(a, b) -{ - if (a.height === 0 && b.height === 0) - { - return [a, b]; - } - - if (a.height !== 1 || b.height !== 1) - { - if (a.height === b.height) - { - a = nodeCopy(a); - b = nodeCopy(b); - var appended = append_(botRight(a), botLeft(b)); - - insertRight(a, appended[1]); - insertLeft(b, appended[0]); - } - else if (a.height > b.height) - { - a = nodeCopy(a); - var appended = append_(botRight(a), b); - - insertRight(a, appended[0]); - b = parentise(appended[1], appended[1].height + 1); - } - else - { - b = nodeCopy(b); - var appended = append_(a, botLeft(b)); - - var left = appended[0].table.length === 0 ? 0 : 1; - var right = left === 0 ? 1 : 0; - insertLeft(b, appended[left]); - a = parentise(appended[right], appended[right].height + 1); - } - } - - // Check if balancing is needed and return based on that. - if (a.table.length === 0 || b.table.length === 0) - { - return [a, b]; - } - - var toRemove = calcToRemove(a, b); - if (toRemove <= E) - { - return [a, b]; - } - return shuffle(a, b, toRemove); -} - -// Helperfunctions for append_. Replaces a child node at the side of the parent. -function insertRight(parent, node) -{ - var index = parent.table.length - 1; - parent.table[index] = node; - parent.lengths[index] = length(node); - parent.lengths[index] += index > 0 ? parent.lengths[index - 1] : 0; -} - -function insertLeft(parent, node) -{ - if (node.table.length > 0) - { - parent.table[0] = node; - parent.lengths[0] = length(node); - - var len = length(parent.table[0]); - for (var i = 1; i < parent.lengths.length; i++) - { - len += length(parent.table[i]); - parent.lengths[i] = len; - } - } - else - { - parent.table.shift(); - for (var i = 1; i < parent.lengths.length; i++) - { - parent.lengths[i] = parent.lengths[i] - parent.lengths[0]; - } - parent.lengths.shift(); - } -} - -// Returns the extra search steps for E. Refer to the paper. -function calcToRemove(a, b) -{ - var subLengths = 0; - for (var i = 0; i < a.table.length; i++) - { - subLengths += a.table[i].table.length; - } - for (var i = 0; i < b.table.length; i++) - { - subLengths += b.table[i].table.length; - } - - var toRemove = a.table.length + b.table.length; - return toRemove - (Math.floor((subLengths - 1) / M) + 1); -} - -// get2, set2 and saveSlot are helpers for accessing elements over two arrays. -function get2(a, b, index) -{ - return index < a.length - ? a[index] - : b[index - a.length]; -} - -function set2(a, b, index, value) -{ - if (index < a.length) - { - a[index] = value; - } - else - { - b[index - a.length] = value; - } -} - -function saveSlot(a, b, index, slot) -{ - set2(a.table, b.table, index, slot); - - var l = (index === 0 || index === a.lengths.length) - ? 0 - : get2(a.lengths, a.lengths, index - 1); - - set2(a.lengths, b.lengths, index, l + length(slot)); -} - -// Creates a node or leaf with a given length at their arrays for perfomance. -// Is only used by shuffle. -function createNode(h, length) -{ - if (length < 0) - { - length = 0; - } - var a = { - ctor: '_Array', - height: h, - table: new Array(length) - }; - if (h > 0) - { - a.lengths = new Array(length); - } - return a; -} - -// Returns an array of two balanced nodes. -function shuffle(a, b, toRemove) -{ - var newA = createNode(a.height, Math.min(M, a.table.length + b.table.length - toRemove)); - var newB = createNode(a.height, newA.table.length - (a.table.length + b.table.length - toRemove)); - - // Skip the slots with size M. More precise: copy the slot references - // to the new node - var read = 0; - while (get2(a.table, b.table, read).table.length % M === 0) - { - set2(newA.table, newB.table, read, get2(a.table, b.table, read)); - set2(newA.lengths, newB.lengths, read, get2(a.lengths, b.lengths, read)); - read++; - } - - // Pulling items from left to right, caching in a slot before writing - // it into the new nodes. - var write = read; - var slot = new createNode(a.height - 1, 0); - var from = 0; - - // If the current slot is still containing data, then there will be at - // least one more write, so we do not break this loop yet. - while (read - write - (slot.table.length > 0 ? 1 : 0) < toRemove) - { - // Find out the max possible items for copying. - var source = get2(a.table, b.table, read); - var to = Math.min(M - slot.table.length, source.table.length); - - // Copy and adjust size table. - slot.table = slot.table.concat(source.table.slice(from, to)); - if (slot.height > 0) - { - var len = slot.lengths.length; - for (var i = len; i < len + to - from; i++) - { - slot.lengths[i] = length(slot.table[i]); - slot.lengths[i] += (i > 0 ? slot.lengths[i - 1] : 0); - } - } - - from += to; - - // Only proceed to next slots[i] if the current one was - // fully copied. - if (source.table.length <= to) - { - read++; from = 0; - } - - // Only create a new slot if the current one is filled up. - if (slot.table.length === M) - { - saveSlot(newA, newB, write, slot); - slot = createNode(a.height - 1, 0); - write++; - } - } - - // Cleanup after the loop. Copy the last slot into the new nodes. - if (slot.table.length > 0) - { - saveSlot(newA, newB, write, slot); - write++; - } - - // Shift the untouched slots to the left - while (read < a.table.length + b.table.length ) - { - saveSlot(newA, newB, write, get2(a.table, b.table, read)); - read++; - write++; - } - - return [newA, newB]; -} - -// Navigation functions -function botRight(a) -{ - return a.table[a.table.length - 1]; -} -function botLeft(a) -{ - return a.table[0]; -} - -// Copies a node for updating. Note that you should not use this if -// only updating only one of "table" or "lengths" for performance reasons. -function nodeCopy(a) -{ - var newA = { - ctor: '_Array', - height: a.height, - table: a.table.slice() - }; - if (a.height > 0) - { - newA.lengths = a.lengths.slice(); - } - return newA; -} - -// Returns how many items are in the tree. -function length(array) -{ - if (array.height === 0) - { - return array.table.length; - } - else - { - return array.lengths[array.lengths.length - 1]; - } -} - -// Calculates in which slot of "table" the item probably is, then -// find the exact slot via forward searching in "lengths". Returns the index. -function getSlot(i, a) -{ - var slot = i >> (5 * a.height); - while (a.lengths[slot] <= i) - { - slot++; - } - return slot; -} - -// Recursively creates a tree with a given height containing -// only the given item. -function create(item, h) -{ - if (h === 0) - { - return { - ctor: '_Array', - height: 0, - table: [item] - }; - } - return { - ctor: '_Array', - height: h, - table: [create(item, h - 1)], - lengths: [1] - }; -} - -// Recursively creates a tree that contains the given tree. -function parentise(tree, h) -{ - if (h === tree.height) - { - return tree; - } - - return { - ctor: '_Array', - height: h, - table: [parentise(tree, h - 1)], - lengths: [length(tree)] - }; -} - -// Emphasizes blood brotherhood beneath two trees. -function siblise(a, b) -{ - return { - ctor: '_Array', - height: a.height + 1, - table: [a, b], - lengths: [length(a), length(a) + length(b)] - }; -} - -function toJSArray(a) -{ - var jsArray = new Array(length(a)); - toJSArray_(jsArray, 0, a); - return jsArray; -} - -function toJSArray_(jsArray, i, a) -{ - for (var t = 0; t < a.table.length; t++) - { - if (a.height === 0) - { - jsArray[i + t] = a.table[t]; - } - else - { - var inc = t === 0 ? 0 : a.lengths[t - 1]; - toJSArray_(jsArray, i + inc, a.table[t]); - } - } -} - -function fromJSArray(jsArray) -{ - if (jsArray.length === 0) - { - return empty; - } - var h = Math.floor(Math.log(jsArray.length) / Math.log(M)); - return fromJSArray_(jsArray, h, 0, jsArray.length); -} - -function fromJSArray_(jsArray, h, from, to) -{ - if (h === 0) - { - return { - ctor: '_Array', - height: 0, - table: jsArray.slice(from, to) - }; - } - - var step = Math.pow(M, h); - var table = new Array(Math.ceil((to - from) / step)); - var lengths = new Array(table.length); - for (var i = 0; i < table.length; i++) - { - table[i] = fromJSArray_(jsArray, h - 1, from + (i * step), Math.min(from + ((i + 1) * step), to)); - lengths[i] = length(table[i]) + (i > 0 ? lengths[i - 1] : 0); - } - return { - ctor: '_Array', - height: h, - table: table, - lengths: lengths - }; -} - -return { - empty: empty, - fromList: fromList, - toList: toList, - initialize: F2(initialize), - append: F2(append), - push: F2(push), - slice: F3(slice), - get: F2(get), - set: F3(set), - map: F2(map), - indexedMap: F2(indexedMap), - foldl: F3(foldl), - foldr: F3(foldr), - length: length, - - toJSArray: toJSArray, - fromJSArray: fromJSArray -}; - -}(); -//import Native.Utils // - -var _elm_lang$core$Native_Basics = function() { - -function div(a, b) -{ - return (a / b) | 0; -} -function rem(a, b) -{ - return a % b; -} -function mod(a, b) -{ - if (b === 0) - { - throw new Error('Cannot perform mod 0. Division by zero error.'); - } - var r = a % b; - var m = a === 0 ? 0 : (b > 0 ? (a >= 0 ? r : r + b) : -mod(-a, -b)); - - return m === b ? 0 : m; -} -function logBase(base, n) -{ - return Math.log(n) / Math.log(base); -} -function negate(n) -{ - return -n; -} -function abs(n) -{ - return n < 0 ? -n : n; -} - -function min(a, b) -{ - return _elm_lang$core$Native_Utils.cmp(a, b) < 0 ? a : b; -} -function max(a, b) -{ - return _elm_lang$core$Native_Utils.cmp(a, b) > 0 ? a : b; -} -function clamp(lo, hi, n) -{ - return _elm_lang$core$Native_Utils.cmp(n, lo) < 0 - ? lo - : _elm_lang$core$Native_Utils.cmp(n, hi) > 0 - ? hi - : n; -} - -var ord = ['LT', 'EQ', 'GT']; - -function compare(x, y) -{ - return { ctor: ord[_elm_lang$core$Native_Utils.cmp(x, y) + 1] }; -} - -function xor(a, b) -{ - return a !== b; -} -function not(b) -{ - return !b; -} -function isInfinite(n) -{ - return n === Infinity || n === -Infinity; -} - -function truncate(n) -{ - return n | 0; -} - -function degrees(d) -{ - return d * Math.PI / 180; -} -function turns(t) -{ - return 2 * Math.PI * t; -} -function fromPolar(point) -{ - var r = point._0; - var t = point._1; - return _elm_lang$core$Native_Utils.Tuple2(r * Math.cos(t), r * Math.sin(t)); -} -function toPolar(point) -{ - var x = point._0; - var y = point._1; - return _elm_lang$core$Native_Utils.Tuple2(Math.sqrt(x * x + y * y), Math.atan2(y, x)); -} - -return { - div: F2(div), - rem: F2(rem), - mod: F2(mod), - - pi: Math.PI, - e: Math.E, - cos: Math.cos, - sin: Math.sin, - tan: Math.tan, - acos: Math.acos, - asin: Math.asin, - atan: Math.atan, - atan2: F2(Math.atan2), - - degrees: degrees, - turns: turns, - fromPolar: fromPolar, - toPolar: toPolar, - - sqrt: Math.sqrt, - logBase: F2(logBase), - negate: negate, - abs: abs, - min: F2(min), - max: F2(max), - clamp: F3(clamp), - compare: F2(compare), - - xor: F2(xor), - not: not, - - truncate: truncate, - ceiling: Math.ceil, - floor: Math.floor, - round: Math.round, - toFloat: function(x) { return x; }, - isNaN: isNaN, - isInfinite: isInfinite -}; - -}(); -//import // - -var _elm_lang$core$Native_Utils = function() { - -// COMPARISONS - -function eq(x, y) -{ - var stack = []; - var isEqual = eqHelp(x, y, 0, stack); - var pair; - while (isEqual && (pair = stack.pop())) - { - isEqual = eqHelp(pair.x, pair.y, 0, stack); - } - return isEqual; -} - - -function eqHelp(x, y, depth, stack) -{ - if (depth > 100) - { - stack.push({ x: x, y: y }); - return true; - } - - if (x === y) - { - return true; - } - - if (typeof x !== 'object') - { - if (typeof x === 'function') - { - throw new Error( - 'Trying to use `(==)` on functions. There is no way to know if functions are "the same" in the Elm sense.' - + ' Read more about this at http://package.elm-lang.org/packages/elm-lang/core/latest/Basics#==' - + ' which describes why it is this way and what the better version will look like.' - ); - } - return false; - } - - if (x === null || y === null) - { - return false - } - - if (x instanceof Date) - { - return x.getTime() === y.getTime(); - } - - if (!('ctor' in x)) - { - for (var key in x) - { - if (!eqHelp(x[key], y[key], depth + 1, stack)) - { - return false; - } - } - return true; - } - - // convert Dicts and Sets to lists - if (x.ctor === 'RBNode_elm_builtin' || x.ctor === 'RBEmpty_elm_builtin') - { - x = _elm_lang$core$Dict$toList(x); - y = _elm_lang$core$Dict$toList(y); - } - if (x.ctor === 'Set_elm_builtin') - { - x = _elm_lang$core$Set$toList(x); - y = _elm_lang$core$Set$toList(y); - } - - // check if lists are equal without recursion - if (x.ctor === '::') - { - var a = x; - var b = y; - while (a.ctor === '::' && b.ctor === '::') - { - if (!eqHelp(a._0, b._0, depth + 1, stack)) - { - return false; - } - a = a._1; - b = b._1; - } - return a.ctor === b.ctor; - } - - // check if Arrays are equal - if (x.ctor === '_Array') - { - var xs = _elm_lang$core$Native_Array.toJSArray(x); - var ys = _elm_lang$core$Native_Array.toJSArray(y); - if (xs.length !== ys.length) - { - return false; - } - for (var i = 0; i < xs.length; i++) - { - if (!eqHelp(xs[i], ys[i], depth + 1, stack)) - { - return false; - } - } - return true; - } - - if (!eqHelp(x.ctor, y.ctor, depth + 1, stack)) - { - return false; - } - - for (var key in x) - { - if (!eqHelp(x[key], y[key], depth + 1, stack)) - { - return false; - } - } - return true; -} - -// Code in Generate/JavaScript.hs, Basics.js, and List.js depends on -// the particular integer values assigned to LT, EQ, and GT. - -var LT = -1, EQ = 0, GT = 1; - -function cmp(x, y) -{ - if (typeof x !== 'object') - { - return x === y ? EQ : x < y ? LT : GT; - } - - if (x instanceof String) - { - var a = x.valueOf(); - var b = y.valueOf(); - return a === b ? EQ : a < b ? LT : GT; - } - - if (x.ctor === '::' || x.ctor === '[]') - { - while (x.ctor === '::' && y.ctor === '::') - { - var ord = cmp(x._0, y._0); - if (ord !== EQ) - { - return ord; - } - x = x._1; - y = y._1; - } - return x.ctor === y.ctor ? EQ : x.ctor === '[]' ? LT : GT; - } - - if (x.ctor.slice(0, 6) === '_Tuple') - { - var ord; - var n = x.ctor.slice(6) - 0; - var err = 'cannot compare tuples with more than 6 elements.'; - if (n === 0) return EQ; - if (n >= 1) { ord = cmp(x._0, y._0); if (ord !== EQ) return ord; - if (n >= 2) { ord = cmp(x._1, y._1); if (ord !== EQ) return ord; - if (n >= 3) { ord = cmp(x._2, y._2); if (ord !== EQ) return ord; - if (n >= 4) { ord = cmp(x._3, y._3); if (ord !== EQ) return ord; - if (n >= 5) { ord = cmp(x._4, y._4); if (ord !== EQ) return ord; - if (n >= 6) { ord = cmp(x._5, y._5); if (ord !== EQ) return ord; - if (n >= 7) throw new Error('Comparison error: ' + err); } } } } } } - return EQ; - } - - throw new Error( - 'Comparison error: comparison is only defined on ints, ' - + 'floats, times, chars, strings, lists of comparable values, ' - + 'and tuples of comparable values.' - ); -} - - -// COMMON VALUES - -var Tuple0 = { - ctor: '_Tuple0' -}; - -function Tuple2(x, y) -{ - return { - ctor: '_Tuple2', - _0: x, - _1: y - }; -} - -function chr(c) -{ - return new String(c); -} - - -// GUID - -var count = 0; -function guid(_) -{ - return count++; -} - - -// RECORDS - -function update(oldRecord, updatedFields) -{ - var newRecord = {}; - - for (var key in oldRecord) - { - newRecord[key] = oldRecord[key]; - } - - for (var key in updatedFields) - { - newRecord[key] = updatedFields[key]; - } - - return newRecord; -} - - -//// LIST STUFF //// - -var Nil = { ctor: '[]' }; - -function Cons(hd, tl) -{ - return { - ctor: '::', - _0: hd, - _1: tl - }; -} - -function append(xs, ys) -{ - // append Strings - if (typeof xs === 'string') - { - return xs + ys; - } - - // append Lists - if (xs.ctor === '[]') - { - return ys; - } - var root = Cons(xs._0, Nil); - var curr = root; - xs = xs._1; - while (xs.ctor !== '[]') - { - curr._1 = Cons(xs._0, Nil); - xs = xs._1; - curr = curr._1; - } - curr._1 = ys; - return root; -} - - -// CRASHES - -function crash(moduleName, region) -{ - return function(message) { - throw new Error( - 'Ran into a `Debug.crash` in module `' + moduleName + '` ' + regionToString(region) + '\n' - + 'The message provided by the code author is:\n\n ' - + message - ); - }; -} - -function crashCase(moduleName, region, value) -{ - return function(message) { - throw new Error( - 'Ran into a `Debug.crash` in module `' + moduleName + '`\n\n' - + 'This was caused by the `case` expression ' + regionToString(region) + '.\n' - + 'One of the branches ended with a crash and the following value got through:\n\n ' + toString(value) + '\n\n' - + 'The message provided by the code author is:\n\n ' - + message - ); - }; -} - -function regionToString(region) -{ - if (region.start.line == region.end.line) - { - return 'on line ' + region.start.line; - } - return 'between lines ' + region.start.line + ' and ' + region.end.line; -} - - -// TO STRING - -function toString(v) -{ - var type = typeof v; - if (type === 'function') - { - return ''; - } - - if (type === 'boolean') - { - return v ? 'True' : 'False'; - } - - if (type === 'number') - { - return v + ''; - } - - if (v instanceof String) - { - return '\'' + addSlashes(v, true) + '\''; - } - - if (type === 'string') - { - return '"' + addSlashes(v, false) + '"'; - } - - if (v === null) - { - return 'null'; - } - - if (type === 'object' && 'ctor' in v) - { - var ctorStarter = v.ctor.substring(0, 5); - - if (ctorStarter === '_Tupl') - { - var output = []; - for (var k in v) - { - if (k === 'ctor') continue; - output.push(toString(v[k])); - } - return '(' + output.join(',') + ')'; - } - - if (ctorStarter === '_Task') - { - return '' - } - - if (v.ctor === '_Array') - { - var list = _elm_lang$core$Array$toList(v); - return 'Array.fromList ' + toString(list); - } - - if (v.ctor === '') - { - return ''; - } - - if (v.ctor === '_Process') - { - return ''; - } - - if (v.ctor === '::') - { - var output = '[' + toString(v._0); - v = v._1; - while (v.ctor === '::') - { - output += ',' + toString(v._0); - v = v._1; - } - return output + ']'; - } - - if (v.ctor === '[]') - { - return '[]'; - } - - if (v.ctor === 'Set_elm_builtin') - { - return 'Set.fromList ' + toString(_elm_lang$core$Set$toList(v)); - } - - if (v.ctor === 'RBNode_elm_builtin' || v.ctor === 'RBEmpty_elm_builtin') - { - return 'Dict.fromList ' + toString(_elm_lang$core$Dict$toList(v)); - } - - var output = ''; - for (var i in v) - { - if (i === 'ctor') continue; - var str = toString(v[i]); - var c0 = str[0]; - var parenless = c0 === '{' || c0 === '(' || c0 === '<' || c0 === '"' || str.indexOf(' ') < 0; - output += ' ' + (parenless ? str : '(' + str + ')'); - } - return v.ctor + output; - } - - if (type === 'object') - { - if (v instanceof Date) - { - return '<' + v.toString() + '>'; - } - - if (v.elm_web_socket) - { - return ''; - } - - var output = []; - for (var k in v) - { - output.push(k + ' = ' + toString(v[k])); - } - if (output.length === 0) - { - return '{}'; - } - return '{ ' + output.join(', ') + ' }'; - } - - return ''; -} - -function addSlashes(str, isChar) -{ - var s = str.replace(/\\/g, '\\\\') - .replace(/\n/g, '\\n') - .replace(/\t/g, '\\t') - .replace(/\r/g, '\\r') - .replace(/\v/g, '\\v') - .replace(/\0/g, '\\0'); - if (isChar) - { - return s.replace(/\'/g, '\\\''); - } - else - { - return s.replace(/\"/g, '\\"'); - } -} - - -return { - eq: eq, - cmp: cmp, - Tuple0: Tuple0, - Tuple2: Tuple2, - chr: chr, - update: update, - guid: guid, - - append: F2(append), - - crash: crash, - crashCase: crashCase, - - toString: toString -}; - -}(); -var _elm_lang$core$Basics$never = function (_p0) { - never: - while (true) { - var _p1 = _p0; - var _v1 = _p1._0; - _p0 = _v1; - continue never; - } -}; -var _elm_lang$core$Basics$uncurry = F2( - function (f, _p2) { - var _p3 = _p2; - return A2(f, _p3._0, _p3._1); - }); -var _elm_lang$core$Basics$curry = F3( - function (f, a, b) { - return f( - {ctor: '_Tuple2', _0: a, _1: b}); - }); -var _elm_lang$core$Basics$flip = F3( - function (f, b, a) { - return A2(f, a, b); - }); -var _elm_lang$core$Basics$always = F2( - function (a, _p4) { - return a; - }); -var _elm_lang$core$Basics$identity = function (x) { - return x; -}; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['<|'] = F2( - function (f, x) { - return f(x); - }); -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['|>'] = F2( - function (x, f) { - return f(x); - }); -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['>>'] = F3( - function (f, g, x) { - return g( - f(x)); - }); -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['<<'] = F3( - function (g, f, x) { - return g( - f(x)); - }); -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['++'] = _elm_lang$core$Native_Utils.append; -var _elm_lang$core$Basics$toString = _elm_lang$core$Native_Utils.toString; -var _elm_lang$core$Basics$isInfinite = _elm_lang$core$Native_Basics.isInfinite; -var _elm_lang$core$Basics$isNaN = _elm_lang$core$Native_Basics.isNaN; -var _elm_lang$core$Basics$toFloat = _elm_lang$core$Native_Basics.toFloat; -var _elm_lang$core$Basics$ceiling = _elm_lang$core$Native_Basics.ceiling; -var _elm_lang$core$Basics$floor = _elm_lang$core$Native_Basics.floor; -var _elm_lang$core$Basics$truncate = _elm_lang$core$Native_Basics.truncate; -var _elm_lang$core$Basics$round = _elm_lang$core$Native_Basics.round; -var _elm_lang$core$Basics$not = _elm_lang$core$Native_Basics.not; -var _elm_lang$core$Basics$xor = _elm_lang$core$Native_Basics.xor; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['||'] = _elm_lang$core$Native_Basics.or; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['&&'] = _elm_lang$core$Native_Basics.and; -var _elm_lang$core$Basics$max = _elm_lang$core$Native_Basics.max; -var _elm_lang$core$Basics$min = _elm_lang$core$Native_Basics.min; -var _elm_lang$core$Basics$compare = _elm_lang$core$Native_Basics.compare; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['>='] = _elm_lang$core$Native_Basics.ge; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['<='] = _elm_lang$core$Native_Basics.le; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['>'] = _elm_lang$core$Native_Basics.gt; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['<'] = _elm_lang$core$Native_Basics.lt; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['/='] = _elm_lang$core$Native_Basics.neq; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['=='] = _elm_lang$core$Native_Basics.eq; -var _elm_lang$core$Basics$e = _elm_lang$core$Native_Basics.e; -var _elm_lang$core$Basics$pi = _elm_lang$core$Native_Basics.pi; -var _elm_lang$core$Basics$clamp = _elm_lang$core$Native_Basics.clamp; -var _elm_lang$core$Basics$logBase = _elm_lang$core$Native_Basics.logBase; -var _elm_lang$core$Basics$abs = _elm_lang$core$Native_Basics.abs; -var _elm_lang$core$Basics$negate = _elm_lang$core$Native_Basics.negate; -var _elm_lang$core$Basics$sqrt = _elm_lang$core$Native_Basics.sqrt; -var _elm_lang$core$Basics$atan2 = _elm_lang$core$Native_Basics.atan2; -var _elm_lang$core$Basics$atan = _elm_lang$core$Native_Basics.atan; -var _elm_lang$core$Basics$asin = _elm_lang$core$Native_Basics.asin; -var _elm_lang$core$Basics$acos = _elm_lang$core$Native_Basics.acos; -var _elm_lang$core$Basics$tan = _elm_lang$core$Native_Basics.tan; -var _elm_lang$core$Basics$sin = _elm_lang$core$Native_Basics.sin; -var _elm_lang$core$Basics$cos = _elm_lang$core$Native_Basics.cos; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['^'] = _elm_lang$core$Native_Basics.exp; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['%'] = _elm_lang$core$Native_Basics.mod; -var _elm_lang$core$Basics$rem = _elm_lang$core$Native_Basics.rem; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['//'] = _elm_lang$core$Native_Basics.div; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['/'] = _elm_lang$core$Native_Basics.floatDiv; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['*'] = _elm_lang$core$Native_Basics.mul; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['-'] = _elm_lang$core$Native_Basics.sub; -var _elm_lang$core$Basics_ops = _elm_lang$core$Basics_ops || {}; -_elm_lang$core$Basics_ops['+'] = _elm_lang$core$Native_Basics.add; -var _elm_lang$core$Basics$toPolar = _elm_lang$core$Native_Basics.toPolar; -var _elm_lang$core$Basics$fromPolar = _elm_lang$core$Native_Basics.fromPolar; -var _elm_lang$core$Basics$turns = _elm_lang$core$Native_Basics.turns; -var _elm_lang$core$Basics$degrees = _elm_lang$core$Native_Basics.degrees; -var _elm_lang$core$Basics$radians = function (t) { - return t; -}; -var _elm_lang$core$Basics$GT = {ctor: 'GT'}; -var _elm_lang$core$Basics$EQ = {ctor: 'EQ'}; -var _elm_lang$core$Basics$LT = {ctor: 'LT'}; -var _elm_lang$core$Basics$JustOneMore = function (a) { - return {ctor: 'JustOneMore', _0: a}; -}; - -var _elm_lang$core$Maybe$withDefault = F2( - function ($default, maybe) { - var _p0 = maybe; - if (_p0.ctor === 'Just') { - return _p0._0; - } else { - return $default; - } - }); -var _elm_lang$core$Maybe$Nothing = {ctor: 'Nothing'}; -var _elm_lang$core$Maybe$andThen = F2( - function (callback, maybeValue) { - var _p1 = maybeValue; - if (_p1.ctor === 'Just') { - return callback(_p1._0); - } else { - return _elm_lang$core$Maybe$Nothing; - } - }); -var _elm_lang$core$Maybe$Just = function (a) { - return {ctor: 'Just', _0: a}; -}; -var _elm_lang$core$Maybe$map = F2( - function (f, maybe) { - var _p2 = maybe; - if (_p2.ctor === 'Just') { - return _elm_lang$core$Maybe$Just( - f(_p2._0)); - } else { - return _elm_lang$core$Maybe$Nothing; - } - }); -var _elm_lang$core$Maybe$map2 = F3( - function (func, ma, mb) { - var _p3 = {ctor: '_Tuple2', _0: ma, _1: mb}; - if (((_p3.ctor === '_Tuple2') && (_p3._0.ctor === 'Just')) && (_p3._1.ctor === 'Just')) { - return _elm_lang$core$Maybe$Just( - A2(func, _p3._0._0, _p3._1._0)); - } else { - return _elm_lang$core$Maybe$Nothing; - } - }); -var _elm_lang$core$Maybe$map3 = F4( - function (func, ma, mb, mc) { - var _p4 = {ctor: '_Tuple3', _0: ma, _1: mb, _2: mc}; - if ((((_p4.ctor === '_Tuple3') && (_p4._0.ctor === 'Just')) && (_p4._1.ctor === 'Just')) && (_p4._2.ctor === 'Just')) { - return _elm_lang$core$Maybe$Just( - A3(func, _p4._0._0, _p4._1._0, _p4._2._0)); - } else { - return _elm_lang$core$Maybe$Nothing; - } - }); -var _elm_lang$core$Maybe$map4 = F5( - function (func, ma, mb, mc, md) { - var _p5 = {ctor: '_Tuple4', _0: ma, _1: mb, _2: mc, _3: md}; - if (((((_p5.ctor === '_Tuple4') && (_p5._0.ctor === 'Just')) && (_p5._1.ctor === 'Just')) && (_p5._2.ctor === 'Just')) && (_p5._3.ctor === 'Just')) { - return _elm_lang$core$Maybe$Just( - A4(func, _p5._0._0, _p5._1._0, _p5._2._0, _p5._3._0)); - } else { - return _elm_lang$core$Maybe$Nothing; - } - }); -var _elm_lang$core$Maybe$map5 = F6( - function (func, ma, mb, mc, md, me) { - var _p6 = {ctor: '_Tuple5', _0: ma, _1: mb, _2: mc, _3: md, _4: me}; - if ((((((_p6.ctor === '_Tuple5') && (_p6._0.ctor === 'Just')) && (_p6._1.ctor === 'Just')) && (_p6._2.ctor === 'Just')) && (_p6._3.ctor === 'Just')) && (_p6._4.ctor === 'Just')) { - return _elm_lang$core$Maybe$Just( - A5(func, _p6._0._0, _p6._1._0, _p6._2._0, _p6._3._0, _p6._4._0)); - } else { - return _elm_lang$core$Maybe$Nothing; - } - }); - -//import Native.Utils // - -var _elm_lang$core$Native_List = function() { - -var Nil = { ctor: '[]' }; - -function Cons(hd, tl) -{ - return { ctor: '::', _0: hd, _1: tl }; -} - -function fromArray(arr) -{ - var out = Nil; - for (var i = arr.length; i--; ) - { - out = Cons(arr[i], out); - } - return out; -} - -function toArray(xs) -{ - var out = []; - while (xs.ctor !== '[]') - { - out.push(xs._0); - xs = xs._1; - } - return out; -} - -function foldr(f, b, xs) -{ - var arr = toArray(xs); - var acc = b; - for (var i = arr.length; i--; ) - { - acc = A2(f, arr[i], acc); - } - return acc; -} - -function map2(f, xs, ys) -{ - var arr = []; - while (xs.ctor !== '[]' && ys.ctor !== '[]') - { - arr.push(A2(f, xs._0, ys._0)); - xs = xs._1; - ys = ys._1; - } - return fromArray(arr); -} - -function map3(f, xs, ys, zs) -{ - var arr = []; - while (xs.ctor !== '[]' && ys.ctor !== '[]' && zs.ctor !== '[]') - { - arr.push(A3(f, xs._0, ys._0, zs._0)); - xs = xs._1; - ys = ys._1; - zs = zs._1; - } - return fromArray(arr); -} - -function map4(f, ws, xs, ys, zs) -{ - var arr = []; - while ( ws.ctor !== '[]' - && xs.ctor !== '[]' - && ys.ctor !== '[]' - && zs.ctor !== '[]') - { - arr.push(A4(f, ws._0, xs._0, ys._0, zs._0)); - ws = ws._1; - xs = xs._1; - ys = ys._1; - zs = zs._1; - } - return fromArray(arr); -} - -function map5(f, vs, ws, xs, ys, zs) -{ - var arr = []; - while ( vs.ctor !== '[]' - && ws.ctor !== '[]' - && xs.ctor !== '[]' - && ys.ctor !== '[]' - && zs.ctor !== '[]') - { - arr.push(A5(f, vs._0, ws._0, xs._0, ys._0, zs._0)); - vs = vs._1; - ws = ws._1; - xs = xs._1; - ys = ys._1; - zs = zs._1; - } - return fromArray(arr); -} - -function sortBy(f, xs) -{ - return fromArray(toArray(xs).sort(function(a, b) { - return _elm_lang$core$Native_Utils.cmp(f(a), f(b)); - })); -} - -function sortWith(f, xs) -{ - return fromArray(toArray(xs).sort(function(a, b) { - var ord = f(a)(b).ctor; - return ord === 'EQ' ? 0 : ord === 'LT' ? -1 : 1; - })); -} - -return { - Nil: Nil, - Cons: Cons, - cons: F2(Cons), - toArray: toArray, - fromArray: fromArray, - - foldr: F3(foldr), - - map2: F3(map2), - map3: F4(map3), - map4: F5(map4), - map5: F6(map5), - sortBy: F2(sortBy), - sortWith: F2(sortWith) -}; - -}(); -var _elm_lang$core$List$sortWith = _elm_lang$core$Native_List.sortWith; -var _elm_lang$core$List$sortBy = _elm_lang$core$Native_List.sortBy; -var _elm_lang$core$List$sort = function (xs) { - return A2(_elm_lang$core$List$sortBy, _elm_lang$core$Basics$identity, xs); -}; -var _elm_lang$core$List$singleton = function (value) { - return { - ctor: '::', - _0: value, - _1: {ctor: '[]'} - }; -}; -var _elm_lang$core$List$drop = F2( - function (n, list) { - drop: - while (true) { - if (_elm_lang$core$Native_Utils.cmp(n, 0) < 1) { - return list; - } else { - var _p0 = list; - if (_p0.ctor === '[]') { - return list; - } else { - var _v1 = n - 1, - _v2 = _p0._1; - n = _v1; - list = _v2; - continue drop; - } - } - } - }); -var _elm_lang$core$List$map5 = _elm_lang$core$Native_List.map5; -var _elm_lang$core$List$map4 = _elm_lang$core$Native_List.map4; -var _elm_lang$core$List$map3 = _elm_lang$core$Native_List.map3; -var _elm_lang$core$List$map2 = _elm_lang$core$Native_List.map2; -var _elm_lang$core$List$any = F2( - function (isOkay, list) { - any: - while (true) { - var _p1 = list; - if (_p1.ctor === '[]') { - return false; - } else { - if (isOkay(_p1._0)) { - return true; - } else { - var _v4 = isOkay, - _v5 = _p1._1; - isOkay = _v4; - list = _v5; - continue any; - } - } - } - }); -var _elm_lang$core$List$all = F2( - function (isOkay, list) { - return !A2( - _elm_lang$core$List$any, - function (_p2) { - return !isOkay(_p2); - }, - list); - }); -var _elm_lang$core$List$foldr = _elm_lang$core$Native_List.foldr; -var _elm_lang$core$List$foldl = F3( - function (func, acc, list) { - foldl: - while (true) { - var _p3 = list; - if (_p3.ctor === '[]') { - return acc; - } else { - var _v7 = func, - _v8 = A2(func, _p3._0, acc), - _v9 = _p3._1; - func = _v7; - acc = _v8; - list = _v9; - continue foldl; - } - } - }); -var _elm_lang$core$List$length = function (xs) { - return A3( - _elm_lang$core$List$foldl, - F2( - function (_p4, i) { - return i + 1; - }), - 0, - xs); -}; -var _elm_lang$core$List$sum = function (numbers) { - return A3( - _elm_lang$core$List$foldl, - F2( - function (x, y) { - return x + y; - }), - 0, - numbers); -}; -var _elm_lang$core$List$product = function (numbers) { - return A3( - _elm_lang$core$List$foldl, - F2( - function (x, y) { - return x * y; - }), - 1, - numbers); -}; -var _elm_lang$core$List$maximum = function (list) { - var _p5 = list; - if (_p5.ctor === '::') { - return _elm_lang$core$Maybe$Just( - A3(_elm_lang$core$List$foldl, _elm_lang$core$Basics$max, _p5._0, _p5._1)); - } else { - return _elm_lang$core$Maybe$Nothing; - } -}; -var _elm_lang$core$List$minimum = function (list) { - var _p6 = list; - if (_p6.ctor === '::') { - return _elm_lang$core$Maybe$Just( - A3(_elm_lang$core$List$foldl, _elm_lang$core$Basics$min, _p6._0, _p6._1)); - } else { - return _elm_lang$core$Maybe$Nothing; - } -}; -var _elm_lang$core$List$member = F2( - function (x, xs) { - return A2( - _elm_lang$core$List$any, - function (a) { - return _elm_lang$core$Native_Utils.eq(a, x); - }, - xs); - }); -var _elm_lang$core$List$isEmpty = function (xs) { - var _p7 = xs; - if (_p7.ctor === '[]') { - return true; - } else { - return false; - } -}; -var _elm_lang$core$List$tail = function (list) { - var _p8 = list; - if (_p8.ctor === '::') { - return _elm_lang$core$Maybe$Just(_p8._1); - } else { - return _elm_lang$core$Maybe$Nothing; - } -}; -var _elm_lang$core$List$head = function (list) { - var _p9 = list; - if (_p9.ctor === '::') { - return _elm_lang$core$Maybe$Just(_p9._0); - } else { - return _elm_lang$core$Maybe$Nothing; - } -}; -var _elm_lang$core$List_ops = _elm_lang$core$List_ops || {}; -_elm_lang$core$List_ops['::'] = _elm_lang$core$Native_List.cons; -var _elm_lang$core$List$map = F2( - function (f, xs) { - return A3( - _elm_lang$core$List$foldr, - F2( - function (x, acc) { - return { - ctor: '::', - _0: f(x), - _1: acc - }; - }), - {ctor: '[]'}, - xs); - }); -var _elm_lang$core$List$filter = F2( - function (pred, xs) { - var conditionalCons = F2( - function (front, back) { - return pred(front) ? {ctor: '::', _0: front, _1: back} : back; - }); - return A3( - _elm_lang$core$List$foldr, - conditionalCons, - {ctor: '[]'}, - xs); - }); -var _elm_lang$core$List$maybeCons = F3( - function (f, mx, xs) { - var _p10 = f(mx); - if (_p10.ctor === 'Just') { - return {ctor: '::', _0: _p10._0, _1: xs}; - } else { - return xs; - } - }); -var _elm_lang$core$List$filterMap = F2( - function (f, xs) { - return A3( - _elm_lang$core$List$foldr, - _elm_lang$core$List$maybeCons(f), - {ctor: '[]'}, - xs); - }); -var _elm_lang$core$List$reverse = function (list) { - return A3( - _elm_lang$core$List$foldl, - F2( - function (x, y) { - return {ctor: '::', _0: x, _1: y}; - }), - {ctor: '[]'}, - list); -}; -var _elm_lang$core$List$scanl = F3( - function (f, b, xs) { - var scan1 = F2( - function (x, accAcc) { - var _p11 = accAcc; - if (_p11.ctor === '::') { - return { - ctor: '::', - _0: A2(f, x, _p11._0), - _1: accAcc - }; - } else { - return {ctor: '[]'}; - } - }); - return _elm_lang$core$List$reverse( - A3( - _elm_lang$core$List$foldl, - scan1, - { - ctor: '::', - _0: b, - _1: {ctor: '[]'} - }, - xs)); - }); -var _elm_lang$core$List$append = F2( - function (xs, ys) { - var _p12 = ys; - if (_p12.ctor === '[]') { - return xs; - } else { - return A3( - _elm_lang$core$List$foldr, - F2( - function (x, y) { - return {ctor: '::', _0: x, _1: y}; - }), - ys, - xs); - } - }); -var _elm_lang$core$List$concat = function (lists) { - return A3( - _elm_lang$core$List$foldr, - _elm_lang$core$List$append, - {ctor: '[]'}, - lists); -}; -var _elm_lang$core$List$concatMap = F2( - function (f, list) { - return _elm_lang$core$List$concat( - A2(_elm_lang$core$List$map, f, list)); - }); -var _elm_lang$core$List$partition = F2( - function (pred, list) { - var step = F2( - function (x, _p13) { - var _p14 = _p13; - var _p16 = _p14._0; - var _p15 = _p14._1; - return pred(x) ? { - ctor: '_Tuple2', - _0: {ctor: '::', _0: x, _1: _p16}, - _1: _p15 - } : { - ctor: '_Tuple2', - _0: _p16, - _1: {ctor: '::', _0: x, _1: _p15} - }; - }); - return A3( - _elm_lang$core$List$foldr, - step, - { - ctor: '_Tuple2', - _0: {ctor: '[]'}, - _1: {ctor: '[]'} - }, - list); - }); -var _elm_lang$core$List$unzip = function (pairs) { - var step = F2( - function (_p18, _p17) { - var _p19 = _p18; - var _p20 = _p17; - return { - ctor: '_Tuple2', - _0: {ctor: '::', _0: _p19._0, _1: _p20._0}, - _1: {ctor: '::', _0: _p19._1, _1: _p20._1} - }; - }); - return A3( - _elm_lang$core$List$foldr, - step, - { - ctor: '_Tuple2', - _0: {ctor: '[]'}, - _1: {ctor: '[]'} - }, - pairs); -}; -var _elm_lang$core$List$intersperse = F2( - function (sep, xs) { - var _p21 = xs; - if (_p21.ctor === '[]') { - return {ctor: '[]'}; - } else { - var step = F2( - function (x, rest) { - return { - ctor: '::', - _0: sep, - _1: {ctor: '::', _0: x, _1: rest} - }; - }); - var spersed = A3( - _elm_lang$core$List$foldr, - step, - {ctor: '[]'}, - _p21._1); - return {ctor: '::', _0: _p21._0, _1: spersed}; - } - }); -var _elm_lang$core$List$takeReverse = F3( - function (n, list, taken) { - takeReverse: - while (true) { - if (_elm_lang$core$Native_Utils.cmp(n, 0) < 1) { - return taken; - } else { - var _p22 = list; - if (_p22.ctor === '[]') { - return taken; - } else { - var _v23 = n - 1, - _v24 = _p22._1, - _v25 = {ctor: '::', _0: _p22._0, _1: taken}; - n = _v23; - list = _v24; - taken = _v25; - continue takeReverse; - } - } - } - }); -var _elm_lang$core$List$takeTailRec = F2( - function (n, list) { - return _elm_lang$core$List$reverse( - A3( - _elm_lang$core$List$takeReverse, - n, - list, - {ctor: '[]'})); - }); -var _elm_lang$core$List$takeFast = F3( - function (ctr, n, list) { - if (_elm_lang$core$Native_Utils.cmp(n, 0) < 1) { - return {ctor: '[]'}; - } else { - var _p23 = {ctor: '_Tuple2', _0: n, _1: list}; - _v26_5: - do { - _v26_1: - do { - if (_p23.ctor === '_Tuple2') { - if (_p23._1.ctor === '[]') { - return list; - } else { - if (_p23._1._1.ctor === '::') { - switch (_p23._0) { - case 1: - break _v26_1; - case 2: - return { - ctor: '::', - _0: _p23._1._0, - _1: { - ctor: '::', - _0: _p23._1._1._0, - _1: {ctor: '[]'} - } - }; - case 3: - if (_p23._1._1._1.ctor === '::') { - return { - ctor: '::', - _0: _p23._1._0, - _1: { - ctor: '::', - _0: _p23._1._1._0, - _1: { - ctor: '::', - _0: _p23._1._1._1._0, - _1: {ctor: '[]'} - } - } - }; - } else { - break _v26_5; - } - default: - if ((_p23._1._1._1.ctor === '::') && (_p23._1._1._1._1.ctor === '::')) { - var _p28 = _p23._1._1._1._0; - var _p27 = _p23._1._1._0; - var _p26 = _p23._1._0; - var _p25 = _p23._1._1._1._1._0; - var _p24 = _p23._1._1._1._1._1; - return (_elm_lang$core$Native_Utils.cmp(ctr, 1000) > 0) ? { - ctor: '::', - _0: _p26, - _1: { - ctor: '::', - _0: _p27, - _1: { - ctor: '::', - _0: _p28, - _1: { - ctor: '::', - _0: _p25, - _1: A2(_elm_lang$core$List$takeTailRec, n - 4, _p24) - } - } - } - } : { - ctor: '::', - _0: _p26, - _1: { - ctor: '::', - _0: _p27, - _1: { - ctor: '::', - _0: _p28, - _1: { - ctor: '::', - _0: _p25, - _1: A3(_elm_lang$core$List$takeFast, ctr + 1, n - 4, _p24) - } - } - } - }; - } else { - break _v26_5; - } - } - } else { - if (_p23._0 === 1) { - break _v26_1; - } else { - break _v26_5; - } - } - } - } else { - break _v26_5; - } - } while(false); - return { - ctor: '::', - _0: _p23._1._0, - _1: {ctor: '[]'} - }; - } while(false); - return list; - } - }); -var _elm_lang$core$List$take = F2( - function (n, list) { - return A3(_elm_lang$core$List$takeFast, 0, n, list); - }); -var _elm_lang$core$List$repeatHelp = F3( - function (result, n, value) { - repeatHelp: - while (true) { - if (_elm_lang$core$Native_Utils.cmp(n, 0) < 1) { - return result; - } else { - var _v27 = {ctor: '::', _0: value, _1: result}, - _v28 = n - 1, - _v29 = value; - result = _v27; - n = _v28; - value = _v29; - continue repeatHelp; - } - } - }); -var _elm_lang$core$List$repeat = F2( - function (n, value) { - return A3( - _elm_lang$core$List$repeatHelp, - {ctor: '[]'}, - n, - value); - }); -var _elm_lang$core$List$rangeHelp = F3( - function (lo, hi, list) { - rangeHelp: - while (true) { - if (_elm_lang$core$Native_Utils.cmp(lo, hi) < 1) { - var _v30 = lo, - _v31 = hi - 1, - _v32 = {ctor: '::', _0: hi, _1: list}; - lo = _v30; - hi = _v31; - list = _v32; - continue rangeHelp; - } else { - return list; - } - } - }); -var _elm_lang$core$List$range = F2( - function (lo, hi) { - return A3( - _elm_lang$core$List$rangeHelp, - lo, - hi, - {ctor: '[]'}); - }); -var _elm_lang$core$List$indexedMap = F2( - function (f, xs) { - return A3( - _elm_lang$core$List$map2, - f, - A2( - _elm_lang$core$List$range, - 0, - _elm_lang$core$List$length(xs) - 1), - xs); - }); - -var _elm_lang$core$Array$append = _elm_lang$core$Native_Array.append; -var _elm_lang$core$Array$length = _elm_lang$core$Native_Array.length; -var _elm_lang$core$Array$isEmpty = function (array) { - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Array$length(array), - 0); -}; -var _elm_lang$core$Array$slice = _elm_lang$core$Native_Array.slice; -var _elm_lang$core$Array$set = _elm_lang$core$Native_Array.set; -var _elm_lang$core$Array$get = F2( - function (i, array) { - return ((_elm_lang$core$Native_Utils.cmp(0, i) < 1) && (_elm_lang$core$Native_Utils.cmp( - i, - _elm_lang$core$Native_Array.length(array)) < 0)) ? _elm_lang$core$Maybe$Just( - A2(_elm_lang$core$Native_Array.get, i, array)) : _elm_lang$core$Maybe$Nothing; - }); -var _elm_lang$core$Array$push = _elm_lang$core$Native_Array.push; -var _elm_lang$core$Array$empty = _elm_lang$core$Native_Array.empty; -var _elm_lang$core$Array$filter = F2( - function (isOkay, arr) { - var update = F2( - function (x, xs) { - return isOkay(x) ? A2(_elm_lang$core$Native_Array.push, x, xs) : xs; - }); - return A3(_elm_lang$core$Native_Array.foldl, update, _elm_lang$core$Native_Array.empty, arr); - }); -var _elm_lang$core$Array$foldr = _elm_lang$core$Native_Array.foldr; -var _elm_lang$core$Array$foldl = _elm_lang$core$Native_Array.foldl; -var _elm_lang$core$Array$indexedMap = _elm_lang$core$Native_Array.indexedMap; -var _elm_lang$core$Array$map = _elm_lang$core$Native_Array.map; -var _elm_lang$core$Array$toIndexedList = function (array) { - return A3( - _elm_lang$core$List$map2, - F2( - function (v0, v1) { - return {ctor: '_Tuple2', _0: v0, _1: v1}; - }), - A2( - _elm_lang$core$List$range, - 0, - _elm_lang$core$Native_Array.length(array) - 1), - _elm_lang$core$Native_Array.toList(array)); -}; -var _elm_lang$core$Array$toList = _elm_lang$core$Native_Array.toList; -var _elm_lang$core$Array$fromList = _elm_lang$core$Native_Array.fromList; -var _elm_lang$core$Array$initialize = _elm_lang$core$Native_Array.initialize; -var _elm_lang$core$Array$repeat = F2( - function (n, e) { - return A2( - _elm_lang$core$Array$initialize, - n, - _elm_lang$core$Basics$always(e)); - }); -var _elm_lang$core$Array$Array = {ctor: 'Array'}; - -//import Native.Utils // - -var _elm_lang$core$Native_Debug = function() { - -function log(tag, value) -{ - var msg = tag + ': ' + _elm_lang$core$Native_Utils.toString(value); - var process = process || {}; - if (process.stdout) - { - process.stdout.write(msg); - } - else - { - console.log(msg); - } - return value; -} - -function crash(message) -{ - throw new Error(message); -} - -return { - crash: crash, - log: F2(log) -}; - -}(); -//import Maybe, Native.List, Native.Utils, Result // - -var _elm_lang$core$Native_String = function() { - -function isEmpty(str) -{ - return str.length === 0; -} -function cons(chr, str) -{ - return chr + str; -} -function uncons(str) -{ - var hd = str[0]; - if (hd) - { - return _elm_lang$core$Maybe$Just(_elm_lang$core$Native_Utils.Tuple2(_elm_lang$core$Native_Utils.chr(hd), str.slice(1))); - } - return _elm_lang$core$Maybe$Nothing; -} -function append(a, b) -{ - return a + b; -} -function concat(strs) -{ - return _elm_lang$core$Native_List.toArray(strs).join(''); -} -function length(str) -{ - return str.length; -} -function map(f, str) -{ - var out = str.split(''); - for (var i = out.length; i--; ) - { - out[i] = f(_elm_lang$core$Native_Utils.chr(out[i])); - } - return out.join(''); -} -function filter(pred, str) -{ - return str.split('').map(_elm_lang$core$Native_Utils.chr).filter(pred).join(''); -} -function reverse(str) -{ - return str.split('').reverse().join(''); -} -function foldl(f, b, str) -{ - var len = str.length; - for (var i = 0; i < len; ++i) - { - b = A2(f, _elm_lang$core$Native_Utils.chr(str[i]), b); - } - return b; -} -function foldr(f, b, str) -{ - for (var i = str.length; i--; ) - { - b = A2(f, _elm_lang$core$Native_Utils.chr(str[i]), b); - } - return b; -} -function split(sep, str) -{ - return _elm_lang$core$Native_List.fromArray(str.split(sep)); -} -function join(sep, strs) -{ - return _elm_lang$core$Native_List.toArray(strs).join(sep); -} -function repeat(n, str) -{ - var result = ''; - while (n > 0) - { - if (n & 1) - { - result += str; - } - n >>= 1, str += str; - } - return result; -} -function slice(start, end, str) -{ - return str.slice(start, end); -} -function left(n, str) -{ - return n < 1 ? '' : str.slice(0, n); -} -function right(n, str) -{ - return n < 1 ? '' : str.slice(-n); -} -function dropLeft(n, str) -{ - return n < 1 ? str : str.slice(n); -} -function dropRight(n, str) -{ - return n < 1 ? str : str.slice(0, -n); -} -function pad(n, chr, str) -{ - var half = (n - str.length) / 2; - return repeat(Math.ceil(half), chr) + str + repeat(half | 0, chr); -} -function padRight(n, chr, str) -{ - return str + repeat(n - str.length, chr); -} -function padLeft(n, chr, str) -{ - return repeat(n - str.length, chr) + str; -} - -function trim(str) -{ - return str.trim(); -} -function trimLeft(str) -{ - return str.replace(/^\s+/, ''); -} -function trimRight(str) -{ - return str.replace(/\s+$/, ''); -} - -function words(str) -{ - return _elm_lang$core$Native_List.fromArray(str.trim().split(/\s+/g)); -} -function lines(str) -{ - return _elm_lang$core$Native_List.fromArray(str.split(/\r\n|\r|\n/g)); -} - -function toUpper(str) -{ - return str.toUpperCase(); -} -function toLower(str) -{ - return str.toLowerCase(); -} - -function any(pred, str) -{ - for (var i = str.length; i--; ) - { - if (pred(_elm_lang$core$Native_Utils.chr(str[i]))) - { - return true; - } - } - return false; -} -function all(pred, str) -{ - for (var i = str.length; i--; ) - { - if (!pred(_elm_lang$core$Native_Utils.chr(str[i]))) - { - return false; - } - } - return true; -} - -function contains(sub, str) -{ - return str.indexOf(sub) > -1; -} -function startsWith(sub, str) -{ - return str.indexOf(sub) === 0; -} -function endsWith(sub, str) -{ - return str.length >= sub.length && - str.lastIndexOf(sub) === str.length - sub.length; -} -function indexes(sub, str) -{ - var subLen = sub.length; - - if (subLen < 1) - { - return _elm_lang$core$Native_List.Nil; - } - - var i = 0; - var is = []; - - while ((i = str.indexOf(sub, i)) > -1) - { - is.push(i); - i = i + subLen; - } - - return _elm_lang$core$Native_List.fromArray(is); -} - - -function toInt(s) -{ - var len = s.length; - - // if empty - if (len === 0) - { - return intErr(s); - } - - // if hex - var c = s[0]; - if (c === '0' && s[1] === 'x') - { - for (var i = 2; i < len; ++i) - { - var c = s[i]; - if (('0' <= c && c <= '9') || ('A' <= c && c <= 'F') || ('a' <= c && c <= 'f')) - { - continue; - } - return intErr(s); - } - return _elm_lang$core$Result$Ok(parseInt(s, 16)); - } - - // is decimal - if (c > '9' || (c < '0' && c !== '-' && c !== '+')) - { - return intErr(s); - } - for (var i = 1; i < len; ++i) - { - var c = s[i]; - if (c < '0' || '9' < c) - { - return intErr(s); - } - } - - return _elm_lang$core$Result$Ok(parseInt(s, 10)); -} - -function intErr(s) -{ - return _elm_lang$core$Result$Err("could not convert string '" + s + "' to an Int"); -} - - -function toFloat(s) -{ - // check if it is a hex, octal, or binary number - if (s.length === 0 || /[\sxbo]/.test(s)) - { - return floatErr(s); - } - var n = +s; - // faster isNaN check - return n === n ? _elm_lang$core$Result$Ok(n) : floatErr(s); -} - -function floatErr(s) -{ - return _elm_lang$core$Result$Err("could not convert string '" + s + "' to a Float"); -} - - -function toList(str) -{ - return _elm_lang$core$Native_List.fromArray(str.split('').map(_elm_lang$core$Native_Utils.chr)); -} -function fromList(chars) -{ - return _elm_lang$core$Native_List.toArray(chars).join(''); -} - -return { - isEmpty: isEmpty, - cons: F2(cons), - uncons: uncons, - append: F2(append), - concat: concat, - length: length, - map: F2(map), - filter: F2(filter), - reverse: reverse, - foldl: F3(foldl), - foldr: F3(foldr), - - split: F2(split), - join: F2(join), - repeat: F2(repeat), - - slice: F3(slice), - left: F2(left), - right: F2(right), - dropLeft: F2(dropLeft), - dropRight: F2(dropRight), - - pad: F3(pad), - padLeft: F3(padLeft), - padRight: F3(padRight), - - trim: trim, - trimLeft: trimLeft, - trimRight: trimRight, - - words: words, - lines: lines, - - toUpper: toUpper, - toLower: toLower, - - any: F2(any), - all: F2(all), - - contains: F2(contains), - startsWith: F2(startsWith), - endsWith: F2(endsWith), - indexes: F2(indexes), - - toInt: toInt, - toFloat: toFloat, - toList: toList, - fromList: fromList -}; - -}(); - -//import Native.Utils // - -var _elm_lang$core$Native_Char = function() { - -return { - fromCode: function(c) { return _elm_lang$core$Native_Utils.chr(String.fromCharCode(c)); }, - toCode: function(c) { return c.charCodeAt(0); }, - toUpper: function(c) { return _elm_lang$core$Native_Utils.chr(c.toUpperCase()); }, - toLower: function(c) { return _elm_lang$core$Native_Utils.chr(c.toLowerCase()); }, - toLocaleUpper: function(c) { return _elm_lang$core$Native_Utils.chr(c.toLocaleUpperCase()); }, - toLocaleLower: function(c) { return _elm_lang$core$Native_Utils.chr(c.toLocaleLowerCase()); } -}; - -}(); -var _elm_lang$core$Char$fromCode = _elm_lang$core$Native_Char.fromCode; -var _elm_lang$core$Char$toCode = _elm_lang$core$Native_Char.toCode; -var _elm_lang$core$Char$toLocaleLower = _elm_lang$core$Native_Char.toLocaleLower; -var _elm_lang$core$Char$toLocaleUpper = _elm_lang$core$Native_Char.toLocaleUpper; -var _elm_lang$core$Char$toLower = _elm_lang$core$Native_Char.toLower; -var _elm_lang$core$Char$toUpper = _elm_lang$core$Native_Char.toUpper; -var _elm_lang$core$Char$isBetween = F3( - function (low, high, $char) { - var code = _elm_lang$core$Char$toCode($char); - return (_elm_lang$core$Native_Utils.cmp( - code, - _elm_lang$core$Char$toCode(low)) > -1) && (_elm_lang$core$Native_Utils.cmp( - code, - _elm_lang$core$Char$toCode(high)) < 1); - }); -var _elm_lang$core$Char$isUpper = A2( - _elm_lang$core$Char$isBetween, - _elm_lang$core$Native_Utils.chr('A'), - _elm_lang$core$Native_Utils.chr('Z')); -var _elm_lang$core$Char$isLower = A2( - _elm_lang$core$Char$isBetween, - _elm_lang$core$Native_Utils.chr('a'), - _elm_lang$core$Native_Utils.chr('z')); -var _elm_lang$core$Char$isDigit = A2( - _elm_lang$core$Char$isBetween, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Native_Utils.chr('9')); -var _elm_lang$core$Char$isOctDigit = A2( - _elm_lang$core$Char$isBetween, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Native_Utils.chr('7')); -var _elm_lang$core$Char$isHexDigit = function ($char) { - return _elm_lang$core$Char$isDigit($char) || (A3( - _elm_lang$core$Char$isBetween, - _elm_lang$core$Native_Utils.chr('a'), - _elm_lang$core$Native_Utils.chr('f'), - $char) || A3( - _elm_lang$core$Char$isBetween, - _elm_lang$core$Native_Utils.chr('A'), - _elm_lang$core$Native_Utils.chr('F'), - $char)); -}; - -var _elm_lang$core$Result$toMaybe = function (result) { - var _p0 = result; - if (_p0.ctor === 'Ok') { - return _elm_lang$core$Maybe$Just(_p0._0); - } else { - return _elm_lang$core$Maybe$Nothing; - } -}; -var _elm_lang$core$Result$withDefault = F2( - function (def, result) { - var _p1 = result; - if (_p1.ctor === 'Ok') { - return _p1._0; - } else { - return def; - } - }); -var _elm_lang$core$Result$Err = function (a) { - return {ctor: 'Err', _0: a}; -}; -var _elm_lang$core$Result$andThen = F2( - function (callback, result) { - var _p2 = result; - if (_p2.ctor === 'Ok') { - return callback(_p2._0); - } else { - return _elm_lang$core$Result$Err(_p2._0); - } - }); -var _elm_lang$core$Result$Ok = function (a) { - return {ctor: 'Ok', _0: a}; -}; -var _elm_lang$core$Result$map = F2( - function (func, ra) { - var _p3 = ra; - if (_p3.ctor === 'Ok') { - return _elm_lang$core$Result$Ok( - func(_p3._0)); - } else { - return _elm_lang$core$Result$Err(_p3._0); - } - }); -var _elm_lang$core$Result$map2 = F3( - function (func, ra, rb) { - var _p4 = {ctor: '_Tuple2', _0: ra, _1: rb}; - if (_p4._0.ctor === 'Ok') { - if (_p4._1.ctor === 'Ok') { - return _elm_lang$core$Result$Ok( - A2(func, _p4._0._0, _p4._1._0)); - } else { - return _elm_lang$core$Result$Err(_p4._1._0); - } - } else { - return _elm_lang$core$Result$Err(_p4._0._0); - } - }); -var _elm_lang$core$Result$map3 = F4( - function (func, ra, rb, rc) { - var _p5 = {ctor: '_Tuple3', _0: ra, _1: rb, _2: rc}; - if (_p5._0.ctor === 'Ok') { - if (_p5._1.ctor === 'Ok') { - if (_p5._2.ctor === 'Ok') { - return _elm_lang$core$Result$Ok( - A3(func, _p5._0._0, _p5._1._0, _p5._2._0)); - } else { - return _elm_lang$core$Result$Err(_p5._2._0); - } - } else { - return _elm_lang$core$Result$Err(_p5._1._0); - } - } else { - return _elm_lang$core$Result$Err(_p5._0._0); - } - }); -var _elm_lang$core$Result$map4 = F5( - function (func, ra, rb, rc, rd) { - var _p6 = {ctor: '_Tuple4', _0: ra, _1: rb, _2: rc, _3: rd}; - if (_p6._0.ctor === 'Ok') { - if (_p6._1.ctor === 'Ok') { - if (_p6._2.ctor === 'Ok') { - if (_p6._3.ctor === 'Ok') { - return _elm_lang$core$Result$Ok( - A4(func, _p6._0._0, _p6._1._0, _p6._2._0, _p6._3._0)); - } else { - return _elm_lang$core$Result$Err(_p6._3._0); - } - } else { - return _elm_lang$core$Result$Err(_p6._2._0); - } - } else { - return _elm_lang$core$Result$Err(_p6._1._0); - } - } else { - return _elm_lang$core$Result$Err(_p6._0._0); - } - }); -var _elm_lang$core$Result$map5 = F6( - function (func, ra, rb, rc, rd, re) { - var _p7 = {ctor: '_Tuple5', _0: ra, _1: rb, _2: rc, _3: rd, _4: re}; - if (_p7._0.ctor === 'Ok') { - if (_p7._1.ctor === 'Ok') { - if (_p7._2.ctor === 'Ok') { - if (_p7._3.ctor === 'Ok') { - if (_p7._4.ctor === 'Ok') { - return _elm_lang$core$Result$Ok( - A5(func, _p7._0._0, _p7._1._0, _p7._2._0, _p7._3._0, _p7._4._0)); - } else { - return _elm_lang$core$Result$Err(_p7._4._0); - } - } else { - return _elm_lang$core$Result$Err(_p7._3._0); - } - } else { - return _elm_lang$core$Result$Err(_p7._2._0); - } - } else { - return _elm_lang$core$Result$Err(_p7._1._0); - } - } else { - return _elm_lang$core$Result$Err(_p7._0._0); - } - }); -var _elm_lang$core$Result$mapError = F2( - function (f, result) { - var _p8 = result; - if (_p8.ctor === 'Ok') { - return _elm_lang$core$Result$Ok(_p8._0); - } else { - return _elm_lang$core$Result$Err( - f(_p8._0)); - } - }); -var _elm_lang$core$Result$fromMaybe = F2( - function (err, maybe) { - var _p9 = maybe; - if (_p9.ctor === 'Just') { - return _elm_lang$core$Result$Ok(_p9._0); - } else { - return _elm_lang$core$Result$Err(err); - } - }); - -var _elm_lang$core$String$fromList = _elm_lang$core$Native_String.fromList; -var _elm_lang$core$String$toList = _elm_lang$core$Native_String.toList; -var _elm_lang$core$String$toFloat = _elm_lang$core$Native_String.toFloat; -var _elm_lang$core$String$toInt = _elm_lang$core$Native_String.toInt; -var _elm_lang$core$String$indices = _elm_lang$core$Native_String.indexes; -var _elm_lang$core$String$indexes = _elm_lang$core$Native_String.indexes; -var _elm_lang$core$String$endsWith = _elm_lang$core$Native_String.endsWith; -var _elm_lang$core$String$startsWith = _elm_lang$core$Native_String.startsWith; -var _elm_lang$core$String$contains = _elm_lang$core$Native_String.contains; -var _elm_lang$core$String$all = _elm_lang$core$Native_String.all; -var _elm_lang$core$String$any = _elm_lang$core$Native_String.any; -var _elm_lang$core$String$toLower = _elm_lang$core$Native_String.toLower; -var _elm_lang$core$String$toUpper = _elm_lang$core$Native_String.toUpper; -var _elm_lang$core$String$lines = _elm_lang$core$Native_String.lines; -var _elm_lang$core$String$words = _elm_lang$core$Native_String.words; -var _elm_lang$core$String$trimRight = _elm_lang$core$Native_String.trimRight; -var _elm_lang$core$String$trimLeft = _elm_lang$core$Native_String.trimLeft; -var _elm_lang$core$String$trim = _elm_lang$core$Native_String.trim; -var _elm_lang$core$String$padRight = _elm_lang$core$Native_String.padRight; -var _elm_lang$core$String$padLeft = _elm_lang$core$Native_String.padLeft; -var _elm_lang$core$String$pad = _elm_lang$core$Native_String.pad; -var _elm_lang$core$String$dropRight = _elm_lang$core$Native_String.dropRight; -var _elm_lang$core$String$dropLeft = _elm_lang$core$Native_String.dropLeft; -var _elm_lang$core$String$right = _elm_lang$core$Native_String.right; -var _elm_lang$core$String$left = _elm_lang$core$Native_String.left; -var _elm_lang$core$String$slice = _elm_lang$core$Native_String.slice; -var _elm_lang$core$String$repeat = _elm_lang$core$Native_String.repeat; -var _elm_lang$core$String$join = _elm_lang$core$Native_String.join; -var _elm_lang$core$String$split = _elm_lang$core$Native_String.split; -var _elm_lang$core$String$foldr = _elm_lang$core$Native_String.foldr; -var _elm_lang$core$String$foldl = _elm_lang$core$Native_String.foldl; -var _elm_lang$core$String$reverse = _elm_lang$core$Native_String.reverse; -var _elm_lang$core$String$filter = _elm_lang$core$Native_String.filter; -var _elm_lang$core$String$map = _elm_lang$core$Native_String.map; -var _elm_lang$core$String$length = _elm_lang$core$Native_String.length; -var _elm_lang$core$String$concat = _elm_lang$core$Native_String.concat; -var _elm_lang$core$String$append = _elm_lang$core$Native_String.append; -var _elm_lang$core$String$uncons = _elm_lang$core$Native_String.uncons; -var _elm_lang$core$String$cons = _elm_lang$core$Native_String.cons; -var _elm_lang$core$String$fromChar = function ($char) { - return A2(_elm_lang$core$String$cons, $char, ''); -}; -var _elm_lang$core$String$isEmpty = _elm_lang$core$Native_String.isEmpty; - -var _elm_lang$core$Dict$foldr = F3( - function (f, acc, t) { - foldr: - while (true) { - var _p0 = t; - if (_p0.ctor === 'RBEmpty_elm_builtin') { - return acc; - } else { - var _v1 = f, - _v2 = A3( - f, - _p0._1, - _p0._2, - A3(_elm_lang$core$Dict$foldr, f, acc, _p0._4)), - _v3 = _p0._3; - f = _v1; - acc = _v2; - t = _v3; - continue foldr; - } - } - }); -var _elm_lang$core$Dict$keys = function (dict) { - return A3( - _elm_lang$core$Dict$foldr, - F3( - function (key, value, keyList) { - return {ctor: '::', _0: key, _1: keyList}; - }), - {ctor: '[]'}, - dict); -}; -var _elm_lang$core$Dict$values = function (dict) { - return A3( - _elm_lang$core$Dict$foldr, - F3( - function (key, value, valueList) { - return {ctor: '::', _0: value, _1: valueList}; - }), - {ctor: '[]'}, - dict); -}; -var _elm_lang$core$Dict$toList = function (dict) { - return A3( - _elm_lang$core$Dict$foldr, - F3( - function (key, value, list) { - return { - ctor: '::', - _0: {ctor: '_Tuple2', _0: key, _1: value}, - _1: list - }; - }), - {ctor: '[]'}, - dict); -}; -var _elm_lang$core$Dict$foldl = F3( - function (f, acc, dict) { - foldl: - while (true) { - var _p1 = dict; - if (_p1.ctor === 'RBEmpty_elm_builtin') { - return acc; - } else { - var _v5 = f, - _v6 = A3( - f, - _p1._1, - _p1._2, - A3(_elm_lang$core$Dict$foldl, f, acc, _p1._3)), - _v7 = _p1._4; - f = _v5; - acc = _v6; - dict = _v7; - continue foldl; - } - } - }); -var _elm_lang$core$Dict$merge = F6( - function (leftStep, bothStep, rightStep, leftDict, rightDict, initialResult) { - var stepState = F3( - function (rKey, rValue, _p2) { - stepState: - while (true) { - var _p3 = _p2; - var _p9 = _p3._1; - var _p8 = _p3._0; - var _p4 = _p8; - if (_p4.ctor === '[]') { - return { - ctor: '_Tuple2', - _0: _p8, - _1: A3(rightStep, rKey, rValue, _p9) - }; - } else { - var _p7 = _p4._1; - var _p6 = _p4._0._1; - var _p5 = _p4._0._0; - if (_elm_lang$core$Native_Utils.cmp(_p5, rKey) < 0) { - var _v10 = rKey, - _v11 = rValue, - _v12 = { - ctor: '_Tuple2', - _0: _p7, - _1: A3(leftStep, _p5, _p6, _p9) - }; - rKey = _v10; - rValue = _v11; - _p2 = _v12; - continue stepState; - } else { - if (_elm_lang$core$Native_Utils.cmp(_p5, rKey) > 0) { - return { - ctor: '_Tuple2', - _0: _p8, - _1: A3(rightStep, rKey, rValue, _p9) - }; - } else { - return { - ctor: '_Tuple2', - _0: _p7, - _1: A4(bothStep, _p5, _p6, rValue, _p9) - }; - } - } - } - } - }); - var _p10 = A3( - _elm_lang$core$Dict$foldl, - stepState, - { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$toList(leftDict), - _1: initialResult - }, - rightDict); - var leftovers = _p10._0; - var intermediateResult = _p10._1; - return A3( - _elm_lang$core$List$foldl, - F2( - function (_p11, result) { - var _p12 = _p11; - return A3(leftStep, _p12._0, _p12._1, result); - }), - intermediateResult, - leftovers); - }); -var _elm_lang$core$Dict$reportRemBug = F4( - function (msg, c, lgot, rgot) { - return _elm_lang$core$Native_Debug.crash( - _elm_lang$core$String$concat( - { - ctor: '::', - _0: 'Internal red-black tree invariant violated, expected ', - _1: { - ctor: '::', - _0: msg, - _1: { - ctor: '::', - _0: ' and got ', - _1: { - ctor: '::', - _0: _elm_lang$core$Basics$toString(c), - _1: { - ctor: '::', - _0: '/', - _1: { - ctor: '::', - _0: lgot, - _1: { - ctor: '::', - _0: '/', - _1: { - ctor: '::', - _0: rgot, - _1: { - ctor: '::', - _0: '\nPlease report this bug to ', - _1: {ctor: '[]'} - } - } - } - } - } - } - } - } - })); - }); -var _elm_lang$core$Dict$isBBlack = function (dict) { - var _p13 = dict; - _v14_2: - do { - if (_p13.ctor === 'RBNode_elm_builtin') { - if (_p13._0.ctor === 'BBlack') { - return true; - } else { - break _v14_2; - } - } else { - if (_p13._0.ctor === 'LBBlack') { - return true; - } else { - break _v14_2; - } - } - } while(false); - return false; -}; -var _elm_lang$core$Dict$sizeHelp = F2( - function (n, dict) { - sizeHelp: - while (true) { - var _p14 = dict; - if (_p14.ctor === 'RBEmpty_elm_builtin') { - return n; - } else { - var _v16 = A2(_elm_lang$core$Dict$sizeHelp, n + 1, _p14._4), - _v17 = _p14._3; - n = _v16; - dict = _v17; - continue sizeHelp; - } - } - }); -var _elm_lang$core$Dict$size = function (dict) { - return A2(_elm_lang$core$Dict$sizeHelp, 0, dict); -}; -var _elm_lang$core$Dict$get = F2( - function (targetKey, dict) { - get: - while (true) { - var _p15 = dict; - if (_p15.ctor === 'RBEmpty_elm_builtin') { - return _elm_lang$core$Maybe$Nothing; - } else { - var _p16 = A2(_elm_lang$core$Basics$compare, targetKey, _p15._1); - switch (_p16.ctor) { - case 'LT': - var _v20 = targetKey, - _v21 = _p15._3; - targetKey = _v20; - dict = _v21; - continue get; - case 'EQ': - return _elm_lang$core$Maybe$Just(_p15._2); - default: - var _v22 = targetKey, - _v23 = _p15._4; - targetKey = _v22; - dict = _v23; - continue get; - } - } - } - }); -var _elm_lang$core$Dict$member = F2( - function (key, dict) { - var _p17 = A2(_elm_lang$core$Dict$get, key, dict); - if (_p17.ctor === 'Just') { - return true; - } else { - return false; - } - }); -var _elm_lang$core$Dict$maxWithDefault = F3( - function (k, v, r) { - maxWithDefault: - while (true) { - var _p18 = r; - if (_p18.ctor === 'RBEmpty_elm_builtin') { - return {ctor: '_Tuple2', _0: k, _1: v}; - } else { - var _v26 = _p18._1, - _v27 = _p18._2, - _v28 = _p18._4; - k = _v26; - v = _v27; - r = _v28; - continue maxWithDefault; - } - } - }); -var _elm_lang$core$Dict$NBlack = {ctor: 'NBlack'}; -var _elm_lang$core$Dict$BBlack = {ctor: 'BBlack'}; -var _elm_lang$core$Dict$Black = {ctor: 'Black'}; -var _elm_lang$core$Dict$blackish = function (t) { - var _p19 = t; - if (_p19.ctor === 'RBNode_elm_builtin') { - var _p20 = _p19._0; - return _elm_lang$core$Native_Utils.eq(_p20, _elm_lang$core$Dict$Black) || _elm_lang$core$Native_Utils.eq(_p20, _elm_lang$core$Dict$BBlack); - } else { - return true; - } -}; -var _elm_lang$core$Dict$Red = {ctor: 'Red'}; -var _elm_lang$core$Dict$moreBlack = function (color) { - var _p21 = color; - switch (_p21.ctor) { - case 'Black': - return _elm_lang$core$Dict$BBlack; - case 'Red': - return _elm_lang$core$Dict$Black; - case 'NBlack': - return _elm_lang$core$Dict$Red; - default: - return _elm_lang$core$Native_Debug.crash('Can\'t make a double black node more black!'); - } -}; -var _elm_lang$core$Dict$lessBlack = function (color) { - var _p22 = color; - switch (_p22.ctor) { - case 'BBlack': - return _elm_lang$core$Dict$Black; - case 'Black': - return _elm_lang$core$Dict$Red; - case 'Red': - return _elm_lang$core$Dict$NBlack; - default: - return _elm_lang$core$Native_Debug.crash('Can\'t make a negative black node less black!'); - } -}; -var _elm_lang$core$Dict$LBBlack = {ctor: 'LBBlack'}; -var _elm_lang$core$Dict$LBlack = {ctor: 'LBlack'}; -var _elm_lang$core$Dict$RBEmpty_elm_builtin = function (a) { - return {ctor: 'RBEmpty_elm_builtin', _0: a}; -}; -var _elm_lang$core$Dict$empty = _elm_lang$core$Dict$RBEmpty_elm_builtin(_elm_lang$core$Dict$LBlack); -var _elm_lang$core$Dict$isEmpty = function (dict) { - return _elm_lang$core$Native_Utils.eq(dict, _elm_lang$core$Dict$empty); -}; -var _elm_lang$core$Dict$RBNode_elm_builtin = F5( - function (a, b, c, d, e) { - return {ctor: 'RBNode_elm_builtin', _0: a, _1: b, _2: c, _3: d, _4: e}; - }); -var _elm_lang$core$Dict$ensureBlackRoot = function (dict) { - var _p23 = dict; - if ((_p23.ctor === 'RBNode_elm_builtin') && (_p23._0.ctor === 'Red')) { - return A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Black, _p23._1, _p23._2, _p23._3, _p23._4); - } else { - return dict; - } -}; -var _elm_lang$core$Dict$lessBlackTree = function (dict) { - var _p24 = dict; - if (_p24.ctor === 'RBNode_elm_builtin') { - return A5( - _elm_lang$core$Dict$RBNode_elm_builtin, - _elm_lang$core$Dict$lessBlack(_p24._0), - _p24._1, - _p24._2, - _p24._3, - _p24._4); - } else { - return _elm_lang$core$Dict$RBEmpty_elm_builtin(_elm_lang$core$Dict$LBlack); - } -}; -var _elm_lang$core$Dict$balancedTree = function (col) { - return function (xk) { - return function (xv) { - return function (yk) { - return function (yv) { - return function (zk) { - return function (zv) { - return function (a) { - return function (b) { - return function (c) { - return function (d) { - return A5( - _elm_lang$core$Dict$RBNode_elm_builtin, - _elm_lang$core$Dict$lessBlack(col), - yk, - yv, - A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Black, xk, xv, a, b), - A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Black, zk, zv, c, d)); - }; - }; - }; - }; - }; - }; - }; - }; - }; - }; -}; -var _elm_lang$core$Dict$blacken = function (t) { - var _p25 = t; - if (_p25.ctor === 'RBEmpty_elm_builtin') { - return _elm_lang$core$Dict$RBEmpty_elm_builtin(_elm_lang$core$Dict$LBlack); - } else { - return A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Black, _p25._1, _p25._2, _p25._3, _p25._4); - } -}; -var _elm_lang$core$Dict$redden = function (t) { - var _p26 = t; - if (_p26.ctor === 'RBEmpty_elm_builtin') { - return _elm_lang$core$Native_Debug.crash('can\'t make a Leaf red'); - } else { - return A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Red, _p26._1, _p26._2, _p26._3, _p26._4); - } -}; -var _elm_lang$core$Dict$balanceHelp = function (tree) { - var _p27 = tree; - _v36_6: - do { - _v36_5: - do { - _v36_4: - do { - _v36_3: - do { - _v36_2: - do { - _v36_1: - do { - _v36_0: - do { - if (_p27.ctor === 'RBNode_elm_builtin') { - if (_p27._3.ctor === 'RBNode_elm_builtin') { - if (_p27._4.ctor === 'RBNode_elm_builtin') { - switch (_p27._3._0.ctor) { - case 'Red': - switch (_p27._4._0.ctor) { - case 'Red': - if ((_p27._3._3.ctor === 'RBNode_elm_builtin') && (_p27._3._3._0.ctor === 'Red')) { - break _v36_0; - } else { - if ((_p27._3._4.ctor === 'RBNode_elm_builtin') && (_p27._3._4._0.ctor === 'Red')) { - break _v36_1; - } else { - if ((_p27._4._3.ctor === 'RBNode_elm_builtin') && (_p27._4._3._0.ctor === 'Red')) { - break _v36_2; - } else { - if ((_p27._4._4.ctor === 'RBNode_elm_builtin') && (_p27._4._4._0.ctor === 'Red')) { - break _v36_3; - } else { - break _v36_6; - } - } - } - } - case 'NBlack': - if ((_p27._3._3.ctor === 'RBNode_elm_builtin') && (_p27._3._3._0.ctor === 'Red')) { - break _v36_0; - } else { - if ((_p27._3._4.ctor === 'RBNode_elm_builtin') && (_p27._3._4._0.ctor === 'Red')) { - break _v36_1; - } else { - if (((((_p27._0.ctor === 'BBlack') && (_p27._4._3.ctor === 'RBNode_elm_builtin')) && (_p27._4._3._0.ctor === 'Black')) && (_p27._4._4.ctor === 'RBNode_elm_builtin')) && (_p27._4._4._0.ctor === 'Black')) { - break _v36_4; - } else { - break _v36_6; - } - } - } - default: - if ((_p27._3._3.ctor === 'RBNode_elm_builtin') && (_p27._3._3._0.ctor === 'Red')) { - break _v36_0; - } else { - if ((_p27._3._4.ctor === 'RBNode_elm_builtin') && (_p27._3._4._0.ctor === 'Red')) { - break _v36_1; - } else { - break _v36_6; - } - } - } - case 'NBlack': - switch (_p27._4._0.ctor) { - case 'Red': - if ((_p27._4._3.ctor === 'RBNode_elm_builtin') && (_p27._4._3._0.ctor === 'Red')) { - break _v36_2; - } else { - if ((_p27._4._4.ctor === 'RBNode_elm_builtin') && (_p27._4._4._0.ctor === 'Red')) { - break _v36_3; - } else { - if (((((_p27._0.ctor === 'BBlack') && (_p27._3._3.ctor === 'RBNode_elm_builtin')) && (_p27._3._3._0.ctor === 'Black')) && (_p27._3._4.ctor === 'RBNode_elm_builtin')) && (_p27._3._4._0.ctor === 'Black')) { - break _v36_5; - } else { - break _v36_6; - } - } - } - case 'NBlack': - if (_p27._0.ctor === 'BBlack') { - if ((((_p27._4._3.ctor === 'RBNode_elm_builtin') && (_p27._4._3._0.ctor === 'Black')) && (_p27._4._4.ctor === 'RBNode_elm_builtin')) && (_p27._4._4._0.ctor === 'Black')) { - break _v36_4; - } else { - if ((((_p27._3._3.ctor === 'RBNode_elm_builtin') && (_p27._3._3._0.ctor === 'Black')) && (_p27._3._4.ctor === 'RBNode_elm_builtin')) && (_p27._3._4._0.ctor === 'Black')) { - break _v36_5; - } else { - break _v36_6; - } - } - } else { - break _v36_6; - } - default: - if (((((_p27._0.ctor === 'BBlack') && (_p27._3._3.ctor === 'RBNode_elm_builtin')) && (_p27._3._3._0.ctor === 'Black')) && (_p27._3._4.ctor === 'RBNode_elm_builtin')) && (_p27._3._4._0.ctor === 'Black')) { - break _v36_5; - } else { - break _v36_6; - } - } - default: - switch (_p27._4._0.ctor) { - case 'Red': - if ((_p27._4._3.ctor === 'RBNode_elm_builtin') && (_p27._4._3._0.ctor === 'Red')) { - break _v36_2; - } else { - if ((_p27._4._4.ctor === 'RBNode_elm_builtin') && (_p27._4._4._0.ctor === 'Red')) { - break _v36_3; - } else { - break _v36_6; - } - } - case 'NBlack': - if (((((_p27._0.ctor === 'BBlack') && (_p27._4._3.ctor === 'RBNode_elm_builtin')) && (_p27._4._3._0.ctor === 'Black')) && (_p27._4._4.ctor === 'RBNode_elm_builtin')) && (_p27._4._4._0.ctor === 'Black')) { - break _v36_4; - } else { - break _v36_6; - } - default: - break _v36_6; - } - } - } else { - switch (_p27._3._0.ctor) { - case 'Red': - if ((_p27._3._3.ctor === 'RBNode_elm_builtin') && (_p27._3._3._0.ctor === 'Red')) { - break _v36_0; - } else { - if ((_p27._3._4.ctor === 'RBNode_elm_builtin') && (_p27._3._4._0.ctor === 'Red')) { - break _v36_1; - } else { - break _v36_6; - } - } - case 'NBlack': - if (((((_p27._0.ctor === 'BBlack') && (_p27._3._3.ctor === 'RBNode_elm_builtin')) && (_p27._3._3._0.ctor === 'Black')) && (_p27._3._4.ctor === 'RBNode_elm_builtin')) && (_p27._3._4._0.ctor === 'Black')) { - break _v36_5; - } else { - break _v36_6; - } - default: - break _v36_6; - } - } - } else { - if (_p27._4.ctor === 'RBNode_elm_builtin') { - switch (_p27._4._0.ctor) { - case 'Red': - if ((_p27._4._3.ctor === 'RBNode_elm_builtin') && (_p27._4._3._0.ctor === 'Red')) { - break _v36_2; - } else { - if ((_p27._4._4.ctor === 'RBNode_elm_builtin') && (_p27._4._4._0.ctor === 'Red')) { - break _v36_3; - } else { - break _v36_6; - } - } - case 'NBlack': - if (((((_p27._0.ctor === 'BBlack') && (_p27._4._3.ctor === 'RBNode_elm_builtin')) && (_p27._4._3._0.ctor === 'Black')) && (_p27._4._4.ctor === 'RBNode_elm_builtin')) && (_p27._4._4._0.ctor === 'Black')) { - break _v36_4; - } else { - break _v36_6; - } - default: - break _v36_6; - } - } else { - break _v36_6; - } - } - } else { - break _v36_6; - } - } while(false); - return _elm_lang$core$Dict$balancedTree(_p27._0)(_p27._3._3._1)(_p27._3._3._2)(_p27._3._1)(_p27._3._2)(_p27._1)(_p27._2)(_p27._3._3._3)(_p27._3._3._4)(_p27._3._4)(_p27._4); - } while(false); - return _elm_lang$core$Dict$balancedTree(_p27._0)(_p27._3._1)(_p27._3._2)(_p27._3._4._1)(_p27._3._4._2)(_p27._1)(_p27._2)(_p27._3._3)(_p27._3._4._3)(_p27._3._4._4)(_p27._4); - } while(false); - return _elm_lang$core$Dict$balancedTree(_p27._0)(_p27._1)(_p27._2)(_p27._4._3._1)(_p27._4._3._2)(_p27._4._1)(_p27._4._2)(_p27._3)(_p27._4._3._3)(_p27._4._3._4)(_p27._4._4); - } while(false); - return _elm_lang$core$Dict$balancedTree(_p27._0)(_p27._1)(_p27._2)(_p27._4._1)(_p27._4._2)(_p27._4._4._1)(_p27._4._4._2)(_p27._3)(_p27._4._3)(_p27._4._4._3)(_p27._4._4._4); - } while(false); - return A5( - _elm_lang$core$Dict$RBNode_elm_builtin, - _elm_lang$core$Dict$Black, - _p27._4._3._1, - _p27._4._3._2, - A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Black, _p27._1, _p27._2, _p27._3, _p27._4._3._3), - A5( - _elm_lang$core$Dict$balance, - _elm_lang$core$Dict$Black, - _p27._4._1, - _p27._4._2, - _p27._4._3._4, - _elm_lang$core$Dict$redden(_p27._4._4))); - } while(false); - return A5( - _elm_lang$core$Dict$RBNode_elm_builtin, - _elm_lang$core$Dict$Black, - _p27._3._4._1, - _p27._3._4._2, - A5( - _elm_lang$core$Dict$balance, - _elm_lang$core$Dict$Black, - _p27._3._1, - _p27._3._2, - _elm_lang$core$Dict$redden(_p27._3._3), - _p27._3._4._3), - A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Black, _p27._1, _p27._2, _p27._3._4._4, _p27._4)); - } while(false); - return tree; -}; -var _elm_lang$core$Dict$balance = F5( - function (c, k, v, l, r) { - var tree = A5(_elm_lang$core$Dict$RBNode_elm_builtin, c, k, v, l, r); - return _elm_lang$core$Dict$blackish(tree) ? _elm_lang$core$Dict$balanceHelp(tree) : tree; - }); -var _elm_lang$core$Dict$bubble = F5( - function (c, k, v, l, r) { - return (_elm_lang$core$Dict$isBBlack(l) || _elm_lang$core$Dict$isBBlack(r)) ? A5( - _elm_lang$core$Dict$balance, - _elm_lang$core$Dict$moreBlack(c), - k, - v, - _elm_lang$core$Dict$lessBlackTree(l), - _elm_lang$core$Dict$lessBlackTree(r)) : A5(_elm_lang$core$Dict$RBNode_elm_builtin, c, k, v, l, r); - }); -var _elm_lang$core$Dict$removeMax = F5( - function (c, k, v, l, r) { - var _p28 = r; - if (_p28.ctor === 'RBEmpty_elm_builtin') { - return A3(_elm_lang$core$Dict$rem, c, l, r); - } else { - return A5( - _elm_lang$core$Dict$bubble, - c, - k, - v, - l, - A5(_elm_lang$core$Dict$removeMax, _p28._0, _p28._1, _p28._2, _p28._3, _p28._4)); - } - }); -var _elm_lang$core$Dict$rem = F3( - function (color, left, right) { - var _p29 = {ctor: '_Tuple2', _0: left, _1: right}; - if (_p29._0.ctor === 'RBEmpty_elm_builtin') { - if (_p29._1.ctor === 'RBEmpty_elm_builtin') { - var _p30 = color; - switch (_p30.ctor) { - case 'Red': - return _elm_lang$core$Dict$RBEmpty_elm_builtin(_elm_lang$core$Dict$LBlack); - case 'Black': - return _elm_lang$core$Dict$RBEmpty_elm_builtin(_elm_lang$core$Dict$LBBlack); - default: - return _elm_lang$core$Native_Debug.crash('cannot have bblack or nblack nodes at this point'); - } - } else { - var _p33 = _p29._1._0; - var _p32 = _p29._0._0; - var _p31 = {ctor: '_Tuple3', _0: color, _1: _p32, _2: _p33}; - if ((((_p31.ctor === '_Tuple3') && (_p31._0.ctor === 'Black')) && (_p31._1.ctor === 'LBlack')) && (_p31._2.ctor === 'Red')) { - return A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Black, _p29._1._1, _p29._1._2, _p29._1._3, _p29._1._4); - } else { - return A4( - _elm_lang$core$Dict$reportRemBug, - 'Black/LBlack/Red', - color, - _elm_lang$core$Basics$toString(_p32), - _elm_lang$core$Basics$toString(_p33)); - } - } - } else { - if (_p29._1.ctor === 'RBEmpty_elm_builtin') { - var _p36 = _p29._1._0; - var _p35 = _p29._0._0; - var _p34 = {ctor: '_Tuple3', _0: color, _1: _p35, _2: _p36}; - if ((((_p34.ctor === '_Tuple3') && (_p34._0.ctor === 'Black')) && (_p34._1.ctor === 'Red')) && (_p34._2.ctor === 'LBlack')) { - return A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Black, _p29._0._1, _p29._0._2, _p29._0._3, _p29._0._4); - } else { - return A4( - _elm_lang$core$Dict$reportRemBug, - 'Black/Red/LBlack', - color, - _elm_lang$core$Basics$toString(_p35), - _elm_lang$core$Basics$toString(_p36)); - } - } else { - var _p40 = _p29._0._2; - var _p39 = _p29._0._4; - var _p38 = _p29._0._1; - var newLeft = A5(_elm_lang$core$Dict$removeMax, _p29._0._0, _p38, _p40, _p29._0._3, _p39); - var _p37 = A3(_elm_lang$core$Dict$maxWithDefault, _p38, _p40, _p39); - var k = _p37._0; - var v = _p37._1; - return A5(_elm_lang$core$Dict$bubble, color, k, v, newLeft, right); - } - } - }); -var _elm_lang$core$Dict$map = F2( - function (f, dict) { - var _p41 = dict; - if (_p41.ctor === 'RBEmpty_elm_builtin') { - return _elm_lang$core$Dict$RBEmpty_elm_builtin(_elm_lang$core$Dict$LBlack); - } else { - var _p42 = _p41._1; - return A5( - _elm_lang$core$Dict$RBNode_elm_builtin, - _p41._0, - _p42, - A2(f, _p42, _p41._2), - A2(_elm_lang$core$Dict$map, f, _p41._3), - A2(_elm_lang$core$Dict$map, f, _p41._4)); - } - }); -var _elm_lang$core$Dict$Same = {ctor: 'Same'}; -var _elm_lang$core$Dict$Remove = {ctor: 'Remove'}; -var _elm_lang$core$Dict$Insert = {ctor: 'Insert'}; -var _elm_lang$core$Dict$update = F3( - function (k, alter, dict) { - var up = function (dict) { - var _p43 = dict; - if (_p43.ctor === 'RBEmpty_elm_builtin') { - var _p44 = alter(_elm_lang$core$Maybe$Nothing); - if (_p44.ctor === 'Nothing') { - return {ctor: '_Tuple2', _0: _elm_lang$core$Dict$Same, _1: _elm_lang$core$Dict$empty}; - } else { - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Insert, - _1: A5(_elm_lang$core$Dict$RBNode_elm_builtin, _elm_lang$core$Dict$Red, k, _p44._0, _elm_lang$core$Dict$empty, _elm_lang$core$Dict$empty) - }; - } - } else { - var _p55 = _p43._2; - var _p54 = _p43._4; - var _p53 = _p43._3; - var _p52 = _p43._1; - var _p51 = _p43._0; - var _p45 = A2(_elm_lang$core$Basics$compare, k, _p52); - switch (_p45.ctor) { - case 'EQ': - var _p46 = alter( - _elm_lang$core$Maybe$Just(_p55)); - if (_p46.ctor === 'Nothing') { - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Remove, - _1: A3(_elm_lang$core$Dict$rem, _p51, _p53, _p54) - }; - } else { - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Same, - _1: A5(_elm_lang$core$Dict$RBNode_elm_builtin, _p51, _p52, _p46._0, _p53, _p54) - }; - } - case 'LT': - var _p47 = up(_p53); - var flag = _p47._0; - var newLeft = _p47._1; - var _p48 = flag; - switch (_p48.ctor) { - case 'Same': - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Same, - _1: A5(_elm_lang$core$Dict$RBNode_elm_builtin, _p51, _p52, _p55, newLeft, _p54) - }; - case 'Insert': - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Insert, - _1: A5(_elm_lang$core$Dict$balance, _p51, _p52, _p55, newLeft, _p54) - }; - default: - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Remove, - _1: A5(_elm_lang$core$Dict$bubble, _p51, _p52, _p55, newLeft, _p54) - }; - } - default: - var _p49 = up(_p54); - var flag = _p49._0; - var newRight = _p49._1; - var _p50 = flag; - switch (_p50.ctor) { - case 'Same': - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Same, - _1: A5(_elm_lang$core$Dict$RBNode_elm_builtin, _p51, _p52, _p55, _p53, newRight) - }; - case 'Insert': - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Insert, - _1: A5(_elm_lang$core$Dict$balance, _p51, _p52, _p55, _p53, newRight) - }; - default: - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Dict$Remove, - _1: A5(_elm_lang$core$Dict$bubble, _p51, _p52, _p55, _p53, newRight) - }; - } - } - } - }; - var _p56 = up(dict); - var flag = _p56._0; - var updatedDict = _p56._1; - var _p57 = flag; - switch (_p57.ctor) { - case 'Same': - return updatedDict; - case 'Insert': - return _elm_lang$core$Dict$ensureBlackRoot(updatedDict); - default: - return _elm_lang$core$Dict$blacken(updatedDict); - } - }); -var _elm_lang$core$Dict$insert = F3( - function (key, value, dict) { - return A3( - _elm_lang$core$Dict$update, - key, - _elm_lang$core$Basics$always( - _elm_lang$core$Maybe$Just(value)), - dict); - }); -var _elm_lang$core$Dict$singleton = F2( - function (key, value) { - return A3(_elm_lang$core$Dict$insert, key, value, _elm_lang$core$Dict$empty); - }); -var _elm_lang$core$Dict$union = F2( - function (t1, t2) { - return A3(_elm_lang$core$Dict$foldl, _elm_lang$core$Dict$insert, t2, t1); - }); -var _elm_lang$core$Dict$filter = F2( - function (predicate, dictionary) { - var add = F3( - function (key, value, dict) { - return A2(predicate, key, value) ? A3(_elm_lang$core$Dict$insert, key, value, dict) : dict; - }); - return A3(_elm_lang$core$Dict$foldl, add, _elm_lang$core$Dict$empty, dictionary); - }); -var _elm_lang$core$Dict$intersect = F2( - function (t1, t2) { - return A2( - _elm_lang$core$Dict$filter, - F2( - function (k, _p58) { - return A2(_elm_lang$core$Dict$member, k, t2); - }), - t1); - }); -var _elm_lang$core$Dict$partition = F2( - function (predicate, dict) { - var add = F3( - function (key, value, _p59) { - var _p60 = _p59; - var _p62 = _p60._1; - var _p61 = _p60._0; - return A2(predicate, key, value) ? { - ctor: '_Tuple2', - _0: A3(_elm_lang$core$Dict$insert, key, value, _p61), - _1: _p62 - } : { - ctor: '_Tuple2', - _0: _p61, - _1: A3(_elm_lang$core$Dict$insert, key, value, _p62) - }; - }); - return A3( - _elm_lang$core$Dict$foldl, - add, - {ctor: '_Tuple2', _0: _elm_lang$core$Dict$empty, _1: _elm_lang$core$Dict$empty}, - dict); - }); -var _elm_lang$core$Dict$fromList = function (assocs) { - return A3( - _elm_lang$core$List$foldl, - F2( - function (_p63, dict) { - var _p64 = _p63; - return A3(_elm_lang$core$Dict$insert, _p64._0, _p64._1, dict); - }), - _elm_lang$core$Dict$empty, - assocs); -}; -var _elm_lang$core$Dict$remove = F2( - function (key, dict) { - return A3( - _elm_lang$core$Dict$update, - key, - _elm_lang$core$Basics$always(_elm_lang$core$Maybe$Nothing), - dict); - }); -var _elm_lang$core$Dict$diff = F2( - function (t1, t2) { - return A3( - _elm_lang$core$Dict$foldl, - F3( - function (k, v, t) { - return A2(_elm_lang$core$Dict$remove, k, t); - }), - t1, - t2); - }); - -//import Maybe, Native.Array, Native.List, Native.Utils, Result // - -var _elm_lang$core$Native_Json = function() { - - -// CORE DECODERS - -function succeed(msg) -{ - return { - ctor: '', - tag: 'succeed', - msg: msg - }; -} - -function fail(msg) -{ - return { - ctor: '', - tag: 'fail', - msg: msg - }; -} - -function decodePrimitive(tag) -{ - return { - ctor: '', - tag: tag - }; -} - -function decodeContainer(tag, decoder) -{ - return { - ctor: '', - tag: tag, - decoder: decoder - }; -} - -function decodeNull(value) -{ - return { - ctor: '', - tag: 'null', - value: value - }; -} - -function decodeField(field, decoder) -{ - return { - ctor: '', - tag: 'field', - field: field, - decoder: decoder - }; -} - -function decodeIndex(index, decoder) -{ - return { - ctor: '', - tag: 'index', - index: index, - decoder: decoder - }; -} - -function decodeKeyValuePairs(decoder) -{ - return { - ctor: '', - tag: 'key-value', - decoder: decoder - }; -} - -function mapMany(f, decoders) -{ - return { - ctor: '', - tag: 'map-many', - func: f, - decoders: decoders - }; -} - -function andThen(callback, decoder) -{ - return { - ctor: '', - tag: 'andThen', - decoder: decoder, - callback: callback - }; -} - -function oneOf(decoders) -{ - return { - ctor: '', - tag: 'oneOf', - decoders: decoders - }; -} - - -// DECODING OBJECTS - -function map1(f, d1) -{ - return mapMany(f, [d1]); -} - -function map2(f, d1, d2) -{ - return mapMany(f, [d1, d2]); -} - -function map3(f, d1, d2, d3) -{ - return mapMany(f, [d1, d2, d3]); -} - -function map4(f, d1, d2, d3, d4) -{ - return mapMany(f, [d1, d2, d3, d4]); -} - -function map5(f, d1, d2, d3, d4, d5) -{ - return mapMany(f, [d1, d2, d3, d4, d5]); -} - -function map6(f, d1, d2, d3, d4, d5, d6) -{ - return mapMany(f, [d1, d2, d3, d4, d5, d6]); -} - -function map7(f, d1, d2, d3, d4, d5, d6, d7) -{ - return mapMany(f, [d1, d2, d3, d4, d5, d6, d7]); -} - -function map8(f, d1, d2, d3, d4, d5, d6, d7, d8) -{ - return mapMany(f, [d1, d2, d3, d4, d5, d6, d7, d8]); -} - - -// DECODE HELPERS - -function ok(value) -{ - return { tag: 'ok', value: value }; -} - -function badPrimitive(type, value) -{ - return { tag: 'primitive', type: type, value: value }; -} - -function badIndex(index, nestedProblems) -{ - return { tag: 'index', index: index, rest: nestedProblems }; -} - -function badField(field, nestedProblems) -{ - return { tag: 'field', field: field, rest: nestedProblems }; -} - -function badIndex(index, nestedProblems) -{ - return { tag: 'index', index: index, rest: nestedProblems }; -} - -function badOneOf(problems) -{ - return { tag: 'oneOf', problems: problems }; -} - -function bad(msg) -{ - return { tag: 'fail', msg: msg }; -} - -function badToString(problem) -{ - var context = '_'; - while (problem) - { - switch (problem.tag) - { - case 'primitive': - return 'Expecting ' + problem.type - + (context === '_' ? '' : ' at ' + context) - + ' but instead got: ' + jsToString(problem.value); - - case 'index': - context += '[' + problem.index + ']'; - problem = problem.rest; - break; - - case 'field': - context += '.' + problem.field; - problem = problem.rest; - break; - - case 'oneOf': - var problems = problem.problems; - for (var i = 0; i < problems.length; i++) - { - problems[i] = badToString(problems[i]); - } - return 'I ran into the following problems' - + (context === '_' ? '' : ' at ' + context) - + ':\n\n' + problems.join('\n'); - - case 'fail': - return 'I ran into a `fail` decoder' - + (context === '_' ? '' : ' at ' + context) - + ': ' + problem.msg; - } - } -} - -function jsToString(value) -{ - return value === undefined - ? 'undefined' - : JSON.stringify(value); -} - - -// DECODE - -function runOnString(decoder, string) -{ - var json; - try - { - json = JSON.parse(string); - } - catch (e) - { - return _elm_lang$core$Result$Err('Given an invalid JSON: ' + e.message); - } - return run(decoder, json); -} - -function run(decoder, value) -{ - var result = runHelp(decoder, value); - return (result.tag === 'ok') - ? _elm_lang$core$Result$Ok(result.value) - : _elm_lang$core$Result$Err(badToString(result)); -} - -function runHelp(decoder, value) -{ - switch (decoder.tag) - { - case 'bool': - return (typeof value === 'boolean') - ? ok(value) - : badPrimitive('a Bool', value); - - case 'int': - if (typeof value !== 'number') { - return badPrimitive('an Int', value); - } - - if (-2147483647 < value && value < 2147483647 && (value | 0) === value) { - return ok(value); - } - - if (isFinite(value) && !(value % 1)) { - return ok(value); - } - - return badPrimitive('an Int', value); - - case 'float': - return (typeof value === 'number') - ? ok(value) - : badPrimitive('a Float', value); - - case 'string': - return (typeof value === 'string') - ? ok(value) - : (value instanceof String) - ? ok(value + '') - : badPrimitive('a String', value); - - case 'null': - return (value === null) - ? ok(decoder.value) - : badPrimitive('null', value); - - case 'value': - return ok(value); - - case 'list': - if (!(value instanceof Array)) - { - return badPrimitive('a List', value); - } - - var list = _elm_lang$core$Native_List.Nil; - for (var i = value.length; i--; ) - { - var result = runHelp(decoder.decoder, value[i]); - if (result.tag !== 'ok') - { - return badIndex(i, result) - } - list = _elm_lang$core$Native_List.Cons(result.value, list); - } - return ok(list); - - case 'array': - if (!(value instanceof Array)) - { - return badPrimitive('an Array', value); - } - - var len = value.length; - var array = new Array(len); - for (var i = len; i--; ) - { - var result = runHelp(decoder.decoder, value[i]); - if (result.tag !== 'ok') - { - return badIndex(i, result); - } - array[i] = result.value; - } - return ok(_elm_lang$core$Native_Array.fromJSArray(array)); - - case 'maybe': - var result = runHelp(decoder.decoder, value); - return (result.tag === 'ok') - ? ok(_elm_lang$core$Maybe$Just(result.value)) - : ok(_elm_lang$core$Maybe$Nothing); - - case 'field': - var field = decoder.field; - if (typeof value !== 'object' || value === null || !(field in value)) - { - return badPrimitive('an object with a field named `' + field + '`', value); - } - - var result = runHelp(decoder.decoder, value[field]); - return (result.tag === 'ok') ? result : badField(field, result); - - case 'index': - var index = decoder.index; - if (!(value instanceof Array)) - { - return badPrimitive('an array', value); - } - if (index >= value.length) - { - return badPrimitive('a longer array. Need index ' + index + ' but there are only ' + value.length + ' entries', value); - } - - var result = runHelp(decoder.decoder, value[index]); - return (result.tag === 'ok') ? result : badIndex(index, result); - - case 'key-value': - if (typeof value !== 'object' || value === null || value instanceof Array) - { - return badPrimitive('an object', value); - } - - var keyValuePairs = _elm_lang$core$Native_List.Nil; - for (var key in value) - { - var result = runHelp(decoder.decoder, value[key]); - if (result.tag !== 'ok') - { - return badField(key, result); - } - var pair = _elm_lang$core$Native_Utils.Tuple2(key, result.value); - keyValuePairs = _elm_lang$core$Native_List.Cons(pair, keyValuePairs); - } - return ok(keyValuePairs); - - case 'map-many': - var answer = decoder.func; - var decoders = decoder.decoders; - for (var i = 0; i < decoders.length; i++) - { - var result = runHelp(decoders[i], value); - if (result.tag !== 'ok') - { - return result; - } - answer = answer(result.value); - } - return ok(answer); - - case 'andThen': - var result = runHelp(decoder.decoder, value); - return (result.tag !== 'ok') - ? result - : runHelp(decoder.callback(result.value), value); - - case 'oneOf': - var errors = []; - var temp = decoder.decoders; - while (temp.ctor !== '[]') - { - var result = runHelp(temp._0, value); - - if (result.tag === 'ok') - { - return result; - } - - errors.push(result); - - temp = temp._1; - } - return badOneOf(errors); - - case 'fail': - return bad(decoder.msg); - - case 'succeed': - return ok(decoder.msg); - } -} - - -// EQUALITY - -function equality(a, b) -{ - if (a === b) - { - return true; - } - - if (a.tag !== b.tag) - { - return false; - } - - switch (a.tag) - { - case 'succeed': - case 'fail': - return a.msg === b.msg; - - case 'bool': - case 'int': - case 'float': - case 'string': - case 'value': - return true; - - case 'null': - return a.value === b.value; - - case 'list': - case 'array': - case 'maybe': - case 'key-value': - return equality(a.decoder, b.decoder); - - case 'field': - return a.field === b.field && equality(a.decoder, b.decoder); - - case 'index': - return a.index === b.index && equality(a.decoder, b.decoder); - - case 'map-many': - if (a.func !== b.func) - { - return false; - } - return listEquality(a.decoders, b.decoders); - - case 'andThen': - return a.callback === b.callback && equality(a.decoder, b.decoder); - - case 'oneOf': - return listEquality(a.decoders, b.decoders); - } -} - -function listEquality(aDecoders, bDecoders) -{ - var len = aDecoders.length; - if (len !== bDecoders.length) - { - return false; - } - for (var i = 0; i < len; i++) - { - if (!equality(aDecoders[i], bDecoders[i])) - { - return false; - } - } - return true; -} - - -// ENCODE - -function encode(indentLevel, value) -{ - return JSON.stringify(value, null, indentLevel); -} - -function identity(value) -{ - return value; -} - -function encodeObject(keyValuePairs) -{ - var obj = {}; - while (keyValuePairs.ctor !== '[]') - { - var pair = keyValuePairs._0; - obj[pair._0] = pair._1; - keyValuePairs = keyValuePairs._1; - } - return obj; -} - -return { - encode: F2(encode), - runOnString: F2(runOnString), - run: F2(run), - - decodeNull: decodeNull, - decodePrimitive: decodePrimitive, - decodeContainer: F2(decodeContainer), - - decodeField: F2(decodeField), - decodeIndex: F2(decodeIndex), - - map1: F2(map1), - map2: F3(map2), - map3: F4(map3), - map4: F5(map4), - map5: F6(map5), - map6: F7(map6), - map7: F8(map7), - map8: F9(map8), - decodeKeyValuePairs: decodeKeyValuePairs, - - andThen: F2(andThen), - fail: fail, - succeed: succeed, - oneOf: oneOf, - - identity: identity, - encodeNull: null, - encodeArray: _elm_lang$core$Native_Array.toJSArray, - encodeList: _elm_lang$core$Native_List.toArray, - encodeObject: encodeObject, - - equality: equality -}; - -}(); - -var _elm_lang$core$Json_Encode$list = _elm_lang$core$Native_Json.encodeList; -var _elm_lang$core$Json_Encode$array = _elm_lang$core$Native_Json.encodeArray; -var _elm_lang$core$Json_Encode$object = _elm_lang$core$Native_Json.encodeObject; -var _elm_lang$core$Json_Encode$null = _elm_lang$core$Native_Json.encodeNull; -var _elm_lang$core$Json_Encode$bool = _elm_lang$core$Native_Json.identity; -var _elm_lang$core$Json_Encode$float = _elm_lang$core$Native_Json.identity; -var _elm_lang$core$Json_Encode$int = _elm_lang$core$Native_Json.identity; -var _elm_lang$core$Json_Encode$string = _elm_lang$core$Native_Json.identity; -var _elm_lang$core$Json_Encode$encode = _elm_lang$core$Native_Json.encode; -var _elm_lang$core$Json_Encode$Value = {ctor: 'Value'}; - -var _elm_lang$core$Json_Decode$null = _elm_lang$core$Native_Json.decodeNull; -var _elm_lang$core$Json_Decode$value = _elm_lang$core$Native_Json.decodePrimitive('value'); -var _elm_lang$core$Json_Decode$andThen = _elm_lang$core$Native_Json.andThen; -var _elm_lang$core$Json_Decode$fail = _elm_lang$core$Native_Json.fail; -var _elm_lang$core$Json_Decode$succeed = _elm_lang$core$Native_Json.succeed; -var _elm_lang$core$Json_Decode$lazy = function (thunk) { - return A2( - _elm_lang$core$Json_Decode$andThen, - thunk, - _elm_lang$core$Json_Decode$succeed( - {ctor: '_Tuple0'})); -}; -var _elm_lang$core$Json_Decode$decodeValue = _elm_lang$core$Native_Json.run; -var _elm_lang$core$Json_Decode$decodeString = _elm_lang$core$Native_Json.runOnString; -var _elm_lang$core$Json_Decode$map8 = _elm_lang$core$Native_Json.map8; -var _elm_lang$core$Json_Decode$map7 = _elm_lang$core$Native_Json.map7; -var _elm_lang$core$Json_Decode$map6 = _elm_lang$core$Native_Json.map6; -var _elm_lang$core$Json_Decode$map5 = _elm_lang$core$Native_Json.map5; -var _elm_lang$core$Json_Decode$map4 = _elm_lang$core$Native_Json.map4; -var _elm_lang$core$Json_Decode$map3 = _elm_lang$core$Native_Json.map3; -var _elm_lang$core$Json_Decode$map2 = _elm_lang$core$Native_Json.map2; -var _elm_lang$core$Json_Decode$map = _elm_lang$core$Native_Json.map1; -var _elm_lang$core$Json_Decode$oneOf = _elm_lang$core$Native_Json.oneOf; -var _elm_lang$core$Json_Decode$maybe = function (decoder) { - return A2(_elm_lang$core$Native_Json.decodeContainer, 'maybe', decoder); -}; -var _elm_lang$core$Json_Decode$index = _elm_lang$core$Native_Json.decodeIndex; -var _elm_lang$core$Json_Decode$field = _elm_lang$core$Native_Json.decodeField; -var _elm_lang$core$Json_Decode$at = F2( - function (fields, decoder) { - return A3(_elm_lang$core$List$foldr, _elm_lang$core$Json_Decode$field, decoder, fields); - }); -var _elm_lang$core$Json_Decode$keyValuePairs = _elm_lang$core$Native_Json.decodeKeyValuePairs; -var _elm_lang$core$Json_Decode$dict = function (decoder) { - return A2( - _elm_lang$core$Json_Decode$map, - _elm_lang$core$Dict$fromList, - _elm_lang$core$Json_Decode$keyValuePairs(decoder)); -}; -var _elm_lang$core$Json_Decode$array = function (decoder) { - return A2(_elm_lang$core$Native_Json.decodeContainer, 'array', decoder); -}; -var _elm_lang$core$Json_Decode$list = function (decoder) { - return A2(_elm_lang$core$Native_Json.decodeContainer, 'list', decoder); -}; -var _elm_lang$core$Json_Decode$nullable = function (decoder) { - return _elm_lang$core$Json_Decode$oneOf( - { - ctor: '::', - _0: _elm_lang$core$Json_Decode$null(_elm_lang$core$Maybe$Nothing), - _1: { - ctor: '::', - _0: A2(_elm_lang$core$Json_Decode$map, _elm_lang$core$Maybe$Just, decoder), - _1: {ctor: '[]'} - } - }); -}; -var _elm_lang$core$Json_Decode$float = _elm_lang$core$Native_Json.decodePrimitive('float'); -var _elm_lang$core$Json_Decode$int = _elm_lang$core$Native_Json.decodePrimitive('int'); -var _elm_lang$core$Json_Decode$bool = _elm_lang$core$Native_Json.decodePrimitive('bool'); -var _elm_lang$core$Json_Decode$string = _elm_lang$core$Native_Json.decodePrimitive('string'); -var _elm_lang$core$Json_Decode$Decoder = {ctor: 'Decoder'}; - -var _elm_lang$core$Debug$crash = _elm_lang$core$Native_Debug.crash; -var _elm_lang$core$Debug$log = _elm_lang$core$Native_Debug.log; - -var _elm_lang$core$Tuple$mapSecond = F2( - function (func, _p0) { - var _p1 = _p0; - return { - ctor: '_Tuple2', - _0: _p1._0, - _1: func(_p1._1) - }; - }); -var _elm_lang$core$Tuple$mapFirst = F2( - function (func, _p2) { - var _p3 = _p2; - return { - ctor: '_Tuple2', - _0: func(_p3._0), - _1: _p3._1 - }; - }); -var _elm_lang$core$Tuple$second = function (_p4) { - var _p5 = _p4; - return _p5._1; -}; -var _elm_lang$core$Tuple$first = function (_p6) { - var _p7 = _p6; - return _p7._0; -}; - -//import // - -var _elm_lang$core$Native_Platform = function() { - - -// PROGRAMS - -function program(impl) -{ - return function(flagDecoder) - { - return function(object, moduleName) - { - object['worker'] = function worker(flags) - { - if (typeof flags !== 'undefined') - { - throw new Error( - 'The `' + moduleName + '` module does not need flags.\n' - + 'Call ' + moduleName + '.worker() with no arguments and you should be all set!' - ); - } - - return initialize( - impl.init, - impl.update, - impl.subscriptions, - renderer - ); - }; - }; - }; -} - -function programWithFlags(impl) -{ - return function(flagDecoder) - { - return function(object, moduleName) - { - object['worker'] = function worker(flags) - { - if (typeof flagDecoder === 'undefined') - { - throw new Error( - 'Are you trying to sneak a Never value into Elm? Trickster!\n' - + 'It looks like ' + moduleName + '.main is defined with `programWithFlags` but has type `Program Never`.\n' - + 'Use `program` instead if you do not want flags.' - ); - } - - var result = A2(_elm_lang$core$Native_Json.run, flagDecoder, flags); - if (result.ctor === 'Err') - { - throw new Error( - moduleName + '.worker(...) was called with an unexpected argument.\n' - + 'I tried to convert it to an Elm value, but ran into this problem:\n\n' - + result._0 - ); - } - - return initialize( - impl.init(result._0), - impl.update, - impl.subscriptions, - renderer - ); - }; - }; - }; -} - -function renderer(enqueue, _) -{ - return function(_) {}; -} - - -// HTML TO PROGRAM - -function htmlToProgram(vnode) -{ - var emptyBag = batch(_elm_lang$core$Native_List.Nil); - var noChange = _elm_lang$core$Native_Utils.Tuple2( - _elm_lang$core$Native_Utils.Tuple0, - emptyBag - ); - - return _elm_lang$virtual_dom$VirtualDom$program({ - init: noChange, - view: function(model) { return main; }, - update: F2(function(msg, model) { return noChange; }), - subscriptions: function (model) { return emptyBag; } - }); -} - - -// INITIALIZE A PROGRAM - -function initialize(init, update, subscriptions, renderer) -{ - // ambient state - var managers = {}; - var updateView; - - // init and update state in main process - var initApp = _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) { - var model = init._0; - updateView = renderer(enqueue, model); - var cmds = init._1; - var subs = subscriptions(model); - dispatchEffects(managers, cmds, subs); - callback(_elm_lang$core$Native_Scheduler.succeed(model)); - }); - - function onMessage(msg, model) - { - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) { - var results = A2(update, msg, model); - model = results._0; - updateView(model); - var cmds = results._1; - var subs = subscriptions(model); - dispatchEffects(managers, cmds, subs); - callback(_elm_lang$core$Native_Scheduler.succeed(model)); - }); - } - - var mainProcess = spawnLoop(initApp, onMessage); - - function enqueue(msg) - { - _elm_lang$core$Native_Scheduler.rawSend(mainProcess, msg); - } - - var ports = setupEffects(managers, enqueue); - - return ports ? { ports: ports } : {}; -} - - -// EFFECT MANAGERS - -var effectManagers = {}; - -function setupEffects(managers, callback) -{ - var ports; - - // setup all necessary effect managers - for (var key in effectManagers) - { - var manager = effectManagers[key]; - - if (manager.isForeign) - { - ports = ports || {}; - ports[key] = manager.tag === 'cmd' - ? setupOutgoingPort(key) - : setupIncomingPort(key, callback); - } - - managers[key] = makeManager(manager, callback); - } - - return ports; -} - -function makeManager(info, callback) -{ - var router = { - main: callback, - self: undefined - }; - - var tag = info.tag; - var onEffects = info.onEffects; - var onSelfMsg = info.onSelfMsg; - - function onMessage(msg, state) - { - if (msg.ctor === 'self') - { - return A3(onSelfMsg, router, msg._0, state); - } - - var fx = msg._0; - switch (tag) - { - case 'cmd': - return A3(onEffects, router, fx.cmds, state); - - case 'sub': - return A3(onEffects, router, fx.subs, state); - - case 'fx': - return A4(onEffects, router, fx.cmds, fx.subs, state); - } - } - - var process = spawnLoop(info.init, onMessage); - router.self = process; - return process; -} - -function sendToApp(router, msg) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - router.main(msg); - callback(_elm_lang$core$Native_Scheduler.succeed(_elm_lang$core$Native_Utils.Tuple0)); - }); -} - -function sendToSelf(router, msg) -{ - return A2(_elm_lang$core$Native_Scheduler.send, router.self, { - ctor: 'self', - _0: msg - }); -} - - -// HELPER for STATEFUL LOOPS - -function spawnLoop(init, onMessage) -{ - var andThen = _elm_lang$core$Native_Scheduler.andThen; - - function loop(state) - { - var handleMsg = _elm_lang$core$Native_Scheduler.receive(function(msg) { - return onMessage(msg, state); - }); - return A2(andThen, loop, handleMsg); - } - - var task = A2(andThen, loop, init); - - return _elm_lang$core$Native_Scheduler.rawSpawn(task); -} - - -// BAGS - -function leaf(home) -{ - return function(value) - { - return { - type: 'leaf', - home: home, - value: value - }; - }; -} - -function batch(list) -{ - return { - type: 'node', - branches: list - }; -} - -function map(tagger, bag) -{ - return { - type: 'map', - tagger: tagger, - tree: bag - } -} - - -// PIPE BAGS INTO EFFECT MANAGERS - -function dispatchEffects(managers, cmdBag, subBag) -{ - var effectsDict = {}; - gatherEffects(true, cmdBag, effectsDict, null); - gatherEffects(false, subBag, effectsDict, null); - - for (var home in managers) - { - var fx = home in effectsDict - ? effectsDict[home] - : { - cmds: _elm_lang$core$Native_List.Nil, - subs: _elm_lang$core$Native_List.Nil - }; - - _elm_lang$core$Native_Scheduler.rawSend(managers[home], { ctor: 'fx', _0: fx }); - } -} - -function gatherEffects(isCmd, bag, effectsDict, taggers) -{ - switch (bag.type) - { - case 'leaf': - var home = bag.home; - var effect = toEffect(isCmd, home, taggers, bag.value); - effectsDict[home] = insert(isCmd, effect, effectsDict[home]); - return; - - case 'node': - var list = bag.branches; - while (list.ctor !== '[]') - { - gatherEffects(isCmd, list._0, effectsDict, taggers); - list = list._1; - } - return; - - case 'map': - gatherEffects(isCmd, bag.tree, effectsDict, { - tagger: bag.tagger, - rest: taggers - }); - return; - } -} - -function toEffect(isCmd, home, taggers, value) -{ - function applyTaggers(x) - { - var temp = taggers; - while (temp) - { - x = temp.tagger(x); - temp = temp.rest; - } - return x; - } - - var map = isCmd - ? effectManagers[home].cmdMap - : effectManagers[home].subMap; - - return A2(map, applyTaggers, value) -} - -function insert(isCmd, newEffect, effects) -{ - effects = effects || { - cmds: _elm_lang$core$Native_List.Nil, - subs: _elm_lang$core$Native_List.Nil - }; - if (isCmd) - { - effects.cmds = _elm_lang$core$Native_List.Cons(newEffect, effects.cmds); - return effects; - } - effects.subs = _elm_lang$core$Native_List.Cons(newEffect, effects.subs); - return effects; -} - - -// PORTS - -function checkPortName(name) -{ - if (name in effectManagers) - { - throw new Error('There can only be one port named `' + name + '`, but your program has multiple.'); - } -} - - -// OUTGOING PORTS - -function outgoingPort(name, converter) -{ - checkPortName(name); - effectManagers[name] = { - tag: 'cmd', - cmdMap: outgoingPortMap, - converter: converter, - isForeign: true - }; - return leaf(name); -} - -var outgoingPortMap = F2(function cmdMap(tagger, value) { - return value; -}); - -function setupOutgoingPort(name) -{ - var subs = []; - var converter = effectManagers[name].converter; - - // CREATE MANAGER - - var init = _elm_lang$core$Native_Scheduler.succeed(null); - - function onEffects(router, cmdList, state) - { - while (cmdList.ctor !== '[]') - { - // grab a separate reference to subs in case unsubscribe is called - var currentSubs = subs; - var value = converter(cmdList._0); - for (var i = 0; i < currentSubs.length; i++) - { - currentSubs[i](value); - } - cmdList = cmdList._1; - } - return init; - } - - effectManagers[name].init = init; - effectManagers[name].onEffects = F3(onEffects); - - // PUBLIC API - - function subscribe(callback) - { - subs.push(callback); - } - - function unsubscribe(callback) - { - // copy subs into a new array in case unsubscribe is called within a - // subscribed callback - subs = subs.slice(); - var index = subs.indexOf(callback); - if (index >= 0) - { - subs.splice(index, 1); - } - } - - return { - subscribe: subscribe, - unsubscribe: unsubscribe - }; -} - - -// INCOMING PORTS - -function incomingPort(name, converter) -{ - checkPortName(name); - effectManagers[name] = { - tag: 'sub', - subMap: incomingPortMap, - converter: converter, - isForeign: true - }; - return leaf(name); -} - -var incomingPortMap = F2(function subMap(tagger, finalTagger) -{ - return function(value) - { - return tagger(finalTagger(value)); - }; -}); - -function setupIncomingPort(name, callback) -{ - var sentBeforeInit = []; - var subs = _elm_lang$core$Native_List.Nil; - var converter = effectManagers[name].converter; - var currentOnEffects = preInitOnEffects; - var currentSend = preInitSend; - - // CREATE MANAGER - - var init = _elm_lang$core$Native_Scheduler.succeed(null); - - function preInitOnEffects(router, subList, state) - { - var postInitResult = postInitOnEffects(router, subList, state); - - for(var i = 0; i < sentBeforeInit.length; i++) - { - postInitSend(sentBeforeInit[i]); - } - - sentBeforeInit = null; // to release objects held in queue - currentSend = postInitSend; - currentOnEffects = postInitOnEffects; - return postInitResult; - } - - function postInitOnEffects(router, subList, state) - { - subs = subList; - return init; - } - - function onEffects(router, subList, state) - { - return currentOnEffects(router, subList, state); - } - - effectManagers[name].init = init; - effectManagers[name].onEffects = F3(onEffects); - - // PUBLIC API - - function preInitSend(value) - { - sentBeforeInit.push(value); - } - - function postInitSend(value) - { - var temp = subs; - while (temp.ctor !== '[]') - { - callback(temp._0(value)); - temp = temp._1; - } - } - - function send(incomingValue) - { - var result = A2(_elm_lang$core$Json_Decode$decodeValue, converter, incomingValue); - if (result.ctor === 'Err') - { - throw new Error('Trying to send an unexpected type of value through port `' + name + '`:\n' + result._0); - } - - currentSend(result._0); - } - - return { send: send }; -} - -return { - // routers - sendToApp: F2(sendToApp), - sendToSelf: F2(sendToSelf), - - // global setup - effectManagers: effectManagers, - outgoingPort: outgoingPort, - incomingPort: incomingPort, - - htmlToProgram: htmlToProgram, - program: program, - programWithFlags: programWithFlags, - initialize: initialize, - - // effect bags - leaf: leaf, - batch: batch, - map: F2(map) -}; - -}(); - -//import Native.Utils // - -var _elm_lang$core$Native_Scheduler = function() { - -var MAX_STEPS = 10000; - - -// TASKS - -function succeed(value) -{ - return { - ctor: '_Task_succeed', - value: value - }; -} - -function fail(error) -{ - return { - ctor: '_Task_fail', - value: error - }; -} - -function nativeBinding(callback) -{ - return { - ctor: '_Task_nativeBinding', - callback: callback, - cancel: null - }; -} - -function andThen(callback, task) -{ - return { - ctor: '_Task_andThen', - callback: callback, - task: task - }; -} - -function onError(callback, task) -{ - return { - ctor: '_Task_onError', - callback: callback, - task: task - }; -} - -function receive(callback) -{ - return { - ctor: '_Task_receive', - callback: callback - }; -} - - -// PROCESSES - -function rawSpawn(task) -{ - var process = { - ctor: '_Process', - id: _elm_lang$core$Native_Utils.guid(), - root: task, - stack: null, - mailbox: [] - }; - - enqueue(process); - - return process; -} - -function spawn(task) -{ - return nativeBinding(function(callback) { - var process = rawSpawn(task); - callback(succeed(process)); - }); -} - -function rawSend(process, msg) -{ - process.mailbox.push(msg); - enqueue(process); -} - -function send(process, msg) -{ - return nativeBinding(function(callback) { - rawSend(process, msg); - callback(succeed(_elm_lang$core$Native_Utils.Tuple0)); - }); -} - -function kill(process) -{ - return nativeBinding(function(callback) { - var root = process.root; - if (root.ctor === '_Task_nativeBinding' && root.cancel) - { - root.cancel(); - } - - process.root = null; - - callback(succeed(_elm_lang$core$Native_Utils.Tuple0)); - }); -} - -function sleep(time) -{ - return nativeBinding(function(callback) { - var id = setTimeout(function() { - callback(succeed(_elm_lang$core$Native_Utils.Tuple0)); - }, time); - - return function() { clearTimeout(id); }; - }); -} - - -// STEP PROCESSES - -function step(numSteps, process) -{ - while (numSteps < MAX_STEPS) - { - var ctor = process.root.ctor; - - if (ctor === '_Task_succeed') - { - while (process.stack && process.stack.ctor === '_Task_onError') - { - process.stack = process.stack.rest; - } - if (process.stack === null) - { - break; - } - process.root = process.stack.callback(process.root.value); - process.stack = process.stack.rest; - ++numSteps; - continue; - } - - if (ctor === '_Task_fail') - { - while (process.stack && process.stack.ctor === '_Task_andThen') - { - process.stack = process.stack.rest; - } - if (process.stack === null) - { - break; - } - process.root = process.stack.callback(process.root.value); - process.stack = process.stack.rest; - ++numSteps; - continue; - } - - if (ctor === '_Task_andThen') - { - process.stack = { - ctor: '_Task_andThen', - callback: process.root.callback, - rest: process.stack - }; - process.root = process.root.task; - ++numSteps; - continue; - } - - if (ctor === '_Task_onError') - { - process.stack = { - ctor: '_Task_onError', - callback: process.root.callback, - rest: process.stack - }; - process.root = process.root.task; - ++numSteps; - continue; - } - - if (ctor === '_Task_nativeBinding') - { - process.root.cancel = process.root.callback(function(newRoot) { - process.root = newRoot; - enqueue(process); - }); - - break; - } - - if (ctor === '_Task_receive') - { - var mailbox = process.mailbox; - if (mailbox.length === 0) - { - break; - } - - process.root = process.root.callback(mailbox.shift()); - ++numSteps; - continue; - } - - throw new Error(ctor); - } - - if (numSteps < MAX_STEPS) - { - return numSteps + 1; - } - enqueue(process); - - return numSteps; -} - - -// WORK QUEUE - -var working = false; -var workQueue = []; - -function enqueue(process) -{ - workQueue.push(process); - - if (!working) - { - setTimeout(work, 0); - working = true; - } -} - -function work() -{ - var numSteps = 0; - var process; - while (numSteps < MAX_STEPS && (process = workQueue.shift())) - { - if (process.root) - { - numSteps = step(numSteps, process); - } - } - if (!process) - { - working = false; - return; - } - setTimeout(work, 0); -} - - -return { - succeed: succeed, - fail: fail, - nativeBinding: nativeBinding, - andThen: F2(andThen), - onError: F2(onError), - receive: receive, - - spawn: spawn, - kill: kill, - sleep: sleep, - send: F2(send), - - rawSpawn: rawSpawn, - rawSend: rawSend -}; - -}(); -var _elm_lang$core$Platform_Cmd$batch = _elm_lang$core$Native_Platform.batch; -var _elm_lang$core$Platform_Cmd$none = _elm_lang$core$Platform_Cmd$batch( - {ctor: '[]'}); -var _elm_lang$core$Platform_Cmd_ops = _elm_lang$core$Platform_Cmd_ops || {}; -_elm_lang$core$Platform_Cmd_ops['!'] = F2( - function (model, commands) { - return { - ctor: '_Tuple2', - _0: model, - _1: _elm_lang$core$Platform_Cmd$batch(commands) - }; - }); -var _elm_lang$core$Platform_Cmd$map = _elm_lang$core$Native_Platform.map; -var _elm_lang$core$Platform_Cmd$Cmd = {ctor: 'Cmd'}; - -var _elm_lang$core$Platform_Sub$batch = _elm_lang$core$Native_Platform.batch; -var _elm_lang$core$Platform_Sub$none = _elm_lang$core$Platform_Sub$batch( - {ctor: '[]'}); -var _elm_lang$core$Platform_Sub$map = _elm_lang$core$Native_Platform.map; -var _elm_lang$core$Platform_Sub$Sub = {ctor: 'Sub'}; - -var _elm_lang$core$Platform$hack = _elm_lang$core$Native_Scheduler.succeed; -var _elm_lang$core$Platform$sendToSelf = _elm_lang$core$Native_Platform.sendToSelf; -var _elm_lang$core$Platform$sendToApp = _elm_lang$core$Native_Platform.sendToApp; -var _elm_lang$core$Platform$programWithFlags = _elm_lang$core$Native_Platform.programWithFlags; -var _elm_lang$core$Platform$program = _elm_lang$core$Native_Platform.program; -var _elm_lang$core$Platform$Program = {ctor: 'Program'}; -var _elm_lang$core$Platform$Task = {ctor: 'Task'}; -var _elm_lang$core$Platform$ProcessId = {ctor: 'ProcessId'}; -var _elm_lang$core$Platform$Router = {ctor: 'Router'}; - -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode = _elm_lang$core$Json_Decode$succeed; -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$resolve = _elm_lang$core$Json_Decode$andThen(_elm_lang$core$Basics$identity); -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$custom = F2( - function (decoder, wrapped) { - return A3( - _elm_lang$core$Json_Decode$map2, - F2( - function (x, y) { - return x(y); - }), - wrapped, - decoder); - }); -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$hardcoded = function (_p0) { - return _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$custom( - _elm_lang$core$Json_Decode$succeed(_p0)); -}; -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$optionalDecoder = F3( - function (pathDecoder, valDecoder, fallback) { - var nullOr = function (decoder) { - return _elm_lang$core$Json_Decode$oneOf( - { - ctor: '::', - _0: decoder, - _1: { - ctor: '::', - _0: _elm_lang$core$Json_Decode$null(fallback), - _1: {ctor: '[]'} - } - }); - }; - var handleResult = function (input) { - var _p1 = A2(_elm_lang$core$Json_Decode$decodeValue, pathDecoder, input); - if (_p1.ctor === 'Ok') { - var _p2 = A2( - _elm_lang$core$Json_Decode$decodeValue, - nullOr(valDecoder), - _p1._0); - if (_p2.ctor === 'Ok') { - return _elm_lang$core$Json_Decode$succeed(_p2._0); - } else { - return _elm_lang$core$Json_Decode$fail(_p2._0); - } - } else { - var _p3 = A2( - _elm_lang$core$Json_Decode$decodeValue, - _elm_lang$core$Json_Decode$keyValuePairs(_elm_lang$core$Json_Decode$value), - input); - if (_p3.ctor === 'Ok') { - return _elm_lang$core$Json_Decode$succeed(fallback); - } else { - return _elm_lang$core$Json_Decode$fail(_p3._0); - } - } - }; - return A2(_elm_lang$core$Json_Decode$andThen, handleResult, _elm_lang$core$Json_Decode$value); - }); -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$optionalAt = F4( - function (path, valDecoder, fallback, decoder) { - return A2( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$custom, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$optionalDecoder, - A2(_elm_lang$core$Json_Decode$at, path, _elm_lang$core$Json_Decode$value), - valDecoder, - fallback), - decoder); - }); -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$optional = F4( - function (key, valDecoder, fallback, decoder) { - return A2( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$custom, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$optionalDecoder, - A2(_elm_lang$core$Json_Decode$field, key, _elm_lang$core$Json_Decode$value), - valDecoder, - fallback), - decoder); - }); -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$requiredAt = F3( - function (path, valDecoder, decoder) { - return A2( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$custom, - A2(_elm_lang$core$Json_Decode$at, path, valDecoder), - decoder); - }); -var _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required = F3( - function (key, valDecoder, decoder) { - return A2( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$custom, - A2(_elm_lang$core$Json_Decode$field, key, valDecoder), - decoder); - }); - -//import Result // - -var _elm_lang$core$Native_Date = function() { - -function fromString(str) -{ - var date = new Date(str); - return isNaN(date.getTime()) - ? _elm_lang$core$Result$Err('Unable to parse \'' + str + '\' as a date. Dates must be in the ISO 8601 format.') - : _elm_lang$core$Result$Ok(date); -} - -var dayTable = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']; -var monthTable = - ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', - 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; - - -return { - fromString: fromString, - year: function(d) { return d.getFullYear(); }, - month: function(d) { return { ctor: monthTable[d.getMonth()] }; }, - day: function(d) { return d.getDate(); }, - hour: function(d) { return d.getHours(); }, - minute: function(d) { return d.getMinutes(); }, - second: function(d) { return d.getSeconds(); }, - millisecond: function(d) { return d.getMilliseconds(); }, - toTime: function(d) { return d.getTime(); }, - fromTime: function(t) { return new Date(t); }, - dayOfWeek: function(d) { return { ctor: dayTable[d.getDay()] }; } -}; - -}(); -var _elm_lang$core$Task$onError = _elm_lang$core$Native_Scheduler.onError; -var _elm_lang$core$Task$andThen = _elm_lang$core$Native_Scheduler.andThen; -var _elm_lang$core$Task$spawnCmd = F2( - function (router, _p0) { - var _p1 = _p0; - return _elm_lang$core$Native_Scheduler.spawn( - A2( - _elm_lang$core$Task$andThen, - _elm_lang$core$Platform$sendToApp(router), - _p1._0)); - }); -var _elm_lang$core$Task$fail = _elm_lang$core$Native_Scheduler.fail; -var _elm_lang$core$Task$mapError = F2( - function (convert, task) { - return A2( - _elm_lang$core$Task$onError, - function (_p2) { - return _elm_lang$core$Task$fail( - convert(_p2)); - }, - task); - }); -var _elm_lang$core$Task$succeed = _elm_lang$core$Native_Scheduler.succeed; -var _elm_lang$core$Task$map = F2( - function (func, taskA) { - return A2( - _elm_lang$core$Task$andThen, - function (a) { - return _elm_lang$core$Task$succeed( - func(a)); - }, - taskA); - }); -var _elm_lang$core$Task$map2 = F3( - function (func, taskA, taskB) { - return A2( - _elm_lang$core$Task$andThen, - function (a) { - return A2( - _elm_lang$core$Task$andThen, - function (b) { - return _elm_lang$core$Task$succeed( - A2(func, a, b)); - }, - taskB); - }, - taskA); - }); -var _elm_lang$core$Task$map3 = F4( - function (func, taskA, taskB, taskC) { - return A2( - _elm_lang$core$Task$andThen, - function (a) { - return A2( - _elm_lang$core$Task$andThen, - function (b) { - return A2( - _elm_lang$core$Task$andThen, - function (c) { - return _elm_lang$core$Task$succeed( - A3(func, a, b, c)); - }, - taskC); - }, - taskB); - }, - taskA); - }); -var _elm_lang$core$Task$map4 = F5( - function (func, taskA, taskB, taskC, taskD) { - return A2( - _elm_lang$core$Task$andThen, - function (a) { - return A2( - _elm_lang$core$Task$andThen, - function (b) { - return A2( - _elm_lang$core$Task$andThen, - function (c) { - return A2( - _elm_lang$core$Task$andThen, - function (d) { - return _elm_lang$core$Task$succeed( - A4(func, a, b, c, d)); - }, - taskD); - }, - taskC); - }, - taskB); - }, - taskA); - }); -var _elm_lang$core$Task$map5 = F6( - function (func, taskA, taskB, taskC, taskD, taskE) { - return A2( - _elm_lang$core$Task$andThen, - function (a) { - return A2( - _elm_lang$core$Task$andThen, - function (b) { - return A2( - _elm_lang$core$Task$andThen, - function (c) { - return A2( - _elm_lang$core$Task$andThen, - function (d) { - return A2( - _elm_lang$core$Task$andThen, - function (e) { - return _elm_lang$core$Task$succeed( - A5(func, a, b, c, d, e)); - }, - taskE); - }, - taskD); - }, - taskC); - }, - taskB); - }, - taskA); - }); -var _elm_lang$core$Task$sequence = function (tasks) { - var _p3 = tasks; - if (_p3.ctor === '[]') { - return _elm_lang$core$Task$succeed( - {ctor: '[]'}); - } else { - return A3( - _elm_lang$core$Task$map2, - F2( - function (x, y) { - return {ctor: '::', _0: x, _1: y}; - }), - _p3._0, - _elm_lang$core$Task$sequence(_p3._1)); - } -}; -var _elm_lang$core$Task$onEffects = F3( - function (router, commands, state) { - return A2( - _elm_lang$core$Task$map, - function (_p4) { - return {ctor: '_Tuple0'}; - }, - _elm_lang$core$Task$sequence( - A2( - _elm_lang$core$List$map, - _elm_lang$core$Task$spawnCmd(router), - commands))); - }); -var _elm_lang$core$Task$init = _elm_lang$core$Task$succeed( - {ctor: '_Tuple0'}); -var _elm_lang$core$Task$onSelfMsg = F3( - function (_p7, _p6, _p5) { - return _elm_lang$core$Task$succeed( - {ctor: '_Tuple0'}); - }); -var _elm_lang$core$Task$command = _elm_lang$core$Native_Platform.leaf('Task'); -var _elm_lang$core$Task$Perform = function (a) { - return {ctor: 'Perform', _0: a}; -}; -var _elm_lang$core$Task$perform = F2( - function (toMessage, task) { - return _elm_lang$core$Task$command( - _elm_lang$core$Task$Perform( - A2(_elm_lang$core$Task$map, toMessage, task))); - }); -var _elm_lang$core$Task$attempt = F2( - function (resultToMessage, task) { - return _elm_lang$core$Task$command( - _elm_lang$core$Task$Perform( - A2( - _elm_lang$core$Task$onError, - function (_p8) { - return _elm_lang$core$Task$succeed( - resultToMessage( - _elm_lang$core$Result$Err(_p8))); - }, - A2( - _elm_lang$core$Task$andThen, - function (_p9) { - return _elm_lang$core$Task$succeed( - resultToMessage( - _elm_lang$core$Result$Ok(_p9))); - }, - task)))); - }); -var _elm_lang$core$Task$cmdMap = F2( - function (tagger, _p10) { - var _p11 = _p10; - return _elm_lang$core$Task$Perform( - A2(_elm_lang$core$Task$map, tagger, _p11._0)); - }); -_elm_lang$core$Native_Platform.effectManagers['Task'] = {pkg: 'elm-lang/core', init: _elm_lang$core$Task$init, onEffects: _elm_lang$core$Task$onEffects, onSelfMsg: _elm_lang$core$Task$onSelfMsg, tag: 'cmd', cmdMap: _elm_lang$core$Task$cmdMap}; - -//import Native.Scheduler // - -var _elm_lang$core$Native_Time = function() { - -var now = _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) -{ - callback(_elm_lang$core$Native_Scheduler.succeed(Date.now())); -}); - -function setInterval_(interval, task) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - var id = setInterval(function() { - _elm_lang$core$Native_Scheduler.rawSpawn(task); - }, interval); - - return function() { clearInterval(id); }; - }); -} - -return { - now: now, - setInterval_: F2(setInterval_) -}; - -}(); -var _elm_lang$core$Time$setInterval = _elm_lang$core$Native_Time.setInterval_; -var _elm_lang$core$Time$spawnHelp = F3( - function (router, intervals, processes) { - var _p0 = intervals; - if (_p0.ctor === '[]') { - return _elm_lang$core$Task$succeed(processes); - } else { - var _p1 = _p0._0; - var spawnRest = function (id) { - return A3( - _elm_lang$core$Time$spawnHelp, - router, - _p0._1, - A3(_elm_lang$core$Dict$insert, _p1, id, processes)); - }; - var spawnTimer = _elm_lang$core$Native_Scheduler.spawn( - A2( - _elm_lang$core$Time$setInterval, - _p1, - A2(_elm_lang$core$Platform$sendToSelf, router, _p1))); - return A2(_elm_lang$core$Task$andThen, spawnRest, spawnTimer); - } - }); -var _elm_lang$core$Time$addMySub = F2( - function (_p2, state) { - var _p3 = _p2; - var _p6 = _p3._1; - var _p5 = _p3._0; - var _p4 = A2(_elm_lang$core$Dict$get, _p5, state); - if (_p4.ctor === 'Nothing') { - return A3( - _elm_lang$core$Dict$insert, - _p5, - { - ctor: '::', - _0: _p6, - _1: {ctor: '[]'} - }, - state); - } else { - return A3( - _elm_lang$core$Dict$insert, - _p5, - {ctor: '::', _0: _p6, _1: _p4._0}, - state); - } - }); -var _elm_lang$core$Time$inMilliseconds = function (t) { - return t; -}; -var _elm_lang$core$Time$millisecond = 1; -var _elm_lang$core$Time$second = 1000 * _elm_lang$core$Time$millisecond; -var _elm_lang$core$Time$minute = 60 * _elm_lang$core$Time$second; -var _elm_lang$core$Time$hour = 60 * _elm_lang$core$Time$minute; -var _elm_lang$core$Time$inHours = function (t) { - return t / _elm_lang$core$Time$hour; -}; -var _elm_lang$core$Time$inMinutes = function (t) { - return t / _elm_lang$core$Time$minute; -}; -var _elm_lang$core$Time$inSeconds = function (t) { - return t / _elm_lang$core$Time$second; -}; -var _elm_lang$core$Time$now = _elm_lang$core$Native_Time.now; -var _elm_lang$core$Time$onSelfMsg = F3( - function (router, interval, state) { - var _p7 = A2(_elm_lang$core$Dict$get, interval, state.taggers); - if (_p7.ctor === 'Nothing') { - return _elm_lang$core$Task$succeed(state); - } else { - var tellTaggers = function (time) { - return _elm_lang$core$Task$sequence( - A2( - _elm_lang$core$List$map, - function (tagger) { - return A2( - _elm_lang$core$Platform$sendToApp, - router, - tagger(time)); - }, - _p7._0)); - }; - return A2( - _elm_lang$core$Task$andThen, - function (_p8) { - return _elm_lang$core$Task$succeed(state); - }, - A2(_elm_lang$core$Task$andThen, tellTaggers, _elm_lang$core$Time$now)); - } - }); -var _elm_lang$core$Time$subscription = _elm_lang$core$Native_Platform.leaf('Time'); -var _elm_lang$core$Time$State = F2( - function (a, b) { - return {taggers: a, processes: b}; - }); -var _elm_lang$core$Time$init = _elm_lang$core$Task$succeed( - A2(_elm_lang$core$Time$State, _elm_lang$core$Dict$empty, _elm_lang$core$Dict$empty)); -var _elm_lang$core$Time$onEffects = F3( - function (router, subs, _p9) { - var _p10 = _p9; - var rightStep = F3( - function (_p12, id, _p11) { - var _p13 = _p11; - return { - ctor: '_Tuple3', - _0: _p13._0, - _1: _p13._1, - _2: A2( - _elm_lang$core$Task$andThen, - function (_p14) { - return _p13._2; - }, - _elm_lang$core$Native_Scheduler.kill(id)) - }; - }); - var bothStep = F4( - function (interval, taggers, id, _p15) { - var _p16 = _p15; - return { - ctor: '_Tuple3', - _0: _p16._0, - _1: A3(_elm_lang$core$Dict$insert, interval, id, _p16._1), - _2: _p16._2 - }; - }); - var leftStep = F3( - function (interval, taggers, _p17) { - var _p18 = _p17; - return { - ctor: '_Tuple3', - _0: {ctor: '::', _0: interval, _1: _p18._0}, - _1: _p18._1, - _2: _p18._2 - }; - }); - var newTaggers = A3(_elm_lang$core$List$foldl, _elm_lang$core$Time$addMySub, _elm_lang$core$Dict$empty, subs); - var _p19 = A6( - _elm_lang$core$Dict$merge, - leftStep, - bothStep, - rightStep, - newTaggers, - _p10.processes, - { - ctor: '_Tuple3', - _0: {ctor: '[]'}, - _1: _elm_lang$core$Dict$empty, - _2: _elm_lang$core$Task$succeed( - {ctor: '_Tuple0'}) - }); - var spawnList = _p19._0; - var existingDict = _p19._1; - var killTask = _p19._2; - return A2( - _elm_lang$core$Task$andThen, - function (newProcesses) { - return _elm_lang$core$Task$succeed( - A2(_elm_lang$core$Time$State, newTaggers, newProcesses)); - }, - A2( - _elm_lang$core$Task$andThen, - function (_p20) { - return A3(_elm_lang$core$Time$spawnHelp, router, spawnList, existingDict); - }, - killTask)); - }); -var _elm_lang$core$Time$Every = F2( - function (a, b) { - return {ctor: 'Every', _0: a, _1: b}; - }); -var _elm_lang$core$Time$every = F2( - function (interval, tagger) { - return _elm_lang$core$Time$subscription( - A2(_elm_lang$core$Time$Every, interval, tagger)); - }); -var _elm_lang$core$Time$subMap = F2( - function (f, _p21) { - var _p22 = _p21; - return A2( - _elm_lang$core$Time$Every, - _p22._0, - function (_p23) { - return f( - _p22._1(_p23)); - }); - }); -_elm_lang$core$Native_Platform.effectManagers['Time'] = {pkg: 'elm-lang/core', init: _elm_lang$core$Time$init, onEffects: _elm_lang$core$Time$onEffects, onSelfMsg: _elm_lang$core$Time$onSelfMsg, tag: 'sub', subMap: _elm_lang$core$Time$subMap}; - -var _elm_lang$core$Date$millisecond = _elm_lang$core$Native_Date.millisecond; -var _elm_lang$core$Date$second = _elm_lang$core$Native_Date.second; -var _elm_lang$core$Date$minute = _elm_lang$core$Native_Date.minute; -var _elm_lang$core$Date$hour = _elm_lang$core$Native_Date.hour; -var _elm_lang$core$Date$dayOfWeek = _elm_lang$core$Native_Date.dayOfWeek; -var _elm_lang$core$Date$day = _elm_lang$core$Native_Date.day; -var _elm_lang$core$Date$month = _elm_lang$core$Native_Date.month; -var _elm_lang$core$Date$year = _elm_lang$core$Native_Date.year; -var _elm_lang$core$Date$fromTime = _elm_lang$core$Native_Date.fromTime; -var _elm_lang$core$Date$toTime = _elm_lang$core$Native_Date.toTime; -var _elm_lang$core$Date$fromString = _elm_lang$core$Native_Date.fromString; -var _elm_lang$core$Date$now = A2(_elm_lang$core$Task$map, _elm_lang$core$Date$fromTime, _elm_lang$core$Time$now); -var _elm_lang$core$Date$Date = {ctor: 'Date'}; -var _elm_lang$core$Date$Sun = {ctor: 'Sun'}; -var _elm_lang$core$Date$Sat = {ctor: 'Sat'}; -var _elm_lang$core$Date$Fri = {ctor: 'Fri'}; -var _elm_lang$core$Date$Thu = {ctor: 'Thu'}; -var _elm_lang$core$Date$Wed = {ctor: 'Wed'}; -var _elm_lang$core$Date$Tue = {ctor: 'Tue'}; -var _elm_lang$core$Date$Mon = {ctor: 'Mon'}; -var _elm_lang$core$Date$Dec = {ctor: 'Dec'}; -var _elm_lang$core$Date$Nov = {ctor: 'Nov'}; -var _elm_lang$core$Date$Oct = {ctor: 'Oct'}; -var _elm_lang$core$Date$Sep = {ctor: 'Sep'}; -var _elm_lang$core$Date$Aug = {ctor: 'Aug'}; -var _elm_lang$core$Date$Jul = {ctor: 'Jul'}; -var _elm_lang$core$Date$Jun = {ctor: 'Jun'}; -var _elm_lang$core$Date$May = {ctor: 'May'}; -var _elm_lang$core$Date$Apr = {ctor: 'Apr'}; -var _elm_lang$core$Date$Mar = {ctor: 'Mar'}; -var _elm_lang$core$Date$Feb = {ctor: 'Feb'}; -var _elm_lang$core$Date$Jan = {ctor: 'Jan'}; - -var _elm_lang$core$Set$foldr = F3( - function (f, b, _p0) { - var _p1 = _p0; - return A3( - _elm_lang$core$Dict$foldr, - F3( - function (k, _p2, b) { - return A2(f, k, b); - }), - b, - _p1._0); - }); -var _elm_lang$core$Set$foldl = F3( - function (f, b, _p3) { - var _p4 = _p3; - return A3( - _elm_lang$core$Dict$foldl, - F3( - function (k, _p5, b) { - return A2(f, k, b); - }), - b, - _p4._0); - }); -var _elm_lang$core$Set$toList = function (_p6) { - var _p7 = _p6; - return _elm_lang$core$Dict$keys(_p7._0); -}; -var _elm_lang$core$Set$size = function (_p8) { - var _p9 = _p8; - return _elm_lang$core$Dict$size(_p9._0); -}; -var _elm_lang$core$Set$member = F2( - function (k, _p10) { - var _p11 = _p10; - return A2(_elm_lang$core$Dict$member, k, _p11._0); - }); -var _elm_lang$core$Set$isEmpty = function (_p12) { - var _p13 = _p12; - return _elm_lang$core$Dict$isEmpty(_p13._0); -}; -var _elm_lang$core$Set$Set_elm_builtin = function (a) { - return {ctor: 'Set_elm_builtin', _0: a}; -}; -var _elm_lang$core$Set$empty = _elm_lang$core$Set$Set_elm_builtin(_elm_lang$core$Dict$empty); -var _elm_lang$core$Set$singleton = function (k) { - return _elm_lang$core$Set$Set_elm_builtin( - A2( - _elm_lang$core$Dict$singleton, - k, - {ctor: '_Tuple0'})); -}; -var _elm_lang$core$Set$insert = F2( - function (k, _p14) { - var _p15 = _p14; - return _elm_lang$core$Set$Set_elm_builtin( - A3( - _elm_lang$core$Dict$insert, - k, - {ctor: '_Tuple0'}, - _p15._0)); - }); -var _elm_lang$core$Set$fromList = function (xs) { - return A3(_elm_lang$core$List$foldl, _elm_lang$core$Set$insert, _elm_lang$core$Set$empty, xs); -}; -var _elm_lang$core$Set$map = F2( - function (f, s) { - return _elm_lang$core$Set$fromList( - A2( - _elm_lang$core$List$map, - f, - _elm_lang$core$Set$toList(s))); - }); -var _elm_lang$core$Set$remove = F2( - function (k, _p16) { - var _p17 = _p16; - return _elm_lang$core$Set$Set_elm_builtin( - A2(_elm_lang$core$Dict$remove, k, _p17._0)); - }); -var _elm_lang$core$Set$union = F2( - function (_p19, _p18) { - var _p20 = _p19; - var _p21 = _p18; - return _elm_lang$core$Set$Set_elm_builtin( - A2(_elm_lang$core$Dict$union, _p20._0, _p21._0)); - }); -var _elm_lang$core$Set$intersect = F2( - function (_p23, _p22) { - var _p24 = _p23; - var _p25 = _p22; - return _elm_lang$core$Set$Set_elm_builtin( - A2(_elm_lang$core$Dict$intersect, _p24._0, _p25._0)); - }); -var _elm_lang$core$Set$diff = F2( - function (_p27, _p26) { - var _p28 = _p27; - var _p29 = _p26; - return _elm_lang$core$Set$Set_elm_builtin( - A2(_elm_lang$core$Dict$diff, _p28._0, _p29._0)); - }); -var _elm_lang$core$Set$filter = F2( - function (p, _p30) { - var _p31 = _p30; - return _elm_lang$core$Set$Set_elm_builtin( - A2( - _elm_lang$core$Dict$filter, - F2( - function (k, _p32) { - return p(k); - }), - _p31._0)); - }); -var _elm_lang$core$Set$partition = F2( - function (p, _p33) { - var _p34 = _p33; - var _p35 = A2( - _elm_lang$core$Dict$partition, - F2( - function (k, _p36) { - return p(k); - }), - _p34._0); - var p1 = _p35._0; - var p2 = _p35._1; - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Set$Set_elm_builtin(p1), - _1: _elm_lang$core$Set$Set_elm_builtin(p2) - }; - }); - -var _elm_community$json_extra$Json_Decode_Extra$when = F3( - function (checkDecoder, check, passDecoder) { - return A2( - _elm_lang$core$Json_Decode$andThen, - function (checkVal) { - return check(checkVal) ? passDecoder : _elm_lang$core$Json_Decode$fail( - A2( - _elm_lang$core$Basics_ops['++'], - 'Check failed with input `', - A2( - _elm_lang$core$Basics_ops['++'], - _elm_lang$core$Basics$toString(checkVal), - '`'))); - }, - checkDecoder); - }); -var _elm_community$json_extra$Json_Decode_Extra$combine = A2( - _elm_lang$core$List$foldr, - _elm_lang$core$Json_Decode$map2( - F2( - function (x, y) { - return {ctor: '::', _0: x, _1: y}; - })), - _elm_lang$core$Json_Decode$succeed( - {ctor: '[]'})); -var _elm_community$json_extra$Json_Decode_Extra$collection = function (decoder) { - return A2( - _elm_lang$core$Json_Decode$andThen, - function (length) { - return _elm_community$json_extra$Json_Decode_Extra$combine( - A2( - _elm_lang$core$List$map, - function (index) { - return A2( - _elm_lang$core$Json_Decode$field, - _elm_lang$core$Basics$toString(index), - decoder); - }, - A2(_elm_lang$core$List$range, 0, length - 1))); - }, - A2(_elm_lang$core$Json_Decode$field, 'length', _elm_lang$core$Json_Decode$int)); -}; -var _elm_community$json_extra$Json_Decode_Extra$fromResult = function (result) { - var _p0 = result; - if (_p0.ctor === 'Ok') { - return _elm_lang$core$Json_Decode$succeed(_p0._0); - } else { - return _elm_lang$core$Json_Decode$fail(_p0._0); - } -}; -var _elm_community$json_extra$Json_Decode_Extra$parseInt = A2( - _elm_lang$core$Json_Decode$andThen, - function (_p1) { - return _elm_community$json_extra$Json_Decode_Extra$fromResult( - _elm_lang$core$String$toInt(_p1)); - }, - _elm_lang$core$Json_Decode$string); -var _elm_community$json_extra$Json_Decode_Extra$parseFloat = A2( - _elm_lang$core$Json_Decode$andThen, - function (_p2) { - return _elm_community$json_extra$Json_Decode_Extra$fromResult( - _elm_lang$core$String$toFloat(_p2)); - }, - _elm_lang$core$Json_Decode$string); -var _elm_community$json_extra$Json_Decode_Extra$doubleEncoded = function (decoder) { - return A2( - _elm_lang$core$Json_Decode$andThen, - function (_p3) { - return _elm_community$json_extra$Json_Decode_Extra$fromResult( - A2(_elm_lang$core$Json_Decode$decodeString, decoder, _p3)); - }, - _elm_lang$core$Json_Decode$string); -}; -var _elm_community$json_extra$Json_Decode_Extra$keys = A2( - _elm_lang$core$Json_Decode$map, - A2( - _elm_lang$core$List$foldl, - F2( - function (_p4, acc) { - var _p5 = _p4; - return {ctor: '::', _0: _p5._0, _1: acc}; - }), - {ctor: '[]'}), - _elm_lang$core$Json_Decode$keyValuePairs( - _elm_lang$core$Json_Decode$succeed( - {ctor: '_Tuple0'}))); -var _elm_community$json_extra$Json_Decode_Extra$sequenceHelp = F2( - function (decoders, jsonValues) { - return (!_elm_lang$core$Native_Utils.eq( - _elm_lang$core$List$length(jsonValues), - _elm_lang$core$List$length(decoders))) ? _elm_lang$core$Json_Decode$fail('Number of decoders does not match number of values') : _elm_community$json_extra$Json_Decode_Extra$fromResult( - A3( - _elm_lang$core$List$foldr, - _elm_lang$core$Result$map2( - F2( - function (x, y) { - return {ctor: '::', _0: x, _1: y}; - })), - _elm_lang$core$Result$Ok( - {ctor: '[]'}), - A3(_elm_lang$core$List$map2, _elm_lang$core$Json_Decode$decodeValue, decoders, jsonValues))); - }); -var _elm_community$json_extra$Json_Decode_Extra$sequence = function (decoders) { - return A2( - _elm_lang$core$Json_Decode$andThen, - _elm_community$json_extra$Json_Decode_Extra$sequenceHelp(decoders), - _elm_lang$core$Json_Decode$list(_elm_lang$core$Json_Decode$value)); -}; -var _elm_community$json_extra$Json_Decode_Extra$indexedList = function (indexedDecoder) { - return A2( - _elm_lang$core$Json_Decode$andThen, - function (values) { - return _elm_community$json_extra$Json_Decode_Extra$sequence( - A2( - _elm_lang$core$List$map, - indexedDecoder, - A2( - _elm_lang$core$List$range, - 0, - _elm_lang$core$List$length(values) - 1))); - }, - _elm_lang$core$Json_Decode$list(_elm_lang$core$Json_Decode$value)); -}; -var _elm_community$json_extra$Json_Decode_Extra$optionalField = F2( - function (fieldName, decoder) { - var finishDecoding = function (json) { - var _p6 = A2( - _elm_lang$core$Json_Decode$decodeValue, - A2(_elm_lang$core$Json_Decode$field, fieldName, _elm_lang$core$Json_Decode$value), - json); - if (_p6.ctor === 'Ok') { - return A2( - _elm_lang$core$Json_Decode$map, - _elm_lang$core$Maybe$Just, - A2(_elm_lang$core$Json_Decode$field, fieldName, decoder)); - } else { - return _elm_lang$core$Json_Decode$succeed(_elm_lang$core$Maybe$Nothing); - } - }; - return A2(_elm_lang$core$Json_Decode$andThen, finishDecoding, _elm_lang$core$Json_Decode$value); - }); -var _elm_community$json_extra$Json_Decode_Extra$withDefault = F2( - function (fallback, decoder) { - return A2( - _elm_lang$core$Json_Decode$map, - _elm_lang$core$Maybe$withDefault(fallback), - _elm_lang$core$Json_Decode$maybe(decoder)); - }); -var _elm_community$json_extra$Json_Decode_Extra$decodeDictFromTuples = F2( - function (keyDecoder, tuples) { - var _p7 = tuples; - if (_p7.ctor === '[]') { - return _elm_lang$core$Json_Decode$succeed(_elm_lang$core$Dict$empty); - } else { - var _p8 = A2(_elm_lang$core$Json_Decode$decodeString, keyDecoder, _p7._0._0); - if (_p8.ctor === 'Ok') { - return A2( - _elm_lang$core$Json_Decode$andThen, - function (_p9) { - return _elm_lang$core$Json_Decode$succeed( - A3(_elm_lang$core$Dict$insert, _p8._0, _p7._0._1, _p9)); - }, - A2(_elm_community$json_extra$Json_Decode_Extra$decodeDictFromTuples, keyDecoder, _p7._1)); - } else { - return _elm_lang$core$Json_Decode$fail(_p8._0); - } - } - }); -var _elm_community$json_extra$Json_Decode_Extra$dict2 = F2( - function (keyDecoder, valueDecoder) { - return A2( - _elm_lang$core$Json_Decode$andThen, - _elm_community$json_extra$Json_Decode_Extra$decodeDictFromTuples(keyDecoder), - _elm_lang$core$Json_Decode$keyValuePairs(valueDecoder)); - }); -var _elm_community$json_extra$Json_Decode_Extra$set = function (decoder) { - return A2( - _elm_lang$core$Json_Decode$map, - _elm_lang$core$Set$fromList, - _elm_lang$core$Json_Decode$list(decoder)); -}; -var _elm_community$json_extra$Json_Decode_Extra$date = A2( - _elm_lang$core$Json_Decode$andThen, - function (_p10) { - return _elm_community$json_extra$Json_Decode_Extra$fromResult( - _elm_lang$core$Date$fromString(_p10)); - }, - _elm_lang$core$Json_Decode$string); -var _elm_community$json_extra$Json_Decode_Extra$andMap = _elm_lang$core$Json_Decode$map2( - F2( - function (x, y) { - return y(x); - })); -var _elm_community$json_extra$Json_Decode_Extra_ops = _elm_community$json_extra$Json_Decode_Extra_ops || {}; -_elm_community$json_extra$Json_Decode_Extra_ops['|:'] = _elm_lang$core$Basics$flip(_elm_community$json_extra$Json_Decode_Extra$andMap); - -//import Maybe, Native.List // - -var _elm_lang$core$Native_Regex = function() { - -function escape(str) -{ - return str.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); -} -function caseInsensitive(re) -{ - return new RegExp(re.source, 'gi'); -} -function regex(raw) -{ - return new RegExp(raw, 'g'); -} - -function contains(re, string) -{ - return string.match(re) !== null; -} - -function find(n, re, str) -{ - n = n.ctor === 'All' ? Infinity : n._0; - var out = []; - var number = 0; - var string = str; - var lastIndex = re.lastIndex; - var prevLastIndex = -1; - var result; - while (number++ < n && (result = re.exec(string))) - { - if (prevLastIndex === re.lastIndex) break; - var i = result.length - 1; - var subs = new Array(i); - while (i > 0) - { - var submatch = result[i]; - subs[--i] = submatch === undefined - ? _elm_lang$core$Maybe$Nothing - : _elm_lang$core$Maybe$Just(submatch); - } - out.push({ - match: result[0], - submatches: _elm_lang$core$Native_List.fromArray(subs), - index: result.index, - number: number - }); - prevLastIndex = re.lastIndex; - } - re.lastIndex = lastIndex; - return _elm_lang$core$Native_List.fromArray(out); -} - -function replace(n, re, replacer, string) -{ - n = n.ctor === 'All' ? Infinity : n._0; - var count = 0; - function jsReplacer(match) - { - if (count++ >= n) - { - return match; - } - var i = arguments.length - 3; - var submatches = new Array(i); - while (i > 0) - { - var submatch = arguments[i]; - submatches[--i] = submatch === undefined - ? _elm_lang$core$Maybe$Nothing - : _elm_lang$core$Maybe$Just(submatch); - } - return replacer({ - match: match, - submatches: _elm_lang$core$Native_List.fromArray(submatches), - index: arguments[arguments.length - 2], - number: count - }); - } - return string.replace(re, jsReplacer); -} - -function split(n, re, str) -{ - n = n.ctor === 'All' ? Infinity : n._0; - if (n === Infinity) - { - return _elm_lang$core$Native_List.fromArray(str.split(re)); - } - var string = str; - var result; - var out = []; - var start = re.lastIndex; - var restoreLastIndex = re.lastIndex; - while (n--) - { - if (!(result = re.exec(string))) break; - out.push(string.slice(start, result.index)); - start = re.lastIndex; - } - out.push(string.slice(start)); - re.lastIndex = restoreLastIndex; - return _elm_lang$core$Native_List.fromArray(out); -} - -return { - regex: regex, - caseInsensitive: caseInsensitive, - escape: escape, - - contains: F2(contains), - find: F3(find), - replace: F4(replace), - split: F3(split) -}; - -}(); - -var _elm_lang$core$Process$kill = _elm_lang$core$Native_Scheduler.kill; -var _elm_lang$core$Process$sleep = _elm_lang$core$Native_Scheduler.sleep; -var _elm_lang$core$Process$spawn = _elm_lang$core$Native_Scheduler.spawn; - -var _elm_lang$core$Regex$split = _elm_lang$core$Native_Regex.split; -var _elm_lang$core$Regex$replace = _elm_lang$core$Native_Regex.replace; -var _elm_lang$core$Regex$find = _elm_lang$core$Native_Regex.find; -var _elm_lang$core$Regex$contains = _elm_lang$core$Native_Regex.contains; -var _elm_lang$core$Regex$caseInsensitive = _elm_lang$core$Native_Regex.caseInsensitive; -var _elm_lang$core$Regex$regex = _elm_lang$core$Native_Regex.regex; -var _elm_lang$core$Regex$escape = _elm_lang$core$Native_Regex.escape; -var _elm_lang$core$Regex$Match = F4( - function (a, b, c, d) { - return {match: a, submatches: b, index: c, number: d}; - }); -var _elm_lang$core$Regex$Regex = {ctor: 'Regex'}; -var _elm_lang$core$Regex$AtMost = function (a) { - return {ctor: 'AtMost', _0: a}; -}; -var _elm_lang$core$Regex$All = {ctor: 'All'}; - -var _elm_lang$dom$Native_Dom = function() { - -var fakeNode = { - addEventListener: function() {}, - removeEventListener: function() {} -}; - -var onDocument = on(typeof document !== 'undefined' ? document : fakeNode); -var onWindow = on(typeof window !== 'undefined' ? window : fakeNode); - -function on(node) -{ - return function(eventName, decoder, toTask) - { - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) { - - function performTask(event) - { - var result = A2(_elm_lang$core$Json_Decode$decodeValue, decoder, event); - if (result.ctor === 'Ok') - { - _elm_lang$core$Native_Scheduler.rawSpawn(toTask(result._0)); - } - } - - node.addEventListener(eventName, performTask); - - return function() - { - node.removeEventListener(eventName, performTask); - }; - }); - }; -} - -var rAF = typeof requestAnimationFrame !== 'undefined' - ? requestAnimationFrame - : function(callback) { callback(); }; - -function withNode(id, doStuff) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - rAF(function() - { - var node = document.getElementById(id); - if (node === null) - { - callback(_elm_lang$core$Native_Scheduler.fail({ ctor: 'NotFound', _0: id })); - return; - } - callback(_elm_lang$core$Native_Scheduler.succeed(doStuff(node))); - }); - }); -} - - -// FOCUS - -function focus(id) -{ - return withNode(id, function(node) { - node.focus(); - return _elm_lang$core$Native_Utils.Tuple0; - }); -} - -function blur(id) -{ - return withNode(id, function(node) { - node.blur(); - return _elm_lang$core$Native_Utils.Tuple0; - }); -} - - -// SCROLLING - -function getScrollTop(id) -{ - return withNode(id, function(node) { - return node.scrollTop; - }); -} - -function setScrollTop(id, desiredScrollTop) -{ - return withNode(id, function(node) { - node.scrollTop = desiredScrollTop; - return _elm_lang$core$Native_Utils.Tuple0; - }); -} - -function toBottom(id) -{ - return withNode(id, function(node) { - node.scrollTop = node.scrollHeight; - return _elm_lang$core$Native_Utils.Tuple0; - }); -} - -function getScrollLeft(id) -{ - return withNode(id, function(node) { - return node.scrollLeft; - }); -} - -function setScrollLeft(id, desiredScrollLeft) -{ - return withNode(id, function(node) { - node.scrollLeft = desiredScrollLeft; - return _elm_lang$core$Native_Utils.Tuple0; - }); -} - -function toRight(id) -{ - return withNode(id, function(node) { - node.scrollLeft = node.scrollWidth; - return _elm_lang$core$Native_Utils.Tuple0; - }); -} - - -// SIZE - -function width(options, id) -{ - return withNode(id, function(node) { - switch (options.ctor) - { - case 'Content': - return node.scrollWidth; - case 'VisibleContent': - return node.clientWidth; - case 'VisibleContentWithBorders': - return node.offsetWidth; - case 'VisibleContentWithBordersAndMargins': - var rect = node.getBoundingClientRect(); - return rect.right - rect.left; - } - }); -} - -function height(options, id) -{ - return withNode(id, function(node) { - switch (options.ctor) - { - case 'Content': - return node.scrollHeight; - case 'VisibleContent': - return node.clientHeight; - case 'VisibleContentWithBorders': - return node.offsetHeight; - case 'VisibleContentWithBordersAndMargins': - var rect = node.getBoundingClientRect(); - return rect.bottom - rect.top; - } - }); -} - -return { - onDocument: F3(onDocument), - onWindow: F3(onWindow), - - focus: focus, - blur: blur, - - getScrollTop: getScrollTop, - setScrollTop: F2(setScrollTop), - getScrollLeft: getScrollLeft, - setScrollLeft: F2(setScrollLeft), - toBottom: toBottom, - toRight: toRight, - - height: F2(height), - width: F2(width) -}; - -}(); - -var _elm_lang$dom$Dom_LowLevel$onWindow = _elm_lang$dom$Native_Dom.onWindow; -var _elm_lang$dom$Dom_LowLevel$onDocument = _elm_lang$dom$Native_Dom.onDocument; - -var _elm_lang$virtual_dom$VirtualDom_Debug$wrap; -var _elm_lang$virtual_dom$VirtualDom_Debug$wrapWithFlags; - -var _elm_lang$virtual_dom$Native_VirtualDom = function() { - -var STYLE_KEY = 'STYLE'; -var EVENT_KEY = 'EVENT'; -var ATTR_KEY = 'ATTR'; -var ATTR_NS_KEY = 'ATTR_NS'; - -var localDoc = typeof document !== 'undefined' ? document : {}; - - -//////////// VIRTUAL DOM NODES //////////// - - -function text(string) -{ - return { - type: 'text', - text: string - }; -} - - -function node(tag) -{ - return F2(function(factList, kidList) { - return nodeHelp(tag, factList, kidList); - }); -} - - -function nodeHelp(tag, factList, kidList) -{ - var organized = organizeFacts(factList); - var namespace = organized.namespace; - var facts = organized.facts; - - var children = []; - var descendantsCount = 0; - while (kidList.ctor !== '[]') - { - var kid = kidList._0; - descendantsCount += (kid.descendantsCount || 0); - children.push(kid); - kidList = kidList._1; - } - descendantsCount += children.length; - - return { - type: 'node', - tag: tag, - facts: facts, - children: children, - namespace: namespace, - descendantsCount: descendantsCount - }; -} - - -function keyedNode(tag, factList, kidList) -{ - var organized = organizeFacts(factList); - var namespace = organized.namespace; - var facts = organized.facts; - - var children = []; - var descendantsCount = 0; - while (kidList.ctor !== '[]') - { - var kid = kidList._0; - descendantsCount += (kid._1.descendantsCount || 0); - children.push(kid); - kidList = kidList._1; - } - descendantsCount += children.length; - - return { - type: 'keyed-node', - tag: tag, - facts: facts, - children: children, - namespace: namespace, - descendantsCount: descendantsCount - }; -} - - -function custom(factList, model, impl) -{ - var facts = organizeFacts(factList).facts; - - return { - type: 'custom', - facts: facts, - model: model, - impl: impl - }; -} - - -function map(tagger, node) -{ - return { - type: 'tagger', - tagger: tagger, - node: node, - descendantsCount: 1 + (node.descendantsCount || 0) - }; -} - - -function thunk(func, args, thunk) -{ - return { - type: 'thunk', - func: func, - args: args, - thunk: thunk, - node: undefined - }; -} - -function lazy(fn, a) -{ - return thunk(fn, [a], function() { - return fn(a); - }); -} - -function lazy2(fn, a, b) -{ - return thunk(fn, [a,b], function() { - return A2(fn, a, b); - }); -} - -function lazy3(fn, a, b, c) -{ - return thunk(fn, [a,b,c], function() { - return A3(fn, a, b, c); - }); -} - - - -// FACTS - - -function organizeFacts(factList) -{ - var namespace, facts = {}; - - while (factList.ctor !== '[]') - { - var entry = factList._0; - var key = entry.key; - - if (key === ATTR_KEY || key === ATTR_NS_KEY || key === EVENT_KEY) - { - var subFacts = facts[key] || {}; - subFacts[entry.realKey] = entry.value; - facts[key] = subFacts; - } - else if (key === STYLE_KEY) - { - var styles = facts[key] || {}; - var styleList = entry.value; - while (styleList.ctor !== '[]') - { - var style = styleList._0; - styles[style._0] = style._1; - styleList = styleList._1; - } - facts[key] = styles; - } - else if (key === 'namespace') - { - namespace = entry.value; - } - else if (key === 'className') - { - var classes = facts[key]; - facts[key] = typeof classes === 'undefined' - ? entry.value - : classes + ' ' + entry.value; - } - else - { - facts[key] = entry.value; - } - factList = factList._1; - } - - return { - facts: facts, - namespace: namespace - }; -} - - - -//////////// PROPERTIES AND ATTRIBUTES //////////// - - -function style(value) -{ - return { - key: STYLE_KEY, - value: value - }; -} - - -function property(key, value) -{ - return { - key: key, - value: value - }; -} - - -function attribute(key, value) -{ - return { - key: ATTR_KEY, - realKey: key, - value: value - }; -} - - -function attributeNS(namespace, key, value) -{ - return { - key: ATTR_NS_KEY, - realKey: key, - value: { - value: value, - namespace: namespace - } - }; -} - - -function on(name, options, decoder) -{ - return { - key: EVENT_KEY, - realKey: name, - value: { - options: options, - decoder: decoder - } - }; -} - - -function equalEvents(a, b) -{ - if (a.options !== b.options) - { - if (a.options.stopPropagation !== b.options.stopPropagation || a.options.preventDefault !== b.options.preventDefault) - { - return false; - } - } - return _elm_lang$core$Native_Json.equality(a.decoder, b.decoder); -} - - -function mapProperty(func, property) -{ - if (property.key !== EVENT_KEY) - { - return property; - } - return on( - property.realKey, - property.value.options, - A2(_elm_lang$core$Json_Decode$map, func, property.value.decoder) - ); -} - - -//////////// RENDER //////////// - - -function render(vNode, eventNode) -{ - switch (vNode.type) - { - case 'thunk': - if (!vNode.node) - { - vNode.node = vNode.thunk(); - } - return render(vNode.node, eventNode); - - case 'tagger': - var subNode = vNode.node; - var tagger = vNode.tagger; - - while (subNode.type === 'tagger') - { - typeof tagger !== 'object' - ? tagger = [tagger, subNode.tagger] - : tagger.push(subNode.tagger); - - subNode = subNode.node; - } - - var subEventRoot = { tagger: tagger, parent: eventNode }; - var domNode = render(subNode, subEventRoot); - domNode.elm_event_node_ref = subEventRoot; - return domNode; - - case 'text': - return localDoc.createTextNode(vNode.text); - - case 'node': - var domNode = vNode.namespace - ? localDoc.createElementNS(vNode.namespace, vNode.tag) - : localDoc.createElement(vNode.tag); - - applyFacts(domNode, eventNode, vNode.facts); - - var children = vNode.children; - - for (var i = 0; i < children.length; i++) - { - domNode.appendChild(render(children[i], eventNode)); - } - - return domNode; - - case 'keyed-node': - var domNode = vNode.namespace - ? localDoc.createElementNS(vNode.namespace, vNode.tag) - : localDoc.createElement(vNode.tag); - - applyFacts(domNode, eventNode, vNode.facts); - - var children = vNode.children; - - for (var i = 0; i < children.length; i++) - { - domNode.appendChild(render(children[i]._1, eventNode)); - } - - return domNode; - - case 'custom': - var domNode = vNode.impl.render(vNode.model); - applyFacts(domNode, eventNode, vNode.facts); - return domNode; - } -} - - - -//////////// APPLY FACTS //////////// - - -function applyFacts(domNode, eventNode, facts) -{ - for (var key in facts) - { - var value = facts[key]; - - switch (key) - { - case STYLE_KEY: - applyStyles(domNode, value); - break; - - case EVENT_KEY: - applyEvents(domNode, eventNode, value); - break; - - case ATTR_KEY: - applyAttrs(domNode, value); - break; - - case ATTR_NS_KEY: - applyAttrsNS(domNode, value); - break; - - case 'value': - if (domNode[key] !== value) - { - domNode[key] = value; - } - break; - - default: - domNode[key] = value; - break; - } - } -} - -function applyStyles(domNode, styles) -{ - var domNodeStyle = domNode.style; - - for (var key in styles) - { - domNodeStyle[key] = styles[key]; - } -} - -function applyEvents(domNode, eventNode, events) -{ - var allHandlers = domNode.elm_handlers || {}; - - for (var key in events) - { - var handler = allHandlers[key]; - var value = events[key]; - - if (typeof value === 'undefined') - { - domNode.removeEventListener(key, handler); - allHandlers[key] = undefined; - } - else if (typeof handler === 'undefined') - { - var handler = makeEventHandler(eventNode, value); - domNode.addEventListener(key, handler); - allHandlers[key] = handler; - } - else - { - handler.info = value; - } - } - - domNode.elm_handlers = allHandlers; -} - -function makeEventHandler(eventNode, info) -{ - function eventHandler(event) - { - var info = eventHandler.info; - - var value = A2(_elm_lang$core$Native_Json.run, info.decoder, event); - - if (value.ctor === 'Ok') - { - var options = info.options; - if (options.stopPropagation) - { - event.stopPropagation(); - } - if (options.preventDefault) - { - event.preventDefault(); - } - - var message = value._0; - - var currentEventNode = eventNode; - while (currentEventNode) - { - var tagger = currentEventNode.tagger; - if (typeof tagger === 'function') - { - message = tagger(message); - } - else - { - for (var i = tagger.length; i--; ) - { - message = tagger[i](message); - } - } - currentEventNode = currentEventNode.parent; - } - } - }; - - eventHandler.info = info; - - return eventHandler; -} - -function applyAttrs(domNode, attrs) -{ - for (var key in attrs) - { - var value = attrs[key]; - if (typeof value === 'undefined') - { - domNode.removeAttribute(key); - } - else - { - domNode.setAttribute(key, value); - } - } -} - -function applyAttrsNS(domNode, nsAttrs) -{ - for (var key in nsAttrs) - { - var pair = nsAttrs[key]; - var namespace = pair.namespace; - var value = pair.value; - - if (typeof value === 'undefined') - { - domNode.removeAttributeNS(namespace, key); - } - else - { - domNode.setAttributeNS(namespace, key, value); - } - } -} - - - -//////////// DIFF //////////// - - -function diff(a, b) -{ - var patches = []; - diffHelp(a, b, patches, 0); - return patches; -} - - -function makePatch(type, index, data) -{ - return { - index: index, - type: type, - data: data, - domNode: undefined, - eventNode: undefined - }; -} - - -function diffHelp(a, b, patches, index) -{ - if (a === b) - { - return; - } - - var aType = a.type; - var bType = b.type; - - // Bail if you run into different types of nodes. Implies that the - // structure has changed significantly and it's not worth a diff. - if (aType !== bType) - { - patches.push(makePatch('p-redraw', index, b)); - return; - } - - // Now we know that both nodes are the same type. - switch (bType) - { - case 'thunk': - var aArgs = a.args; - var bArgs = b.args; - var i = aArgs.length; - var same = a.func === b.func && i === bArgs.length; - while (same && i--) - { - same = aArgs[i] === bArgs[i]; - } - if (same) - { - b.node = a.node; - return; - } - b.node = b.thunk(); - var subPatches = []; - diffHelp(a.node, b.node, subPatches, 0); - if (subPatches.length > 0) - { - patches.push(makePatch('p-thunk', index, subPatches)); - } - return; - - case 'tagger': - // gather nested taggers - var aTaggers = a.tagger; - var bTaggers = b.tagger; - var nesting = false; - - var aSubNode = a.node; - while (aSubNode.type === 'tagger') - { - nesting = true; - - typeof aTaggers !== 'object' - ? aTaggers = [aTaggers, aSubNode.tagger] - : aTaggers.push(aSubNode.tagger); - - aSubNode = aSubNode.node; - } - - var bSubNode = b.node; - while (bSubNode.type === 'tagger') - { - nesting = true; - - typeof bTaggers !== 'object' - ? bTaggers = [bTaggers, bSubNode.tagger] - : bTaggers.push(bSubNode.tagger); - - bSubNode = bSubNode.node; - } - - // Just bail if different numbers of taggers. This implies the - // structure of the virtual DOM has changed. - if (nesting && aTaggers.length !== bTaggers.length) - { - patches.push(makePatch('p-redraw', index, b)); - return; - } - - // check if taggers are "the same" - if (nesting ? !pairwiseRefEqual(aTaggers, bTaggers) : aTaggers !== bTaggers) - { - patches.push(makePatch('p-tagger', index, bTaggers)); - } - - // diff everything below the taggers - diffHelp(aSubNode, bSubNode, patches, index + 1); - return; - - case 'text': - if (a.text !== b.text) - { - patches.push(makePatch('p-text', index, b.text)); - return; - } - - return; - - case 'node': - // Bail if obvious indicators have changed. Implies more serious - // structural changes such that it's not worth it to diff. - if (a.tag !== b.tag || a.namespace !== b.namespace) - { - patches.push(makePatch('p-redraw', index, b)); - return; - } - - var factsDiff = diffFacts(a.facts, b.facts); - - if (typeof factsDiff !== 'undefined') - { - patches.push(makePatch('p-facts', index, factsDiff)); - } - - diffChildren(a, b, patches, index); - return; - - case 'keyed-node': - // Bail if obvious indicators have changed. Implies more serious - // structural changes such that it's not worth it to diff. - if (a.tag !== b.tag || a.namespace !== b.namespace) - { - patches.push(makePatch('p-redraw', index, b)); - return; - } - - var factsDiff = diffFacts(a.facts, b.facts); - - if (typeof factsDiff !== 'undefined') - { - patches.push(makePatch('p-facts', index, factsDiff)); - } - - diffKeyedChildren(a, b, patches, index); - return; - - case 'custom': - if (a.impl !== b.impl) - { - patches.push(makePatch('p-redraw', index, b)); - return; - } - - var factsDiff = diffFacts(a.facts, b.facts); - if (typeof factsDiff !== 'undefined') - { - patches.push(makePatch('p-facts', index, factsDiff)); - } - - var patch = b.impl.diff(a,b); - if (patch) - { - patches.push(makePatch('p-custom', index, patch)); - return; - } - - return; - } -} - - -// assumes the incoming arrays are the same length -function pairwiseRefEqual(as, bs) -{ - for (var i = 0; i < as.length; i++) - { - if (as[i] !== bs[i]) - { - return false; - } - } - - return true; -} - - -// TODO Instead of creating a new diff object, it's possible to just test if -// there *is* a diff. During the actual patch, do the diff again and make the -// modifications directly. This way, there's no new allocations. Worth it? -function diffFacts(a, b, category) -{ - var diff; - - // look for changes and removals - for (var aKey in a) - { - if (aKey === STYLE_KEY || aKey === EVENT_KEY || aKey === ATTR_KEY || aKey === ATTR_NS_KEY) - { - var subDiff = diffFacts(a[aKey], b[aKey] || {}, aKey); - if (subDiff) - { - diff = diff || {}; - diff[aKey] = subDiff; - } - continue; - } - - // remove if not in the new facts - if (!(aKey in b)) - { - diff = diff || {}; - diff[aKey] = - (typeof category === 'undefined') - ? (typeof a[aKey] === 'string' ? '' : null) - : - (category === STYLE_KEY) - ? '' - : - (category === EVENT_KEY || category === ATTR_KEY) - ? undefined - : - { namespace: a[aKey].namespace, value: undefined }; - - continue; - } - - var aValue = a[aKey]; - var bValue = b[aKey]; - - // reference equal, so don't worry about it - if (aValue === bValue && aKey !== 'value' - || category === EVENT_KEY && equalEvents(aValue, bValue)) - { - continue; - } - - diff = diff || {}; - diff[aKey] = bValue; - } - - // add new stuff - for (var bKey in b) - { - if (!(bKey in a)) - { - diff = diff || {}; - diff[bKey] = b[bKey]; - } - } - - return diff; -} - - -function diffChildren(aParent, bParent, patches, rootIndex) -{ - var aChildren = aParent.children; - var bChildren = bParent.children; - - var aLen = aChildren.length; - var bLen = bChildren.length; - - // FIGURE OUT IF THERE ARE INSERTS OR REMOVALS - - if (aLen > bLen) - { - patches.push(makePatch('p-remove-last', rootIndex, aLen - bLen)); - } - else if (aLen < bLen) - { - patches.push(makePatch('p-append', rootIndex, bChildren.slice(aLen))); - } - - // PAIRWISE DIFF EVERYTHING ELSE - - var index = rootIndex; - var minLen = aLen < bLen ? aLen : bLen; - for (var i = 0; i < minLen; i++) - { - index++; - var aChild = aChildren[i]; - diffHelp(aChild, bChildren[i], patches, index); - index += aChild.descendantsCount || 0; - } -} - - - -//////////// KEYED DIFF //////////// - - -function diffKeyedChildren(aParent, bParent, patches, rootIndex) -{ - var localPatches = []; - - var changes = {}; // Dict String Entry - var inserts = []; // Array { index : Int, entry : Entry } - // type Entry = { tag : String, vnode : VNode, index : Int, data : _ } - - var aChildren = aParent.children; - var bChildren = bParent.children; - var aLen = aChildren.length; - var bLen = bChildren.length; - var aIndex = 0; - var bIndex = 0; - - var index = rootIndex; - - while (aIndex < aLen && bIndex < bLen) - { - var a = aChildren[aIndex]; - var b = bChildren[bIndex]; - - var aKey = a._0; - var bKey = b._0; - var aNode = a._1; - var bNode = b._1; - - // check if keys match - - if (aKey === bKey) - { - index++; - diffHelp(aNode, bNode, localPatches, index); - index += aNode.descendantsCount || 0; - - aIndex++; - bIndex++; - continue; - } - - // look ahead 1 to detect insertions and removals. - - var aLookAhead = aIndex + 1 < aLen; - var bLookAhead = bIndex + 1 < bLen; - - if (aLookAhead) - { - var aNext = aChildren[aIndex + 1]; - var aNextKey = aNext._0; - var aNextNode = aNext._1; - var oldMatch = bKey === aNextKey; - } - - if (bLookAhead) - { - var bNext = bChildren[bIndex + 1]; - var bNextKey = bNext._0; - var bNextNode = bNext._1; - var newMatch = aKey === bNextKey; - } - - - // swap a and b - if (aLookAhead && bLookAhead && newMatch && oldMatch) - { - index++; - diffHelp(aNode, bNextNode, localPatches, index); - insertNode(changes, localPatches, aKey, bNode, bIndex, inserts); - index += aNode.descendantsCount || 0; - - index++; - removeNode(changes, localPatches, aKey, aNextNode, index); - index += aNextNode.descendantsCount || 0; - - aIndex += 2; - bIndex += 2; - continue; - } - - // insert b - if (bLookAhead && newMatch) - { - index++; - insertNode(changes, localPatches, bKey, bNode, bIndex, inserts); - diffHelp(aNode, bNextNode, localPatches, index); - index += aNode.descendantsCount || 0; - - aIndex += 1; - bIndex += 2; - continue; - } - - // remove a - if (aLookAhead && oldMatch) - { - index++; - removeNode(changes, localPatches, aKey, aNode, index); - index += aNode.descendantsCount || 0; - - index++; - diffHelp(aNextNode, bNode, localPatches, index); - index += aNextNode.descendantsCount || 0; - - aIndex += 2; - bIndex += 1; - continue; - } - - // remove a, insert b - if (aLookAhead && bLookAhead && aNextKey === bNextKey) - { - index++; - removeNode(changes, localPatches, aKey, aNode, index); - insertNode(changes, localPatches, bKey, bNode, bIndex, inserts); - index += aNode.descendantsCount || 0; - - index++; - diffHelp(aNextNode, bNextNode, localPatches, index); - index += aNextNode.descendantsCount || 0; - - aIndex += 2; - bIndex += 2; - continue; - } - - break; - } - - // eat up any remaining nodes with removeNode and insertNode - - while (aIndex < aLen) - { - index++; - var a = aChildren[aIndex]; - var aNode = a._1; - removeNode(changes, localPatches, a._0, aNode, index); - index += aNode.descendantsCount || 0; - aIndex++; - } - - var endInserts; - while (bIndex < bLen) - { - endInserts = endInserts || []; - var b = bChildren[bIndex]; - insertNode(changes, localPatches, b._0, b._1, undefined, endInserts); - bIndex++; - } - - if (localPatches.length > 0 || inserts.length > 0 || typeof endInserts !== 'undefined') - { - patches.push(makePatch('p-reorder', rootIndex, { - patches: localPatches, - inserts: inserts, - endInserts: endInserts - })); - } -} - - - -//////////// CHANGES FROM KEYED DIFF //////////// - - -var POSTFIX = '_elmW6BL'; - - -function insertNode(changes, localPatches, key, vnode, bIndex, inserts) -{ - var entry = changes[key]; - - // never seen this key before - if (typeof entry === 'undefined') - { - entry = { - tag: 'insert', - vnode: vnode, - index: bIndex, - data: undefined - }; - - inserts.push({ index: bIndex, entry: entry }); - changes[key] = entry; - - return; - } - - // this key was removed earlier, a match! - if (entry.tag === 'remove') - { - inserts.push({ index: bIndex, entry: entry }); - - entry.tag = 'move'; - var subPatches = []; - diffHelp(entry.vnode, vnode, subPatches, entry.index); - entry.index = bIndex; - entry.data.data = { - patches: subPatches, - entry: entry - }; - - return; - } - - // this key has already been inserted or moved, a duplicate! - insertNode(changes, localPatches, key + POSTFIX, vnode, bIndex, inserts); -} - - -function removeNode(changes, localPatches, key, vnode, index) -{ - var entry = changes[key]; - - // never seen this key before - if (typeof entry === 'undefined') - { - var patch = makePatch('p-remove', index, undefined); - localPatches.push(patch); - - changes[key] = { - tag: 'remove', - vnode: vnode, - index: index, - data: patch - }; - - return; - } - - // this key was inserted earlier, a match! - if (entry.tag === 'insert') - { - entry.tag = 'move'; - var subPatches = []; - diffHelp(vnode, entry.vnode, subPatches, index); - - var patch = makePatch('p-remove', index, { - patches: subPatches, - entry: entry - }); - localPatches.push(patch); - - return; - } - - // this key has already been removed or moved, a duplicate! - removeNode(changes, localPatches, key + POSTFIX, vnode, index); -} - - - -//////////// ADD DOM NODES //////////// -// -// Each DOM node has an "index" assigned in order of traversal. It is important -// to minimize our crawl over the actual DOM, so these indexes (along with the -// descendantsCount of virtual nodes) let us skip touching entire subtrees of -// the DOM if we know there are no patches there. - - -function addDomNodes(domNode, vNode, patches, eventNode) -{ - addDomNodesHelp(domNode, vNode, patches, 0, 0, vNode.descendantsCount, eventNode); -} - - -// assumes `patches` is non-empty and indexes increase monotonically. -function addDomNodesHelp(domNode, vNode, patches, i, low, high, eventNode) -{ - var patch = patches[i]; - var index = patch.index; - - while (index === low) - { - var patchType = patch.type; - - if (patchType === 'p-thunk') - { - addDomNodes(domNode, vNode.node, patch.data, eventNode); - } - else if (patchType === 'p-reorder') - { - patch.domNode = domNode; - patch.eventNode = eventNode; - - var subPatches = patch.data.patches; - if (subPatches.length > 0) - { - addDomNodesHelp(domNode, vNode, subPatches, 0, low, high, eventNode); - } - } - else if (patchType === 'p-remove') - { - patch.domNode = domNode; - patch.eventNode = eventNode; - - var data = patch.data; - if (typeof data !== 'undefined') - { - data.entry.data = domNode; - var subPatches = data.patches; - if (subPatches.length > 0) - { - addDomNodesHelp(domNode, vNode, subPatches, 0, low, high, eventNode); - } - } - } - else - { - patch.domNode = domNode; - patch.eventNode = eventNode; - } - - i++; - - if (!(patch = patches[i]) || (index = patch.index) > high) - { - return i; - } - } - - switch (vNode.type) - { - case 'tagger': - var subNode = vNode.node; - - while (subNode.type === "tagger") - { - subNode = subNode.node; - } - - return addDomNodesHelp(domNode, subNode, patches, i, low + 1, high, domNode.elm_event_node_ref); - - case 'node': - var vChildren = vNode.children; - var childNodes = domNode.childNodes; - for (var j = 0; j < vChildren.length; j++) - { - low++; - var vChild = vChildren[j]; - var nextLow = low + (vChild.descendantsCount || 0); - if (low <= index && index <= nextLow) - { - i = addDomNodesHelp(childNodes[j], vChild, patches, i, low, nextLow, eventNode); - if (!(patch = patches[i]) || (index = patch.index) > high) - { - return i; - } - } - low = nextLow; - } - return i; - - case 'keyed-node': - var vChildren = vNode.children; - var childNodes = domNode.childNodes; - for (var j = 0; j < vChildren.length; j++) - { - low++; - var vChild = vChildren[j]._1; - var nextLow = low + (vChild.descendantsCount || 0); - if (low <= index && index <= nextLow) - { - i = addDomNodesHelp(childNodes[j], vChild, patches, i, low, nextLow, eventNode); - if (!(patch = patches[i]) || (index = patch.index) > high) - { - return i; - } - } - low = nextLow; - } - return i; - - case 'text': - case 'thunk': - throw new Error('should never traverse `text` or `thunk` nodes like this'); - } -} - - - -//////////// APPLY PATCHES //////////// - - -function applyPatches(rootDomNode, oldVirtualNode, patches, eventNode) -{ - if (patches.length === 0) - { - return rootDomNode; - } - - addDomNodes(rootDomNode, oldVirtualNode, patches, eventNode); - return applyPatchesHelp(rootDomNode, patches); -} - -function applyPatchesHelp(rootDomNode, patches) -{ - for (var i = 0; i < patches.length; i++) - { - var patch = patches[i]; - var localDomNode = patch.domNode - var newNode = applyPatch(localDomNode, patch); - if (localDomNode === rootDomNode) - { - rootDomNode = newNode; - } - } - return rootDomNode; -} - -function applyPatch(domNode, patch) -{ - switch (patch.type) - { - case 'p-redraw': - return applyPatchRedraw(domNode, patch.data, patch.eventNode); - - case 'p-facts': - applyFacts(domNode, patch.eventNode, patch.data); - return domNode; - - case 'p-text': - domNode.replaceData(0, domNode.length, patch.data); - return domNode; - - case 'p-thunk': - return applyPatchesHelp(domNode, patch.data); - - case 'p-tagger': - if (typeof domNode.elm_event_node_ref !== 'undefined') - { - domNode.elm_event_node_ref.tagger = patch.data; - } - else - { - domNode.elm_event_node_ref = { tagger: patch.data, parent: patch.eventNode }; - } - return domNode; - - case 'p-remove-last': - var i = patch.data; - while (i--) - { - domNode.removeChild(domNode.lastChild); - } - return domNode; - - case 'p-append': - var newNodes = patch.data; - for (var i = 0; i < newNodes.length; i++) - { - domNode.appendChild(render(newNodes[i], patch.eventNode)); - } - return domNode; - - case 'p-remove': - var data = patch.data; - if (typeof data === 'undefined') - { - domNode.parentNode.removeChild(domNode); - return domNode; - } - var entry = data.entry; - if (typeof entry.index !== 'undefined') - { - domNode.parentNode.removeChild(domNode); - } - entry.data = applyPatchesHelp(domNode, data.patches); - return domNode; - - case 'p-reorder': - return applyPatchReorder(domNode, patch); - - case 'p-custom': - var impl = patch.data; - return impl.applyPatch(domNode, impl.data); - - default: - throw new Error('Ran into an unknown patch!'); - } -} - - -function applyPatchRedraw(domNode, vNode, eventNode) -{ - var parentNode = domNode.parentNode; - var newNode = render(vNode, eventNode); - - if (typeof newNode.elm_event_node_ref === 'undefined') - { - newNode.elm_event_node_ref = domNode.elm_event_node_ref; - } - - if (parentNode && newNode !== domNode) - { - parentNode.replaceChild(newNode, domNode); - } - return newNode; -} - - -function applyPatchReorder(domNode, patch) -{ - var data = patch.data; - - // remove end inserts - var frag = applyPatchReorderEndInsertsHelp(data.endInserts, patch); - - // removals - domNode = applyPatchesHelp(domNode, data.patches); - - // inserts - var inserts = data.inserts; - for (var i = 0; i < inserts.length; i++) - { - var insert = inserts[i]; - var entry = insert.entry; - var node = entry.tag === 'move' - ? entry.data - : render(entry.vnode, patch.eventNode); - domNode.insertBefore(node, domNode.childNodes[insert.index]); - } - - // add end inserts - if (typeof frag !== 'undefined') - { - domNode.appendChild(frag); - } - - return domNode; -} - - -function applyPatchReorderEndInsertsHelp(endInserts, patch) -{ - if (typeof endInserts === 'undefined') - { - return; - } - - var frag = localDoc.createDocumentFragment(); - for (var i = 0; i < endInserts.length; i++) - { - var insert = endInserts[i]; - var entry = insert.entry; - frag.appendChild(entry.tag === 'move' - ? entry.data - : render(entry.vnode, patch.eventNode) - ); - } - return frag; -} - - -// PROGRAMS - -var program = makeProgram(checkNoFlags); -var programWithFlags = makeProgram(checkYesFlags); - -function makeProgram(flagChecker) -{ - return F2(function(debugWrap, impl) - { - return function(flagDecoder) - { - return function(object, moduleName, debugMetadata) - { - var checker = flagChecker(flagDecoder, moduleName); - if (typeof debugMetadata === 'undefined') - { - normalSetup(impl, object, moduleName, checker); - } - else - { - debugSetup(A2(debugWrap, debugMetadata, impl), object, moduleName, checker); - } - }; - }; - }); -} - -function staticProgram(vNode) -{ - var nothing = _elm_lang$core$Native_Utils.Tuple2( - _elm_lang$core$Native_Utils.Tuple0, - _elm_lang$core$Platform_Cmd$none - ); - return A2(program, _elm_lang$virtual_dom$VirtualDom_Debug$wrap, { - init: nothing, - view: function() { return vNode; }, - update: F2(function() { return nothing; }), - subscriptions: function() { return _elm_lang$core$Platform_Sub$none; } - })(); -} - - -// FLAG CHECKERS - -function checkNoFlags(flagDecoder, moduleName) -{ - return function(init, flags, domNode) - { - if (typeof flags === 'undefined') - { - return init; - } - - var errorMessage = - 'The `' + moduleName + '` module does not need flags.\n' - + 'Initialize it with no arguments and you should be all set!'; - - crash(errorMessage, domNode); - }; -} - -function checkYesFlags(flagDecoder, moduleName) -{ - return function(init, flags, domNode) - { - if (typeof flagDecoder === 'undefined') - { - var errorMessage = - 'Are you trying to sneak a Never value into Elm? Trickster!\n' - + 'It looks like ' + moduleName + '.main is defined with `programWithFlags` but has type `Program Never`.\n' - + 'Use `program` instead if you do not want flags.' - - crash(errorMessage, domNode); - } - - var result = A2(_elm_lang$core$Native_Json.run, flagDecoder, flags); - if (result.ctor === 'Ok') - { - return init(result._0); - } - - var errorMessage = - 'Trying to initialize the `' + moduleName + '` module with an unexpected flag.\n' - + 'I tried to convert it to an Elm value, but ran into this problem:\n\n' - + result._0; - - crash(errorMessage, domNode); - }; -} - -function crash(errorMessage, domNode) -{ - if (domNode) - { - domNode.innerHTML = - '
' - + '

Oops! Something went wrong when starting your Elm program.

' - + '
' + errorMessage + '
' - + '
'; - } - - throw new Error(errorMessage); -} - - -// NORMAL SETUP - -function normalSetup(impl, object, moduleName, flagChecker) -{ - object['embed'] = function embed(node, flags) - { - while (node.lastChild) - { - node.removeChild(node.lastChild); - } - - return _elm_lang$core$Native_Platform.initialize( - flagChecker(impl.init, flags, node), - impl.update, - impl.subscriptions, - normalRenderer(node, impl.view) - ); - }; - - object['fullscreen'] = function fullscreen(flags) - { - return _elm_lang$core$Native_Platform.initialize( - flagChecker(impl.init, flags, document.body), - impl.update, - impl.subscriptions, - normalRenderer(document.body, impl.view) - ); - }; -} - -function normalRenderer(parentNode, view) -{ - return function(tagger, initialModel) - { - var eventNode = { tagger: tagger, parent: undefined }; - var initialVirtualNode = view(initialModel); - var domNode = render(initialVirtualNode, eventNode); - parentNode.appendChild(domNode); - return makeStepper(domNode, view, initialVirtualNode, eventNode); - }; -} - - -// STEPPER - -var rAF = - typeof requestAnimationFrame !== 'undefined' - ? requestAnimationFrame - : function(callback) { setTimeout(callback, 1000 / 60); }; - -function makeStepper(domNode, view, initialVirtualNode, eventNode) -{ - var state = 'NO_REQUEST'; - var currNode = initialVirtualNode; - var nextModel; - - function updateIfNeeded() - { - switch (state) - { - case 'NO_REQUEST': - throw new Error( - 'Unexpected draw callback.\n' + - 'Please report this to .' - ); - - case 'PENDING_REQUEST': - rAF(updateIfNeeded); - state = 'EXTRA_REQUEST'; - - var nextNode = view(nextModel); - var patches = diff(currNode, nextNode); - domNode = applyPatches(domNode, currNode, patches, eventNode); - currNode = nextNode; - - return; - - case 'EXTRA_REQUEST': - state = 'NO_REQUEST'; - return; - } - } - - return function stepper(model) - { - if (state === 'NO_REQUEST') - { - rAF(updateIfNeeded); - } - state = 'PENDING_REQUEST'; - nextModel = model; - }; -} - - -// DEBUG SETUP - -function debugSetup(impl, object, moduleName, flagChecker) -{ - object['fullscreen'] = function fullscreen(flags) - { - var popoutRef = { doc: undefined }; - return _elm_lang$core$Native_Platform.initialize( - flagChecker(impl.init, flags, document.body), - impl.update(scrollTask(popoutRef)), - impl.subscriptions, - debugRenderer(moduleName, document.body, popoutRef, impl.view, impl.viewIn, impl.viewOut) - ); - }; - - object['embed'] = function fullscreen(node, flags) - { - var popoutRef = { doc: undefined }; - return _elm_lang$core$Native_Platform.initialize( - flagChecker(impl.init, flags, node), - impl.update(scrollTask(popoutRef)), - impl.subscriptions, - debugRenderer(moduleName, node, popoutRef, impl.view, impl.viewIn, impl.viewOut) - ); - }; -} - -function scrollTask(popoutRef) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - var doc = popoutRef.doc; - if (doc) - { - var msgs = doc.getElementsByClassName('debugger-sidebar-messages')[0]; - if (msgs) - { - msgs.scrollTop = msgs.scrollHeight; - } - } - callback(_elm_lang$core$Native_Scheduler.succeed(_elm_lang$core$Native_Utils.Tuple0)); - }); -} - - -function debugRenderer(moduleName, parentNode, popoutRef, view, viewIn, viewOut) -{ - return function(tagger, initialModel) - { - var appEventNode = { tagger: tagger, parent: undefined }; - var eventNode = { tagger: tagger, parent: undefined }; - - // make normal stepper - var appVirtualNode = view(initialModel); - var appNode = render(appVirtualNode, appEventNode); - parentNode.appendChild(appNode); - var appStepper = makeStepper(appNode, view, appVirtualNode, appEventNode); - - // make overlay stepper - var overVirtualNode = viewIn(initialModel)._1; - var overNode = render(overVirtualNode, eventNode); - parentNode.appendChild(overNode); - var wrappedViewIn = wrapViewIn(appEventNode, overNode, viewIn); - var overStepper = makeStepper(overNode, wrappedViewIn, overVirtualNode, eventNode); - - // make debugger stepper - var debugStepper = makeDebugStepper(initialModel, viewOut, eventNode, parentNode, moduleName, popoutRef); - - return function stepper(model) - { - appStepper(model); - overStepper(model); - debugStepper(model); - } - }; -} - -function makeDebugStepper(initialModel, view, eventNode, parentNode, moduleName, popoutRef) -{ - var curr; - var domNode; - - return function stepper(model) - { - if (!model.isDebuggerOpen) - { - return; - } - - if (!popoutRef.doc) - { - curr = view(model); - domNode = openDebugWindow(moduleName, popoutRef, curr, eventNode); - return; - } - - // switch to document of popout - localDoc = popoutRef.doc; - - var next = view(model); - var patches = diff(curr, next); - domNode = applyPatches(domNode, curr, patches, eventNode); - curr = next; - - // switch back to normal document - localDoc = document; - }; -} - -function openDebugWindow(moduleName, popoutRef, virtualNode, eventNode) -{ - var w = 900; - var h = 360; - var x = screen.width - w; - var y = screen.height - h; - var debugWindow = window.open('', '', 'width=' + w + ',height=' + h + ',left=' + x + ',top=' + y); - - // switch to window document - localDoc = debugWindow.document; - - popoutRef.doc = localDoc; - localDoc.title = 'Debugger - ' + moduleName; - localDoc.body.style.margin = '0'; - localDoc.body.style.padding = '0'; - var domNode = render(virtualNode, eventNode); - localDoc.body.appendChild(domNode); - - localDoc.addEventListener('keydown', function(event) { - if (event.metaKey && event.which === 82) - { - window.location.reload(); - } - if (event.which === 38) - { - eventNode.tagger({ ctor: 'Up' }); - event.preventDefault(); - } - if (event.which === 40) - { - eventNode.tagger({ ctor: 'Down' }); - event.preventDefault(); - } - }); - - function close() - { - popoutRef.doc = undefined; - debugWindow.close(); - } - window.addEventListener('unload', close); - debugWindow.addEventListener('unload', function() { - popoutRef.doc = undefined; - window.removeEventListener('unload', close); - eventNode.tagger({ ctor: 'Close' }); - }); - - // switch back to the normal document - localDoc = document; - - return domNode; -} - - -// BLOCK EVENTS - -function wrapViewIn(appEventNode, overlayNode, viewIn) -{ - var ignorer = makeIgnorer(overlayNode); - var blocking = 'Normal'; - var overflow; - - var normalTagger = appEventNode.tagger; - var blockTagger = function() {}; - - return function(model) - { - var tuple = viewIn(model); - var newBlocking = tuple._0.ctor; - appEventNode.tagger = newBlocking === 'Normal' ? normalTagger : blockTagger; - if (blocking !== newBlocking) - { - traverse('removeEventListener', ignorer, blocking); - traverse('addEventListener', ignorer, newBlocking); - - if (blocking === 'Normal') - { - overflow = document.body.style.overflow; - document.body.style.overflow = 'hidden'; - } - - if (newBlocking === 'Normal') - { - document.body.style.overflow = overflow; - } - - blocking = newBlocking; - } - return tuple._1; - } -} - -function traverse(verbEventListener, ignorer, blocking) -{ - switch(blocking) - { - case 'Normal': - return; - - case 'Pause': - return traverseHelp(verbEventListener, ignorer, mostEvents); - - case 'Message': - return traverseHelp(verbEventListener, ignorer, allEvents); - } -} - -function traverseHelp(verbEventListener, handler, eventNames) -{ - for (var i = 0; i < eventNames.length; i++) - { - document.body[verbEventListener](eventNames[i], handler, true); - } -} - -function makeIgnorer(overlayNode) -{ - return function(event) - { - if (event.type === 'keydown' && event.metaKey && event.which === 82) - { - return; - } - - var isScroll = event.type === 'scroll' || event.type === 'wheel'; - - var node = event.target; - while (node !== null) - { - if (node.className === 'elm-overlay-message-details' && isScroll) - { - return; - } - - if (node === overlayNode && !isScroll) - { - return; - } - node = node.parentNode; - } - - event.stopPropagation(); - event.preventDefault(); - } -} - -var mostEvents = [ - 'click', 'dblclick', 'mousemove', - 'mouseup', 'mousedown', 'mouseenter', 'mouseleave', - 'touchstart', 'touchend', 'touchcancel', 'touchmove', - 'pointerdown', 'pointerup', 'pointerover', 'pointerout', - 'pointerenter', 'pointerleave', 'pointermove', 'pointercancel', - 'dragstart', 'drag', 'dragend', 'dragenter', 'dragover', 'dragleave', 'drop', - 'keyup', 'keydown', 'keypress', - 'input', 'change', - 'focus', 'blur' -]; - -var allEvents = mostEvents.concat('wheel', 'scroll'); - - -return { - node: node, - text: text, - custom: custom, - map: F2(map), - - on: F3(on), - style: style, - property: F2(property), - attribute: F2(attribute), - attributeNS: F3(attributeNS), - mapProperty: F2(mapProperty), - - lazy: F2(lazy), - lazy2: F3(lazy2), - lazy3: F4(lazy3), - keyedNode: F3(keyedNode), - - program: program, - programWithFlags: programWithFlags, - staticProgram: staticProgram -}; - -}(); - -var _elm_lang$virtual_dom$VirtualDom$programWithFlags = function (impl) { - return A2(_elm_lang$virtual_dom$Native_VirtualDom.programWithFlags, _elm_lang$virtual_dom$VirtualDom_Debug$wrapWithFlags, impl); -}; -var _elm_lang$virtual_dom$VirtualDom$program = function (impl) { - return A2(_elm_lang$virtual_dom$Native_VirtualDom.program, _elm_lang$virtual_dom$VirtualDom_Debug$wrap, impl); -}; -var _elm_lang$virtual_dom$VirtualDom$keyedNode = _elm_lang$virtual_dom$Native_VirtualDom.keyedNode; -var _elm_lang$virtual_dom$VirtualDom$lazy3 = _elm_lang$virtual_dom$Native_VirtualDom.lazy3; -var _elm_lang$virtual_dom$VirtualDom$lazy2 = _elm_lang$virtual_dom$Native_VirtualDom.lazy2; -var _elm_lang$virtual_dom$VirtualDom$lazy = _elm_lang$virtual_dom$Native_VirtualDom.lazy; -var _elm_lang$virtual_dom$VirtualDom$defaultOptions = {stopPropagation: false, preventDefault: false}; -var _elm_lang$virtual_dom$VirtualDom$onWithOptions = _elm_lang$virtual_dom$Native_VirtualDom.on; -var _elm_lang$virtual_dom$VirtualDom$on = F2( - function (eventName, decoder) { - return A3(_elm_lang$virtual_dom$VirtualDom$onWithOptions, eventName, _elm_lang$virtual_dom$VirtualDom$defaultOptions, decoder); - }); -var _elm_lang$virtual_dom$VirtualDom$style = _elm_lang$virtual_dom$Native_VirtualDom.style; -var _elm_lang$virtual_dom$VirtualDom$mapProperty = _elm_lang$virtual_dom$Native_VirtualDom.mapProperty; -var _elm_lang$virtual_dom$VirtualDom$attributeNS = _elm_lang$virtual_dom$Native_VirtualDom.attributeNS; -var _elm_lang$virtual_dom$VirtualDom$attribute = _elm_lang$virtual_dom$Native_VirtualDom.attribute; -var _elm_lang$virtual_dom$VirtualDom$property = _elm_lang$virtual_dom$Native_VirtualDom.property; -var _elm_lang$virtual_dom$VirtualDom$map = _elm_lang$virtual_dom$Native_VirtualDom.map; -var _elm_lang$virtual_dom$VirtualDom$text = _elm_lang$virtual_dom$Native_VirtualDom.text; -var _elm_lang$virtual_dom$VirtualDom$node = _elm_lang$virtual_dom$Native_VirtualDom.node; -var _elm_lang$virtual_dom$VirtualDom$Options = F2( - function (a, b) { - return {stopPropagation: a, preventDefault: b}; - }); -var _elm_lang$virtual_dom$VirtualDom$Node = {ctor: 'Node'}; -var _elm_lang$virtual_dom$VirtualDom$Property = {ctor: 'Property'}; - -var _elm_lang$html$Html$programWithFlags = _elm_lang$virtual_dom$VirtualDom$programWithFlags; -var _elm_lang$html$Html$program = _elm_lang$virtual_dom$VirtualDom$program; -var _elm_lang$html$Html$beginnerProgram = function (_p0) { - var _p1 = _p0; - return _elm_lang$html$Html$program( - { - init: A2( - _elm_lang$core$Platform_Cmd_ops['!'], - _p1.model, - {ctor: '[]'}), - update: F2( - function (msg, model) { - return A2( - _elm_lang$core$Platform_Cmd_ops['!'], - A2(_p1.update, msg, model), - {ctor: '[]'}); - }), - view: _p1.view, - subscriptions: function (_p2) { - return _elm_lang$core$Platform_Sub$none; - } - }); -}; -var _elm_lang$html$Html$map = _elm_lang$virtual_dom$VirtualDom$map; -var _elm_lang$html$Html$text = _elm_lang$virtual_dom$VirtualDom$text; -var _elm_lang$html$Html$node = _elm_lang$virtual_dom$VirtualDom$node; -var _elm_lang$html$Html$body = _elm_lang$html$Html$node('body'); -var _elm_lang$html$Html$section = _elm_lang$html$Html$node('section'); -var _elm_lang$html$Html$nav = _elm_lang$html$Html$node('nav'); -var _elm_lang$html$Html$article = _elm_lang$html$Html$node('article'); -var _elm_lang$html$Html$aside = _elm_lang$html$Html$node('aside'); -var _elm_lang$html$Html$h1 = _elm_lang$html$Html$node('h1'); -var _elm_lang$html$Html$h2 = _elm_lang$html$Html$node('h2'); -var _elm_lang$html$Html$h3 = _elm_lang$html$Html$node('h3'); -var _elm_lang$html$Html$h4 = _elm_lang$html$Html$node('h4'); -var _elm_lang$html$Html$h5 = _elm_lang$html$Html$node('h5'); -var _elm_lang$html$Html$h6 = _elm_lang$html$Html$node('h6'); -var _elm_lang$html$Html$header = _elm_lang$html$Html$node('header'); -var _elm_lang$html$Html$footer = _elm_lang$html$Html$node('footer'); -var _elm_lang$html$Html$address = _elm_lang$html$Html$node('address'); -var _elm_lang$html$Html$main_ = _elm_lang$html$Html$node('main'); -var _elm_lang$html$Html$p = _elm_lang$html$Html$node('p'); -var _elm_lang$html$Html$hr = _elm_lang$html$Html$node('hr'); -var _elm_lang$html$Html$pre = _elm_lang$html$Html$node('pre'); -var _elm_lang$html$Html$blockquote = _elm_lang$html$Html$node('blockquote'); -var _elm_lang$html$Html$ol = _elm_lang$html$Html$node('ol'); -var _elm_lang$html$Html$ul = _elm_lang$html$Html$node('ul'); -var _elm_lang$html$Html$li = _elm_lang$html$Html$node('li'); -var _elm_lang$html$Html$dl = _elm_lang$html$Html$node('dl'); -var _elm_lang$html$Html$dt = _elm_lang$html$Html$node('dt'); -var _elm_lang$html$Html$dd = _elm_lang$html$Html$node('dd'); -var _elm_lang$html$Html$figure = _elm_lang$html$Html$node('figure'); -var _elm_lang$html$Html$figcaption = _elm_lang$html$Html$node('figcaption'); -var _elm_lang$html$Html$div = _elm_lang$html$Html$node('div'); -var _elm_lang$html$Html$a = _elm_lang$html$Html$node('a'); -var _elm_lang$html$Html$em = _elm_lang$html$Html$node('em'); -var _elm_lang$html$Html$strong = _elm_lang$html$Html$node('strong'); -var _elm_lang$html$Html$small = _elm_lang$html$Html$node('small'); -var _elm_lang$html$Html$s = _elm_lang$html$Html$node('s'); -var _elm_lang$html$Html$cite = _elm_lang$html$Html$node('cite'); -var _elm_lang$html$Html$q = _elm_lang$html$Html$node('q'); -var _elm_lang$html$Html$dfn = _elm_lang$html$Html$node('dfn'); -var _elm_lang$html$Html$abbr = _elm_lang$html$Html$node('abbr'); -var _elm_lang$html$Html$time = _elm_lang$html$Html$node('time'); -var _elm_lang$html$Html$code = _elm_lang$html$Html$node('code'); -var _elm_lang$html$Html$var = _elm_lang$html$Html$node('var'); -var _elm_lang$html$Html$samp = _elm_lang$html$Html$node('samp'); -var _elm_lang$html$Html$kbd = _elm_lang$html$Html$node('kbd'); -var _elm_lang$html$Html$sub = _elm_lang$html$Html$node('sub'); -var _elm_lang$html$Html$sup = _elm_lang$html$Html$node('sup'); -var _elm_lang$html$Html$i = _elm_lang$html$Html$node('i'); -var _elm_lang$html$Html$b = _elm_lang$html$Html$node('b'); -var _elm_lang$html$Html$u = _elm_lang$html$Html$node('u'); -var _elm_lang$html$Html$mark = _elm_lang$html$Html$node('mark'); -var _elm_lang$html$Html$ruby = _elm_lang$html$Html$node('ruby'); -var _elm_lang$html$Html$rt = _elm_lang$html$Html$node('rt'); -var _elm_lang$html$Html$rp = _elm_lang$html$Html$node('rp'); -var _elm_lang$html$Html$bdi = _elm_lang$html$Html$node('bdi'); -var _elm_lang$html$Html$bdo = _elm_lang$html$Html$node('bdo'); -var _elm_lang$html$Html$span = _elm_lang$html$Html$node('span'); -var _elm_lang$html$Html$br = _elm_lang$html$Html$node('br'); -var _elm_lang$html$Html$wbr = _elm_lang$html$Html$node('wbr'); -var _elm_lang$html$Html$ins = _elm_lang$html$Html$node('ins'); -var _elm_lang$html$Html$del = _elm_lang$html$Html$node('del'); -var _elm_lang$html$Html$img = _elm_lang$html$Html$node('img'); -var _elm_lang$html$Html$iframe = _elm_lang$html$Html$node('iframe'); -var _elm_lang$html$Html$embed = _elm_lang$html$Html$node('embed'); -var _elm_lang$html$Html$object = _elm_lang$html$Html$node('object'); -var _elm_lang$html$Html$param = _elm_lang$html$Html$node('param'); -var _elm_lang$html$Html$video = _elm_lang$html$Html$node('video'); -var _elm_lang$html$Html$audio = _elm_lang$html$Html$node('audio'); -var _elm_lang$html$Html$source = _elm_lang$html$Html$node('source'); -var _elm_lang$html$Html$track = _elm_lang$html$Html$node('track'); -var _elm_lang$html$Html$canvas = _elm_lang$html$Html$node('canvas'); -var _elm_lang$html$Html$math = _elm_lang$html$Html$node('math'); -var _elm_lang$html$Html$table = _elm_lang$html$Html$node('table'); -var _elm_lang$html$Html$caption = _elm_lang$html$Html$node('caption'); -var _elm_lang$html$Html$colgroup = _elm_lang$html$Html$node('colgroup'); -var _elm_lang$html$Html$col = _elm_lang$html$Html$node('col'); -var _elm_lang$html$Html$tbody = _elm_lang$html$Html$node('tbody'); -var _elm_lang$html$Html$thead = _elm_lang$html$Html$node('thead'); -var _elm_lang$html$Html$tfoot = _elm_lang$html$Html$node('tfoot'); -var _elm_lang$html$Html$tr = _elm_lang$html$Html$node('tr'); -var _elm_lang$html$Html$td = _elm_lang$html$Html$node('td'); -var _elm_lang$html$Html$th = _elm_lang$html$Html$node('th'); -var _elm_lang$html$Html$form = _elm_lang$html$Html$node('form'); -var _elm_lang$html$Html$fieldset = _elm_lang$html$Html$node('fieldset'); -var _elm_lang$html$Html$legend = _elm_lang$html$Html$node('legend'); -var _elm_lang$html$Html$label = _elm_lang$html$Html$node('label'); -var _elm_lang$html$Html$input = _elm_lang$html$Html$node('input'); -var _elm_lang$html$Html$button = _elm_lang$html$Html$node('button'); -var _elm_lang$html$Html$select = _elm_lang$html$Html$node('select'); -var _elm_lang$html$Html$datalist = _elm_lang$html$Html$node('datalist'); -var _elm_lang$html$Html$optgroup = _elm_lang$html$Html$node('optgroup'); -var _elm_lang$html$Html$option = _elm_lang$html$Html$node('option'); -var _elm_lang$html$Html$textarea = _elm_lang$html$Html$node('textarea'); -var _elm_lang$html$Html$keygen = _elm_lang$html$Html$node('keygen'); -var _elm_lang$html$Html$output = _elm_lang$html$Html$node('output'); -var _elm_lang$html$Html$progress = _elm_lang$html$Html$node('progress'); -var _elm_lang$html$Html$meter = _elm_lang$html$Html$node('meter'); -var _elm_lang$html$Html$details = _elm_lang$html$Html$node('details'); -var _elm_lang$html$Html$summary = _elm_lang$html$Html$node('summary'); -var _elm_lang$html$Html$menuitem = _elm_lang$html$Html$node('menuitem'); -var _elm_lang$html$Html$menu = _elm_lang$html$Html$node('menu'); - -var _elm_lang$html$Html_Attributes$map = _elm_lang$virtual_dom$VirtualDom$mapProperty; -var _elm_lang$html$Html_Attributes$attribute = _elm_lang$virtual_dom$VirtualDom$attribute; -var _elm_lang$html$Html_Attributes$contextmenu = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'contextmenu', value); -}; -var _elm_lang$html$Html_Attributes$draggable = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'draggable', value); -}; -var _elm_lang$html$Html_Attributes$itemprop = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'itemprop', value); -}; -var _elm_lang$html$Html_Attributes$tabindex = function (n) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'tabIndex', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$charset = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'charset', value); -}; -var _elm_lang$html$Html_Attributes$height = function (value) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'height', - _elm_lang$core$Basics$toString(value)); -}; -var _elm_lang$html$Html_Attributes$width = function (value) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'width', - _elm_lang$core$Basics$toString(value)); -}; -var _elm_lang$html$Html_Attributes$formaction = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'formAction', value); -}; -var _elm_lang$html$Html_Attributes$list = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'list', value); -}; -var _elm_lang$html$Html_Attributes$minlength = function (n) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'minLength', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$maxlength = function (n) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'maxlength', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$size = function (n) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'size', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$form = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'form', value); -}; -var _elm_lang$html$Html_Attributes$cols = function (n) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'cols', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$rows = function (n) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'rows', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$challenge = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'challenge', value); -}; -var _elm_lang$html$Html_Attributes$media = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'media', value); -}; -var _elm_lang$html$Html_Attributes$rel = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'rel', value); -}; -var _elm_lang$html$Html_Attributes$datetime = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'datetime', value); -}; -var _elm_lang$html$Html_Attributes$pubdate = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'pubdate', value); -}; -var _elm_lang$html$Html_Attributes$colspan = function (n) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'colspan', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$rowspan = function (n) { - return A2( - _elm_lang$html$Html_Attributes$attribute, - 'rowspan', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$manifest = function (value) { - return A2(_elm_lang$html$Html_Attributes$attribute, 'manifest', value); -}; -var _elm_lang$html$Html_Attributes$property = _elm_lang$virtual_dom$VirtualDom$property; -var _elm_lang$html$Html_Attributes$stringProperty = F2( - function (name, string) { - return A2( - _elm_lang$html$Html_Attributes$property, - name, - _elm_lang$core$Json_Encode$string(string)); - }); -var _elm_lang$html$Html_Attributes$class = function (name) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'className', name); -}; -var _elm_lang$html$Html_Attributes$id = function (name) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'id', name); -}; -var _elm_lang$html$Html_Attributes$title = function (name) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'title', name); -}; -var _elm_lang$html$Html_Attributes$accesskey = function ($char) { - return A2( - _elm_lang$html$Html_Attributes$stringProperty, - 'accessKey', - _elm_lang$core$String$fromChar($char)); -}; -var _elm_lang$html$Html_Attributes$dir = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'dir', value); -}; -var _elm_lang$html$Html_Attributes$dropzone = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'dropzone', value); -}; -var _elm_lang$html$Html_Attributes$lang = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'lang', value); -}; -var _elm_lang$html$Html_Attributes$content = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'content', value); -}; -var _elm_lang$html$Html_Attributes$httpEquiv = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'httpEquiv', value); -}; -var _elm_lang$html$Html_Attributes$language = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'language', value); -}; -var _elm_lang$html$Html_Attributes$src = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'src', value); -}; -var _elm_lang$html$Html_Attributes$alt = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'alt', value); -}; -var _elm_lang$html$Html_Attributes$preload = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'preload', value); -}; -var _elm_lang$html$Html_Attributes$poster = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'poster', value); -}; -var _elm_lang$html$Html_Attributes$kind = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'kind', value); -}; -var _elm_lang$html$Html_Attributes$srclang = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'srclang', value); -}; -var _elm_lang$html$Html_Attributes$sandbox = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'sandbox', value); -}; -var _elm_lang$html$Html_Attributes$srcdoc = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'srcdoc', value); -}; -var _elm_lang$html$Html_Attributes$type_ = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'type', value); -}; -var _elm_lang$html$Html_Attributes$value = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'value', value); -}; -var _elm_lang$html$Html_Attributes$defaultValue = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'defaultValue', value); -}; -var _elm_lang$html$Html_Attributes$placeholder = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'placeholder', value); -}; -var _elm_lang$html$Html_Attributes$accept = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'accept', value); -}; -var _elm_lang$html$Html_Attributes$acceptCharset = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'acceptCharset', value); -}; -var _elm_lang$html$Html_Attributes$action = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'action', value); -}; -var _elm_lang$html$Html_Attributes$autocomplete = function (bool) { - return A2( - _elm_lang$html$Html_Attributes$stringProperty, - 'autocomplete', - bool ? 'on' : 'off'); -}; -var _elm_lang$html$Html_Attributes$enctype = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'enctype', value); -}; -var _elm_lang$html$Html_Attributes$method = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'method', value); -}; -var _elm_lang$html$Html_Attributes$name = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'name', value); -}; -var _elm_lang$html$Html_Attributes$pattern = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'pattern', value); -}; -var _elm_lang$html$Html_Attributes$for = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'htmlFor', value); -}; -var _elm_lang$html$Html_Attributes$max = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'max', value); -}; -var _elm_lang$html$Html_Attributes$min = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'min', value); -}; -var _elm_lang$html$Html_Attributes$step = function (n) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'step', n); -}; -var _elm_lang$html$Html_Attributes$wrap = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'wrap', value); -}; -var _elm_lang$html$Html_Attributes$usemap = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'useMap', value); -}; -var _elm_lang$html$Html_Attributes$shape = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'shape', value); -}; -var _elm_lang$html$Html_Attributes$coords = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'coords', value); -}; -var _elm_lang$html$Html_Attributes$keytype = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'keytype', value); -}; -var _elm_lang$html$Html_Attributes$align = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'align', value); -}; -var _elm_lang$html$Html_Attributes$cite = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'cite', value); -}; -var _elm_lang$html$Html_Attributes$href = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'href', value); -}; -var _elm_lang$html$Html_Attributes$target = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'target', value); -}; -var _elm_lang$html$Html_Attributes$downloadAs = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'download', value); -}; -var _elm_lang$html$Html_Attributes$hreflang = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'hreflang', value); -}; -var _elm_lang$html$Html_Attributes$ping = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'ping', value); -}; -var _elm_lang$html$Html_Attributes$start = function (n) { - return A2( - _elm_lang$html$Html_Attributes$stringProperty, - 'start', - _elm_lang$core$Basics$toString(n)); -}; -var _elm_lang$html$Html_Attributes$headers = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'headers', value); -}; -var _elm_lang$html$Html_Attributes$scope = function (value) { - return A2(_elm_lang$html$Html_Attributes$stringProperty, 'scope', value); -}; -var _elm_lang$html$Html_Attributes$boolProperty = F2( - function (name, bool) { - return A2( - _elm_lang$html$Html_Attributes$property, - name, - _elm_lang$core$Json_Encode$bool(bool)); - }); -var _elm_lang$html$Html_Attributes$hidden = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'hidden', bool); -}; -var _elm_lang$html$Html_Attributes$contenteditable = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'contentEditable', bool); -}; -var _elm_lang$html$Html_Attributes$spellcheck = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'spellcheck', bool); -}; -var _elm_lang$html$Html_Attributes$async = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'async', bool); -}; -var _elm_lang$html$Html_Attributes$defer = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'defer', bool); -}; -var _elm_lang$html$Html_Attributes$scoped = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'scoped', bool); -}; -var _elm_lang$html$Html_Attributes$autoplay = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'autoplay', bool); -}; -var _elm_lang$html$Html_Attributes$controls = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'controls', bool); -}; -var _elm_lang$html$Html_Attributes$loop = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'loop', bool); -}; -var _elm_lang$html$Html_Attributes$default = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'default', bool); -}; -var _elm_lang$html$Html_Attributes$seamless = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'seamless', bool); -}; -var _elm_lang$html$Html_Attributes$checked = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'checked', bool); -}; -var _elm_lang$html$Html_Attributes$selected = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'selected', bool); -}; -var _elm_lang$html$Html_Attributes$autofocus = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'autofocus', bool); -}; -var _elm_lang$html$Html_Attributes$disabled = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'disabled', bool); -}; -var _elm_lang$html$Html_Attributes$multiple = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'multiple', bool); -}; -var _elm_lang$html$Html_Attributes$novalidate = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'noValidate', bool); -}; -var _elm_lang$html$Html_Attributes$readonly = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'readOnly', bool); -}; -var _elm_lang$html$Html_Attributes$required = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'required', bool); -}; -var _elm_lang$html$Html_Attributes$ismap = function (value) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'isMap', value); -}; -var _elm_lang$html$Html_Attributes$download = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'download', bool); -}; -var _elm_lang$html$Html_Attributes$reversed = function (bool) { - return A2(_elm_lang$html$Html_Attributes$boolProperty, 'reversed', bool); -}; -var _elm_lang$html$Html_Attributes$classList = function (list) { - return _elm_lang$html$Html_Attributes$class( - A2( - _elm_lang$core$String$join, - ' ', - A2( - _elm_lang$core$List$map, - _elm_lang$core$Tuple$first, - A2(_elm_lang$core$List$filter, _elm_lang$core$Tuple$second, list)))); -}; -var _elm_lang$html$Html_Attributes$style = _elm_lang$virtual_dom$VirtualDom$style; - -var _elm_lang$http$Native_Http = function() { - - -// ENCODING AND DECODING - -function encodeUri(string) -{ - return encodeURIComponent(string); -} - -function decodeUri(string) -{ - try - { - return _elm_lang$core$Maybe$Just(decodeURIComponent(string)); - } - catch(e) - { - return _elm_lang$core$Maybe$Nothing; - } -} - - -// SEND REQUEST - -function toTask(request, maybeProgress) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - var xhr = new XMLHttpRequest(); - - configureProgress(xhr, maybeProgress); - - xhr.addEventListener('error', function() { - callback(_elm_lang$core$Native_Scheduler.fail({ ctor: 'NetworkError' })); - }); - xhr.addEventListener('timeout', function() { - callback(_elm_lang$core$Native_Scheduler.fail({ ctor: 'Timeout' })); - }); - xhr.addEventListener('load', function() { - callback(handleResponse(xhr, request.expect.responseToResult)); - }); - - try - { - xhr.open(request.method, request.url, true); - } - catch (e) - { - return callback(_elm_lang$core$Native_Scheduler.fail({ ctor: 'BadUrl', _0: request.url })); - } - - configureRequest(xhr, request); - send(xhr, request.body); - - return function() { xhr.abort(); }; - }); -} - -function configureProgress(xhr, maybeProgress) -{ - if (maybeProgress.ctor === 'Nothing') - { - return; - } - - xhr.addEventListener('progress', function(event) { - if (!event.lengthComputable) - { - return; - } - _elm_lang$core$Native_Scheduler.rawSpawn(maybeProgress._0({ - bytes: event.loaded, - bytesExpected: event.total - })); - }); -} - -function configureRequest(xhr, request) -{ - function setHeader(pair) - { - xhr.setRequestHeader(pair._0, pair._1); - } - - A2(_elm_lang$core$List$map, setHeader, request.headers); - xhr.responseType = request.expect.responseType; - xhr.withCredentials = request.withCredentials; - - if (request.timeout.ctor === 'Just') - { - xhr.timeout = request.timeout._0; - } -} - -function send(xhr, body) -{ - switch (body.ctor) - { - case 'EmptyBody': - xhr.send(); - return; - - case 'StringBody': - xhr.setRequestHeader('Content-Type', body._0); - xhr.send(body._1); - return; - - case 'FormDataBody': - xhr.send(body._0); - return; - } -} - - -// RESPONSES - -function handleResponse(xhr, responseToResult) -{ - var response = toResponse(xhr); - - if (xhr.status < 200 || 300 <= xhr.status) - { - response.body = xhr.responseText; - return _elm_lang$core$Native_Scheduler.fail({ - ctor: 'BadStatus', - _0: response - }); - } - - var result = responseToResult(response); - - if (result.ctor === 'Ok') - { - return _elm_lang$core$Native_Scheduler.succeed(result._0); - } - else - { - response.body = xhr.responseText; - return _elm_lang$core$Native_Scheduler.fail({ - ctor: 'BadPayload', - _0: result._0, - _1: response - }); - } -} - -function toResponse(xhr) -{ - return { - status: { code: xhr.status, message: xhr.statusText }, - headers: parseHeaders(xhr.getAllResponseHeaders()), - url: xhr.responseURL, - body: xhr.response - }; -} - -function parseHeaders(rawHeaders) -{ - var headers = _elm_lang$core$Dict$empty; - - if (!rawHeaders) - { - return headers; - } - - var headerPairs = rawHeaders.split('\u000d\u000a'); - for (var i = headerPairs.length; i--; ) - { - var headerPair = headerPairs[i]; - var index = headerPair.indexOf('\u003a\u0020'); - if (index > 0) - { - var key = headerPair.substring(0, index); - var value = headerPair.substring(index + 2); - - headers = A3(_elm_lang$core$Dict$update, key, function(oldValue) { - if (oldValue.ctor === 'Just') - { - return _elm_lang$core$Maybe$Just(value + ', ' + oldValue._0); - } - return _elm_lang$core$Maybe$Just(value); - }, headers); - } - } - - return headers; -} - - -// EXPECTORS - -function expectStringResponse(responseToResult) -{ - return { - responseType: 'text', - responseToResult: responseToResult - }; -} - -function mapExpect(func, expect) -{ - return { - responseType: expect.responseType, - responseToResult: function(response) { - var convertedResponse = expect.responseToResult(response); - return A2(_elm_lang$core$Result$map, func, convertedResponse); - } - }; -} - - -// BODY - -function multipart(parts) -{ - var formData = new FormData(); - - while (parts.ctor !== '[]') - { - var part = parts._0; - formData.append(part._0, part._1); - parts = parts._1; - } - - return { ctor: 'FormDataBody', _0: formData }; -} - -return { - toTask: F2(toTask), - expectStringResponse: expectStringResponse, - mapExpect: F2(mapExpect), - multipart: multipart, - encodeUri: encodeUri, - decodeUri: decodeUri -}; - -}(); - -var _elm_lang$http$Http_Internal$map = F2( - function (func, request) { - return _elm_lang$core$Native_Utils.update( - request, - { - expect: A2(_elm_lang$http$Native_Http.mapExpect, func, request.expect) - }); - }); -var _elm_lang$http$Http_Internal$RawRequest = F7( - function (a, b, c, d, e, f, g) { - return {method: a, headers: b, url: c, body: d, expect: e, timeout: f, withCredentials: g}; - }); -var _elm_lang$http$Http_Internal$Request = function (a) { - return {ctor: 'Request', _0: a}; -}; -var _elm_lang$http$Http_Internal$Expect = {ctor: 'Expect'}; -var _elm_lang$http$Http_Internal$FormDataBody = {ctor: 'FormDataBody'}; -var _elm_lang$http$Http_Internal$StringBody = F2( - function (a, b) { - return {ctor: 'StringBody', _0: a, _1: b}; - }); -var _elm_lang$http$Http_Internal$EmptyBody = {ctor: 'EmptyBody'}; -var _elm_lang$http$Http_Internal$Header = F2( - function (a, b) { - return {ctor: 'Header', _0: a, _1: b}; - }); - -var _elm_lang$http$Http$decodeUri = _elm_lang$http$Native_Http.decodeUri; -var _elm_lang$http$Http$encodeUri = _elm_lang$http$Native_Http.encodeUri; -var _elm_lang$http$Http$expectStringResponse = _elm_lang$http$Native_Http.expectStringResponse; -var _elm_lang$http$Http$expectJson = function (decoder) { - return _elm_lang$http$Http$expectStringResponse( - function (response) { - return A2(_elm_lang$core$Json_Decode$decodeString, decoder, response.body); - }); -}; -var _elm_lang$http$Http$expectString = _elm_lang$http$Http$expectStringResponse( - function (response) { - return _elm_lang$core$Result$Ok(response.body); - }); -var _elm_lang$http$Http$multipartBody = _elm_lang$http$Native_Http.multipart; -var _elm_lang$http$Http$stringBody = _elm_lang$http$Http_Internal$StringBody; -var _elm_lang$http$Http$jsonBody = function (value) { - return A2( - _elm_lang$http$Http_Internal$StringBody, - 'application/json', - A2(_elm_lang$core$Json_Encode$encode, 0, value)); -}; -var _elm_lang$http$Http$emptyBody = _elm_lang$http$Http_Internal$EmptyBody; -var _elm_lang$http$Http$header = _elm_lang$http$Http_Internal$Header; -var _elm_lang$http$Http$request = _elm_lang$http$Http_Internal$Request; -var _elm_lang$http$Http$post = F3( - function (url, body, decoder) { - return _elm_lang$http$Http$request( - { - method: 'POST', - headers: {ctor: '[]'}, - url: url, - body: body, - expect: _elm_lang$http$Http$expectJson(decoder), - timeout: _elm_lang$core$Maybe$Nothing, - withCredentials: false - }); - }); -var _elm_lang$http$Http$get = F2( - function (url, decoder) { - return _elm_lang$http$Http$request( - { - method: 'GET', - headers: {ctor: '[]'}, - url: url, - body: _elm_lang$http$Http$emptyBody, - expect: _elm_lang$http$Http$expectJson(decoder), - timeout: _elm_lang$core$Maybe$Nothing, - withCredentials: false - }); - }); -var _elm_lang$http$Http$getString = function (url) { - return _elm_lang$http$Http$request( - { - method: 'GET', - headers: {ctor: '[]'}, - url: url, - body: _elm_lang$http$Http$emptyBody, - expect: _elm_lang$http$Http$expectString, - timeout: _elm_lang$core$Maybe$Nothing, - withCredentials: false - }); -}; -var _elm_lang$http$Http$toTask = function (_p0) { - var _p1 = _p0; - return A2(_elm_lang$http$Native_Http.toTask, _p1._0, _elm_lang$core$Maybe$Nothing); -}; -var _elm_lang$http$Http$send = F2( - function (resultToMessage, request) { - return A2( - _elm_lang$core$Task$attempt, - resultToMessage, - _elm_lang$http$Http$toTask(request)); - }); -var _elm_lang$http$Http$Response = F4( - function (a, b, c, d) { - return {url: a, status: b, headers: c, body: d}; - }); -var _elm_lang$http$Http$BadPayload = F2( - function (a, b) { - return {ctor: 'BadPayload', _0: a, _1: b}; - }); -var _elm_lang$http$Http$BadStatus = function (a) { - return {ctor: 'BadStatus', _0: a}; -}; -var _elm_lang$http$Http$NetworkError = {ctor: 'NetworkError'}; -var _elm_lang$http$Http$Timeout = {ctor: 'Timeout'}; -var _elm_lang$http$Http$BadUrl = function (a) { - return {ctor: 'BadUrl', _0: a}; -}; -var _elm_lang$http$Http$StringPart = F2( - function (a, b) { - return {ctor: 'StringPart', _0: a, _1: b}; - }); -var _elm_lang$http$Http$stringPart = _elm_lang$http$Http$StringPart; - -var _elm_lang$navigation$Native_Navigation = function() { - - -// FAKE NAVIGATION - -function go(n) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - if (n !== 0) - { - history.go(n); - } - callback(_elm_lang$core$Native_Scheduler.succeed(_elm_lang$core$Native_Utils.Tuple0)); - }); -} - -function pushState(url) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - history.pushState({}, '', url); - callback(_elm_lang$core$Native_Scheduler.succeed(getLocation())); - }); -} - -function replaceState(url) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - history.replaceState({}, '', url); - callback(_elm_lang$core$Native_Scheduler.succeed(getLocation())); - }); -} - - -// REAL NAVIGATION - -function reloadPage(skipCache) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - document.location.reload(skipCache); - callback(_elm_lang$core$Native_Scheduler.succeed(_elm_lang$core$Native_Utils.Tuple0)); - }); -} - -function setLocation(url) -{ - return _elm_lang$core$Native_Scheduler.nativeBinding(function(callback) - { - try - { - window.location = url; - } - catch(err) - { - // Only Firefox can throw a NS_ERROR_MALFORMED_URI exception here. - // Other browsers reload the page, so let's be consistent about that. - document.location.reload(false); - } - callback(_elm_lang$core$Native_Scheduler.succeed(_elm_lang$core$Native_Utils.Tuple0)); - }); -} - - -// GET LOCATION - -function getLocation() -{ - var location = document.location; - - return { - href: location.href, - host: location.host, - hostname: location.hostname, - protocol: location.protocol, - origin: location.origin, - port_: location.port, - pathname: location.pathname, - search: location.search, - hash: location.hash, - username: location.username, - password: location.password - }; -} - - -// DETECT IE11 PROBLEMS - -function isInternetExplorer11() -{ - return window.navigator.userAgent.indexOf('Trident') !== -1; -} - - -return { - go: go, - setLocation: setLocation, - reloadPage: reloadPage, - pushState: pushState, - replaceState: replaceState, - getLocation: getLocation, - isInternetExplorer11: isInternetExplorer11 -}; - -}(); - -var _elm_lang$navigation$Navigation$replaceState = _elm_lang$navigation$Native_Navigation.replaceState; -var _elm_lang$navigation$Navigation$pushState = _elm_lang$navigation$Native_Navigation.pushState; -var _elm_lang$navigation$Navigation$go = _elm_lang$navigation$Native_Navigation.go; -var _elm_lang$navigation$Navigation$reloadPage = _elm_lang$navigation$Native_Navigation.reloadPage; -var _elm_lang$navigation$Navigation$setLocation = _elm_lang$navigation$Native_Navigation.setLocation; -var _elm_lang$navigation$Navigation_ops = _elm_lang$navigation$Navigation_ops || {}; -_elm_lang$navigation$Navigation_ops['&>'] = F2( - function (task1, task2) { - return A2( - _elm_lang$core$Task$andThen, - function (_p0) { - return task2; - }, - task1); - }); -var _elm_lang$navigation$Navigation$notify = F3( - function (router, subs, location) { - var send = function (_p1) { - var _p2 = _p1; - return A2( - _elm_lang$core$Platform$sendToApp, - router, - _p2._0(location)); - }; - return A2( - _elm_lang$navigation$Navigation_ops['&>'], - _elm_lang$core$Task$sequence( - A2(_elm_lang$core$List$map, send, subs)), - _elm_lang$core$Task$succeed( - {ctor: '_Tuple0'})); - }); -var _elm_lang$navigation$Navigation$cmdHelp = F3( - function (router, subs, cmd) { - var _p3 = cmd; - switch (_p3.ctor) { - case 'Jump': - return _elm_lang$navigation$Navigation$go(_p3._0); - case 'New': - return A2( - _elm_lang$core$Task$andThen, - A2(_elm_lang$navigation$Navigation$notify, router, subs), - _elm_lang$navigation$Navigation$pushState(_p3._0)); - case 'Modify': - return A2( - _elm_lang$core$Task$andThen, - A2(_elm_lang$navigation$Navigation$notify, router, subs), - _elm_lang$navigation$Navigation$replaceState(_p3._0)); - case 'Visit': - return _elm_lang$navigation$Navigation$setLocation(_p3._0); - default: - return _elm_lang$navigation$Navigation$reloadPage(_p3._0); - } - }); -var _elm_lang$navigation$Navigation$killPopWatcher = function (popWatcher) { - var _p4 = popWatcher; - if (_p4.ctor === 'Normal') { - return _elm_lang$core$Process$kill(_p4._0); - } else { - return A2( - _elm_lang$navigation$Navigation_ops['&>'], - _elm_lang$core$Process$kill(_p4._0), - _elm_lang$core$Process$kill(_p4._1)); - } -}; -var _elm_lang$navigation$Navigation$onSelfMsg = F3( - function (router, location, state) { - return A2( - _elm_lang$navigation$Navigation_ops['&>'], - A3(_elm_lang$navigation$Navigation$notify, router, state.subs, location), - _elm_lang$core$Task$succeed(state)); - }); -var _elm_lang$navigation$Navigation$subscription = _elm_lang$core$Native_Platform.leaf('Navigation'); -var _elm_lang$navigation$Navigation$command = _elm_lang$core$Native_Platform.leaf('Navigation'); -var _elm_lang$navigation$Navigation$Location = function (a) { - return function (b) { - return function (c) { - return function (d) { - return function (e) { - return function (f) { - return function (g) { - return function (h) { - return function (i) { - return function (j) { - return function (k) { - return {href: a, host: b, hostname: c, protocol: d, origin: e, port_: f, pathname: g, search: h, hash: i, username: j, password: k}; - }; - }; - }; - }; - }; - }; - }; - }; - }; - }; -}; -var _elm_lang$navigation$Navigation$State = F2( - function (a, b) { - return {subs: a, popWatcher: b}; - }); -var _elm_lang$navigation$Navigation$init = _elm_lang$core$Task$succeed( - A2( - _elm_lang$navigation$Navigation$State, - {ctor: '[]'}, - _elm_lang$core$Maybe$Nothing)); -var _elm_lang$navigation$Navigation$Reload = function (a) { - return {ctor: 'Reload', _0: a}; -}; -var _elm_lang$navigation$Navigation$reload = _elm_lang$navigation$Navigation$command( - _elm_lang$navigation$Navigation$Reload(false)); -var _elm_lang$navigation$Navigation$reloadAndSkipCache = _elm_lang$navigation$Navigation$command( - _elm_lang$navigation$Navigation$Reload(true)); -var _elm_lang$navigation$Navigation$Visit = function (a) { - return {ctor: 'Visit', _0: a}; -}; -var _elm_lang$navigation$Navigation$load = function (url) { - return _elm_lang$navigation$Navigation$command( - _elm_lang$navigation$Navigation$Visit(url)); -}; -var _elm_lang$navigation$Navigation$Modify = function (a) { - return {ctor: 'Modify', _0: a}; -}; -var _elm_lang$navigation$Navigation$modifyUrl = function (url) { - return _elm_lang$navigation$Navigation$command( - _elm_lang$navigation$Navigation$Modify(url)); -}; -var _elm_lang$navigation$Navigation$New = function (a) { - return {ctor: 'New', _0: a}; -}; -var _elm_lang$navigation$Navigation$newUrl = function (url) { - return _elm_lang$navigation$Navigation$command( - _elm_lang$navigation$Navigation$New(url)); -}; -var _elm_lang$navigation$Navigation$Jump = function (a) { - return {ctor: 'Jump', _0: a}; -}; -var _elm_lang$navigation$Navigation$back = function (n) { - return _elm_lang$navigation$Navigation$command( - _elm_lang$navigation$Navigation$Jump(0 - n)); -}; -var _elm_lang$navigation$Navigation$forward = function (n) { - return _elm_lang$navigation$Navigation$command( - _elm_lang$navigation$Navigation$Jump(n)); -}; -var _elm_lang$navigation$Navigation$cmdMap = F2( - function (_p5, myCmd) { - var _p6 = myCmd; - switch (_p6.ctor) { - case 'Jump': - return _elm_lang$navigation$Navigation$Jump(_p6._0); - case 'New': - return _elm_lang$navigation$Navigation$New(_p6._0); - case 'Modify': - return _elm_lang$navigation$Navigation$Modify(_p6._0); - case 'Visit': - return _elm_lang$navigation$Navigation$Visit(_p6._0); - default: - return _elm_lang$navigation$Navigation$Reload(_p6._0); - } - }); -var _elm_lang$navigation$Navigation$Monitor = function (a) { - return {ctor: 'Monitor', _0: a}; -}; -var _elm_lang$navigation$Navigation$program = F2( - function (locationToMessage, stuff) { - var init = stuff.init( - _elm_lang$navigation$Native_Navigation.getLocation( - {ctor: '_Tuple0'})); - var subs = function (model) { - return _elm_lang$core$Platform_Sub$batch( - { - ctor: '::', - _0: _elm_lang$navigation$Navigation$subscription( - _elm_lang$navigation$Navigation$Monitor(locationToMessage)), - _1: { - ctor: '::', - _0: stuff.subscriptions(model), - _1: {ctor: '[]'} - } - }); - }; - return _elm_lang$html$Html$program( - {init: init, view: stuff.view, update: stuff.update, subscriptions: subs}); - }); -var _elm_lang$navigation$Navigation$programWithFlags = F2( - function (locationToMessage, stuff) { - var init = function (flags) { - return A2( - stuff.init, - flags, - _elm_lang$navigation$Native_Navigation.getLocation( - {ctor: '_Tuple0'})); - }; - var subs = function (model) { - return _elm_lang$core$Platform_Sub$batch( - { - ctor: '::', - _0: _elm_lang$navigation$Navigation$subscription( - _elm_lang$navigation$Navigation$Monitor(locationToMessage)), - _1: { - ctor: '::', - _0: stuff.subscriptions(model), - _1: {ctor: '[]'} - } - }); - }; - return _elm_lang$html$Html$programWithFlags( - {init: init, view: stuff.view, update: stuff.update, subscriptions: subs}); - }); -var _elm_lang$navigation$Navigation$subMap = F2( - function (func, _p7) { - var _p8 = _p7; - return _elm_lang$navigation$Navigation$Monitor( - function (_p9) { - return func( - _p8._0(_p9)); - }); - }); -var _elm_lang$navigation$Navigation$InternetExplorer = F2( - function (a, b) { - return {ctor: 'InternetExplorer', _0: a, _1: b}; - }); -var _elm_lang$navigation$Navigation$Normal = function (a) { - return {ctor: 'Normal', _0: a}; -}; -var _elm_lang$navigation$Navigation$spawnPopWatcher = function (router) { - var reportLocation = function (_p10) { - return A2( - _elm_lang$core$Platform$sendToSelf, - router, - _elm_lang$navigation$Native_Navigation.getLocation( - {ctor: '_Tuple0'})); - }; - return _elm_lang$navigation$Native_Navigation.isInternetExplorer11( - {ctor: '_Tuple0'}) ? A3( - _elm_lang$core$Task$map2, - _elm_lang$navigation$Navigation$InternetExplorer, - _elm_lang$core$Process$spawn( - A3(_elm_lang$dom$Dom_LowLevel$onWindow, 'popstate', _elm_lang$core$Json_Decode$value, reportLocation)), - _elm_lang$core$Process$spawn( - A3(_elm_lang$dom$Dom_LowLevel$onWindow, 'hashchange', _elm_lang$core$Json_Decode$value, reportLocation))) : A2( - _elm_lang$core$Task$map, - _elm_lang$navigation$Navigation$Normal, - _elm_lang$core$Process$spawn( - A3(_elm_lang$dom$Dom_LowLevel$onWindow, 'popstate', _elm_lang$core$Json_Decode$value, reportLocation))); -}; -var _elm_lang$navigation$Navigation$onEffects = F4( - function (router, cmds, subs, _p11) { - var _p12 = _p11; - var _p15 = _p12.popWatcher; - var stepState = function () { - var _p13 = {ctor: '_Tuple2', _0: subs, _1: _p15}; - _v6_2: - do { - if (_p13._0.ctor === '[]') { - if (_p13._1.ctor === 'Just') { - return A2( - _elm_lang$navigation$Navigation_ops['&>'], - _elm_lang$navigation$Navigation$killPopWatcher(_p13._1._0), - _elm_lang$core$Task$succeed( - A2(_elm_lang$navigation$Navigation$State, subs, _elm_lang$core$Maybe$Nothing))); - } else { - break _v6_2; - } - } else { - if (_p13._1.ctor === 'Nothing') { - return A2( - _elm_lang$core$Task$map, - function (_p14) { - return A2( - _elm_lang$navigation$Navigation$State, - subs, - _elm_lang$core$Maybe$Just(_p14)); - }, - _elm_lang$navigation$Navigation$spawnPopWatcher(router)); - } else { - break _v6_2; - } - } - } while(false); - return _elm_lang$core$Task$succeed( - A2(_elm_lang$navigation$Navigation$State, subs, _p15)); - }(); - return A2( - _elm_lang$navigation$Navigation_ops['&>'], - _elm_lang$core$Task$sequence( - A2( - _elm_lang$core$List$map, - A2(_elm_lang$navigation$Navigation$cmdHelp, router, subs), - cmds)), - stepState); - }); -_elm_lang$core$Native_Platform.effectManagers['Navigation'] = {pkg: 'elm-lang/navigation', init: _elm_lang$navigation$Navigation$init, onEffects: _elm_lang$navigation$Navigation$onEffects, onSelfMsg: _elm_lang$navigation$Navigation$onSelfMsg, tag: 'fx', cmdMap: _elm_lang$navigation$Navigation$cmdMap, subMap: _elm_lang$navigation$Navigation$subMap}; - -var _evancz$url_parser$UrlParser$toKeyValuePair = function (segment) { - var _p0 = A2(_elm_lang$core$String$split, '=', segment); - if (((_p0.ctor === '::') && (_p0._1.ctor === '::')) && (_p0._1._1.ctor === '[]')) { - return A3( - _elm_lang$core$Maybe$map2, - F2( - function (v0, v1) { - return {ctor: '_Tuple2', _0: v0, _1: v1}; - }), - _elm_lang$http$Http$decodeUri(_p0._0), - _elm_lang$http$Http$decodeUri(_p0._1._0)); - } else { - return _elm_lang$core$Maybe$Nothing; - } -}; -var _evancz$url_parser$UrlParser$parseParams = function (queryString) { - return _elm_lang$core$Dict$fromList( - A2( - _elm_lang$core$List$filterMap, - _evancz$url_parser$UrlParser$toKeyValuePair, - A2( - _elm_lang$core$String$split, - '&', - A2(_elm_lang$core$String$dropLeft, 1, queryString)))); -}; -var _evancz$url_parser$UrlParser$splitUrl = function (url) { - var _p1 = A2(_elm_lang$core$String$split, '/', url); - if ((_p1.ctor === '::') && (_p1._0 === '')) { - return _p1._1; - } else { - return _p1; - } -}; -var _evancz$url_parser$UrlParser$parseHelp = function (states) { - parseHelp: - while (true) { - var _p2 = states; - if (_p2.ctor === '[]') { - return _elm_lang$core$Maybe$Nothing; - } else { - var _p4 = _p2._0; - var _p3 = _p4.unvisited; - if (_p3.ctor === '[]') { - return _elm_lang$core$Maybe$Just(_p4.value); - } else { - if ((_p3._0 === '') && (_p3._1.ctor === '[]')) { - return _elm_lang$core$Maybe$Just(_p4.value); - } else { - var _v4 = _p2._1; - states = _v4; - continue parseHelp; - } - } - } - } -}; -var _evancz$url_parser$UrlParser$parse = F3( - function (_p5, url, params) { - var _p6 = _p5; - return _evancz$url_parser$UrlParser$parseHelp( - _p6._0( - { - visited: {ctor: '[]'}, - unvisited: _evancz$url_parser$UrlParser$splitUrl(url), - params: params, - value: _elm_lang$core$Basics$identity - })); - }); -var _evancz$url_parser$UrlParser$parseHash = F2( - function (parser, location) { - return A3( - _evancz$url_parser$UrlParser$parse, - parser, - A2(_elm_lang$core$String$dropLeft, 1, location.hash), - _evancz$url_parser$UrlParser$parseParams(location.search)); - }); -var _evancz$url_parser$UrlParser$parsePath = F2( - function (parser, location) { - return A3( - _evancz$url_parser$UrlParser$parse, - parser, - location.pathname, - _evancz$url_parser$UrlParser$parseParams(location.search)); - }); -var _evancz$url_parser$UrlParser$intParamHelp = function (maybeValue) { - var _p7 = maybeValue; - if (_p7.ctor === 'Nothing') { - return _elm_lang$core$Maybe$Nothing; - } else { - return _elm_lang$core$Result$toMaybe( - _elm_lang$core$String$toInt(_p7._0)); - } -}; -var _evancz$url_parser$UrlParser$mapHelp = F2( - function (func, _p8) { - var _p9 = _p8; - return { - visited: _p9.visited, - unvisited: _p9.unvisited, - params: _p9.params, - value: func(_p9.value) - }; - }); -var _evancz$url_parser$UrlParser$State = F4( - function (a, b, c, d) { - return {visited: a, unvisited: b, params: c, value: d}; - }); -var _evancz$url_parser$UrlParser$Parser = function (a) { - return {ctor: 'Parser', _0: a}; -}; -var _evancz$url_parser$UrlParser$s = function (str) { - return _evancz$url_parser$UrlParser$Parser( - function (_p10) { - var _p11 = _p10; - var _p12 = _p11.unvisited; - if (_p12.ctor === '[]') { - return {ctor: '[]'}; - } else { - var _p13 = _p12._0; - return _elm_lang$core$Native_Utils.eq(_p13, str) ? { - ctor: '::', - _0: A4( - _evancz$url_parser$UrlParser$State, - {ctor: '::', _0: _p13, _1: _p11.visited}, - _p12._1, - _p11.params, - _p11.value), - _1: {ctor: '[]'} - } : {ctor: '[]'}; - } - }); -}; -var _evancz$url_parser$UrlParser$custom = F2( - function (tipe, stringToSomething) { - return _evancz$url_parser$UrlParser$Parser( - function (_p14) { - var _p15 = _p14; - var _p16 = _p15.unvisited; - if (_p16.ctor === '[]') { - return {ctor: '[]'}; - } else { - var _p18 = _p16._0; - var _p17 = stringToSomething(_p18); - if (_p17.ctor === 'Ok') { - return { - ctor: '::', - _0: A4( - _evancz$url_parser$UrlParser$State, - {ctor: '::', _0: _p18, _1: _p15.visited}, - _p16._1, - _p15.params, - _p15.value(_p17._0)), - _1: {ctor: '[]'} - }; - } else { - return {ctor: '[]'}; - } - } - }); - }); -var _evancz$url_parser$UrlParser$string = A2(_evancz$url_parser$UrlParser$custom, 'STRING', _elm_lang$core$Result$Ok); -var _evancz$url_parser$UrlParser$int = A2(_evancz$url_parser$UrlParser$custom, 'NUMBER', _elm_lang$core$String$toInt); -var _evancz$url_parser$UrlParser_ops = _evancz$url_parser$UrlParser_ops || {}; -_evancz$url_parser$UrlParser_ops[''] = F2( - function (_p20, _p19) { - var _p21 = _p20; - var _p22 = _p19; - return _evancz$url_parser$UrlParser$Parser( - function (state) { - return A2( - _elm_lang$core$List$concatMap, - _p22._0, - _p21._0(state)); - }); - }); -var _evancz$url_parser$UrlParser$map = F2( - function (subValue, _p23) { - var _p24 = _p23; - return _evancz$url_parser$UrlParser$Parser( - function (_p25) { - var _p26 = _p25; - return A2( - _elm_lang$core$List$map, - _evancz$url_parser$UrlParser$mapHelp(_p26.value), - _p24._0( - {visited: _p26.visited, unvisited: _p26.unvisited, params: _p26.params, value: subValue})); - }); - }); -var _evancz$url_parser$UrlParser$oneOf = function (parsers) { - return _evancz$url_parser$UrlParser$Parser( - function (state) { - return A2( - _elm_lang$core$List$concatMap, - function (_p27) { - var _p28 = _p27; - return _p28._0(state); - }, - parsers); - }); -}; -var _evancz$url_parser$UrlParser$top = _evancz$url_parser$UrlParser$Parser( - function (state) { - return { - ctor: '::', - _0: state, - _1: {ctor: '[]'} - }; - }); -var _evancz$url_parser$UrlParser_ops = _evancz$url_parser$UrlParser_ops || {}; -_evancz$url_parser$UrlParser_ops[''] = F2( - function (_p30, _p29) { - var _p31 = _p30; - var _p32 = _p29; - return _evancz$url_parser$UrlParser$Parser( - function (state) { - return A2( - _elm_lang$core$List$concatMap, - _p32._0, - _p31._0(state)); - }); - }); -var _evancz$url_parser$UrlParser$QueryParser = function (a) { - return {ctor: 'QueryParser', _0: a}; -}; -var _evancz$url_parser$UrlParser$customParam = F2( - function (key, func) { - return _evancz$url_parser$UrlParser$QueryParser( - function (_p33) { - var _p34 = _p33; - var _p35 = _p34.params; - return { - ctor: '::', - _0: A4( - _evancz$url_parser$UrlParser$State, - _p34.visited, - _p34.unvisited, - _p35, - _p34.value( - func( - A2(_elm_lang$core$Dict$get, key, _p35)))), - _1: {ctor: '[]'} - }; - }); - }); -var _evancz$url_parser$UrlParser$stringParam = function (name) { - return A2(_evancz$url_parser$UrlParser$customParam, name, _elm_lang$core$Basics$identity); -}; -var _evancz$url_parser$UrlParser$intParam = function (name) { - return A2(_evancz$url_parser$UrlParser$customParam, name, _evancz$url_parser$UrlParser$intParamHelp); -}; - -var _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerSecond = 1000; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute = 60 * _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerSecond; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerHour = 60 * _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerDay = 24 * _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerHour; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$dayOfWeekFromWeekdayNumber = function (n) { - var _p0 = n; - switch (_p0) { - case 1: - return _elm_lang$core$Date$Mon; - case 2: - return _elm_lang$core$Date$Tue; - case 3: - return _elm_lang$core$Date$Wed; - case 4: - return _elm_lang$core$Date$Thu; - case 5: - return _elm_lang$core$Date$Fri; - case 6: - return _elm_lang$core$Date$Sat; - default: - return _elm_lang$core$Date$Sun; - } -}; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$weekdayNumberFromDayOfWeek = function (d) { - var _p1 = d; - switch (_p1.ctor) { - case 'Mon': - return 1; - case 'Tue': - return 2; - case 'Wed': - return 3; - case 'Thu': - return 4; - case 'Fri': - return 5; - case 'Sat': - return 6; - default: - return 7; - } -}; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$monthFromMonthNumber = function (n) { - var _p2 = n; - switch (_p2) { - case 1: - return _elm_lang$core$Date$Jan; - case 2: - return _elm_lang$core$Date$Feb; - case 3: - return _elm_lang$core$Date$Mar; - case 4: - return _elm_lang$core$Date$Apr; - case 5: - return _elm_lang$core$Date$May; - case 6: - return _elm_lang$core$Date$Jun; - case 7: - return _elm_lang$core$Date$Jul; - case 8: - return _elm_lang$core$Date$Aug; - case 9: - return _elm_lang$core$Date$Sep; - case 10: - return _elm_lang$core$Date$Oct; - case 11: - return _elm_lang$core$Date$Nov; - default: - return _elm_lang$core$Date$Dec; - } -}; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$monthNumberFromMonth = function (m) { - var _p3 = m; - switch (_p3.ctor) { - case 'Jan': - return 1; - case 'Feb': - return 2; - case 'Mar': - return 3; - case 'Apr': - return 4; - case 'May': - return 5; - case 'Jun': - return 6; - case 'Jul': - return 7; - case 'Aug': - return 8; - case 'Sep': - return 9; - case 'Oct': - return 10; - case 'Nov': - return 11; - default: - return 12; - } -}; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$months = { - ctor: '::', - _0: _elm_lang$core$Date$Jan, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Feb, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Mar, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Apr, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$May, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Jun, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Jul, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Aug, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Sep, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Oct, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Nov, - _1: { - ctor: '::', - _0: _elm_lang$core$Date$Dec, - _1: {ctor: '[]'} - } - } - } - } - } - } - } - } - } - } - } -}; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear = function (y) { - return (_elm_lang$core$Native_Utils.eq( - A2(_elm_lang$core$Basics_ops['%'], y, 4), - 0) && (!_elm_lang$core$Native_Utils.eq( - A2(_elm_lang$core$Basics_ops['%'], y, 100), - 0))) || _elm_lang$core$Native_Utils.eq( - A2(_elm_lang$core$Basics_ops['%'], y, 400), - 0); -}; -var _justinmimbs$elm_date_extra$Date_Extra_Facts$daysInMonth = F2( - function (y, m) { - var _p4 = m; - switch (_p4.ctor) { - case 'Jan': - return 31; - case 'Feb': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 29 : 28; - case 'Mar': - return 31; - case 'Apr': - return 30; - case 'May': - return 31; - case 'Jun': - return 30; - case 'Jul': - return 31; - case 'Aug': - return 31; - case 'Sep': - return 30; - case 'Oct': - return 31; - case 'Nov': - return 30; - default: - return 31; - } - }); -var _justinmimbs$elm_date_extra$Date_Extra_Facts$daysBeforeStartOfMonth = F2( - function (y, m) { - var _p5 = m; - switch (_p5.ctor) { - case 'Jan': - return 0; - case 'Feb': - return 31; - case 'Mar': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 60 : 59; - case 'Apr': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 91 : 90; - case 'May': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 121 : 120; - case 'Jun': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 152 : 151; - case 'Jul': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 182 : 181; - case 'Aug': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 213 : 212; - case 'Sep': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 244 : 243; - case 'Oct': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 274 : 273; - case 'Nov': - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 305 : 304; - default: - return _justinmimbs$elm_date_extra$Date_Extra_Facts$isLeapYear(y) ? 335 : 334; - } - }); - -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$divideInt = F2( - function (a, b) { - return { - ctor: '_Tuple2', - _0: (a / b) | 0, - _1: A2(_elm_lang$core$Basics$rem, a, b) - }; - }); -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$year = function (rd) { - var _p0 = A2(_justinmimbs$elm_date_extra$Date_Internal_RataDie$divideInt, rd, 146097); - var n400 = _p0._0; - var r400 = _p0._1; - var _p1 = A2(_justinmimbs$elm_date_extra$Date_Internal_RataDie$divideInt, r400, 36524); - var n100 = _p1._0; - var r100 = _p1._1; - var _p2 = A2(_justinmimbs$elm_date_extra$Date_Internal_RataDie$divideInt, r100, 1461); - var n4 = _p2._0; - var r4 = _p2._1; - var _p3 = A2(_justinmimbs$elm_date_extra$Date_Internal_RataDie$divideInt, r4, 365); - var n1 = _p3._0; - var r1 = _p3._1; - var n = _elm_lang$core$Native_Utils.eq(r1, 0) ? 0 : 1; - return ((((n400 * 400) + (n100 * 100)) + (n4 * 4)) + n1) + n; -}; -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$weekdayNumber = function (rd) { - var _p4 = A2(_elm_lang$core$Basics_ops['%'], rd, 7); - if (_p4 === 0) { - return 7; - } else { - return _p4; - } -}; -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$daysBeforeYear = function (y1) { - var y = y1 - 1; - var leapYears = (((y / 4) | 0) - ((y / 100) | 0)) + ((y / 400) | 0); - return (365 * y) + leapYears; -}; -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$daysBeforeWeekYear = function (y) { - var jan4 = _justinmimbs$elm_date_extra$Date_Internal_RataDie$daysBeforeYear(y) + 4; - return jan4 - _justinmimbs$elm_date_extra$Date_Internal_RataDie$weekdayNumber(jan4); -}; -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$weekYear = function (rd) { - return _justinmimbs$elm_date_extra$Date_Internal_RataDie$year( - rd + (4 - _justinmimbs$elm_date_extra$Date_Internal_RataDie$weekdayNumber(rd))); -}; -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$weekNumber = function (rd) { - var week1Day1 = _justinmimbs$elm_date_extra$Date_Internal_RataDie$daysBeforeWeekYear( - _justinmimbs$elm_date_extra$Date_Internal_RataDie$weekYear(rd)) + 1; - return (((rd - week1Day1) / 7) | 0) + 1; -}; -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$fromWeekDate = F3( - function (wy, wn, wdn) { - return (_justinmimbs$elm_date_extra$Date_Internal_RataDie$daysBeforeWeekYear(wy) + ((wn - 1) * 7)) + wdn; - }); -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$fromCalendarDate = F3( - function (y, m, d) { - return (_justinmimbs$elm_date_extra$Date_Internal_RataDie$daysBeforeYear(y) + A2(_justinmimbs$elm_date_extra$Date_Extra_Facts$daysBeforeStartOfMonth, y, m)) + d; - }); -var _justinmimbs$elm_date_extra$Date_Internal_RataDie$fromOrdinalDate = F2( - function (y, od) { - return _justinmimbs$elm_date_extra$Date_Internal_RataDie$daysBeforeYear(y) + od; - }); - -var _justinmimbs$elm_date_extra$Date_Internal_Core$msFromTimeParts = F4( - function (hh, mm, ss, ms) { - return (((_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerHour * hh) + (_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute * mm)) + (_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerSecond * ss)) + ms; - }); -var _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromRataDie = function (rd) { - return (rd - 719163) * _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerDay; -}; -var _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromOrdinalDate = F2( - function (y, d) { - return _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromRataDie( - A2(_justinmimbs$elm_date_extra$Date_Internal_RataDie$fromOrdinalDate, y, d)); - }); -var _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromCalendarDate = F3( - function (y, m, d) { - return _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromRataDie( - A3(_justinmimbs$elm_date_extra$Date_Internal_RataDie$fromCalendarDate, y, m, d)); - }); -var _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromParts = F7( - function (y, m, d, hh, mm, ss, ms) { - return A3(_justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromCalendarDate, y, m, d) + A4(_justinmimbs$elm_date_extra$Date_Internal_Core$msFromTimeParts, hh, mm, ss, ms); - }); -var _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromWeekDate = F3( - function (y, w, d) { - return _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromRataDie( - A3(_justinmimbs$elm_date_extra$Date_Internal_RataDie$fromWeekDate, y, w, d)); - }); -var _justinmimbs$elm_date_extra$Date_Internal_Core$weekNumberFromCalendarDate = F3( - function (y, m, d) { - return _justinmimbs$elm_date_extra$Date_Internal_RataDie$weekNumber( - A3(_justinmimbs$elm_date_extra$Date_Internal_RataDie$fromCalendarDate, y, m, d)); - }); -var _justinmimbs$elm_date_extra$Date_Internal_Core$weekYearFromCalendarDate = F3( - function (y, m, d) { - return _justinmimbs$elm_date_extra$Date_Internal_RataDie$weekYear( - A3(_justinmimbs$elm_date_extra$Date_Internal_RataDie$fromCalendarDate, y, m, d)); - }); - -var _justinmimbs$elm_date_extra$Date_Internal_Extract$msOffsetFromUtc = function (date) { - var utcTime = _elm_lang$core$Date$toTime(date); - var localTime = _elm_lang$core$Basics$toFloat( - A7( - _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromParts, - _elm_lang$core$Date$year(date), - _elm_lang$core$Date$month(date), - _elm_lang$core$Date$day(date), - _elm_lang$core$Date$hour(date), - _elm_lang$core$Date$minute(date), - _elm_lang$core$Date$second(date), - _elm_lang$core$Date$millisecond(date))); - return _elm_lang$core$Basics$floor(localTime - utcTime); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Extract$offsetFromUtc = function (date) { - return (_justinmimbs$elm_date_extra$Date_Internal_Extract$msOffsetFromUtc(date) / _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute) | 0; -}; -var _justinmimbs$elm_date_extra$Date_Internal_Extract$weekYear = function (date) { - return A3( - _justinmimbs$elm_date_extra$Date_Internal_Core$weekYearFromCalendarDate, - _elm_lang$core$Date$year(date), - _elm_lang$core$Date$month(date), - _elm_lang$core$Date$day(date)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Extract$weekNumber = function (date) { - return A3( - _justinmimbs$elm_date_extra$Date_Internal_Core$weekNumberFromCalendarDate, - _elm_lang$core$Date$year(date), - _elm_lang$core$Date$month(date), - _elm_lang$core$Date$day(date)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Extract$weekdayNumber = function (_p0) { - return _justinmimbs$elm_date_extra$Date_Extra_Facts$weekdayNumberFromDayOfWeek( - _elm_lang$core$Date$dayOfWeek(_p0)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Extract$fractionalDay = function (date) { - var timeOfDayMS = A4( - _justinmimbs$elm_date_extra$Date_Internal_Core$msFromTimeParts, - _elm_lang$core$Date$hour(date), - _elm_lang$core$Date$minute(date), - _elm_lang$core$Date$second(date), - _elm_lang$core$Date$millisecond(date)); - return _elm_lang$core$Basics$toFloat(timeOfDayMS) / _elm_lang$core$Basics$toFloat(_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerDay); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Extract$ordinalDay = function (date) { - return A2( - _justinmimbs$elm_date_extra$Date_Extra_Facts$daysBeforeStartOfMonth, - _elm_lang$core$Date$year(date), - _elm_lang$core$Date$month(date)) + _elm_lang$core$Date$day(date); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Extract$monthNumber = function (_p1) { - return _justinmimbs$elm_date_extra$Date_Extra_Facts$monthNumberFromMonth( - _elm_lang$core$Date$month(_p1)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Extract$quarter = function (date) { - return _elm_lang$core$Basics$ceiling( - function (n) { - return n / 3; - }( - _elm_lang$core$Basics$toFloat( - _justinmimbs$elm_date_extra$Date_Internal_Extract$monthNumber(date)))); -}; - -var _justinmimbs$elm_date_extra$Date_Internal_Format$toUtc = function (date) { - return _elm_lang$core$Date$fromTime( - _elm_lang$core$Date$toTime(date) - _elm_lang$core$Basics$toFloat( - _justinmimbs$elm_date_extra$Date_Internal_Extract$offsetFromUtc(date) * _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$nameForm = function (length) { - var _p0 = length; - switch (_p0) { - case 1: - return 'abbreviated'; - case 2: - return 'abbreviated'; - case 3: - return 'abbreviated'; - case 4: - return 'full'; - case 5: - return 'narrow'; - case 6: - return 'short'; - default: - return 'invalid'; - } -}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$patternMatches = _elm_lang$core$Regex$regex('([yYQMwdDEeabhHmsSXx])\\1*|\'(?:[^\']|\'\')*?\'(?!\')'); -var _justinmimbs$elm_date_extra$Date_Internal_Format$formatTimeOffset = F3( - function (separator, minutesOptional, offset) { - var mm = A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - A2( - _elm_lang$core$Basics_ops['%'], - _elm_lang$core$Basics$abs(offset), - 60))); - var hh = A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - (_elm_lang$core$Basics$abs(offset) / 60) | 0)); - var sign = (_elm_lang$core$Native_Utils.cmp(offset, 0) > -1) ? '+' : '-'; - return (minutesOptional && _elm_lang$core$Native_Utils.eq(mm, '00')) ? A2(_elm_lang$core$Basics_ops['++'], sign, hh) : A2( - _elm_lang$core$Basics_ops['++'], - sign, - A2( - _elm_lang$core$Basics_ops['++'], - hh, - A2(_elm_lang$core$Basics_ops['++'], separator, mm))); - }); -var _justinmimbs$elm_date_extra$Date_Internal_Format$ordinalSuffix = function (n) { - var nn = A2(_elm_lang$core$Basics_ops['%'], n, 100); - var _p1 = A2( - _elm_lang$core$Basics$min, - (_elm_lang$core$Native_Utils.cmp(nn, 20) < 0) ? nn : A2(_elm_lang$core$Basics_ops['%'], nn, 10), - 4); - switch (_p1) { - case 0: - return 'th'; - case 1: - return 'st'; - case 2: - return 'nd'; - case 3: - return 'rd'; - case 4: - return 'th'; - default: - return ''; - } -}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$withOrdinalSuffix = function (n) { - return A2( - _elm_lang$core$Basics_ops['++'], - _elm_lang$core$Basics$toString(n), - _justinmimbs$elm_date_extra$Date_Internal_Format$ordinalSuffix(n)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$hour12 = function (date) { - var _p2 = A2( - _elm_lang$core$Basics_ops['%'], - _elm_lang$core$Date$hour(date), - 12); - if (_p2 === 0) { - return 12; - } else { - return _p2; - } -}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$dayOfWeekName = function (d) { - var _p3 = d; - switch (_p3.ctor) { - case 'Mon': - return 'Monday'; - case 'Tue': - return 'Tuesday'; - case 'Wed': - return 'Wednesday'; - case 'Thu': - return 'Thursday'; - case 'Fri': - return 'Friday'; - case 'Sat': - return 'Saturday'; - default: - return 'Sunday'; - } -}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$monthName = function (m) { - var _p4 = m; - switch (_p4.ctor) { - case 'Jan': - return 'January'; - case 'Feb': - return 'February'; - case 'Mar': - return 'March'; - case 'Apr': - return 'April'; - case 'May': - return 'May'; - case 'Jun': - return 'June'; - case 'Jul': - return 'July'; - case 'Aug': - return 'August'; - case 'Sep': - return 'September'; - case 'Oct': - return 'October'; - case 'Nov': - return 'November'; - default: - return 'December'; - } -}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$PM = {ctor: 'PM'}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$Noon = {ctor: 'Noon'}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$AM = {ctor: 'AM'}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$Midnight = {ctor: 'Midnight'}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$dayPeriod = function (date) { - var onTheHour = _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$minute(date), - 0) && (_elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$second(date), - 0) && _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$millisecond(date), - 0)); - var hh = _elm_lang$core$Date$hour(date); - return (_elm_lang$core$Native_Utils.eq(hh, 0) && onTheHour) ? _justinmimbs$elm_date_extra$Date_Internal_Format$Midnight : ((_elm_lang$core$Native_Utils.cmp(hh, 12) < 0) ? _justinmimbs$elm_date_extra$Date_Internal_Format$AM : ((_elm_lang$core$Native_Utils.eq(hh, 12) && onTheHour) ? _justinmimbs$elm_date_extra$Date_Internal_Format$Noon : _justinmimbs$elm_date_extra$Date_Internal_Format$PM)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Format$format = F3( - function (asUtc, date, match) { - format: - while (true) { - var length = _elm_lang$core$String$length(match); - var $char = A2(_elm_lang$core$String$left, 1, match); - var _p5 = $char; - switch (_p5) { - case 'y': - var _p6 = length; - if (_p6 === 2) { - return A2( - _elm_lang$core$String$right, - 2, - A3( - _elm_lang$core$String$padLeft, - length, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _elm_lang$core$Date$year(date)))); - } else { - return A3( - _elm_lang$core$String$padLeft, - length, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _elm_lang$core$Date$year(date))); - } - case 'Y': - var _p7 = length; - if (_p7 === 2) { - return A2( - _elm_lang$core$String$right, - 2, - A3( - _elm_lang$core$String$padLeft, - length, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$weekYear(date)))); - } else { - return A3( - _elm_lang$core$String$padLeft, - length, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$weekYear(date))); - } - case 'Q': - var _p8 = length; - switch (_p8) { - case 1: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$quarter(date)); - case 2: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$quarter(date)); - case 3: - return A2( - F2( - function (x, y) { - return A2(_elm_lang$core$Basics_ops['++'], x, y); - }), - 'Q', - _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$quarter(date))); - case 4: - return _justinmimbs$elm_date_extra$Date_Internal_Format$withOrdinalSuffix( - _justinmimbs$elm_date_extra$Date_Internal_Extract$quarter(date)); - case 5: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$quarter(date)); - default: - return ''; - } - case 'M': - var _p9 = length; - switch (_p9) { - case 1: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$monthNumber(date)); - case 2: - return A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$monthNumber(date))); - case 3: - return A2( - _elm_lang$core$String$left, - 3, - _justinmimbs$elm_date_extra$Date_Internal_Format$monthName( - _elm_lang$core$Date$month(date))); - case 4: - return _justinmimbs$elm_date_extra$Date_Internal_Format$monthName( - _elm_lang$core$Date$month(date)); - case 5: - return A2( - _elm_lang$core$String$left, - 1, - _justinmimbs$elm_date_extra$Date_Internal_Format$monthName( - _elm_lang$core$Date$month(date))); - default: - return ''; - } - case 'w': - var _p10 = length; - switch (_p10) { - case 1: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$weekNumber(date)); - case 2: - return A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$weekNumber(date))); - default: - return ''; - } - case 'd': - var _p11 = length; - switch (_p11) { - case 1: - return _elm_lang$core$Basics$toString( - _elm_lang$core$Date$day(date)); - case 2: - return A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _elm_lang$core$Date$day(date))); - case 3: - return _justinmimbs$elm_date_extra$Date_Internal_Format$withOrdinalSuffix( - _elm_lang$core$Date$day(date)); - default: - return ''; - } - case 'D': - var _p12 = length; - switch (_p12) { - case 1: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$ordinalDay(date)); - case 2: - return A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$ordinalDay(date))); - case 3: - return A3( - _elm_lang$core$String$padLeft, - 3, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$ordinalDay(date))); - default: - return ''; - } - case 'E': - var _p13 = _justinmimbs$elm_date_extra$Date_Internal_Format$nameForm(length); - switch (_p13) { - case 'abbreviated': - return A2( - _elm_lang$core$String$left, - 3, - _justinmimbs$elm_date_extra$Date_Internal_Format$dayOfWeekName( - _elm_lang$core$Date$dayOfWeek(date))); - case 'full': - return _justinmimbs$elm_date_extra$Date_Internal_Format$dayOfWeekName( - _elm_lang$core$Date$dayOfWeek(date)); - case 'narrow': - return A2( - _elm_lang$core$String$left, - 1, - _justinmimbs$elm_date_extra$Date_Internal_Format$dayOfWeekName( - _elm_lang$core$Date$dayOfWeek(date))); - case 'short': - return A2( - _elm_lang$core$String$left, - 2, - _justinmimbs$elm_date_extra$Date_Internal_Format$dayOfWeekName( - _elm_lang$core$Date$dayOfWeek(date))); - default: - return ''; - } - case 'e': - var _p14 = length; - switch (_p14) { - case 1: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$weekdayNumber(date)); - case 2: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Extract$weekdayNumber(date)); - default: - var _v15 = asUtc, - _v16 = date, - _v17 = _elm_lang$core$String$toUpper(match); - asUtc = _v15; - date = _v16; - match = _v17; - continue format; - } - case 'a': - var p = _justinmimbs$elm_date_extra$Date_Internal_Format$dayPeriod(date); - var m = (_elm_lang$core$Native_Utils.eq(p, _justinmimbs$elm_date_extra$Date_Internal_Format$Midnight) || _elm_lang$core$Native_Utils.eq(p, _justinmimbs$elm_date_extra$Date_Internal_Format$AM)) ? 'A' : 'P'; - var _p15 = _justinmimbs$elm_date_extra$Date_Internal_Format$nameForm(length); - switch (_p15) { - case 'abbreviated': - return A2(_elm_lang$core$Basics_ops['++'], m, 'M'); - case 'full': - return A2(_elm_lang$core$Basics_ops['++'], m, '.M.'); - case 'narrow': - return m; - default: - return ''; - } - case 'b': - var _p16 = _justinmimbs$elm_date_extra$Date_Internal_Format$nameForm(length); - switch (_p16) { - case 'abbreviated': - var _p17 = _justinmimbs$elm_date_extra$Date_Internal_Format$dayPeriod(date); - switch (_p17.ctor) { - case 'Midnight': - return 'mid.'; - case 'AM': - return 'am'; - case 'Noon': - return 'noon'; - default: - return 'pm'; - } - case 'full': - var _p18 = _justinmimbs$elm_date_extra$Date_Internal_Format$dayPeriod(date); - switch (_p18.ctor) { - case 'Midnight': - return 'midnight'; - case 'AM': - return 'a.m.'; - case 'Noon': - return 'noon'; - default: - return 'p.m.'; - } - case 'narrow': - var _p19 = _justinmimbs$elm_date_extra$Date_Internal_Format$dayPeriod(date); - switch (_p19.ctor) { - case 'Midnight': - return 'md'; - case 'AM': - return 'a'; - case 'Noon': - return 'nn'; - default: - return 'p'; - } - default: - return ''; - } - case 'h': - var _p20 = length; - switch (_p20) { - case 1: - return _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Format$hour12(date)); - case 2: - return A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _justinmimbs$elm_date_extra$Date_Internal_Format$hour12(date))); - default: - return ''; - } - case 'H': - var _p21 = length; - switch (_p21) { - case 1: - return _elm_lang$core$Basics$toString( - _elm_lang$core$Date$hour(date)); - case 2: - return A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _elm_lang$core$Date$hour(date))); - default: - return ''; - } - case 'm': - var _p22 = length; - switch (_p22) { - case 1: - return _elm_lang$core$Basics$toString( - _elm_lang$core$Date$minute(date)); - case 2: - return A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _elm_lang$core$Date$minute(date))); - default: - return ''; - } - case 's': - var _p23 = length; - switch (_p23) { - case 1: - return _elm_lang$core$Basics$toString( - _elm_lang$core$Date$second(date)); - case 2: - return A3( - _elm_lang$core$String$padLeft, - 2, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _elm_lang$core$Date$second(date))); - default: - return ''; - } - case 'S': - return A3( - _elm_lang$core$String$padRight, - length, - _elm_lang$core$Native_Utils.chr('0'), - A2( - _elm_lang$core$String$left, - length, - A3( - _elm_lang$core$String$padLeft, - 3, - _elm_lang$core$Native_Utils.chr('0'), - _elm_lang$core$Basics$toString( - _elm_lang$core$Date$millisecond(date))))); - case 'X': - if ((_elm_lang$core$Native_Utils.cmp(length, 4) < 0) && (asUtc || _elm_lang$core$Native_Utils.eq( - _justinmimbs$elm_date_extra$Date_Internal_Extract$offsetFromUtc(date), - 0))) { - return 'Z'; - } else { - var _v27 = asUtc, - _v28 = date, - _v29 = _elm_lang$core$String$toLower(match); - asUtc = _v27; - date = _v28; - match = _v29; - continue format; - } - case 'x': - var offset = asUtc ? 0 : _justinmimbs$elm_date_extra$Date_Internal_Extract$offsetFromUtc(date); - var _p24 = length; - switch (_p24) { - case 1: - return A3(_justinmimbs$elm_date_extra$Date_Internal_Format$formatTimeOffset, '', true, offset); - case 2: - return A3(_justinmimbs$elm_date_extra$Date_Internal_Format$formatTimeOffset, '', false, offset); - case 3: - return A3(_justinmimbs$elm_date_extra$Date_Internal_Format$formatTimeOffset, ':', false, offset); - default: - return ''; - } - case '\'': - return _elm_lang$core$Native_Utils.eq(match, '\'\'') ? '\'' : A4( - _elm_lang$core$Regex$replace, - _elm_lang$core$Regex$All, - _elm_lang$core$Regex$regex('\'\''), - function (_p25) { - return '\''; - }, - A3(_elm_lang$core$String$slice, 1, -1, match)); - default: - return ''; - } - } - }); -var _justinmimbs$elm_date_extra$Date_Internal_Format$toFormattedString = F3( - function (asUtc, pattern, date) { - var date_ = asUtc ? _justinmimbs$elm_date_extra$Date_Internal_Format$toUtc(date) : date; - return A4( - _elm_lang$core$Regex$replace, - _elm_lang$core$Regex$All, - _justinmimbs$elm_date_extra$Date_Internal_Format$patternMatches, - function (_p26) { - return A3( - _justinmimbs$elm_date_extra$Date_Internal_Format$format, - asUtc, - date_, - function (_) { - return _.match; - }(_p26)); - }, - pattern); - }); - -var _justinmimbs$elm_date_extra$Date_Internal_Parse$isoDateRegex = function () { - var time = 'T(\\d{2})(?:(\\:)?(\\d{2})(?:\\10(\\d{2}))?)?(\\.\\d+)?(?:(Z)|(?:([+\\-])(\\d{2})(?:\\:?(\\d{2}))?))?'; - var ord = '\\-?(\\d{3})'; - var week = '(\\-)?W(\\d{2})(?:\\5(\\d))?'; - var cal = '(\\-)?(\\d{2})(?:\\2(\\d{2}))?'; - var year = '(\\d{4})'; - return _elm_lang$core$Regex$regex( - A2( - _elm_lang$core$Basics_ops['++'], - '^', - A2( - _elm_lang$core$Basics_ops['++'], - year, - A2( - _elm_lang$core$Basics_ops['++'], - '(?:', - A2( - _elm_lang$core$Basics_ops['++'], - cal, - A2( - _elm_lang$core$Basics_ops['++'], - '|', - A2( - _elm_lang$core$Basics_ops['++'], - week, - A2( - _elm_lang$core$Basics_ops['++'], - '|', - A2( - _elm_lang$core$Basics_ops['++'], - ord, - A2( - _elm_lang$core$Basics_ops['++'], - ')?', - A2( - _elm_lang$core$Basics_ops['++'], - '(?:', - A2(_elm_lang$core$Basics_ops['++'], time, ')?$')))))))))))); -}(); -var _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToFloat = function (_p0) { - return _elm_lang$core$Result$toMaybe( - _elm_lang$core$String$toFloat(_p0)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Parse$msFromMatches = F4( - function (timeHH, timeMM, timeSS, timeF) { - var fractional = A2( - _elm_lang$core$Maybe$withDefault, - 0.0, - A2(_elm_lang$core$Maybe$andThen, _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToFloat, timeF)); - var _p1 = function () { - var _p2 = A2( - _elm_lang$core$List$map, - _elm_lang$core$Maybe$andThen(_justinmimbs$elm_date_extra$Date_Internal_Parse$stringToFloat), - { - ctor: '::', - _0: timeHH, - _1: { - ctor: '::', - _0: timeMM, - _1: { - ctor: '::', - _0: timeSS, - _1: {ctor: '[]'} - } - } - }); - _v0_3: - do { - if (((_p2.ctor === '::') && (_p2._0.ctor === 'Just')) && (_p2._1.ctor === '::')) { - if (_p2._1._0.ctor === 'Just') { - if (_p2._1._1.ctor === '::') { - if (_p2._1._1._0.ctor === 'Just') { - if (_p2._1._1._1.ctor === '[]') { - return {ctor: '_Tuple3', _0: _p2._0._0, _1: _p2._1._0._0, _2: _p2._1._1._0._0 + fractional}; - } else { - break _v0_3; - } - } else { - if (_p2._1._1._1.ctor === '[]') { - return {ctor: '_Tuple3', _0: _p2._0._0, _1: _p2._1._0._0 + fractional, _2: 0.0}; - } else { - break _v0_3; - } - } - } else { - break _v0_3; - } - } else { - if (((_p2._1._1.ctor === '::') && (_p2._1._1._0.ctor === 'Nothing')) && (_p2._1._1._1.ctor === '[]')) { - return {ctor: '_Tuple3', _0: _p2._0._0 + fractional, _1: 0.0, _2: 0.0}; - } else { - break _v0_3; - } - } - } else { - break _v0_3; - } - } while(false); - return {ctor: '_Tuple3', _0: 0.0, _1: 0.0, _2: 0.0}; - }(); - var hh = _p1._0; - var mm = _p1._1; - var ss = _p1._2; - return _elm_lang$core$Basics$round( - ((hh * _elm_lang$core$Basics$toFloat(_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerHour)) + (mm * _elm_lang$core$Basics$toFloat(_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute))) + (ss * _elm_lang$core$Basics$toFloat(_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerSecond))); - }); -var _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt = function (_p3) { - return _elm_lang$core$Result$toMaybe( - _elm_lang$core$String$toInt(_p3)); -}; -var _justinmimbs$elm_date_extra$Date_Internal_Parse$unixTimeFromMatches = F6( - function (yyyy, calMM, calDD, weekWW, weekD, ordDDD) { - var y = A2( - _elm_lang$core$Maybe$withDefault, - 1, - _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt(yyyy)); - var _p4 = {ctor: '_Tuple2', _0: calMM, _1: weekWW}; - _v1_2: - do { - if (_p4.ctor === '_Tuple2') { - if (_p4._0.ctor === 'Just') { - if (_p4._1.ctor === 'Nothing') { - return A3( - _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromCalendarDate, - y, - _justinmimbs$elm_date_extra$Date_Extra_Facts$monthFromMonthNumber( - A2( - _elm_lang$core$Maybe$withDefault, - 1, - A2(_elm_lang$core$Maybe$andThen, _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt, calMM))), - A2( - _elm_lang$core$Maybe$withDefault, - 1, - A2(_elm_lang$core$Maybe$andThen, _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt, calDD))); - } else { - break _v1_2; - } - } else { - if (_p4._1.ctor === 'Just') { - return A3( - _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromWeekDate, - y, - A2( - _elm_lang$core$Maybe$withDefault, - 1, - A2(_elm_lang$core$Maybe$andThen, _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt, weekWW)), - A2( - _elm_lang$core$Maybe$withDefault, - 1, - A2(_elm_lang$core$Maybe$andThen, _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt, weekD))); - } else { - break _v1_2; - } - } - } else { - break _v1_2; - } - } while(false); - return A2( - _justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromOrdinalDate, - y, - A2( - _elm_lang$core$Maybe$withDefault, - 1, - A2(_elm_lang$core$Maybe$andThen, _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt, ordDDD))); - }); -var _justinmimbs$elm_date_extra$Date_Internal_Parse$offsetFromMatches = F4( - function (tzZ, tzSign, tzHH, tzMM) { - var _p5 = {ctor: '_Tuple2', _0: tzZ, _1: tzSign}; - _v2_2: - do { - if (_p5.ctor === '_Tuple2') { - if (_p5._0.ctor === 'Just') { - if ((_p5._0._0 === 'Z') && (_p5._1.ctor === 'Nothing')) { - return _elm_lang$core$Maybe$Just(0); - } else { - break _v2_2; - } - } else { - if (_p5._1.ctor === 'Just') { - var mm = A2( - _elm_lang$core$Maybe$withDefault, - 0, - A2(_elm_lang$core$Maybe$andThen, _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt, tzMM)); - var hh = A2( - _elm_lang$core$Maybe$withDefault, - 0, - A2(_elm_lang$core$Maybe$andThen, _justinmimbs$elm_date_extra$Date_Internal_Parse$stringToInt, tzHH)); - return _elm_lang$core$Maybe$Just( - (_elm_lang$core$Native_Utils.eq(_p5._1._0, '+') ? 1 : -1) * ((hh * 60) + mm)); - } else { - break _v2_2; - } - } - } else { - break _v2_2; - } - } while(false); - return _elm_lang$core$Maybe$Nothing; - }); -var _justinmimbs$elm_date_extra$Date_Internal_Parse$offsetTimeFromMatches = function (matches) { - var _p6 = matches; - if (((((((((((((((((((_p6.ctor === '::') && (_p6._0.ctor === 'Just')) && (_p6._1.ctor === '::')) && (_p6._1._1.ctor === '::')) && (_p6._1._1._1.ctor === '::')) && (_p6._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1.ctor === '::')) && (_p6._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1.ctor === '[]')) { - var offset = A4(_justinmimbs$elm_date_extra$Date_Internal_Parse$offsetFromMatches, _p6._1._1._1._1._1._1._1._1._1._1._1._1._1._0, _p6._1._1._1._1._1._1._1._1._1._1._1._1._1._1._0, _p6._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1._0, _p6._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1._1._0); - var timeMS = A4(_justinmimbs$elm_date_extra$Date_Internal_Parse$msFromMatches, _p6._1._1._1._1._1._1._1._1._0, _p6._1._1._1._1._1._1._1._1._1._1._0, _p6._1._1._1._1._1._1._1._1._1._1._1._0, _p6._1._1._1._1._1._1._1._1._1._1._1._1._0); - var dateMS = A6(_justinmimbs$elm_date_extra$Date_Internal_Parse$unixTimeFromMatches, _p6._0._0, _p6._1._1._0, _p6._1._1._1._0, _p6._1._1._1._1._1._0, _p6._1._1._1._1._1._1._0, _p6._1._1._1._1._1._1._1._0); - return _elm_lang$core$Maybe$Just( - {ctor: '_Tuple2', _0: offset, _1: dateMS + timeMS}); - } else { - return _elm_lang$core$Maybe$Nothing; - } -}; -var _justinmimbs$elm_date_extra$Date_Internal_Parse$offsetTimeFromIsoString = function (s) { - return A2( - _elm_lang$core$Maybe$andThen, - _justinmimbs$elm_date_extra$Date_Internal_Parse$offsetTimeFromMatches, - A2( - _elm_lang$core$Maybe$map, - function (_) { - return _.submatches; - }, - _elm_lang$core$List$head( - A3( - _elm_lang$core$Regex$find, - _elm_lang$core$Regex$AtMost(1), - _justinmimbs$elm_date_extra$Date_Internal_Parse$isoDateRegex, - s)))); -}; - -var _justinmimbs$elm_date_extra$Date_Extra$toRataDie = function (date) { - return A3( - _justinmimbs$elm_date_extra$Date_Internal_RataDie$fromCalendarDate, - _elm_lang$core$Date$year(date), - _elm_lang$core$Date$month(date), - _elm_lang$core$Date$day(date)); -}; -var _justinmimbs$elm_date_extra$Date_Extra$toParts = function (date) { - return { - ctor: '_Tuple7', - _0: _elm_lang$core$Date$year(date), - _1: _elm_lang$core$Date$month(date), - _2: _elm_lang$core$Date$day(date), - _3: _elm_lang$core$Date$hour(date), - _4: _elm_lang$core$Date$minute(date), - _5: _elm_lang$core$Date$second(date), - _6: _elm_lang$core$Date$millisecond(date) - }; -}; -var _justinmimbs$elm_date_extra$Date_Extra$monthFromQuarter = function (q) { - var _p0 = q; - switch (_p0) { - case 1: - return _elm_lang$core$Date$Jan; - case 2: - return _elm_lang$core$Date$Apr; - case 3: - return _elm_lang$core$Date$Jul; - default: - return _elm_lang$core$Date$Oct; - } -}; -var _justinmimbs$elm_date_extra$Date_Extra$clamp = F3( - function (min, max, date) { - return (_elm_lang$core$Native_Utils.cmp( - _elm_lang$core$Date$toTime(date), - _elm_lang$core$Date$toTime(min)) < 0) ? min : ((_elm_lang$core$Native_Utils.cmp( - _elm_lang$core$Date$toTime(date), - _elm_lang$core$Date$toTime(max)) > 0) ? max : date); - }); -var _justinmimbs$elm_date_extra$Date_Extra$comparableIsBetween = F3( - function (a, b, x) { - return ((_elm_lang$core$Native_Utils.cmp(a, x) < 1) && (_elm_lang$core$Native_Utils.cmp(x, b) < 1)) || ((_elm_lang$core$Native_Utils.cmp(b, x) < 1) && (_elm_lang$core$Native_Utils.cmp(x, a) < 1)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$isBetween = F3( - function (date1, date2, date) { - return A3( - _justinmimbs$elm_date_extra$Date_Extra$comparableIsBetween, - _elm_lang$core$Date$toTime(date1), - _elm_lang$core$Date$toTime(date2), - _elm_lang$core$Date$toTime(date)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$compare = F2( - function (a, b) { - return A2( - _elm_lang$core$Basics$compare, - _elm_lang$core$Date$toTime(a), - _elm_lang$core$Date$toTime(b)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$equal = F2( - function (a, b) { - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$toTime(a), - _elm_lang$core$Date$toTime(b)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$offsetFromUtc = _justinmimbs$elm_date_extra$Date_Internal_Extract$offsetFromUtc; -var _justinmimbs$elm_date_extra$Date_Extra$weekYear = _justinmimbs$elm_date_extra$Date_Internal_Extract$weekYear; -var _justinmimbs$elm_date_extra$Date_Extra$weekNumber = _justinmimbs$elm_date_extra$Date_Internal_Extract$weekNumber; -var _justinmimbs$elm_date_extra$Date_Extra$weekdayNumber = _justinmimbs$elm_date_extra$Date_Internal_Extract$weekdayNumber; -var _justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek = F2( - function (d, date) { - return _elm_lang$core$Basics$negate( - A2( - _elm_lang$core$Basics_ops['%'], - (_justinmimbs$elm_date_extra$Date_Extra$weekdayNumber(date) - _justinmimbs$elm_date_extra$Date_Extra_Facts$weekdayNumberFromDayOfWeek(d)) + 7, - 7)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$fractionalDay = _justinmimbs$elm_date_extra$Date_Internal_Extract$fractionalDay; -var _justinmimbs$elm_date_extra$Date_Extra$ordinalDay = _justinmimbs$elm_date_extra$Date_Internal_Extract$ordinalDay; -var _justinmimbs$elm_date_extra$Date_Extra$quarter = _justinmimbs$elm_date_extra$Date_Internal_Extract$quarter; -var _justinmimbs$elm_date_extra$Date_Extra$monthNumber = _justinmimbs$elm_date_extra$Date_Internal_Extract$monthNumber; -var _justinmimbs$elm_date_extra$Date_Extra$ordinalMonth = function (date) { - return (_elm_lang$core$Date$year(date) * 12) + _justinmimbs$elm_date_extra$Date_Extra$monthNumber(date); -}; -var _justinmimbs$elm_date_extra$Date_Extra$diffMonth = F2( - function (date1, date2) { - var fractionalMonth = function (date) { - return (_elm_lang$core$Basics$toFloat( - _elm_lang$core$Date$day(date) - 1) + _justinmimbs$elm_date_extra$Date_Extra$fractionalDay(date)) / 31; - }; - var ordinalMonthFloat = function (date) { - return _elm_lang$core$Basics$toFloat( - _justinmimbs$elm_date_extra$Date_Extra$ordinalMonth(date)) + fractionalMonth(date); - }; - return _elm_lang$core$Basics$truncate( - ordinalMonthFloat(date2) - ordinalMonthFloat(date1)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$toUtcFormattedString = _justinmimbs$elm_date_extra$Date_Internal_Format$toFormattedString(true); -var _justinmimbs$elm_date_extra$Date_Extra$toUtcIsoString = _justinmimbs$elm_date_extra$Date_Extra$toUtcFormattedString('yyyy-MM-dd\'T\'HH:mm:ss.SSSXXX'); -var _justinmimbs$elm_date_extra$Date_Extra$toFormattedString = _justinmimbs$elm_date_extra$Date_Internal_Format$toFormattedString(false); -var _justinmimbs$elm_date_extra$Date_Extra$toIsoString = _justinmimbs$elm_date_extra$Date_Extra$toFormattedString('yyyy-MM-dd\'T\'HH:mm:ss.SSSxxx'); -var _justinmimbs$elm_date_extra$Date_Extra$fromTime = function (_p1) { - return _elm_lang$core$Date$fromTime( - _elm_lang$core$Basics$toFloat(_p1)); -}; -var _justinmimbs$elm_date_extra$Date_Extra$fromOffsetTime = function (_p2) { - var _p3 = _p2; - var _p5 = _p3._1; - var _p4 = _p3._0; - if (_p4.ctor === 'Just') { - return _justinmimbs$elm_date_extra$Date_Extra$fromTime(_p5 - (_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute * _p4._0)); - } else { - var offset0 = _justinmimbs$elm_date_extra$Date_Extra$offsetFromUtc( - _justinmimbs$elm_date_extra$Date_Extra$fromTime(_p5)); - var date1 = _justinmimbs$elm_date_extra$Date_Extra$fromTime(_p5 - (_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute * offset0)); - var offset1 = _justinmimbs$elm_date_extra$Date_Extra$offsetFromUtc(date1); - if (_elm_lang$core$Native_Utils.eq(offset0, offset1)) { - return date1; - } else { - var date2 = _justinmimbs$elm_date_extra$Date_Extra$fromTime(_p5 - (_justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute * offset1)); - var offset2 = _justinmimbs$elm_date_extra$Date_Extra$offsetFromUtc(date2); - return _elm_lang$core$Native_Utils.eq(offset1, offset2) ? date2 : date1; - } - } -}; -var _justinmimbs$elm_date_extra$Date_Extra$fromParts = F7( - function (y, m, d, hh, mm, ss, ms) { - return _justinmimbs$elm_date_extra$Date_Extra$fromOffsetTime( - { - ctor: '_Tuple2', - _0: _elm_lang$core$Maybe$Nothing, - _1: A7(_justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromParts, y, m, d, hh, mm, ss, ms) - }); - }); -var _justinmimbs$elm_date_extra$Date_Extra$addMonths = F2( - function (n, date) { - var om = (_justinmimbs$elm_date_extra$Date_Extra$ordinalMonth(date) + n) + -1; - var y_ = (om / 12) | 0; - var m_ = _justinmimbs$elm_date_extra$Date_Extra_Facts$monthFromMonthNumber( - A2(_elm_lang$core$Basics_ops['%'], om, 12) + 1); - var _p6 = _justinmimbs$elm_date_extra$Date_Extra$toParts(date); - var y = _p6._0; - var m = _p6._1; - var d = _p6._2; - var hh = _p6._3; - var mm = _p6._4; - var ss = _p6._5; - var ms = _p6._6; - var d_ = A2( - _elm_lang$core$Basics$min, - d, - A2(_justinmimbs$elm_date_extra$Date_Extra_Facts$daysInMonth, y_, m_)); - return A7(_justinmimbs$elm_date_extra$Date_Extra$fromParts, y_, m_, d_, hh, mm, ss, ms); - }); -var _justinmimbs$elm_date_extra$Date_Extra$add = F3( - function (interval, n, date) { - var _p7 = _justinmimbs$elm_date_extra$Date_Extra$toParts(date); - var y = _p7._0; - var m = _p7._1; - var d = _p7._2; - var hh = _p7._3; - var mm = _p7._4; - var ss = _p7._5; - var ms = _p7._6; - var _p8 = interval; - switch (_p8.ctor) { - case 'Millisecond': - return _elm_lang$core$Date$fromTime( - _elm_lang$core$Date$toTime(date) + _elm_lang$core$Basics$toFloat(n)); - case 'Second': - return _elm_lang$core$Date$fromTime( - _elm_lang$core$Date$toTime(date) + _elm_lang$core$Basics$toFloat(n * _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerSecond)); - case 'Minute': - return _elm_lang$core$Date$fromTime( - _elm_lang$core$Date$toTime(date) + _elm_lang$core$Basics$toFloat(n * _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute)); - case 'Hour': - return _elm_lang$core$Date$fromTime( - _elm_lang$core$Date$toTime(date) + _elm_lang$core$Basics$toFloat(n * _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerHour)); - case 'Day': - return A7(_justinmimbs$elm_date_extra$Date_Extra$fromParts, y, m, d + n, hh, mm, ss, ms); - case 'Month': - return A2(_justinmimbs$elm_date_extra$Date_Extra$addMonths, n, date); - case 'Year': - return A2(_justinmimbs$elm_date_extra$Date_Extra$addMonths, n * 12, date); - case 'Quarter': - return A2(_justinmimbs$elm_date_extra$Date_Extra$addMonths, n * 3, date); - case 'Week': - return A7(_justinmimbs$elm_date_extra$Date_Extra$fromParts, y, m, d + (n * 7), hh, mm, ss, ms); - default: - return A7(_justinmimbs$elm_date_extra$Date_Extra$fromParts, y, m, d + (n * 7), hh, mm, ss, ms); - } - }); -var _justinmimbs$elm_date_extra$Date_Extra$rangeHelp = F5( - function (interval, step, end, revList, date) { - rangeHelp: - while (true) { - if (_elm_lang$core$Native_Utils.cmp( - _elm_lang$core$Date$toTime(date), - _elm_lang$core$Date$toTime(end)) < 0) { - var _v4 = interval, - _v5 = step, - _v6 = end, - _v7 = {ctor: '::', _0: date, _1: revList}, - _v8 = A3(_justinmimbs$elm_date_extra$Date_Extra$add, interval, step, date); - interval = _v4; - step = _v5; - end = _v6; - revList = _v7; - date = _v8; - continue rangeHelp; - } else { - return _elm_lang$core$List$reverse(revList); - } - } - }); -var _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate = F3( - function (y, m, d) { - return _justinmimbs$elm_date_extra$Date_Extra$fromOffsetTime( - { - ctor: '_Tuple2', - _0: _elm_lang$core$Maybe$Nothing, - _1: A3(_justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromCalendarDate, y, m, d) - }); - }); -var _justinmimbs$elm_date_extra$Date_Extra$floor = F2( - function (interval, date) { - var _p9 = _justinmimbs$elm_date_extra$Date_Extra$toParts(date); - var y = _p9._0; - var m = _p9._1; - var d = _p9._2; - var hh = _p9._3; - var mm = _p9._4; - var ss = _p9._5; - var _p10 = interval; - switch (_p10.ctor) { - case 'Millisecond': - return date; - case 'Second': - return A7(_justinmimbs$elm_date_extra$Date_Extra$fromParts, y, m, d, hh, mm, ss, 0); - case 'Minute': - return A7(_justinmimbs$elm_date_extra$Date_Extra$fromParts, y, m, d, hh, mm, 0, 0); - case 'Hour': - return A7(_justinmimbs$elm_date_extra$Date_Extra$fromParts, y, m, d, hh, 0, 0, 0); - case 'Day': - return A3(_justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, y, m, d); - case 'Month': - return A3(_justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, y, m, 1); - case 'Year': - return A3(_justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, y, _elm_lang$core$Date$Jan, 1); - case 'Quarter': - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - _justinmimbs$elm_date_extra$Date_Extra$monthFromQuarter( - _justinmimbs$elm_date_extra$Date_Extra$quarter(date)), - 1); - case 'Week': - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - m, - d + A2(_justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek, _elm_lang$core$Date$Mon, date)); - case 'Monday': - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - m, - d + A2(_justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek, _elm_lang$core$Date$Mon, date)); - case 'Tuesday': - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - m, - d + A2(_justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek, _elm_lang$core$Date$Tue, date)); - case 'Wednesday': - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - m, - d + A2(_justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek, _elm_lang$core$Date$Wed, date)); - case 'Thursday': - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - m, - d + A2(_justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek, _elm_lang$core$Date$Thu, date)); - case 'Friday': - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - m, - d + A2(_justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek, _elm_lang$core$Date$Fri, date)); - case 'Saturday': - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - m, - d + A2(_justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek, _elm_lang$core$Date$Sat, date)); - default: - return A3( - _justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, - y, - m, - d + A2(_justinmimbs$elm_date_extra$Date_Extra$daysToPreviousDayOfWeek, _elm_lang$core$Date$Sun, date)); - } - }); -var _justinmimbs$elm_date_extra$Date_Extra$ceiling = F2( - function (interval, date) { - var floored = A2(_justinmimbs$elm_date_extra$Date_Extra$floor, interval, date); - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$toTime(date), - _elm_lang$core$Date$toTime(floored)) ? date : A3(_justinmimbs$elm_date_extra$Date_Extra$add, interval, 1, floored); - }); -var _justinmimbs$elm_date_extra$Date_Extra$range = F4( - function (interval, step, start, end) { - var first = A2(_justinmimbs$elm_date_extra$Date_Extra$ceiling, interval, start); - return (_elm_lang$core$Native_Utils.cmp( - _elm_lang$core$Date$toTime(first), - _elm_lang$core$Date$toTime(end)) < 0) ? A5( - _justinmimbs$elm_date_extra$Date_Extra$rangeHelp, - interval, - A2(_elm_lang$core$Basics$max, 1, step), - end, - {ctor: '[]'}, - first) : {ctor: '[]'}; - }); -var _justinmimbs$elm_date_extra$Date_Extra$fromIsoString = function (_p11) { - return A2( - _elm_lang$core$Maybe$map, - _justinmimbs$elm_date_extra$Date_Extra$fromOffsetTime, - _justinmimbs$elm_date_extra$Date_Internal_Parse$offsetTimeFromIsoString(_p11)); -}; -var _justinmimbs$elm_date_extra$Date_Extra$fromSpec = F3( - function (_p14, _p13, _p12) { - var _p15 = _p14; - var _p16 = _p13; - var _p17 = _p12; - return _justinmimbs$elm_date_extra$Date_Extra$fromOffsetTime( - {ctor: '_Tuple2', _0: _p15._0, _1: _p17._0 + _p16._0}); - }); -var _justinmimbs$elm_date_extra$Date_Extra$Offset = function (a) { - return {ctor: 'Offset', _0: a}; -}; -var _justinmimbs$elm_date_extra$Date_Extra$utc = _justinmimbs$elm_date_extra$Date_Extra$Offset( - _elm_lang$core$Maybe$Just(0)); -var _justinmimbs$elm_date_extra$Date_Extra$offset = function (minutes) { - return _justinmimbs$elm_date_extra$Date_Extra$Offset( - _elm_lang$core$Maybe$Just(minutes)); -}; -var _justinmimbs$elm_date_extra$Date_Extra$local = _justinmimbs$elm_date_extra$Date_Extra$Offset(_elm_lang$core$Maybe$Nothing); -var _justinmimbs$elm_date_extra$Date_Extra$TimeMS = function (a) { - return {ctor: 'TimeMS', _0: a}; -}; -var _justinmimbs$elm_date_extra$Date_Extra$noTime = _justinmimbs$elm_date_extra$Date_Extra$TimeMS(0); -var _justinmimbs$elm_date_extra$Date_Extra$atTime = F4( - function (hh, mm, ss, ms) { - return _justinmimbs$elm_date_extra$Date_Extra$TimeMS( - A4(_justinmimbs$elm_date_extra$Date_Internal_Core$msFromTimeParts, hh, mm, ss, ms)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$DateMS = function (a) { - return {ctor: 'DateMS', _0: a}; -}; -var _justinmimbs$elm_date_extra$Date_Extra$calendarDate = F3( - function (y, m, d) { - return _justinmimbs$elm_date_extra$Date_Extra$DateMS( - A3(_justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromCalendarDate, y, m, d)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$ordinalDate = F2( - function (y, d) { - return _justinmimbs$elm_date_extra$Date_Extra$DateMS( - A2(_justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromOrdinalDate, y, d)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$weekDate = F3( - function (y, w, d) { - return _justinmimbs$elm_date_extra$Date_Extra$DateMS( - A3(_justinmimbs$elm_date_extra$Date_Internal_Core$unixTimeFromWeekDate, y, w, d)); - }); -var _justinmimbs$elm_date_extra$Date_Extra$Sunday = {ctor: 'Sunday'}; -var _justinmimbs$elm_date_extra$Date_Extra$Saturday = {ctor: 'Saturday'}; -var _justinmimbs$elm_date_extra$Date_Extra$Friday = {ctor: 'Friday'}; -var _justinmimbs$elm_date_extra$Date_Extra$Thursday = {ctor: 'Thursday'}; -var _justinmimbs$elm_date_extra$Date_Extra$Wednesday = {ctor: 'Wednesday'}; -var _justinmimbs$elm_date_extra$Date_Extra$Tuesday = {ctor: 'Tuesday'}; -var _justinmimbs$elm_date_extra$Date_Extra$Monday = {ctor: 'Monday'}; -var _justinmimbs$elm_date_extra$Date_Extra$Week = {ctor: 'Week'}; -var _justinmimbs$elm_date_extra$Date_Extra$Quarter = {ctor: 'Quarter'}; -var _justinmimbs$elm_date_extra$Date_Extra$Year = {ctor: 'Year'}; -var _justinmimbs$elm_date_extra$Date_Extra$Month = {ctor: 'Month'}; -var _justinmimbs$elm_date_extra$Date_Extra$Day = {ctor: 'Day'}; -var _justinmimbs$elm_date_extra$Date_Extra$diff = F3( - function (interval, date1, date2) { - var diffMS = _elm_lang$core$Basics$floor( - _elm_lang$core$Date$toTime(date2) - _elm_lang$core$Date$toTime(date1)); - var _p18 = interval; - switch (_p18.ctor) { - case 'Millisecond': - return diffMS; - case 'Second': - return (diffMS / _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerSecond) | 0; - case 'Minute': - return (diffMS / _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerMinute) | 0; - case 'Hour': - return (diffMS / _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerHour) | 0; - case 'Day': - return (diffMS / _justinmimbs$elm_date_extra$Date_Extra_Facts$msPerDay) | 0; - case 'Month': - return A2(_justinmimbs$elm_date_extra$Date_Extra$diffMonth, date1, date2); - case 'Year': - return (A2(_justinmimbs$elm_date_extra$Date_Extra$diffMonth, date1, date2) / 12) | 0; - case 'Quarter': - return (A2(_justinmimbs$elm_date_extra$Date_Extra$diffMonth, date1, date2) / 3) | 0; - case 'Week': - return (A3(_justinmimbs$elm_date_extra$Date_Extra$diff, _justinmimbs$elm_date_extra$Date_Extra$Day, date1, date2) / 7) | 0; - default: - var _p19 = _p18; - return (A3( - _justinmimbs$elm_date_extra$Date_Extra$diff, - _justinmimbs$elm_date_extra$Date_Extra$Day, - A2(_justinmimbs$elm_date_extra$Date_Extra$floor, _p19, date1), - A2(_justinmimbs$elm_date_extra$Date_Extra$floor, _p19, date2)) / 7) | 0; - } - }); -var _justinmimbs$elm_date_extra$Date_Extra$fromRataDie = function (rd) { - return A3( - _justinmimbs$elm_date_extra$Date_Extra$add, - _justinmimbs$elm_date_extra$Date_Extra$Day, - rd - 719163, - A3(_justinmimbs$elm_date_extra$Date_Extra$fromCalendarDate, 1970, _elm_lang$core$Date$Jan, 1)); -}; -var _justinmimbs$elm_date_extra$Date_Extra$Hour = {ctor: 'Hour'}; -var _justinmimbs$elm_date_extra$Date_Extra$Minute = {ctor: 'Minute'}; -var _justinmimbs$elm_date_extra$Date_Extra$equalBy = F3( - function (interval, date1, date2) { - equalBy: - while (true) { - var _p20 = interval; - switch (_p20.ctor) { - case 'Millisecond': - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$toTime(date1), - _elm_lang$core$Date$toTime(date2)); - case 'Second': - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$second(date1), - _elm_lang$core$Date$second(date2)) && A3(_justinmimbs$elm_date_extra$Date_Extra$equalBy, _justinmimbs$elm_date_extra$Date_Extra$Minute, date1, date2); - case 'Minute': - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$minute(date1), - _elm_lang$core$Date$minute(date2)) && A3(_justinmimbs$elm_date_extra$Date_Extra$equalBy, _justinmimbs$elm_date_extra$Date_Extra$Hour, date1, date2); - case 'Hour': - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$hour(date1), - _elm_lang$core$Date$hour(date2)) && A3(_justinmimbs$elm_date_extra$Date_Extra$equalBy, _justinmimbs$elm_date_extra$Date_Extra$Day, date1, date2); - case 'Day': - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$day(date1), - _elm_lang$core$Date$day(date2)) && A3(_justinmimbs$elm_date_extra$Date_Extra$equalBy, _justinmimbs$elm_date_extra$Date_Extra$Month, date1, date2); - case 'Month': - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$month(date1), - _elm_lang$core$Date$month(date2)) && A3(_justinmimbs$elm_date_extra$Date_Extra$equalBy, _justinmimbs$elm_date_extra$Date_Extra$Year, date1, date2); - case 'Year': - return _elm_lang$core$Native_Utils.eq( - _elm_lang$core$Date$year(date1), - _elm_lang$core$Date$year(date2)); - case 'Quarter': - return _elm_lang$core$Native_Utils.eq( - _justinmimbs$elm_date_extra$Date_Extra$quarter(date1), - _justinmimbs$elm_date_extra$Date_Extra$quarter(date2)) && A3(_justinmimbs$elm_date_extra$Date_Extra$equalBy, _justinmimbs$elm_date_extra$Date_Extra$Year, date1, date2); - case 'Week': - return _elm_lang$core$Native_Utils.eq( - _justinmimbs$elm_date_extra$Date_Extra$weekNumber(date1), - _justinmimbs$elm_date_extra$Date_Extra$weekNumber(date2)) && _elm_lang$core$Native_Utils.eq( - _justinmimbs$elm_date_extra$Date_Extra$weekYear(date1), - _justinmimbs$elm_date_extra$Date_Extra$weekYear(date2)); - default: - var _p21 = _p20; - var _v15 = _justinmimbs$elm_date_extra$Date_Extra$Day, - _v16 = A2(_justinmimbs$elm_date_extra$Date_Extra$floor, _p21, date1), - _v17 = A2(_justinmimbs$elm_date_extra$Date_Extra$floor, _p21, date2); - interval = _v15; - date1 = _v16; - date2 = _v17; - continue equalBy; - } - } - }); -var _justinmimbs$elm_date_extra$Date_Extra$Second = {ctor: 'Second'}; -var _justinmimbs$elm_date_extra$Date_Extra$Millisecond = {ctor: 'Millisecond'}; - -var _krisajenkins$remotedata$RemoteData$isNotAsked = function (data) { - var _p0 = data; - if (_p0.ctor === 'NotAsked') { - return true; - } else { - return false; - } -}; -var _krisajenkins$remotedata$RemoteData$isLoading = function (data) { - var _p1 = data; - if (_p1.ctor === 'Loading') { - return true; - } else { - return false; - } -}; -var _krisajenkins$remotedata$RemoteData$isFailure = function (data) { - var _p2 = data; - if (_p2.ctor === 'Failure') { - return true; - } else { - return false; - } -}; -var _krisajenkins$remotedata$RemoteData$isSuccess = function (data) { - var _p3 = data; - if (_p3.ctor === 'Success') { - return true; - } else { - return false; - } -}; -var _krisajenkins$remotedata$RemoteData$withDefault = F2( - function ($default, data) { - var _p4 = data; - if (_p4.ctor === 'Success') { - return _p4._0; - } else { - return $default; - } - }); -var _krisajenkins$remotedata$RemoteData$Success = function (a) { - return {ctor: 'Success', _0: a}; -}; -var _krisajenkins$remotedata$RemoteData$succeed = _krisajenkins$remotedata$RemoteData$Success; -var _krisajenkins$remotedata$RemoteData$prism = { - reverseGet: _krisajenkins$remotedata$RemoteData$Success, - getOption: function (data) { - var _p5 = data; - if (_p5.ctor === 'Success') { - return _elm_lang$core$Maybe$Just(_p5._0); - } else { - return _elm_lang$core$Maybe$Nothing; - } - } -}; -var _krisajenkins$remotedata$RemoteData$Failure = function (a) { - return {ctor: 'Failure', _0: a}; -}; -var _krisajenkins$remotedata$RemoteData$fromMaybe = F2( - function (error, maybe) { - var _p6 = maybe; - if (_p6.ctor === 'Nothing') { - return _krisajenkins$remotedata$RemoteData$Failure(error); - } else { - return _krisajenkins$remotedata$RemoteData$Success(_p6._0); - } - }); -var _krisajenkins$remotedata$RemoteData$fromResult = function (result) { - var _p7 = result; - if (_p7.ctor === 'Err') { - return _krisajenkins$remotedata$RemoteData$Failure(_p7._0); - } else { - return _krisajenkins$remotedata$RemoteData$Success(_p7._0); - } -}; -var _krisajenkins$remotedata$RemoteData$asCmd = _elm_lang$core$Task$attempt(_krisajenkins$remotedata$RemoteData$fromResult); -var _krisajenkins$remotedata$RemoteData$sendRequest = _elm_lang$http$Http$send(_krisajenkins$remotedata$RemoteData$fromResult); -var _krisajenkins$remotedata$RemoteData$fromTask = function (_p8) { - return A2( - _elm_lang$core$Task$onError, - function (_p9) { - return _elm_lang$core$Task$succeed( - _krisajenkins$remotedata$RemoteData$Failure(_p9)); - }, - A2(_elm_lang$core$Task$map, _krisajenkins$remotedata$RemoteData$Success, _p8)); -}; -var _krisajenkins$remotedata$RemoteData$Loading = {ctor: 'Loading'}; -var _krisajenkins$remotedata$RemoteData$NotAsked = {ctor: 'NotAsked'}; -var _krisajenkins$remotedata$RemoteData$map = F2( - function (f, data) { - var _p10 = data; - switch (_p10.ctor) { - case 'Success': - return _krisajenkins$remotedata$RemoteData$Success( - f(_p10._0)); - case 'Loading': - return _krisajenkins$remotedata$RemoteData$Loading; - case 'NotAsked': - return _krisajenkins$remotedata$RemoteData$NotAsked; - default: - return _krisajenkins$remotedata$RemoteData$Failure(_p10._0); - } - }); -var _krisajenkins$remotedata$RemoteData$toMaybe = function (_p11) { - return A2( - _krisajenkins$remotedata$RemoteData$withDefault, - _elm_lang$core$Maybe$Nothing, - A2(_krisajenkins$remotedata$RemoteData$map, _elm_lang$core$Maybe$Just, _p11)); -}; -var _krisajenkins$remotedata$RemoteData$mapError = F2( - function (f, data) { - var _p12 = data; - switch (_p12.ctor) { - case 'Success': - return _krisajenkins$remotedata$RemoteData$Success(_p12._0); - case 'Failure': - return _krisajenkins$remotedata$RemoteData$Failure( - f(_p12._0)); - case 'Loading': - return _krisajenkins$remotedata$RemoteData$Loading; - default: - return _krisajenkins$remotedata$RemoteData$NotAsked; - } - }); -var _krisajenkins$remotedata$RemoteData$mapBoth = F2( - function (successFn, errorFn) { - return function (_p13) { - return A2( - _krisajenkins$remotedata$RemoteData$mapError, - errorFn, - A2(_krisajenkins$remotedata$RemoteData$map, successFn, _p13)); - }; - }); -var _krisajenkins$remotedata$RemoteData$andThen = F2( - function (f, data) { - var _p14 = data; - switch (_p14.ctor) { - case 'Success': - return f(_p14._0); - case 'Failure': - return _krisajenkins$remotedata$RemoteData$Failure(_p14._0); - case 'NotAsked': - return _krisajenkins$remotedata$RemoteData$NotAsked; - default: - return _krisajenkins$remotedata$RemoteData$Loading; - } - }); -var _krisajenkins$remotedata$RemoteData$andMap = F2( - function (wrappedValue, wrappedFunction) { - var _p15 = {ctor: '_Tuple2', _0: wrappedFunction, _1: wrappedValue}; - _v11_5: - do { - _v11_4: - do { - _v11_3: - do { - _v11_2: - do { - switch (_p15._0.ctor) { - case 'Success': - switch (_p15._1.ctor) { - case 'Success': - return _krisajenkins$remotedata$RemoteData$Success( - _p15._0._0(_p15._1._0)); - case 'Failure': - break _v11_2; - case 'Loading': - break _v11_4; - default: - return _krisajenkins$remotedata$RemoteData$NotAsked; - } - case 'Failure': - return _krisajenkins$remotedata$RemoteData$Failure(_p15._0._0); - case 'Loading': - switch (_p15._1.ctor) { - case 'Failure': - break _v11_2; - case 'Loading': - break _v11_3; - case 'NotAsked': - break _v11_3; - default: - break _v11_3; - } - default: - switch (_p15._1.ctor) { - case 'Failure': - break _v11_2; - case 'Loading': - break _v11_4; - case 'NotAsked': - break _v11_5; - default: - break _v11_5; - } - } - } while(false); - return _krisajenkins$remotedata$RemoteData$Failure(_p15._1._0); - } while(false); - return _krisajenkins$remotedata$RemoteData$Loading; - } while(false); - return _krisajenkins$remotedata$RemoteData$Loading; - } while(false); - return _krisajenkins$remotedata$RemoteData$NotAsked; - }); -var _krisajenkins$remotedata$RemoteData$map2 = F3( - function (f, a, b) { - return A2( - _krisajenkins$remotedata$RemoteData$andMap, - b, - A2(_krisajenkins$remotedata$RemoteData$map, f, a)); - }); -var _krisajenkins$remotedata$RemoteData$fromList = A2( - _elm_lang$core$List$foldr, - _krisajenkins$remotedata$RemoteData$map2( - F2( - function (x, y) { - return {ctor: '::', _0: x, _1: y}; - })), - _krisajenkins$remotedata$RemoteData$Success( - {ctor: '[]'})); -var _krisajenkins$remotedata$RemoteData$map3 = F4( - function (f, a, b, c) { - return A2( - _krisajenkins$remotedata$RemoteData$andMap, - c, - A2( - _krisajenkins$remotedata$RemoteData$andMap, - b, - A2(_krisajenkins$remotedata$RemoteData$map, f, a))); - }); -var _krisajenkins$remotedata$RemoteData$append = F2( - function (a, b) { - return A2( - _krisajenkins$remotedata$RemoteData$andMap, - b, - A2( - _krisajenkins$remotedata$RemoteData$map, - F2( - function (v0, v1) { - return {ctor: '_Tuple2', _0: v0, _1: v1}; - }), - a)); - }); -var _krisajenkins$remotedata$RemoteData$update = F2( - function (f, remoteData) { - var _p16 = remoteData; - switch (_p16.ctor) { - case 'Success': - var _p17 = f(_p16._0); - var first = _p17._0; - var second = _p17._1; - return { - ctor: '_Tuple2', - _0: _krisajenkins$remotedata$RemoteData$Success(first), - _1: second - }; - case 'NotAsked': - return {ctor: '_Tuple2', _0: _krisajenkins$remotedata$RemoteData$NotAsked, _1: _elm_lang$core$Platform_Cmd$none}; - case 'Loading': - return {ctor: '_Tuple2', _0: _krisajenkins$remotedata$RemoteData$Loading, _1: _elm_lang$core$Platform_Cmd$none}; - default: - return { - ctor: '_Tuple2', - _0: _krisajenkins$remotedata$RemoteData$Failure(_p16._0), - _1: _elm_lang$core$Platform_Cmd$none - }; - } - }); - -var _rtfeldman$elm_css_util$Css_Helpers$toCssIdentifier = function (identifier) { - return A4( - _elm_lang$core$Regex$replace, - _elm_lang$core$Regex$All, - _elm_lang$core$Regex$regex('[^a-zA-Z0-9_-]'), - function (_p0) { - return ''; - }, - A4( - _elm_lang$core$Regex$replace, - _elm_lang$core$Regex$All, - _elm_lang$core$Regex$regex('\\s+'), - function (_p1) { - return '-'; - }, - _elm_lang$core$String$trim( - _elm_lang$core$Basics$toString(identifier)))); -}; -var _rtfeldman$elm_css_util$Css_Helpers$identifierToString = F2( - function (name, identifier) { - return A2( - _elm_lang$core$Basics_ops['++'], - _rtfeldman$elm_css_util$Css_Helpers$toCssIdentifier(name), - _rtfeldman$elm_css_util$Css_Helpers$toCssIdentifier(identifier)); - }); - -var _rtfeldman$elm_css_helpers$Html_CssHelpers$stylesheetLink = function (url) { - return A3( - _elm_lang$html$Html$node, - 'link', - { - ctor: '::', - _0: A2( - _elm_lang$html$Html_Attributes$property, - 'rel', - _elm_lang$core$Json_Encode$string('stylesheet')), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html_Attributes$property, - 'type', - _elm_lang$core$Json_Encode$string('text/css')), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html_Attributes$property, - 'href', - _elm_lang$core$Json_Encode$string(url)), - _1: {ctor: '[]'} - } - } - }, - {ctor: '[]'}); -}; -var _rtfeldman$elm_css_helpers$Html_CssHelpers$style = function (text) { - return A3( - _elm_lang$html$Html$node, - 'style', - { - ctor: '::', - _0: A2( - _elm_lang$html$Html_Attributes$property, - 'textContent', - _elm_lang$core$Json_Encode$string(text)), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html_Attributes$property, - 'type', - _elm_lang$core$Json_Encode$string('text/css')), - _1: {ctor: '[]'} - } - }, - {ctor: '[]'}); -}; -var _rtfeldman$elm_css_helpers$Html_CssHelpers$namespacedClass = F2( - function (name, list) { - return _elm_lang$html$Html_Attributes$class( - A2( - _elm_lang$core$String$join, - ' ', - A2( - _elm_lang$core$List$map, - _rtfeldman$elm_css_util$Css_Helpers$identifierToString(name), - list))); - }); -var _rtfeldman$elm_css_helpers$Html_CssHelpers$class = _rtfeldman$elm_css_helpers$Html_CssHelpers$namespacedClass(''); -var _rtfeldman$elm_css_helpers$Html_CssHelpers$classList = function (list) { - return _rtfeldman$elm_css_helpers$Html_CssHelpers$class( - A2( - _elm_lang$core$List$map, - _elm_lang$core$Tuple$first, - A2(_elm_lang$core$List$filter, _elm_lang$core$Tuple$second, list))); -}; -var _rtfeldman$elm_css_helpers$Html_CssHelpers$namespacedClassList = F2( - function (name, list) { - return A2( - _rtfeldman$elm_css_helpers$Html_CssHelpers$namespacedClass, - name, - A2( - _elm_lang$core$List$map, - _elm_lang$core$Tuple$first, - A2(_elm_lang$core$List$filter, _elm_lang$core$Tuple$second, list))); - }); -var _rtfeldman$elm_css_helpers$Html_CssHelpers$helpers = { - $class: _rtfeldman$elm_css_helpers$Html_CssHelpers$class, - classList: _rtfeldman$elm_css_helpers$Html_CssHelpers$classList, - id: function (_p0) { - return _elm_lang$html$Html_Attributes$id( - _rtfeldman$elm_css_util$Css_Helpers$toCssIdentifier(_p0)); - } -}; -var _rtfeldman$elm_css_helpers$Html_CssHelpers$withNamespace = function (name) { - return { - $class: _rtfeldman$elm_css_helpers$Html_CssHelpers$namespacedClass(name), - classList: _rtfeldman$elm_css_helpers$Html_CssHelpers$namespacedClassList(name), - id: function (_p1) { - return _elm_lang$html$Html_Attributes$id( - _rtfeldman$elm_css_util$Css_Helpers$toCssIdentifier(_p1)); - }, - name: name - }; -}; -var _rtfeldman$elm_css_helpers$Html_CssHelpers$withClass = F3( - function (className, makeElem, attrs) { - return makeElem( - { - ctor: '::', - _0: _elm_lang$html$Html_Attributes$class(className), - _1: attrs - }); - }); -var _rtfeldman$elm_css_helpers$Html_CssHelpers$Helpers = F3( - function (a, b, c) { - return {$class: a, classList: b, id: c}; - }); -var _rtfeldman$elm_css_helpers$Html_CssHelpers$Namespace = F4( - function (a, b, c, d) { - return {$class: a, classList: b, id: c, name: d}; - }); - -var _user$project$Common_Logs_Types$Machine = F2( - function (a, b) { - return {deviceId: a, name: b}; - }); -var _user$project$Common_Logs_Types$Log = F4( - function (a, b, c, d) { - return {id: a, timestamp: b, logLevel: c, message: d}; - }); -var _user$project$Common_Logs_Types$SupportLogSnapshot = F2( - function (a, b) { - return {deviceId: a, timestamp: b}; - }); -var _user$project$Common_Logs_Types$SupportLog = F4( - function (a, b, c, d) { - return {id: a, deviceId: b, timestamp: c, name: d}; - }); -var _user$project$Common_Logs_Types$Logs = F2( - function (a, b) { - return {logs: a, currentMachine: b}; - }); - -var _user$project$Common_Logs_Decoder$machineDecoder = A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'name', - _elm_lang$core$Json_Decode$string, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'deviceId', - _elm_lang$core$Json_Decode$string, - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode(_user$project$Common_Logs_Types$Machine))); -var _user$project$Common_Logs_Decoder$machinesDecoder = A2( - _elm_lang$core$Json_Decode$field, - 'machines', - _elm_lang$core$Json_Decode$list(_user$project$Common_Logs_Decoder$machineDecoder)); -var _user$project$Common_Logs_Decoder$supportLogDecoder = A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'name', - _elm_lang$core$Json_Decode$string, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'timestamp', - _elm_community$json_extra$Json_Decode_Extra$date, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'deviceId', - _elm_lang$core$Json_Decode$string, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'id', - _elm_lang$core$Json_Decode$string, - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode(_user$project$Common_Logs_Types$SupportLog))))); -var _user$project$Common_Logs_Decoder$latestLogSnapshotDecoder = A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'timestamp', - _elm_community$json_extra$Json_Decode_Extra$date, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'deviceId', - _elm_lang$core$Json_Decode$string, - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode(_user$project$Common_Logs_Types$SupportLogSnapshot))); -var _user$project$Common_Logs_Decoder$supportLogsDecoder = A2( - _elm_lang$core$Json_Decode$field, - 'supportLogs', - _elm_lang$core$Json_Decode$list(_user$project$Common_Logs_Decoder$supportLogDecoder)); -var _user$project$Common_Logs_Decoder$logDecoder = A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'message', - _elm_lang$core$Json_Decode$string, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'logLevel', - _elm_lang$core$Json_Decode$string, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'timestamp', - _elm_community$json_extra$Json_Decode_Extra$date, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'id', - _elm_lang$core$Json_Decode$string, - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode(_user$project$Common_Logs_Types$Log))))); -var _user$project$Common_Logs_Decoder$logsDecoder = A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'currentMachine', - _user$project$Common_Logs_Decoder$machineDecoder, - A3( - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required, - 'logs', - _elm_lang$core$Json_Decode$list(_user$project$Common_Logs_Decoder$logDecoder), - _NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode(_user$project$Common_Logs_Types$Logs))); - -var _user$project$Css_Admin$name = 'lamassuAdmin'; -var _user$project$Css_Admin$helpers = _rtfeldman$elm_css_helpers$Html_CssHelpers$withNamespace(_user$project$Css_Admin$name); -var _user$project$Css_Admin$class = _user$project$Css_Admin$helpers.$class; -var _user$project$Css_Admin$classList = _user$project$Css_Admin$helpers.classList; -var _user$project$Css_Admin$id = _user$project$Css_Admin$helpers.id; -var _user$project$Css_Admin$className = function ($class) { - return A2(_rtfeldman$elm_css_util$Css_Helpers$identifierToString, _user$project$Css_Admin$name, $class); -}; - -var _user$project$Css_Classes$SelectizeOnOff = {ctor: 'SelectizeOnOff'}; -var _user$project$Css_Classes$SelectizeCountry = {ctor: 'SelectizeCountry'}; -var _user$project$Css_Classes$SelectizeLanguage = {ctor: 'SelectizeLanguage'}; -var _user$project$Css_Classes$SelectizeCryptoCurrency = {ctor: 'SelectizeCryptoCurrency'}; -var _user$project$Css_Classes$SelectizeFiatCurrency = {ctor: 'SelectizeFiatCurrency'}; -var _user$project$Css_Classes$SelectizeAccount = {ctor: 'SelectizeAccount'}; -var _user$project$Css_Classes$Textarea = {ctor: 'Textarea'}; -var _user$project$Css_Classes$BalanceSection = {ctor: 'BalanceSection'}; -var _user$project$Css_Classes$CryptoAddress = {ctor: 'CryptoAddress'}; -var _user$project$Css_Classes$ReadOnly = {ctor: 'ReadOnly'}; -var _user$project$Css_Classes$CashIn = {ctor: 'CashIn'}; -var _user$project$Css_Classes$CashOut = {ctor: 'CashOut'}; -var _user$project$Css_Classes$QrCode = {ctor: 'QrCode'}; -var _user$project$Css_Classes$TxCancelled = {ctor: 'TxCancelled'}; -var _user$project$Css_Classes$TxAddress = {ctor: 'TxAddress'}; -var _user$project$Css_Classes$TxPhone = {ctor: 'TxPhone'}; -var _user$project$Css_Classes$TxCrypto = {ctor: 'TxCrypto'}; -var _user$project$Css_Classes$TxFiat = {ctor: 'TxFiat'}; -var _user$project$Css_Classes$TxAmount = {ctor: 'TxAmount'}; -var _user$project$Css_Classes$TxMachine = {ctor: 'TxMachine'}; -var _user$project$Css_Classes$TxDate = {ctor: 'TxDate'}; -var _user$project$Css_Classes$TxId = {ctor: 'TxId'}; -var _user$project$Css_Classes$Disabled = {ctor: 'Disabled'}; -var _user$project$Css_Classes$Enabled = {ctor: 'Enabled'}; -var _user$project$Css_Classes$Saving = {ctor: 'Saving'}; -var _user$project$Css_Classes$EmptyTable = {ctor: 'EmptyTable'}; -var _user$project$Css_Classes$UnitDisplay = {ctor: 'UnitDisplay'}; -var _user$project$Css_Classes$InputContainer = {ctor: 'InputContainer'}; -var _user$project$Css_Classes$TxTable = {ctor: 'TxTable'}; -var _user$project$Css_Classes$DateColumn = {ctor: 'DateColumn'}; -var _user$project$Css_Classes$TruncatedColumn = {ctor: 'TruncatedColumn'}; -var _user$project$Css_Classes$DirectionColumn = {ctor: 'DirectionColumn'}; -var _user$project$Css_Classes$NumberColumn = {ctor: 'NumberColumn'}; -var _user$project$Css_Classes$InvalidGroup = {ctor: 'InvalidGroup'}; -var _user$project$Css_Classes$StatusBar = {ctor: 'StatusBar'}; -var _user$project$Css_Classes$Success = {ctor: 'Success'}; -var _user$project$Css_Classes$Fail = {ctor: 'Fail'}; -var _user$project$Css_Classes$TableButton = {ctor: 'TableButton'}; -var _user$project$Css_Classes$InvalidComponent = {ctor: 'InvalidComponent'}; -var _user$project$Css_Classes$FocusedComponent = {ctor: 'FocusedComponent'}; -var _user$project$Css_Classes$Component = {ctor: 'Component'}; -var _user$project$Css_Classes$NoInput = {ctor: 'NoInput'}; -var _user$project$Css_Classes$CellDisabled = {ctor: 'CellDisabled'}; -var _user$project$Css_Classes$BasicInputReadOnly = {ctor: 'BasicInputReadOnly'}; -var _user$project$Css_Classes$BasicInputDisabled = {ctor: 'BasicInputDisabled'}; -var _user$project$Css_Classes$BasicInput = {ctor: 'BasicInput'}; -var _user$project$Css_Classes$Active = {ctor: 'Active'}; -var _user$project$Css_Classes$ButtonRow = {ctor: 'ButtonRow'}; -var _user$project$Css_Classes$Button = {ctor: 'Button'}; -var _user$project$Css_Classes$FormRow = {ctor: 'FormRow'}; -var _user$project$Css_Classes$TextCell = {ctor: 'TextCell'}; -var _user$project$Css_Classes$LongCell = {ctor: 'LongCell'}; -var _user$project$Css_Classes$MediumCell = {ctor: 'MediumCell'}; -var _user$project$Css_Classes$ShortCell = {ctor: 'ShortCell'}; -var _user$project$Css_Classes$MultiDisplay = {ctor: 'MultiDisplay'}; -var _user$project$Css_Classes$BottomDisplay = {ctor: 'BottomDisplay'}; -var _user$project$Css_Classes$TopDisplay = {ctor: 'TopDisplay'}; -var _user$project$Css_Classes$ConfigContainer = {ctor: 'ConfigContainer'}; -var _user$project$Css_Classes$ConfigTableGlobalRow = {ctor: 'ConfigTableGlobalRow'}; -var _user$project$Css_Classes$ConfigTable = {ctor: 'ConfigTable'}; -var _user$project$Css_Classes$SectionLabel = {ctor: 'SectionLabel'}; -var _user$project$Css_Classes$CryptoTabsActive = {ctor: 'CryptoTabsActive'}; -var _user$project$Css_Classes$CryptoTab = {ctor: 'CryptoTab'}; -var _user$project$Css_Classes$CryptoTabs = {ctor: 'CryptoTabs'}; -var _user$project$Css_Classes$Content = {ctor: 'Content'}; -var _user$project$Css_Classes$Container = {ctor: 'Container'}; -var _user$project$Css_Classes$NavBarRoute = {ctor: 'NavBarRoute'}; -var _user$project$Css_Classes$NavBarCategory = {ctor: 'NavBarCategory'}; -var _user$project$Css_Classes$NavBarCategoryContainer = {ctor: 'NavBarCategoryContainer'}; -var _user$project$Css_Classes$NavBarItemActive = {ctor: 'NavBarItemActive'}; -var _user$project$Css_Classes$MainRight = {ctor: 'MainRight'}; -var _user$project$Css_Classes$MainLeft = {ctor: 'MainLeft'}; -var _user$project$Css_Classes$NavBar = {ctor: 'NavBar'}; -var _user$project$Css_Classes$ContentPane = {ctor: 'ContentPane'}; -var _user$project$Css_Classes$LeftPane = {ctor: 'LeftPane'}; -var _user$project$Css_Classes$PaneWrapper = {ctor: 'PaneWrapper'}; -var _user$project$Css_Classes$Main = {ctor: 'Main'}; -var _user$project$Css_Classes$Layout = {ctor: 'Layout'}; - -var _user$project$SupportLogs_Types$Model = F2( - function (a, b) { - return {logs: a, supportLogs: b}; - }); -var _user$project$SupportLogs_Types$LoadSupportLogs = function (a) { - return {ctor: 'LoadSupportLogs', _0: a}; -}; -var _user$project$SupportLogs_Types$LoadLogs = function (a) { - return {ctor: 'LoadLogs', _0: a}; -}; - -var _user$project$SupportLogs_Rest$getSupportLogs = A2( - _elm_lang$core$Platform_Cmd$map, - _user$project$SupportLogs_Types$LoadSupportLogs, - _krisajenkins$remotedata$RemoteData$sendRequest( - A2(_elm_lang$http$Http$get, '/api/support_logs/', _user$project$Common_Logs_Decoder$supportLogsDecoder))); -var _user$project$SupportLogs_Rest$getAllLogs = function (maybeId) { - return A2( - _elm_lang$core$Platform_Cmd$map, - _user$project$SupportLogs_Types$LoadLogs, - _krisajenkins$remotedata$RemoteData$sendRequest( - A2( - _elm_lang$http$Http$get, - A2( - _elm_lang$core$Basics_ops['++'], - '/api/support_logs/logs?supportLogId=', - A2(_elm_lang$core$Maybe$withDefault, '', maybeId)), - _user$project$Common_Logs_Decoder$logsDecoder))); -}; - -var _user$project$SupportLogs_State$update = F2( - function (msg, model) { - var _p0 = msg; - if (_p0.ctor === 'LoadLogs') { - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Native_Utils.update( - model, - {logs: _p0._0}), - _1: _elm_lang$core$Platform_Cmd$none - }; - } else { - return { - ctor: '_Tuple2', - _0: _elm_lang$core$Native_Utils.update( - model, - {supportLogs: _p0._0}), - _1: _elm_lang$core$Platform_Cmd$none - }; - } - }); -var _user$project$SupportLogs_State$getSupportData = function (maybeId) { - return _elm_lang$core$Platform_Cmd$batch( - { - ctor: '::', - _0: _user$project$SupportLogs_Rest$getAllLogs(maybeId), - _1: { - ctor: '::', - _0: _user$project$SupportLogs_Rest$getSupportLogs, - _1: {ctor: '[]'} - } - }); -}; -var _user$project$SupportLogs_State$load = function (maybeId) { - return { - ctor: '_Tuple2', - _0: {logs: _krisajenkins$remotedata$RemoteData$Loading, supportLogs: _krisajenkins$remotedata$RemoteData$Loading}, - _1: _user$project$SupportLogs_State$getSupportData(maybeId) - }; -}; -var _user$project$SupportLogs_State$init = {logs: _krisajenkins$remotedata$RemoteData$NotAsked, supportLogs: _krisajenkins$remotedata$RemoteData$NotAsked}; - -var _user$project$SupportLogs_View$formatDate = function (date) { - return A2(_justinmimbs$elm_date_extra$Date_Extra$toFormattedString, 'yyyy-MM-dd HH:mm', date); -}; -var _user$project$SupportLogs_View$rowView = function (log) { - return A2( - _elm_lang$html$Html$tr, - { - ctor: '::', - _0: _user$project$Css_Admin$class( - {ctor: '[]'}), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$td, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text( - _user$project$SupportLogs_View$formatDate(log.timestamp)), - _1: {ctor: '[]'} - }), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html$td, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text(log.logLevel), - _1: {ctor: '[]'} - }), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html$td, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text(log.message), - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - } - } - }); -}; -var _user$project$SupportLogs_View$logsView = function (logs) { - return _elm_lang$core$List$isEmpty(logs.logs) ? A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('No logs yet.'), - _1: {ctor: '[]'} - }) : A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$table, - { - ctor: '::', - _0: _user$project$Css_Admin$class( - { - ctor: '::', - _0: _user$project$Css_Classes$TxTable, - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$thead, - {ctor: '[]'}, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$tr, - {ctor: '[]'}, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$td, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('Date'), - _1: {ctor: '[]'} - }), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html$td, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('Level'), - _1: {ctor: '[]'} - }), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html$td, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('Message'), - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - } - } - }), - _1: {ctor: '[]'} - }), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html$tbody, - {ctor: '[]'}, - A2(_elm_lang$core$List$map, _user$project$SupportLogs_View$rowView, logs.logs)), - _1: {ctor: '[]'} - } - }), - _1: {ctor: '[]'} - }); -}; -var _user$project$SupportLogs_View$logs = function (model) { - var _p0 = model.logs; - switch (_p0.ctor) { - case 'NotAsked': - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - {ctor: '[]'}); - case 'Loading': - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('Loading logs...'), - _1: {ctor: '[]'} - }); - case 'Failure': - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('No logs yet.'), - _1: {ctor: '[]'} - }); - default: - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: _user$project$SupportLogs_View$logsView(_p0._0), - _1: {ctor: '[]'} - }); - } -}; -var _user$project$SupportLogs_View$supportLogText = function (supportLog) { - return _elm_lang$html$Html$text( - A2( - _elm_lang$core$Basics_ops['++'], - supportLog.name, - A2( - _elm_lang$core$Basics_ops['++'], - ' ', - A2(_justinmimbs$elm_date_extra$Date_Extra$toFormattedString, 'yyyy-MM-dd HH:mm', supportLog.timestamp)))); -}; -var _user$project$SupportLogs_View$supportLogLink = function (supportLog) { - return A2( - _elm_lang$html$Html$a, - { - ctor: '::', - _0: _elm_lang$html$Html_Attributes$href( - A2(_elm_lang$core$Basics_ops['++'], '/#support_logs/', supportLog.id)), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: _user$project$SupportLogs_View$supportLogText(supportLog), - _1: {ctor: '[]'} - }); -}; -var _user$project$SupportLogs_View$supportLogItemView = function (supportLog) { - return A2( - _elm_lang$html$Html$li, - {ctor: '[]'}, - { - ctor: '::', - _0: _user$project$SupportLogs_View$supportLogLink(supportLog), - _1: {ctor: '[]'} - }); -}; -var _user$project$SupportLogs_View$supportLogsView = function (supportLogs) { - return _elm_lang$core$List$isEmpty(supportLogs) ? A2( - _elm_lang$html$Html$div, - { - ctor: '::', - _0: _user$project$Css_Admin$class( - { - ctor: '::', - _0: _user$project$Css_Classes$EmptyTable, - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: _elm_lang$html$Html$text('No shared logs'), - _1: {ctor: '[]'} - }) : A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$div, - { - ctor: '::', - _0: _user$project$Css_Admin$class( - { - ctor: '::', - _0: _user$project$Css_Classes$TxTable, - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$ul, - {ctor: '[]'}, - A2(_elm_lang$core$List$map, _user$project$SupportLogs_View$supportLogItemView, supportLogs)), - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }); -}; -var _user$project$SupportLogs_View$supportLogs = function (model) { - var _p1 = model.supportLogs; - switch (_p1.ctor) { - case 'NotAsked': - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - {ctor: '[]'}); - case 'Loading': - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('Loading snapshots ...'), - _1: {ctor: '[]'} - }); - case 'Failure': - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text( - _elm_lang$core$Basics$toString(_p1._0)), - _1: {ctor: '[]'} - }); - default: - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: _user$project$SupportLogs_View$supportLogsView(_p1._0), - _1: {ctor: '[]'} - }); - } -}; -var _user$project$SupportLogs_View$view = function (model) { - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$h1, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('Lamassu support logs'), - _1: {ctor: '[]'} - }), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html$div, - { - ctor: '::', - _0: _user$project$Css_Admin$class( - { - ctor: '::', - _0: _user$project$Css_Classes$PaneWrapper, - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$div, - { - ctor: '::', - _0: _user$project$Css_Admin$class( - { - ctor: '::', - _0: _user$project$Css_Classes$LeftPane, - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$h2, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('Shared snapshots'), - _1: {ctor: '[]'} - }), - _1: { - ctor: '::', - _0: _user$project$SupportLogs_View$supportLogs(model), - _1: {ctor: '[]'} - } - }), - _1: { - ctor: '::', - _0: A2( - _elm_lang$html$Html$div, - { - ctor: '::', - _0: _user$project$Css_Admin$class( - { - ctor: '::', - _0: _user$project$Css_Classes$ContentPane, - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$h2, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('Logs'), - _1: {ctor: '[]'} - }), - _1: { - ctor: '::', - _0: _user$project$SupportLogs_View$logs(model), - _1: {ctor: '[]'} - } - }), - _1: {ctor: '[]'} - } - }), - _1: {ctor: '[]'} - } - }); -}; - -var _user$project$StatusTypes$Rate = F3( - function (a, b, c) { - return {crypto: a, bid: b, ask: c}; - }); -var _user$project$StatusTypes$ServerRec = F5( - function (a, b, c, d, e) { - return {up: a, lastPing: b, rates: c, machineStatus: d, wasConfigured: e}; - }); -var _user$project$StatusTypes$StatusRec = F2( - function (a, b) { - return {server: a, invalidConfigGroups: b}; - }); - -var _user$project$Main$subscriptions = function (model) { - return _elm_lang$core$Platform_Sub$batch( - {ctor: '[]'}); -}; -var _user$project$Main$Model = F4( - function (a, b, c, d) { - return {location: a, supportLogs: b, status: c, err: d}; - }); -var _user$project$Main$MaintenanceCat = {ctor: 'MaintenanceCat'}; -var _user$project$Main$GlobalSettingsCat = {ctor: 'GlobalSettingsCat'}; -var _user$project$Main$MachineSettingsCat = {ctor: 'MachineSettingsCat'}; -var _user$project$Main$AccountCat = {ctor: 'AccountCat'}; -var _user$project$Main$NotFoundRoute = {ctor: 'NotFoundRoute'}; -var _user$project$Main$SupportLogsRoute = function (a) { - return {ctor: 'SupportLogsRoute', _0: a}; -}; -var _user$project$Main$parseRoute = _evancz$url_parser$UrlParser$oneOf( - { - ctor: '::', - _0: A2( - _evancz$url_parser$UrlParser$map, - function (id) { - return _user$project$Main$SupportLogsRoute( - _elm_lang$core$Maybe$Just(id)); - }, - A2( - _evancz$url_parser$UrlParser_ops[''], - _evancz$url_parser$UrlParser$s('support_logs'), - _evancz$url_parser$UrlParser$string)), - _1: { - ctor: '::', - _0: A2( - _evancz$url_parser$UrlParser$map, - _user$project$Main$SupportLogsRoute(_elm_lang$core$Maybe$Nothing), - _evancz$url_parser$UrlParser$s('support_logs')), - _1: {ctor: '[]'} - } - }); -var _user$project$Main$UrlChange = function (a) { - return {ctor: 'UrlChange', _0: a}; -}; -var _user$project$Main$SupportLogsMsg = function (a) { - return {ctor: 'SupportLogsMsg', _0: a}; -}; -var _user$project$Main$content = F2( - function (model, route) { - var _p0 = route; - if (_p0.ctor === 'SupportLogsRoute') { - return A2( - _elm_lang$html$Html$map, - _user$project$Main$SupportLogsMsg, - _user$project$SupportLogs_View$view(model.supportLogs)); - } else { - return A2( - _elm_lang$html$Html$div, - {ctor: '[]'}, - { - ctor: '::', - _0: _elm_lang$html$Html$text('No such route'), - _1: {ctor: '[]'} - }); - } - }); -var _user$project$Main$view = function (model) { - var invalidConfigGroups = A2( - _elm_lang$core$Maybe$withDefault, - {ctor: '[]'}, - A2( - _elm_lang$core$Maybe$map, - function (_) { - return _.invalidConfigGroups; - }, - model.status)); - var route = A2( - _elm_lang$core$Maybe$withDefault, - _user$project$Main$NotFoundRoute, - A2(_evancz$url_parser$UrlParser$parseHash, _user$project$Main$parseRoute, model.location)); - return A2( - _elm_lang$html$Html$div, - { - ctor: '::', - _0: _elm_lang$html$Html_Attributes$class('lamassuAdminLayout'), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$div, - { - ctor: '::', - _0: _elm_lang$html$Html_Attributes$class('lamassuAdminMain'), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2( - _elm_lang$html$Html$div, - { - ctor: '::', - _0: _elm_lang$html$Html_Attributes$class('lamassuAdminContent'), - _1: {ctor: '[]'} - }, - { - ctor: '::', - _0: A2(_user$project$Main$content, model, route), - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }), - _1: {ctor: '[]'} - }); -}; -var _user$project$Main$urlUpdate = F2( - function (location, model) { - var route = A2( - _elm_lang$core$Maybe$withDefault, - _user$project$Main$NotFoundRoute, - A2(_evancz$url_parser$UrlParser$parseHash, _user$project$Main$parseRoute, location)); - var _p1 = route; - if (_p1.ctor === 'SupportLogsRoute') { - var _p2 = _user$project$SupportLogs_State$load(_p1._0); - var supportLogsModel = _p2._0; - var cmd = _p2._1; - return A2( - _elm_lang$core$Platform_Cmd_ops['!'], - _elm_lang$core$Native_Utils.update( - model, - {location: location, supportLogs: supportLogsModel}), - { - ctor: '::', - _0: A2(_elm_lang$core$Platform_Cmd$map, _user$project$Main$SupportLogsMsg, cmd), - _1: {ctor: '[]'} - }); - } else { - return A2( - _elm_lang$core$Platform_Cmd_ops['!'], - _elm_lang$core$Native_Utils.update( - model, - {location: location}), - {ctor: '[]'}); - } - }); -var _user$project$Main$init = function (location) { - var model = {location: location, supportLogs: _user$project$SupportLogs_State$init, status: _elm_lang$core$Maybe$Nothing, err: _elm_lang$core$Maybe$Nothing}; - var _p3 = A2(_user$project$Main$urlUpdate, location, model); - var newModel = _p3._0; - var newCmd = _p3._1; - return A2( - _elm_lang$core$Platform_Cmd_ops['!'], - newModel, - { - ctor: '::', - _0: newCmd, - _1: {ctor: '[]'} - }); -}; -var _user$project$Main$update = F2( - function (msg, model) { - var _p4 = msg; - if (_p4.ctor === 'SupportLogsMsg') { - var _p5 = A2(_user$project$SupportLogs_State$update, _p4._0, model.supportLogs); - var supportLogsModel = _p5._0; - var cmd = _p5._1; - return A2( - _elm_lang$core$Platform_Cmd_ops['!'], - _elm_lang$core$Native_Utils.update( - model, - {supportLogs: supportLogsModel}), - { - ctor: '::', - _0: A2(_elm_lang$core$Platform_Cmd$map, _user$project$Main$SupportLogsMsg, cmd), - _1: {ctor: '[]'} - }); - } else { - return A2(_user$project$Main$urlUpdate, _p4._0, model); - } - }); -var _user$project$Main$main = A2( - _elm_lang$navigation$Navigation$program, - _user$project$Main$UrlChange, - {init: _user$project$Main$init, update: _user$project$Main$update, view: _user$project$Main$view, subscriptions: _user$project$Main$subscriptions})(); - -var Elm = {}; -Elm['Main'] = Elm['Main'] || {}; -if (typeof _user$project$Main$main !== 'undefined') { - _user$project$Main$main(Elm['Main'], 'Main', undefined); -} - -if (typeof define === "function" && define['amd']) -{ - define([], function() { return Elm; }); - return; -} - -if (typeof module === "object") -{ - module['exports'] = Elm; - return; -} - -var globalElm = this['Elm']; -if (typeof globalElm === "undefined") -{ - this['Elm'] = Elm; - return; -} - -for (var publicModule in Elm) -{ - if (publicModule in globalElm) - { - throw new Error('There are two Elm modules called `' + publicModule + '` on this page! Rename one of them.'); - } - globalElm[publicModule] = Elm[publicModule]; -} - -}).call(this); - diff --git a/lib/admin/public/styles.css b/lib/admin/public/styles.css deleted file mode 100644 index 376ae9d2..00000000 --- a/lib/admin/public/styles.css +++ /dev/null @@ -1,631 +0,0 @@ -body { - font-family: Nunito, sans-serif; - margin: 0; -} - -p { - margin: 0; -} - -.lamassuAdminQrCode { - background-color: #f6f6f4; - padding: 10px; - margin-bottom: 20px; - border-radius: 6px; -} - -.lamassuAdminQrCode svg { - height: 400px; - width: 400px; -} - -.lamassuAdminMain { - display: flex; - height: 100%; - margin-bottom: 40px; -} - -.lamassuAdminPaneWrapper { - display: flex; -} - -.lamassuAdminLeftPane { - min-width: 270px; -} - -.lamassuAdminContentPane { - max-height: 100%; -} - -.lamassuAdminStatusBar { - position: fixed; - bottom: 0; - padding: 10px 20px; - background-color: #5f5f56; - color: #ffffff; - width: 100%; -} - -.lamassuAdminCashOut { - background-color: #f6f6f4; -} - -.lamassuAdminFormRow { - margin: 20px 0; -} - -.lamassuAdminFormRow:first-child { - margin: 0; -} - -.lamassuAdminFormRow label { - font-size: 11px; - font-weight: bold; -} - -.lamassuAdminFormRow label > div { - margin: 0 0 5px; - color: #5f5f56; -} - -.lamassuAdminFormRow input { - border: 0; - background-color: #ffffff; - border-radius: 3px; - padding: 6px; - text-align: left; - font-family: Inconsolata, monospace; - font-size: 14px; - font-weight: 600; - width: 90%; - outline: none; -} - -.lamassuAdminButtonRow { - text-align: right; -} - -.lamassuAdminButton { - color: #ffffff; - font-weight: bold; - cursor: pointer; - background-color: #004062; - padding: 10px 15px; - display: inline-block; - border-radius: 5px; -} - -.lamassuAdminButton:hover { - background-color: #042c47; -} - -.lamassuAdminButton:active { - color: #37e8d7; -} - -.lamassuAdminButton.lamassuAdminActive { - color: #37e8d7; - background-color: #042c47; -} - -.lamassuAdminButton.lamassuAdminDisabled { - background-color: #E6E6E3; - color: #ffffff; - cursor: default; -} - -.lamassuAdminMainLeft { - background-color: #2d2d2d; - height: 100%; -} - -.lamassuAdminMainRight { - background-color: #f6f6f4; - height: 100%; -} - -.lamassuAdminContent { - margin: 20px; - background-color: #ffffff; - border-radius: 5px; -} - -.lamassuAdminContainer { - padding: 30px; - background-color: #f6f6f4; - border-radius: 0px 5px 5px 5px; - width: 30em; -} - -.lamassuAdminCryptoAddress { - font-family: Inconsolata, monospace; -} - -.lamassuAdminBalanceSection { - margin-top: 2em; -} - -.lamassuAdminBalanceSection h2 { - font-size: 1.2em; - margin-bottom: 0.2em; -} - -.lamassuAdminTextarea { - width: 100%; - border: 0px; - background-color: transparent; -} - -.lamassuAdminCryptoTabs { - display: flex; -} - -.lamassuAdminCryptoTabs > .lamassuAdminCryptoTab { - padding: 10px 15px; - color: #5f5f56; - font-weight: bold; - cursor: pointer; - background-color: #E6E6E3; - text-decoration: none; -} - -.lamassuAdminCryptoTabs > .lamassuAdminCryptoTab:hover { - background-color: #fcfcfa; -} - -.lamassuAdminCryptoTabs > .lamassuAdminCryptoTab:active { - color: #5f5f56; -} - -.lamassuAdminCryptoTabs > .lamassuAdminCryptoTab.lamassuAdminActive { - color: #5f5f56; - background-color: #f6f6f4; -} - -.lamassuAdminCryptoTabs > .lamassuAdminCryptoTab:first-child { - border-radius: 5px 0px 0px 0px; -} - -.lamassuAdminCryptoTabs > .lamassuAdminCryptoTab:last-child { - border-radius: 0px 5px 0px 0px; -} - -.lamassuAdminSectionLabel { - font-weight: bold; - font-size: 30px; - margin-bottom: 10px; -} - -.lamassuAdminConfigContainer { - padding: 20px 60px; - border-radius: 0px 7px 7px 7px; - background-color: #f6f6f4; - margin: 0 0 10px; - animation: fadein 0.8s; - overflow: hidden; - min-height: 15em; - min-width: 20em; -} - -.lamassuAdminNoInput { - font-family: Inconsolata, monospace; - color: #5f5f56; - font-weight: normal; - text-align: left !important; -} - -.lamassuAdminTxTable { - border-radius: 7px; - margin: 20px 0; - border-collapse: collapse; - font-size: 14px; - width: 100%; - background-color: #ffffff; -} - -.lamassuAdminTxTable a { - text-decoration: none; - color: #5f5f56; - border-bottom: 1px solid #37e8d7; -} - -.lamassuAdminTxTable .lamassuAdminNumberColumn { - text-align: right; - width: 10em; -} - -.lamassuAdminTxTable .lamassuAdminDirectionColumn { - text-align: left; - font-weight: bold; - font-size: 90%; -} - -.lamassuAdminTxTable .lamassuAdminTxCancelled { - background-color: #efd1d2; -} - -.lamassuAdminTxTable tbody { - font-family: Inconsolata, monospace; - color: #5f5f56; -} - -.lamassuAdminTxTable tbody td { - padding: 2px 14px; - border-bottom: 1px solid #f6f6f4; - white-space: nowrap; -} - -.lamassuAdminTxTable tbody .lamassuAdminTruncatedColumn { - max-width: 0; - overflow: hidden; - width: 300px; - text-overflow: ellipsis; -} - -.lamassuAdminTxTable tbody .lamassuAdminTxDate { - width: 10em; -} - -.lamassuAdminTxTable tbody .lamassuAdminTxAddress { - width: 25em; -} - -.lamassuAdminTxTable thead { - font-size: 14px; - text-align: center; - color: #5f5f56; -} - -.lamassuAdminTxTable thead td { - border-bottom: 2px solid #f6f6f4; - padding: 5px; -} - -.lamassuAdminEmptyTable { - font-size: 20px; - font-weight: normal; -} - -.lamassuAdminConfigTable { - font-size: 14px; - font-weight: bold; - border-radius: 7px; - margin: 20px 0; - border-collapse: collapse; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer { - border-radius: 3px; - position: relative; - margin: 0; - border: 2px solid #E6E6E3; - border-radius: 3px; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminNoOptions { - background-color: #fcfcfa; - font-size: 14px; - font-weight: 500; - color: #5f5f56; - padding: 5px; - text-align: center; - cursor: default; - -webkit-user-select: none; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminSelectBox { - display: flex; - align-items: center; - padding: 0 5px; - background-color: inherit; - width: 60px; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminBoxContainer { - position: absolute; - z-index: 100; - left: -3px; - background-color: #ffffff; - text-align: left; - font-weight: 500; - font-size: 80%; - border-radius: 3px; - background-color: #ffffff; - border: 2px solid #E6E6E3; - border-top: 0; - color: #5f5f56; - width: 15em; - cursor: pointer; - padding: 5px; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminBoxItemActive { - color: #004062; - font-weight: 900; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminBoxItem { - padding: 3px 6px; - overflow: hidden; - text-overflow: ellipsis; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminInfo { - padding: 3px 6px; - color: #2d2d2d; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminMultiItemContainer .lamassuAdminSelectedItem { - background-color: #004062; - color: #ffffff; - padding: 2px; - margin: 0 1px; - font-family: Inconsolata, monospace; - font-size: 70%; - font-weight: normal; - border-radius: 3px; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminMultiItemContainer .lamassuAdminFallbackItem { - background-color: #37e8d7; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminSingleItemContainer .lamassuAdminSelectedItem { - font-family: Inconsolata, monospace; - font-size: 14px; - padding: 0; - border-radius: 0; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminSingleItemContainer .lamassuAdminFallbackItem { - color: #5f5f56; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminSelectizeLanguage .lamassuAdminSelectBox { - width: 140px; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer .lamassuAdminSelectizeCryptoCurrency .lamassuAdminSelectBox { - width: 150px; -} - -.lamassuAdminConfigTable .lamassuAdminSelectizeContainer input { - text-align: left; - background-color: inherit; - padding: 6px 2px; - width: 6em; - cursor: default; -} - -.lamassuAdminConfigTable .lamassuAdminInputContainer { - display: flex; - justify-content: flex-end; - border: 2px solid #E6E6E3; - border-radius: 3px; -} - -.lamassuAdminConfigTable .lamassuAdminUnitDisplay { - background-color: #E6E6E3; - color: #5f5f56; - padding: 0 5px; - font-weight: 700; - font-size: 80%; - line-height: 25px; - cursor: default; - font-family: Nunito, sans-serif; -} - -.lamassuAdminConfigTable input { - border: 0; - border-radius: 3px; - padding: 6px; - text-align: right; - width: 100%; - font-family: Inconsolata, monospace; - font-weight: 600; - font-size: 14px; - outline: none; - background-color: #ffffff; -} - -.lamassuAdminConfigTable .lamassuAdminCellDisabled { - background: repeating-linear-gradient(45deg,#dfdfdc,#dfdfdc 2px,#e6e6e3 5px); -} - -.lamassuAdminConfigTable .lamassuAdminBasicInput::placeholder { - color: #37e8d7; - opacity: 1; -} - -.lamassuAdminConfigTable .lamassuAdminBasicInputDisabled { - height: 25px; - line-height: 25px; - font-size: 14px; - font-weight: 500; - color: #5f5f56; - opacity: 0.7; - text-align: left; - padding: 0 1em; - background: repeating-linear-gradient(45deg,#dfdfdc,#dfdfdc 2px,#e6e6e3 5px); -} - -.lamassuAdminConfigTable .lamassuAdminReadOnly { - line-height: 25px; - background-color: #f6f6f4; - font-family: Inconsolata, monospace; - font-size: 14px; - font-weight: 600; - color: #5f5f56; - cursor: default; -} - -.lamassuAdminConfigTable .lamassuAdminReadOnly > .lamassuAdminBasicInputReadOnly { - padding: 0 5px; -} - -.lamassuAdminConfigTable td { - padding: 3px 4px; - text-align: center; - vertical-align: middle; - width: 5em; -} - -.lamassuAdminConfigTable .lamassuAdminComponent { - border-radius: 3px; - border: 2px solid #f6f6f4; - background-color: #ffffff; -} - -.lamassuAdminConfigTable .lamassuAdminFocusedComponent > .lamassuAdminInputContainer { - border-color: #37e8d7; -} - -.lamassuAdminConfigTable .lamassuAdminInvalidComponent input { - color: #eb6b6e; -} - -.lamassuAdminConfigTable .lamassuAdminInvalidComponent > .lamassuAdminInputContainer { - border-color: #eb6b6e; -} - -.lamassuAdminConfigTable .lamassuAdminInvalidComponent > .lamassuAdminSelectizeContainer { - border-color: #eb6b6e; -} - -.lamassuAdminConfigTable tbody td { - text-align: right; - white-space: nowrap; -} - -.lamassuAdminConfigTable tbody td:first-child { - font-weight: normal; -} - -.lamassuAdminConfigTable thead { - font-weight: bold; - text-align: left; -} - -.lamassuAdminConfigTable .lamassuAdminMultiDisplay { - background-color: #E6E6E3; - border-left: 3px solid #f6f6f4; - border-right: 3px solid #f6f6f4; - border-radius: 3px; -} - -.lamassuAdminConfigTable th { - padding: 3px 4px; - text-align: center; -} - -.lamassuAdminConfigTable .lamassuAdminConfigTableGlobalRow td:first-child { - font-weight: bold; -} - -.lamassuAdminConfigTable .lamassuAdminTextCell { - text-align: left; -} - -.lamassuAdminConfigTable .lamassuAdminShortCell { - min-width: 5em; -} - -.lamassuAdminConfigTable .lamassuAdminMediumCell { - min-width: 10em; -} - -.lamassuAdminConfigTable .lamassuAdminLongCell { - min-width: 20em; -} - -.lamassuAdminSaving { - font-size: 18px; - font-weight: normal; - text-align: right; -} - -.lamassuAdminNavBar { - margin: 0; - padding: 0 0 110px 0; - background-color: #2d2d2d; - font-size: 18px; - width: 15em; - max-width: 15em; - min-width: 15em; - height: 100%; -} - -.lamassuAdminNavBar .lamassuAdminNavBarRoute { - height: 60px; - display: block; - line-height: 60px; - padding: 0px 20px; - color: #5f5f56; - font-weight: bold; - cursor: pointer; - background-color: #2d2d2d; -} - -.lamassuAdminNavBar .lamassuAdminNavBarRoute:hover { - background-color: #282828; -} - -.lamassuAdminNavBar .lamassuAdminNavBarRoute:active { - color: #37e8d7; -} - -.lamassuAdminNavBar .lamassuAdminNavBarRoute.lamassuAdminActive { - color: #37e8d7; - background-color: #282828; -} - -.lamassuAdminNavBar .lamassuAdminNavBarCategory { - height: 60px; - display: block; - line-height: 60px; - padding: 0px 20px; - color: #5f5f56; - font-weight: bold; - cursor: pointer; - background-color: #2d2d2d; -} - -.lamassuAdminNavBar .lamassuAdminNavBarCategory:hover { - background-color: #282828; -} - -.lamassuAdminNavBar .lamassuAdminNavBarCategory:active { - color: #37e8d7; -} - -.lamassuAdminNavBar .lamassuAdminNavBarCategory.lamassuAdminActive { - color: #37e8d7; - background-color: #282828; -} - -.lamassuAdminNavBar .lamassuAdminInvalidGroup { - color: #eb6b6e !important; -} - -.lamassuAdminNavBar .lamassuAdminNavBarCategoryContainer .lamassuAdminNavBarRoute { - color: #5f5f56; - font-weight: bold; - cursor: pointer; - background-color: #2d2d2d; - padding: 0 20px 0 30px; - font-weight: 500; - animation: fadein 0.8s; -} - -.lamassuAdminNavBar .lamassuAdminNavBarCategoryContainer .lamassuAdminNavBarRoute:hover { - background-color: #282828; -} - -.lamassuAdminNavBar .lamassuAdminNavBarCategoryContainer .lamassuAdminNavBarRoute:active { - color: #37e8d7; -} - -.lamassuAdminNavBar .lamassuAdminNavBarCategoryContainer .lamassuAdminNavBarRoute.lamassuAdminActive { - color: #37e8d7; - background-color: #282828; -} diff --git a/lib/admin/public/support-index.html b/lib/admin/public/support-index.html deleted file mode 100644 index 3e4fa6ff..00000000 --- a/lib/admin/public/support-index.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - diff --git a/lib/admin/schemas/bitgo.json b/lib/admin/schemas/bitgo.json deleted file mode 100644 index 4e0fa00f..00000000 --- a/lib/admin/schemas/bitgo.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "code": "bitgo", - "display": "BitGo", - "fields": [ - { - "code": "token", - "display": "API token", - "fieldType": "string", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "BTCWalletId", - "display": "BTC Wallet ID", - "fieldType": "string", - "secret": false, - "required": true, - "value": "" - }, - { - "code": "BTCWalletPassphrase", - "display": "BTC Wallet passphrase", - "fieldType": "password", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "LTCWalletId", - "display": "LTC Wallet ID", - "fieldType": "string", - "secret": false, - "required": true, - "value": "" - }, - { - "code": "LTCWalletPassphrase", - "display": "LTC Wallet passphrase", - "fieldType": "password", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "ZECWalletId", - "display": "ZEC Wallet ID", - "fieldType": "string", - "secret": false, - "required": true, - "value": "" - }, - { - "code": "ZECWalletPassphrase", - "display": "ZEC Wallet passphrase", - "fieldType": "password", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "BCHWalletId", - "display": "BCH Wallet ID", - "fieldType": "string", - "secret": false, - "required": true, - "value": "" - }, - { - "code": "BCHWalletPassphrase", - "display": "BCH Wallet passphrase", - "fieldType": "password", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "DASHWalletId", - "display": "DASH Wallet ID", - "fieldType": "string", - "secret": false, - "required": true, - "value": "" - }, - { - "code": "DASHWalletPassphrase", - "display": "DASH Wallet passphrase", - "fieldType": "password", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "environment", - "display": "Environment (prod or test)", - "fieldType": "string", - "secret": false, - "required": false, - "placeholder": "prod", - "value": "" - } - ] -} diff --git a/lib/admin/schemas/bitstamp.json b/lib/admin/schemas/bitstamp.json deleted file mode 100644 index 6cd43a81..00000000 --- a/lib/admin/schemas/bitstamp.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "code": "bitstamp", - "display": "Bitstamp", - "fields": [ - { - "code": "clientId", - "display": "Client ID", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "key", - "display": "API key", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "secret", - "display": "API secret", - "fieldType": "password", - "required": true, - "value": "" - } - ] -} diff --git a/lib/admin/schemas/blockcypher.json b/lib/admin/schemas/blockcypher.json deleted file mode 100644 index 716f4f1c..00000000 --- a/lib/admin/schemas/blockcypher.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "code": "blockcypher", - "display": "Blockcypher", - "fields": [ - { - "code": "token", - "display": "API token", - "fieldType": "password", - "required": true, - "value": "" - }, - { - "code": "confidenceFactor", - "display": "Confidence Factor", - "fieldType": "integer", - "required": true, - "value": "" - } - ] -} diff --git a/lib/admin/schemas/infura.json b/lib/admin/schemas/infura.json deleted file mode 100644 index 1c58f6f1..00000000 --- a/lib/admin/schemas/infura.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "code": "infura", - "display": "Infura", - "fields": [ - { - "code": "apiKey", - "display": "Project ID", - "fieldType": "string", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "apiSecret", - "display": "Project secret", - "fieldType": "password", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "endpoint", - "display": "Endpoint", - "fieldType": "string", - "secret": true, - "required": true, - "value": "" - } - ] -} diff --git a/lib/admin/schemas/itbit.json b/lib/admin/schemas/itbit.json deleted file mode 100644 index 0713b741..00000000 --- a/lib/admin/schemas/itbit.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "code": "itbit", - "display": "itBit", - "fields": [ - { - "code": "userId", - "display": "User ID", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "walletId", - "display": "Wallet ID", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "clientKey", - "display": "Client key", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "clientSecret", - "display": "Client secret", - "fieldType": "password", - "required": true, - "value": "" - } - ] -} diff --git a/lib/admin/schemas/kraken.json b/lib/admin/schemas/kraken.json deleted file mode 100644 index da99418c..00000000 --- a/lib/admin/schemas/kraken.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "code": "kraken", - "display": "Kraken", - "fields": [ - { - "code": "apiKey", - "display": "API Key", - "fieldType": "string", - "secret": true, - "required": true, - "value": "" - }, - { - "code": "privateKey", - "display": "Private Key", - "fieldType": "password", - "secret": true, - "required": true, - "value": "" - } - ] -} diff --git a/lib/admin/schemas/mailgun.json b/lib/admin/schemas/mailgun.json deleted file mode 100644 index d79f8786..00000000 --- a/lib/admin/schemas/mailgun.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "code": "mailgun", - "display": "Mailgun", - "fields": [ - { - "code": "apiKey", - "display": "API key", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "domain", - "display": "Domain", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "fromEmail", - "display": "From email", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "toEmail", - "display": "To email", - "fieldType": "string", - "required": true, - "value": "" - } - ] -} diff --git a/lib/admin/schemas/strike.json b/lib/admin/schemas/strike.json deleted file mode 100644 index 4052fe1f..00000000 --- a/lib/admin/schemas/strike.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "code": "strike", - "display": "Strike", - "fields": [ - { - "code": "token", - "display": "API Token", - "fieldType": "password", - "secret": true, - "required": true, - "value": "" - } - ] -} diff --git a/lib/admin/schemas/twilio.json b/lib/admin/schemas/twilio.json deleted file mode 100644 index d4a86632..00000000 --- a/lib/admin/schemas/twilio.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "code": "twilio", - "display": "Twilio", - "fields": [ - { - "code": "accountSid", - "display": "Account SID", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "authToken", - "display": "Auth token", - "fieldType": "password", - "required": true, - "value": "" - }, - { - "code": "fromNumber", - "display": "Twilio number (international format)", - "fieldType": "string", - "required": true, - "value": "" - }, - { - "code": "toNumber", - "display": "Notifications number (international format)", - "fieldType": "string", - "required": true, - "value": "" - } - ] -} diff --git a/lib/admin/server.js b/lib/admin/server.js deleted file mode 100644 index cc5d5415..00000000 --- a/lib/admin/server.js +++ /dev/null @@ -1,84 +0,0 @@ -const { intervalToDuration, secondsToMilliseconds, formatDuration } = require('date-fns/fp') -const _ = require('lodash/fp') - -const ticker = require('../ticker') -const settingsLoader = require('./settings-loader') - -const db = require('../db') -const machineLoader = require('../machine-loader') - -const CONSIDERED_UP_SECS = 30 - -function checkWasConfigured () { - return settingsLoader.loadLatest() - .then(() => true) - .catch(() => false) -} - -function machinesLastPing () { - const sql = `select min(extract(epoch from (now() - created))) as age - from machine_events - group by device_id` - - return Promise.all([machineLoader.getMachineNames(), db.any(sql)]) - .then(([machines, events]) => { - if (machines.length === 0) return 'No paired machines' - - const addName = event => { - const machine = _.find(['deviceId', event.deviceId], machines) - if (!machine) return null - return _.set('name', machine.name, event) - } - - const mapper = _.flow(_.filter(row => row.age > CONSIDERED_UP_SECS), _.map(addName), _.compact) - const downRows = mapper(events) - - if (downRows.length === 0) return 'All machines are up' - - if (downRows.length === 1) { - const row = downRows[0] - const age = intervalToDuration({ start: 0, end: secondsToMilliseconds(row.age) }) - return `${row.name} down for ${formatDuration(age)}` - } - - return 'Multiple machines down' - }) -} - -function status () { - const sql = `select extract(epoch from (now() - created)) as age - from server_events - where event_type=$1 - order by created desc - limit 1` - - return Promise.all([checkWasConfigured(), db.oneOrNone(sql, ['ping']), machinesLastPing()]) - .then(([wasConfigured, statusRow, machineStatus]) => { - const age = statusRow && intervalToDuration({ start: 0, end: secondsToMilliseconds(statusRow.age) }) - const up = statusRow ? statusRow.age < CONSIDERED_UP_SECS : false - const lastPing = statusRow && formatDuration(age) - - return settingsLoader.loadLatest() - .catch(() => null) - .then(settings => { - return getRates(settings) - .then(rates => ({wasConfigured, up, lastPing, rates, machineStatus})) - }) - }) -} - -function getRates (settings) { - if (!settings) return Promise.resolve([]) - - return ticker.getRates(settings, 'USD', 'BTC') - .then(ratesRec => { - return [{ - crypto: 'BTC', - bid: parseFloat(ratesRec.rates.bid), - ask: parseFloat(ratesRec.rates.ask) - }] - }) - .catch(() => []) -} - -module.exports = {status} diff --git a/lib/admin/transactions.js b/lib/admin/transactions.js deleted file mode 100644 index f565bada..00000000 --- a/lib/admin/transactions.js +++ /dev/null @@ -1,72 +0,0 @@ -const _ = require('lodash/fp') - -const db = require('../db') -const machineLoader = require('../machine-loader') -const tx = require('../tx') -const cashInTx = require('../cash-in/cash-in-tx') -const { REDEEMABLE_AGE } = require('../cash-out/cash-out-helper') - -const NUM_RESULTS = 1000 - -function addNames (txs) { - return machineLoader.getMachineNames() - .then(machines => { - const addName = tx => { - const machine = _.find(['deviceId', tx.deviceId], machines) - const name = machine ? machine.name : 'Unpaired' - return _.set('machineName', name, tx) - } - - return _.map(addName, txs) - }) -} - -const camelize = _.mapKeys(_.camelCase) - -function batch () { - const packager = _.flow(_.flatten, _.orderBy(_.property('created'), ['desc']), - _.take(NUM_RESULTS), _.map(camelize), addNames) - - const cashInSql = `select 'cashIn' as tx_class, cash_in_txs.*, - ((not send_confirmed) and (created <= now() - interval $1)) as expired - from cash_in_txs - order by created desc limit $2` - - const cashOutSql = `select 'cashOut' as tx_class, cash_out_txs.*, - (NOT dispense AND extract(epoch from (now() - greatest(created, confirmed_at))) >= $2) as expired - from cash_out_txs - order by created desc limit $1` - - return Promise.all([db.any(cashInSql, [cashInTx.PENDING_INTERVAL, NUM_RESULTS]), db.any(cashOutSql, [NUM_RESULTS, REDEEMABLE_AGE])]) - .then(packager) -} - -function single (txId) { - const packager = _.flow(_.compact, _.map(camelize), addNames) - - const cashInSql = `select 'cashIn' as tx_class, - ((not send_confirmed) and (created <= now() - interval $1)) as expired, - cash_in_txs.* - from cash_in_txs - where id=$2` - - const cashOutSql = `select 'cashOut' as tx_class, - (NOT dispense AND extract(epoch from (now() - greatest(created, confirmed_at))) >= $2) as expired, - cash_out_txs.* - from cash_out_txs - where id=$1` - - return Promise.all([ - db.oneOrNone(cashInSql, [cashInTx.PENDING_INTERVAL, txId]), - db.oneOrNone(cashOutSql, [txId, REDEEMABLE_AGE]) - ]) - .then(packager) - .then(_.head) -} - -function cancel (txId) { - return tx.cancel(txId) - .then(() => single(txId)) -} - -module.exports = {batch, single, cancel} diff --git a/lib/new-admin/README.md b/lib/new-admin/README.md deleted file mode 100644 index 8de065dd..00000000 --- a/lib/new-admin/README.md +++ /dev/null @@ -1,6 +0,0 @@ -## Running - -Differences from main lamassu-admin: - -- `bin/new-lamassu-register ` to add a user -- `bin/insecure-dev.sh` to run the server diff --git a/package-lock.json b/package-lock.json index db9bfec8..c2b92e80 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1335,23 +1335,6 @@ "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==" }, - "@concordance/react": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@concordance/react/-/react-2.0.0.tgz", - "integrity": "sha512-huLSkUuM2/P+U0uy2WwlKuixMsTODD8p4JVQBI4VKeopkiN0C7M3N9XYVawb4M+4spN5RrO/eLhk7KoQX6nsfA==", - "dev": true, - "requires": { - "arrify": "^1.0.1" - }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true - } - } - }, "@ethereumjs/common": { "version": "2.6.5", "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.5.tgz", @@ -2428,32 +2411,6 @@ "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.6.3.tgz", "integrity": "sha512-T04e4iTurVy7I8Sw4+c5OSN9/RkPlo1uKxAomtxQNLq8j1uPAqnsqG1bqvY3Jv7c13gyr6dui0zmh/I3+f/JaQ==" }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, "@otplib/core": { "version": "12.0.1", "resolved": "https://registry.npmjs.org/@otplib/core/-/core-12.0.1.tgz", @@ -2879,16 +2836,6 @@ "@types/node": "*" } }, - "@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", - "dev": true, - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, "@types/graceful-fs": { "version": "4.1.9", "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", @@ -2988,12 +2935,6 @@ "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==" }, - "@types/minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", - "dev": true - }, "@types/node": { "version": "20.12.4", "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.4.tgz", @@ -3329,23 +3270,6 @@ "acorn-walk": "^7.1.1" } }, - "acorn-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha512-AU7pnZkguthwBjKgCg6998ByQNIMjbuDQZ8bb78QAFZwPfmKia8AIzgY/gWgqCjnht8JLdXmB4YxA0KaV60ncQ==", - "dev": true, - "requires": { - "acorn": "^3.0.4" - }, - "dependencies": { - "acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==", - "dev": true - } - } - }, "acorn-walk": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", @@ -3380,16 +3304,6 @@ } } }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -3401,21 +3315,6 @@ "uri-js": "^4.2.2" } }, - "ajv-keywords": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", - "integrity": "sha512-ZFztHzVRdGLAzJmpUT9LNFLe1YiVOEylcaNpEutM26PVTCtOD919IMfD01CgbRouB42Dd9atjx1HseC15DgOZA==", - "dev": true - }, - "ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, - "requires": { - "string-width": "^4.1.0" - } - }, "ansi-escapes": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", @@ -3739,12 +3638,6 @@ "is-array-buffer": "^3.0.4" } }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", - "dev": true - }, "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -3764,12 +3657,6 @@ "is-string": "^1.0.7" } }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", @@ -3805,18 +3692,6 @@ "is-shared-array-buffer": "^1.0.2" } }, - "arrgv": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arrgv/-/arrgv-1.0.2.tgz", - "integrity": "sha512-a4eg4yhp7mmruZDQFqVMlxNRFGi/i1r87pt8SDHy0/I8PqSXoUTlWZRdAZo0VXgvEARcujbtTk8kiZRi1uDGRw==", - "dev": true - }, - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true - }, "asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", @@ -3882,12 +3757,6 @@ "tslib": "^2.0.1" } }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true - }, "async": { "version": "2.6.4", "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", @@ -3920,240 +3789,6 @@ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", "dev": true }, - "ava": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/ava/-/ava-3.8.2.tgz", - "integrity": "sha512-sph3oUsVTGsq4qbgeWys03QKCmXjkZUO3oPnFWXEW6g1SReCY9vuONGghMgw1G6VOzkg1k+niqJsOzwfO8h9Ng==", - "dev": true, - "requires": { - "@concordance/react": "^2.0.0", - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1", - "ansi-styles": "^4.2.1", - "arrgv": "^1.0.2", - "arrify": "^2.0.1", - "callsites": "^3.1.0", - "chalk": "^4.0.0", - "chokidar": "^3.4.0", - "chunkd": "^2.0.1", - "ci-info": "^2.0.0", - "ci-parallel-vars": "^1.0.0", - "clean-yaml-object": "^0.1.0", - "cli-cursor": "^3.1.0", - "cli-truncate": "^2.1.0", - "code-excerpt": "^2.1.1", - "common-path-prefix": "^3.0.0", - "concordance": "^4.0.0", - "convert-source-map": "^1.7.0", - "currently-unhandled": "^0.4.1", - "debug": "^4.1.1", - "del": "^5.1.0", - "emittery": "^0.6.0", - "equal-length": "^1.0.0", - "figures": "^3.2.0", - "globby": "^11.0.0", - "ignore-by-default": "^1.0.0", - "import-local": "^3.0.2", - "indent-string": "^4.0.0", - "is-error": "^2.2.2", - "is-plain-object": "^3.0.0", - "is-promise": "^4.0.0", - "lodash": "^4.17.15", - "matcher": "^3.0.0", - "md5-hex": "^3.0.1", - "mem": "^6.1.0", - "ms": "^2.1.2", - "ora": "^4.0.4", - "p-map": "^4.0.0", - "picomatch": "^2.2.2", - "pkg-conf": "^3.1.0", - "plur": "^4.0.0", - "pretty-ms": "^7.0.0", - "read-pkg": "^5.2.0", - "resolve-cwd": "^3.0.0", - "slash": "^3.0.0", - "source-map-support": "^0.5.19", - "stack-utils": "^2.0.2", - "strip-ansi": "^6.0.0", - "supertap": "^1.0.0", - "temp-dir": "^2.0.0", - "trim-off-newlines": "^1.0.1", - "update-notifier": "^4.1.0", - "write-file-atomic": "^3.0.3", - "yargs": "^15.3.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-plain-object": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", - "integrity": "sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==", - "dev": true - }, - "mem": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/mem/-/mem-6.1.1.tgz", - "integrity": "sha512-Ci6bIfq/UgcxPTYa8dQQ5FY3BzKkT894bwXWXxC/zqs0XgMO2cT20CGkOqda7gZNkmK5VP4x89IGZ6K7hfbn3Q==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.3", - "mimic-fn": "^3.0.0" - }, - "dependencies": { - "mimic-fn": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", - "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", - "dev": true - } - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "parse-ms": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-2.1.0.tgz", - "integrity": "sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==", - "dev": true - }, - "plur": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/plur/-/plur-4.0.0.tgz", - "integrity": "sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==", - "dev": true, - "requires": { - "irregular-plurals": "^3.2.0" - } - }, - "pretty-ms": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-7.0.1.tgz", - "integrity": "sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==", - "dev": true, - "requires": { - "parse-ms": "^2.1.0" - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, "available-typed-arrays": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", @@ -4738,12 +4373,6 @@ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, - "blueimp-md5": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", - "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", - "dev": true - }, "bn.js": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", @@ -4895,79 +4524,6 @@ "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.9.0.tgz", "integrity": "sha512-2ld76tuLBNFekRgmJfT2+3j5MIrP6bFict8WAIT3beq+srz1gcKNAdNKMqHqauQt63NmAa88HfP1/Ypa9Er3HA==" }, - "boxen": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", - "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", - "dev": true, - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "cli-boxes": "^2.2.0", - "string-width": "^4.1.0", - "term-size": "^2.1.0", - "type-fest": "^0.8.1", - "widest-line": "^3.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } - } - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -5002,12 +4558,6 @@ "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", "dev": true }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, "browserify-aes": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", @@ -5440,24 +4990,12 @@ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" }, - "chunkd": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/chunkd/-/chunkd-2.0.1.tgz", - "integrity": "sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==", - "dev": true - }, "ci-info": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", "dev": true }, - "ci-parallel-vars": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ci-parallel-vars/-/ci-parallel-vars-1.0.1.tgz", - "integrity": "sha512-uvzpYrpmidaoxvIQHM+rKSrigjOe9feHYbw4uOI2gdfe1C3xIlxO+kVXq83WQWNniTf8bAxVpy+cQeFQsMERKg==", - "dev": true - }, "cids": { "version": "0.7.5", "resolved": "https://registry.npmjs.org/cids/-/cids-0.7.5.tgz", @@ -5545,24 +5083,6 @@ } } }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "clean-yaml-object": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/clean-yaml-object/-/clean-yaml-object-0.1.0.tgz", - "integrity": "sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==", - "dev": true - }, - "cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true - }, "cli-cursor": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", @@ -5571,22 +5091,6 @@ "restore-cursor": "^2.0.0" } }, - "cli-spinners": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", - "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", - "dev": true - }, - "cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "requires": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - } - }, "cli-width": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", @@ -5621,15 +5125,6 @@ "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==" }, - "code-excerpt": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/code-excerpt/-/code-excerpt-2.1.1.tgz", - "integrity": "sha512-tJLhH3EpFm/1x7heIW0hemXJTUU5EWl2V0EIX558jp05Mt1U6DVryCgkp3l37cxqs+DNbNgxG43SkwJXpQ14Jw==", - "dev": true, - "requires": { - "convert-to-spaces": "^1.0.1" - } - }, "collect-v8-coverage": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", @@ -5682,12 +5177,6 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, - "common-path-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", - "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", - "dev": true - }, "component-emitter": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", @@ -5740,86 +5229,6 @@ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "concordance": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/concordance/-/concordance-4.0.0.tgz", - "integrity": "sha512-l0RFuB8RLfCS0Pt2Id39/oCPykE01pyxgAFypWTlaGRgvLkZrtczZ8atEHpTeEIW+zYWXTBuA9cCSeEOScxReQ==", - "dev": true, - "requires": { - "date-time": "^2.1.0", - "esutils": "^2.0.2", - "fast-diff": "^1.1.2", - "js-string-escape": "^1.0.1", - "lodash.clonedeep": "^4.5.0", - "lodash.flattendeep": "^4.4.0", - "lodash.islength": "^4.0.1", - "lodash.merge": "^4.6.1", - "md5-hex": "^2.0.0", - "semver": "^5.5.1", - "well-known-symbols": "^2.0.0" - }, - "dependencies": { - "md5-hex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-2.0.0.tgz", - "integrity": "sha512-0HLfzJTZ7707VBNM1ydr5sTb+IZLhmU4u2TVA+Eenfn/Ed42/gn10smbAPiuEm/jNgjvWKUiMNihqJQ6flus9w==", - "dev": true, - "requires": { - "md5-o-matic": "^0.1.1" - } - }, - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true - } - } - }, "concurrently": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-5.3.0.tgz", @@ -5996,37 +5405,6 @@ } } }, - "configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - }, - "dependencies": { - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, "connect-pg-simple": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/connect-pg-simple/-/connect-pg-simple-6.2.1.tgz", @@ -6093,12 +5471,6 @@ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true }, - "convert-to-spaces": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/convert-to-spaces/-/convert-to-spaces-1.0.2.tgz", - "integrity": "sha512-cj09EBuObp9gZNQCzc7hByQyrs6jVGE+o9kSJmeUoj+GiPiJvi5LYqEH/Hmme4+MTLHM+Ejtq+FChpjjEnsPdQ==", - "dev": true - }, "cookie": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", @@ -6245,12 +5617,6 @@ "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.3.0.tgz", "integrity": "sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q==" }, - "crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true - }, "cssfilter": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", @@ -6279,15 +5645,6 @@ } } }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, "cycle": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", @@ -6407,15 +5764,6 @@ "resolved": "https://registry.npmjs.org/date-fns-tz/-/date-fns-tz-1.3.8.tgz", "integrity": "sha512-qwNXUFtMHTTU6CFSFjoJ80W8Fzzp24LntbjFFBgL/faqds4e5mo9mftoRLgr3Vi1trISsg4awSpYVsOQCRnapQ==" }, - "date-time": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-time/-/date-time-2.1.0.tgz", - "integrity": "sha512-/9+C44X7lot0IeiyfgJmETtRMhBidBYM2QFFIkGa0U1k+hSyY87Nw7PY3eDqpvCBm7I3WCSfPeZskW/YYq6m4g==", - "dev": true, - "requires": { - "time-zone": "^1.0.0" - } - }, "dateformat": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", @@ -6465,12 +5813,6 @@ "mimic-response": "^1.0.0" } }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, "deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -6481,23 +5823,6 @@ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==" }, - "defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", - "dev": true, - "requires": { - "clone": "^1.0.2" - }, - "dependencies": { - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true - } - } - }, "defer-to-connect": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", @@ -6583,49 +5908,6 @@ } } }, - "del": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/del/-/del-5.1.0.tgz", - "integrity": "sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==", - "dev": true, - "requires": { - "globby": "^10.0.1", - "graceful-fs": "^4.2.2", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.1", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0" - }, - "dependencies": { - "globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" - } - }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - } - } - }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -6688,12 +5970,6 @@ "streamsearch": "0.1.2" } }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, "diff-sequences": { "version": "26.6.2", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", @@ -6717,15 +5993,6 @@ } } }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, "doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -6795,15 +6062,6 @@ "resolved": "https://registry.npmjs.org/dont-sniff-mimetype/-/dont-sniff-mimetype-1.1.0.tgz", "integrity": "sha512-ZjI4zqTaxveH2/tTlzS1wFp+7ncxNZaIEWYg3lzZRHkKf5zPT/MnEG6WL0BhHMJUabkh8GeU5NL5j+rEUCb7Ug==" }, - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dev": true, - "requires": { - "is-obj": "^2.0.0" - } - }, "dotenv": { "version": "16.4.5", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", @@ -6889,12 +6147,6 @@ } } }, - "emittery": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.6.0.tgz", - "integrity": "sha512-6EMRGr9KzYWp8DzHFZsKVZBsMO6QhAeHMeHND8rhyBNCHKMLpgW9tZv40bwN3rAIKRS5CxcK8oLRKUJSB9h7yQ==", - "dev": true - }, "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -6923,12 +6175,6 @@ "resolved": "https://registry.npmjs.org/eol/-/eol-0.5.1.tgz", "integrity": "sha512-mlG6+lv5G7pXnSK/k7jh7B++h3nIxoNdevctYQWfd14UUvowwseRWpYdqXdYeumDwPAp69DorsnK/eWK9lm4AA==" }, - "equal-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/equal-length/-/equal-length-1.0.1.tgz", - "integrity": "sha512-TK2m7MvWPt/v3dan0BCNp99pytIE5UGrUj7F0KZirNX8xz8fDFUAZfgm8uB5FuQq9u0sMeDocYBfEhsd1nwGoA==", - "dev": true - }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -7086,12 +6332,6 @@ "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "dev": true }, - "escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "dev": true - }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -7113,179 +6353,6 @@ "source-map": "~0.6.1" } }, - "eslint": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", - "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", - "dev": true, - "requires": { - "ajv": "^5.3.0", - "babel-code-frame": "^6.22.0", - "chalk": "^2.1.0", - "concat-stream": "^1.6.0", - "cross-spawn": "^5.1.0", - "debug": "^3.1.0", - "doctrine": "^2.1.0", - "eslint-scope": "^3.7.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^3.5.4", - "esquery": "^1.0.0", - "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.0.1", - "ignore": "^3.3.3", - "imurmurhash": "^0.1.4", - "inquirer": "^3.0.6", - "is-resolvable": "^1.0.0", - "js-yaml": "^3.9.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.4", - "minimatch": "^3.0.2", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "pluralize": "^7.0.0", - "progress": "^2.0.0", - "regexpp": "^1.0.1", - "require-uncached": "^1.0.3", - "semver": "^5.3.0", - "strip-ansi": "^4.0.0", - "strip-json-comments": "~2.0.1", - "table": "4.0.2", - "text-table": "~0.2.0" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==", - "dev": true, - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - }, - "ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true - }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==", - "dev": true - }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", - "dev": true - }, - "inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", - "dev": true, - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^2.0.4", - "figures": "^2.0.0", - "lodash": "^4.3.0", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rx-lite": "^4.0.8", - "rx-lite-aggregates": "^4.0.8", - "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", - "through": "^2.3.6" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true - } - } - }, "eslint-config-standard": { "version": "12.0.0", "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-12.0.0.tgz", @@ -7568,24 +6635,6 @@ "integrity": "sha512-nKptN8l7jksXkwFk++PhJB3cCDTcXOEyhISIN86Ue2feJ1LFyY3PrY3/xT2keXlJSY5bpmbiTG0f885/YKAvTA==", "dev": true }, - "eslint-scope": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz", - "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - }, - "dependencies": { - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - } - } - }, "eslint-utils": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", @@ -7612,24 +6661,6 @@ "type": "^2.7.2" } }, - "espree": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", - "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", - "dev": true, - "requires": { - "acorn": "^5.5.0", - "acorn-jsx": "^3.0.0" - }, - "dependencies": { - "acorn": { - "version": "5.7.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", - "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", - "dev": true - } - } - }, "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", @@ -8357,25 +7388,6 @@ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, - "fast-diff": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", - "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", - "dev": true - }, - "fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -8396,15 +7408,6 @@ "resolved": "https://registry.npmjs.org/fastpriorityqueue/-/fastpriorityqueue-0.7.5.tgz", "integrity": "sha512-3Pa0n9gwy8yIbEsT3m2j/E9DXgWvvjfiZjjqcJ+AdNKTAlVMIuFYrYG5Y3RHEM8O6cwv9hOpOWY/NaMfywoQVA==" }, - "fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, "fb-watchman": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", @@ -8844,15 +7847,6 @@ "process": "^0.11.10" } }, - "global-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz", - "integrity": "sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ==", - "dev": true, - "requires": { - "ini": "1.3.7" - } - }, "globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -8867,20 +7861,6 @@ "define-properties": "^1.1.3" } }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, "gopd": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", @@ -9006,12 +7986,6 @@ } } }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, "growly": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", @@ -9170,12 +8144,6 @@ } } }, - "has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", - "dev": true - }, "hash-base": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", @@ -9203,12 +8171,6 @@ "function-bind": "^1.1.2" } }, - "he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha512-z/GDPjlRMNOa2XJiB4em8wJpuuBfrFOlYKTZxtpkdr1uPdibHI8rYA3MY0KDObpVyaes0e/aunid/t88ZI2EKA==", - "dev": true - }, "helmet": { "version": "3.23.3", "resolved": "https://registry.npmjs.org/helmet/-/helmet-3.23.3.tgz", @@ -9459,24 +8421,12 @@ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, - "ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true - }, "ignore-by-default": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", "dev": true }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", - "dev": true - }, "import-local": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", @@ -9493,12 +8443,6 @@ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, "inflection": { "version": "1.12.0", "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.12.0.tgz", @@ -9518,12 +8462,6 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "ini": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", - "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", - "dev": true - }, "injectpromise": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/injectpromise/-/injectpromise-1.0.0.tgz", @@ -9617,12 +8555,6 @@ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz", "integrity": "sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==" }, - "irregular-plurals": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", - "integrity": "sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==", - "dev": true - }, "is-accessor-descriptor": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz", @@ -9753,12 +8685,6 @@ "dev": true, "optional": true }, - "is-error": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-error/-/is-error-2.2.2.tgz", - "integrity": "sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==", - "dev": true - }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -9814,33 +8740,11 @@ "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", "integrity": "sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==" }, - "is-installed-globally": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", - "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", - "dev": true, - "requires": { - "global-dirs": "^2.0.1", - "is-path-inside": "^3.0.1" - } - }, - "is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true - }, "is-negative-zero": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==" }, - "is-npm": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", - "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", - "dev": true - }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -9855,29 +8759,11 @@ "has-tostringtag": "^1.0.0" } }, - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true - }, "is-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==" }, - "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, "is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", @@ -9894,12 +8780,6 @@ "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", "dev": true }, - "is-promise": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", - "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", - "dev": true - }, "is-regex": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", @@ -9986,12 +8866,6 @@ "is-docker": "^2.0.0" } }, - "is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true - }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -11426,12 +10300,6 @@ "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" }, - "js-string-escape": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/js-string-escape/-/js-string-escape-1.0.1.tgz", - "integrity": "sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg==", - "dev": true - }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -11802,15 +10670,6 @@ "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true }, - "latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dev": true, - "requires": { - "package-json": "^6.3.0" - } - }, "leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -11859,27 +10718,6 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, - "load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", - "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - } - } - }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -11904,18 +10742,6 @@ "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", - "dev": true - }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", - "dev": true - }, "lodash.get": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", @@ -11936,12 +10762,6 @@ "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==" }, - "lodash.islength": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.islength/-/lodash.islength-4.0.1.tgz", - "integrity": "sha512-FlJtdcHNU8YEXbzZXYWMEHLkQOpvmlnGr5o2N1iQKB7hNyr6qPkWAe+Ceczz6JYlIzD4AlTD2igvt/2/0Pb3Zw==", - "dev": true - }, "lodash.isnumber": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", @@ -11967,12 +10787,6 @@ "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==" }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, "lodash.once": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", @@ -11993,15 +10807,6 @@ "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==" }, - "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", - "dev": true, - "requires": { - "chalk": "^2.4.2" - } - }, "logform": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz", @@ -12331,15 +11136,6 @@ "tmpl": "1.0.5" } }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -12355,30 +11151,6 @@ "object-visit": "^1.0.0" } }, - "matcher": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", - "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", - "dev": true, - "requires": { - "escape-string-regexp": "^4.0.0" - } - }, - "md5-hex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/md5-hex/-/md5-hex-3.0.1.tgz", - "integrity": "sha512-BUiRtTtV39LIJwinWBjqVsU9xhdnz7/i889V859IBFpuqGAj6LuOvHv5XLbgZ2R7ptJoJaEcxkv88/h25T7Ciw==", - "dev": true, - "requires": { - "blueimp-md5": "^2.10.0" - } - }, - "md5-o-matic": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/md5-o-matic/-/md5-o-matic-0.1.1.tgz", - "integrity": "sha512-QBJSFpsedXUl/Lgs4ySdB2XCzUEcJ3ujpbagdZCkRaYIaC0kFnID8jhc84KEiVv6dNFtIrmW7bqow0lDxgJi6A==", - "dev": true - }, "md5.js": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", @@ -12413,12 +11185,6 @@ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, "merkle-lib": { "version": "2.0.10", "resolved": "https://registry.npmjs.org/merkle-lib/-/merkle-lib-2.0.10.tgz", @@ -12636,86 +11402,6 @@ "obliterator": "^1.2.1" } }, - "mocha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz", - "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==", - "dev": true, - "requires": { - "browser-stdout": "1.3.1", - "commander": "2.15.1", - "debug": "3.1.0", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "glob": "7.1.2", - "growl": "1.10.5", - "he": "1.1.1", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "supports-color": "5.4.0" - }, - "dependencies": { - "commander": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", - "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==", - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, "mock-fs": { "version": "4.14.0", "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", @@ -13328,113 +12014,6 @@ "word-wrap": "~1.2.3" } }, - "ora": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", - "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", - "dev": true, - "requires": { - "chalk": "^3.0.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", - "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", - "mute-stream": "0.0.8", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -13455,12 +12034,6 @@ "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", - "dev": true - }, "p-each-series": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", @@ -13492,15 +12065,6 @@ "p-limit": "^2.2.0" } }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, "p-queue": { "version": "6.6.2", "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", @@ -13592,75 +12156,6 @@ "netmask": "^2.0.2" } }, - "package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dev": true, - "requires": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "dependencies": { - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dev": true, - "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - } - }, - "p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "dev": true - }, - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dev": true, - "requires": { - "prepend-http": "^2.0.0" - } - } - } - }, "packet-reader": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", @@ -13809,12 +12304,6 @@ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, "pbkdf2": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", @@ -13995,52 +12484,6 @@ "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true }, - "pkg-conf": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", - "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", - "dev": true, - "requires": { - "find-up": "^3.0.0", - "load-json-file": "^5.2.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true - } - } - }, "pkg-config": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/pkg-config/-/pkg-config-1.1.1.tgz", @@ -14293,12 +12736,6 @@ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true - }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", @@ -14344,15 +12781,6 @@ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==" }, - "pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "dev": true, - "requires": { - "escape-goat": "^2.0.0" - } - }, "pushdata-bitcoin": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/pushdata-bitcoin/-/pushdata-bitcoin-1.0.1.tgz", @@ -14490,18 +12918,6 @@ } } }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, "react-is": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", @@ -14609,30 +13025,6 @@ "set-function-name": "^2.0.1" } }, - "regexpp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", - "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", - "dev": true - }, - "registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", - "dev": true, - "requires": { - "rc": "1.2.8" - } - }, - "registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "dev": true, - "requires": { - "rc": "^1.2.8" - } - }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", @@ -14819,21 +13211,6 @@ "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==" }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rewire": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/rewire/-/rewire-4.0.1.tgz", - "integrity": "sha512-+7RQ/BYwTieHVXetpKhT11UbfF6v1kGhKFrtZN7UDL2PybMsSt/rpLWeEUGF5Ndsl1D5BxiCB14VDJyoX+noYw==", - "dev": true, - "requires": { - "eslint": "^4.19.1" - } - }, "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -14884,21 +13261,6 @@ "queue-microtask": "^1.2.2" } }, - "rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha512-Cun9QucwK6MIrp3mry/Y7hqD1oFqTYLQ4pGxaHTjIdaFDWRGGLikqp6u8LcWJnzpoALg9hap+JGk8sFIUuEGNA==", - "dev": true - }, - "rx-lite-aggregates": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha512-3xPNZGW93oCjiO7PtKxRK6iOVYBWBvtf9QHDfU23Oc+dLIQmAV//UnyXV/yihv81VS/UqoQPk4NegS8EFi55Hg==", - "dev": true, - "requires": { - "rx-lite": "*" - } - }, "rxjs": { "version": "5.5.12", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", @@ -15198,23 +13560,6 @@ } } }, - "semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "dev": true, - "requires": { - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, "send": { "version": "0.17.1", "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", @@ -15292,12 +13637,6 @@ } } }, - "serialize-error": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-2.1.0.tgz", - "integrity": "sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==", - "dev": true - }, "serve-static": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", @@ -15553,43 +13892,6 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, - "slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } - } - }, "slug": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/slug/-/slug-5.3.0.tgz", @@ -16368,48 +14670,6 @@ } } }, - "supertap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supertap/-/supertap-1.0.0.tgz", - "integrity": "sha512-HZJ3geIMPgVwKk2VsmO5YHqnnJYl6bV5A9JW2uzqV43WmpgliNEYbuvukfor7URpaqpxuw3CfZ3ONdVbZjCgIA==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "indent-string": "^3.2.0", - "js-yaml": "^3.10.0", - "serialize-error": "^2.1.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha512-BYqTHXTGUIvg7t1r4sJNKcbDZkL92nkXA8YtRpbjFHRHGDL/NtUeiBJMeE60kIFN/Mg8ESaWQvftaYMGJzQZCQ==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -16678,86 +14938,6 @@ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, - "table": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", - "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", - "dev": true, - "requires": { - "ajv": "^5.2.3", - "ajv-keywords": "^2.1.0", - "chalk": "^2.1.0", - "lodash": "^4.17.4", - "slice-ansi": "1.0.0", - "string-width": "^2.1.1" - }, - "dependencies": { - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==", - "dev": true, - "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" - } - }, - "ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true - }, - "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==", - "dev": true - }, - "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0" - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, "talisman": { "version": "0.20.0", "resolved": "https://registry.npmjs.org/talisman/-/talisman-0.20.0.tgz", @@ -16815,18 +14995,6 @@ } } }, - "temp-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", - "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", - "dev": true - }, - "term-size": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", - "dev": true - }, "terminal-link": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", @@ -16930,12 +15098,6 @@ "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", "integrity": "sha512-w9foI80XcGImrhMQ19pxunaEC5Rp2uzxZZg4XBAFRfiLOplk3F0l7wo+bO16vC2/nlQfR/mXZxcduo0MF2GWLg==" }, - "time-zone": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz", - "integrity": "sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA==", - "dev": true - }, "timed-out": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", @@ -17076,12 +15238,6 @@ "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", "dev": true }, - "trim-off-newlines": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.3.tgz", - "integrity": "sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg==", - "dev": true - }, "triple-beam": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", @@ -17287,12 +15443,6 @@ "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", "dev": true }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "dev": true - }, "type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", @@ -17350,12 +15500,6 @@ "possible-typed-array-names": "^1.0.0" } }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true - }, "typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -17422,15 +15566,6 @@ "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==", "dev": true }, - "unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dev": true, - "requires": { - "crypto-random-string": "^2.0.0" - } - }, "universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", @@ -17502,78 +15637,6 @@ "picocolors": "^1.0.0" } }, - "update-notifier": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.3.tgz", - "integrity": "sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A==", - "dev": true, - "requires": { - "boxen": "^4.2.0", - "chalk": "^3.0.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.3.1", - "is-npm": "^4.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.0.0", - "pupa": "^2.0.1", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -17776,15 +15839,6 @@ "makeerror": "1.0.12" } }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, "weak-map": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/weak-map/-/weak-map-1.0.8.tgz", @@ -18263,12 +16317,6 @@ } } }, - "well-known-symbols": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/well-known-symbols/-/well-known-symbols-2.0.0.tgz", - "integrity": "sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==", - "dev": true - }, "whatwg-encoding": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", @@ -18340,15 +16388,6 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "requires": { - "string-width": "^4.0.0" - } - }, "wif": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/wif/-/wif-2.0.6.tgz", @@ -18474,12 +16513,6 @@ "resolved": "https://registry.npmjs.org/x-xss-protection/-/x-xss-protection-1.3.0.tgz", "integrity": "sha512-kpyBI9TlVipZO4diReZMAHWtS0MMa/7Kgx8hwG/EuZLiA6sg4Ah/4TRdASHhRRN3boobzcYgFRUFSgHRge6Qhg==" }, - "xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true - }, "xhr": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", diff --git a/package.json b/package.json index f4c84708..d6586f51 100644 --- a/package.json +++ b/package.json @@ -128,7 +128,7 @@ "admin-server": "nodemon bin/lamassu-admin-server --dev --logLevel silly", "graphql-server": "nodemon bin/new-graphql-dev-insecure", "watch": "concurrently \"npm:server\" \"npm:admin-server\" \"npm:graphql-server\"", - "stress-test": "cd ./test/stress/ && node index.js 50 -v" + "stress-test": "cd tests/stress/ && node index.js 50 -v" }, "nodemonConfig": { "ignore": [ @@ -136,12 +136,9 @@ ] }, "devDependencies": { - "ava": "3.8.2", "concurrently": "^5.3.0", "jest": "^26.6.3", - "mocha": "^5.0.1", "nodemon": "^2.0.6", - "rewire": "^4.0.1", "standard": "^12.0.1" }, "standard": { diff --git a/public/asset-manifest.json b/public/asset-manifest.json deleted file mode 100644 index ea75982a..00000000 --- a/public/asset-manifest.json +++ /dev/null @@ -1,159 +0,0 @@ -{ - "files": { - "main.js": "/static/js/main.900511f9.chunk.js", - "main.js.map": "/static/js/main.900511f9.chunk.js.map", - "runtime-main.js": "/static/js/runtime-main.5b925903.js", - "runtime-main.js.map": "/static/js/runtime-main.5b925903.js.map", - "static/js/2.01291e3c.chunk.js": "/static/js/2.01291e3c.chunk.js", - "static/js/2.01291e3c.chunk.js.map": "/static/js/2.01291e3c.chunk.js.map", - "index.html": "/index.html", - "static/js/2.01291e3c.chunk.js.LICENSE.txt": "/static/js/2.01291e3c.chunk.js.LICENSE.txt", - "static/media/3-cassettes-open-1-left.d6d9aa73.svg": "/static/media/3-cassettes-open-1-left.d6d9aa73.svg", - "static/media/3-cassettes-open-2-left.a9ee8d4c.svg": "/static/media/3-cassettes-open-2-left.a9ee8d4c.svg", - "static/media/3-cassettes-open-3-left.08fed660.svg": "/static/media/3-cassettes-open-3-left.08fed660.svg", - "static/media/4-cassettes-open-1-left.7b00c51f.svg": "/static/media/4-cassettes-open-1-left.7b00c51f.svg", - "static/media/4-cassettes-open-2-left.b3d9541c.svg": "/static/media/4-cassettes-open-2-left.b3d9541c.svg", - "static/media/4-cassettes-open-3-left.e8f1667c.svg": "/static/media/4-cassettes-open-3-left.e8f1667c.svg", - "static/media/4-cassettes-open-4-left.bc1a9829.svg": "/static/media/4-cassettes-open-4-left.bc1a9829.svg", - "static/media/acceptor-left.f37bcb1a.svg": "/static/media/acceptor-left.f37bcb1a.svg", - "static/media/both-filled.7af80d5f.svg": "/static/media/both-filled.7af80d5f.svg", - "static/media/carousel-left-arrow.c6575d9d.svg": "/static/media/carousel-left-arrow.c6575d9d.svg", - "static/media/carousel-right-arrow.1d5e04d1.svg": "/static/media/carousel-right-arrow.1d5e04d1.svg", - "static/media/cash-in.c06970a7.svg": "/static/media/cash-in.c06970a7.svg", - "static/media/cash-out.f029ae96.svg": "/static/media/cash-out.f029ae96.svg", - "static/media/cashbox-empty.828bd3b9.svg": "/static/media/cashbox-empty.828bd3b9.svg", - "static/media/cashout-cassette-1.fac6c691.svg": "/static/media/cashout-cassette-1.fac6c691.svg", - "static/media/cashout-cassette-2.34a98cfa.svg": "/static/media/cashout-cassette-2.34a98cfa.svg", - "static/media/closed.b853a619.svg": "/static/media/closed.b853a619.svg", - "static/media/comet.0a722656.svg": "/static/media/comet.0a722656.svg", - "static/media/comet.431ab3d7.svg": "/static/media/comet.431ab3d7.svg", - "static/media/comet.56af080c.svg": "/static/media/comet.56af080c.svg", - "static/media/comet.77ebaba5.svg": "/static/media/comet.77ebaba5.svg", - "static/media/comet.8877f6c3.svg": "/static/media/comet.8877f6c3.svg", - "static/media/comet.8aef4281.svg": "/static/media/comet.8aef4281.svg", - "static/media/comet.9dc291f2.svg": "/static/media/comet.9dc291f2.svg", - "static/media/comet.aaf93613.svg": "/static/media/comet.aaf93613.svg", - "static/media/comet.c4eaa20d.svg": "/static/media/comet.c4eaa20d.svg", - "static/media/complete.99ba27f3.svg": "/static/media/complete.99ba27f3.svg", - "static/media/complete.d94d5045.svg": "/static/media/complete.d94d5045.svg", - "static/media/copy.f4cea549.svg": "/static/media/copy.f4cea549.svg", - "static/media/crossed-camera.28e8f7eb.svg": "/static/media/crossed-camera.28e8f7eb.svg", - "static/media/current.68045777.svg": "/static/media/current.68045777.svg", - "static/media/current.9bbfa93f.svg": "/static/media/current.9bbfa93f.svg", - "static/media/custom-requirement.38819635.svg": "/static/media/custom-requirement.38819635.svg", - "static/media/disabled.347e2b5e.svg": "/static/media/disabled.347e2b5e.svg", - "static/media/disabled.aede2073.svg": "/static/media/disabled.aede2073.svg", - "static/media/dispenser-1.e4200f4e.svg": "/static/media/dispenser-1.e4200f4e.svg", - "static/media/dispenser-2.9f7807a5.svg": "/static/media/dispenser-2.9f7807a5.svg", - "static/media/down.919a0c2a.svg": "/static/media/down.919a0c2a.svg", - "static/media/download_logs.219c88ac.svg": "/static/media/download_logs.219c88ac.svg", - "static/media/empty-table.250884a9.svg": "/static/media/empty-table.250884a9.svg", - "static/media/empty.631601f2.svg": "/static/media/empty.631601f2.svg", - "static/media/empty.862ae4bb.svg": "/static/media/empty.862ae4bb.svg", - "static/media/enabled.5aae4510.svg": "/static/media/enabled.5aae4510.svg", - "static/media/enabled.a058fdfc.svg": "/static/media/enabled.a058fdfc.svg", - "static/media/equal.f4103789.svg": "/static/media/equal.f4103789.svg", - "static/media/false.347e5864.svg": "/static/media/false.347e5864.svg", - "static/media/full.67b8cd67.svg": "/static/media/full.67b8cd67.svg", - "static/media/icon-bitcoin-colour.bd8da481.svg": "/static/media/icon-bitcoin-colour.bd8da481.svg", - "static/media/icon-bitcoincash-colour.ed917caa.svg": "/static/media/icon-bitcoincash-colour.ed917caa.svg", - "static/media/icon-dash-colour.e01c021b.svg": "/static/media/icon-dash-colour.e01c021b.svg", - "static/media/icon-ethereum-colour.761723a2.svg": "/static/media/icon-ethereum-colour.761723a2.svg", - "static/media/icon-litecoin-colour.bd861b5e.svg": "/static/media/icon-litecoin-colour.bd861b5e.svg", - "static/media/icon-monero-colour.650b7bd1.svg": "/static/media/icon-monero-colour.650b7bd1.svg", - "static/media/icon-tether-colour.92d7fda4.svg": "/static/media/icon-tether-colour.92d7fda4.svg", - "static/media/icon-zcash-colour.68b1c20b.svg": "/static/media/icon-zcash-colour.68b1c20b.svg", - "static/media/keyboard.cc22b859.svg": "/static/media/keyboard.cc22b859.svg", - "static/media/keypad.dfb6094e.svg": "/static/media/keypad.dfb6094e.svg", - "static/media/list.65e6f8cb.svg": "/static/media/list.65e6f8cb.svg", - "static/media/logo-white.d997c674.svg": "/static/media/logo-white.d997c674.svg", - "static/media/logo.8ee79eab.svg": "/static/media/logo.8ee79eab.svg", - "static/media/month_change.58940268.svg": "/static/media/month_change.58940268.svg", - "static/media/month_change_right.0c3eb9a1.svg": "/static/media/month_change_right.0c3eb9a1.svg", - "static/media/notification-zodiac.e2897b39.svg": "/static/media/notification-zodiac.e2897b39.svg", - "static/media/notification.a9712ffd.svg": "/static/media/notification.a9712ffd.svg", - "static/media/open.7196c113.svg": "/static/media/open.7196c113.svg", - "static/media/pumpkin.877c3432.svg": "/static/media/pumpkin.877c3432.svg", - "static/media/regular.3140e691.svg": "/static/media/regular.3140e691.svg", - "static/media/right.d3dd4af6.svg": "/static/media/right.d3dd4af6.svg", - "static/media/right_white.3e1a2119.svg": "/static/media/right_white.3e1a2119.svg", - "static/media/spring2.9f3bb2f7.svg": "/static/media/spring2.9f3bb2f7.svg", - "static/media/stripes.876e4081.svg": "/static/media/stripes.876e4081.svg", - "static/media/tomato.4b561f6f.svg": "/static/media/tomato.4b561f6f.svg", - "static/media/tomato.b3903800.svg": "/static/media/tomato.b3903800.svg", - "static/media/transaction.d1309f34.svg": "/static/media/transaction.d1309f34.svg", - "static/media/true.b3b76849.svg": "/static/media/true.b3b76849.svg", - "static/media/up.bcdf0fc7.svg": "/static/media/up.bcdf0fc7.svg", - "static/media/white.144118ff.svg": "/static/media/white.144118ff.svg", - "static/media/white.158a991b.svg": "/static/media/white.158a991b.svg", - "static/media/white.16f4b162.svg": "/static/media/white.16f4b162.svg", - "static/media/white.1ca0dea7.svg": "/static/media/white.1ca0dea7.svg", - "static/media/white.20ca66ec.svg": "/static/media/white.20ca66ec.svg", - "static/media/white.341f0eae.svg": "/static/media/white.341f0eae.svg", - "static/media/white.41439910.svg": "/static/media/white.41439910.svg", - "static/media/white.4532ac56.svg": "/static/media/white.4532ac56.svg", - "static/media/white.460daa02.svg": "/static/media/white.460daa02.svg", - "static/media/white.4676bf59.svg": "/static/media/white.4676bf59.svg", - "static/media/white.47196e40.svg": "/static/media/white.47196e40.svg", - "static/media/white.51296906.svg": "/static/media/white.51296906.svg", - "static/media/white.5750bfd1.svg": "/static/media/white.5750bfd1.svg", - "static/media/white.5a37327b.svg": "/static/media/white.5a37327b.svg", - "static/media/white.5f161f2c.svg": "/static/media/white.5f161f2c.svg", - "static/media/white.636f4cd1.svg": "/static/media/white.636f4cd1.svg", - "static/media/white.6dd4c28a.svg": "/static/media/white.6dd4c28a.svg", - "static/media/white.81edd31f.svg": "/static/media/white.81edd31f.svg", - "static/media/white.8406a3ba.svg": "/static/media/white.8406a3ba.svg", - "static/media/white.87f75e06.svg": "/static/media/white.87f75e06.svg", - "static/media/white.8c4085b7.svg": "/static/media/white.8c4085b7.svg", - "static/media/white.8ccc4767.svg": "/static/media/white.8ccc4767.svg", - "static/media/white.958fe55d.svg": "/static/media/white.958fe55d.svg", - "static/media/white.9814829c.svg": "/static/media/white.9814829c.svg", - "static/media/white.9f2c5216.svg": "/static/media/white.9f2c5216.svg", - "static/media/white.b7754662.svg": "/static/media/white.b7754662.svg", - "static/media/white.bd0d7dca.svg": "/static/media/white.bd0d7dca.svg", - "static/media/white.cc7667ff.svg": "/static/media/white.cc7667ff.svg", - "static/media/white.e53d9d4a.svg": "/static/media/white.e53d9d4a.svg", - "static/media/white.e72682b5.svg": "/static/media/white.e72682b5.svg", - "static/media/white.e8851a0a.svg": "/static/media/white.e8851a0a.svg", - "static/media/white.f97c75d2.svg": "/static/media/white.f97c75d2.svg", - "static/media/white.fa4681e8.svg": "/static/media/white.fa4681e8.svg", - "static/media/white.fe6ed797.svg": "/static/media/white.fe6ed797.svg", - "static/media/zodiac-resized.70523fd1.svg": "/static/media/zodiac-resized.70523fd1.svg", - "static/media/zodiac-resized.c4907e4b.svg": "/static/media/zodiac-resized.c4907e4b.svg", - "static/media/zodiac.088002a2.svg": "/static/media/zodiac.088002a2.svg", - "static/media/zodiac.13543418.svg": "/static/media/zodiac.13543418.svg", - "static/media/zodiac.1806a875.svg": "/static/media/zodiac.1806a875.svg", - "static/media/zodiac.1bc04c23.svg": "/static/media/zodiac.1bc04c23.svg", - "static/media/zodiac.1bd00dea.svg": "/static/media/zodiac.1bd00dea.svg", - "static/media/zodiac.2fe856d5.svg": "/static/media/zodiac.2fe856d5.svg", - "static/media/zodiac.3b13c0b7.svg": "/static/media/zodiac.3b13c0b7.svg", - "static/media/zodiac.5547e32c.svg": "/static/media/zodiac.5547e32c.svg", - "static/media/zodiac.594ae9e7.svg": "/static/media/zodiac.594ae9e7.svg", - "static/media/zodiac.6cff3051.svg": "/static/media/zodiac.6cff3051.svg", - "static/media/zodiac.71910a69.svg": "/static/media/zodiac.71910a69.svg", - "static/media/zodiac.74570495.svg": "/static/media/zodiac.74570495.svg", - "static/media/zodiac.779a5bbc.svg": "/static/media/zodiac.779a5bbc.svg", - "static/media/zodiac.84e03611.svg": "/static/media/zodiac.84e03611.svg", - "static/media/zodiac.8bc58042.svg": "/static/media/zodiac.8bc58042.svg", - "static/media/zodiac.8c3f113c.svg": "/static/media/zodiac.8c3f113c.svg", - "static/media/zodiac.8c7b512b.svg": "/static/media/zodiac.8c7b512b.svg", - "static/media/zodiac.9be6e999.svg": "/static/media/zodiac.9be6e999.svg", - "static/media/zodiac.9cfc97dd.svg": "/static/media/zodiac.9cfc97dd.svg", - "static/media/zodiac.a976fef2.svg": "/static/media/zodiac.a976fef2.svg", - "static/media/zodiac.aa028a2c.svg": "/static/media/zodiac.aa028a2c.svg", - "static/media/zodiac.b27733af.svg": "/static/media/zodiac.b27733af.svg", - "static/media/zodiac.bb7722c5.svg": "/static/media/zodiac.bb7722c5.svg", - "static/media/zodiac.ce4a1545.svg": "/static/media/zodiac.ce4a1545.svg", - "static/media/zodiac.cfe5467c.svg": "/static/media/zodiac.cfe5467c.svg", - "static/media/zodiac.e161cf6b.svg": "/static/media/zodiac.e161cf6b.svg", - "static/media/zodiac.e181d06a.svg": "/static/media/zodiac.e181d06a.svg", - "static/media/zodiac.e42149ea.svg": "/static/media/zodiac.e42149ea.svg", - "static/media/zodiac.eea12e4f.svg": "/static/media/zodiac.eea12e4f.svg", - "static/media/zodiac.f3536991.svg": "/static/media/zodiac.f3536991.svg" - }, - "entrypoints": [ - "static/js/runtime-main.5b925903.js", - "static/js/2.4b3df17b.chunk.js", - "static/js/main.900511f9.chunk.js" - ] -} \ No newline at end of file diff --git a/public/assets/wizard/fullexample.commissions.png b/public/assets/wizard/fullexample.commissions.png deleted file mode 100644 index 92fbf325d3b4b6354350c850bbb076c2e8bdf795..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71597 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 b#HAdu#R@+g&#@mq0P?-3tDnm{r-UW|M6yIS diff --git a/public/assets/wizard/fullexample.twilio.png b/public/assets/wizard/fullexample.twilio.png deleted file mode 100644 index a8d44125af1872bac38c2adccdf9b6f7efe53c6a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 163770 zcmeAS@N?(olHy`uVBq!ia0y~yU}<1rU`pj+V_;xd^szILfkA=6)5S5QV$Per>9bQ# zmfk;kzVVaZ-t%6;k@r$6-(RkNUt5{KYuD~uzu(QA$H?K(;?W^=Qq^^W(9Z@T&UFsE zpL8kgR9e6)|8Dt@_uU=U#+!Flr&SpQhZ=W??@wQ*ZM@#HQ0ZN7{Tz$u;rlLb<6>(* zm|!5m1Er2#pB}&S6*rOyNTOz^0b>WUGPcLre8LTIT_80E`<{`nXx}Q1u#dcrtfo%f zSuNL$n7H>TZixB&)ezZ+9cBiMFSI>;Z);_-xcpctdOJY9bb;S9m$_FOqc-ltNkZ0j zkY&MoHYRTQkHN~D7WzGMX};8&ww8bGGJ}@Ag&eZU;B1`&0W*$52PgL^9VPrGrsdcVavj> z9QVCvI@y*=_eSYQ^(t~y3s2}vTR0=OxhPNe(@Lcy&rG7MoH9Zx1GG0Tc1!r{^L*9L z15@w+7U!sspHuO1TJ@S;^^H&G-miYWk##Eb&)w%ghAye87rVlxyFxT7P*>(Xk;i6!w>p=evwVH?`S9PL(?37<-}Qa{E?c|Z z^CMRsf8<^9t>*6hN*=c6kEzc0R<2zke(Qq5riFny?u(B!x^>F-CRt0lm|fw{T_GB$ z@3_=$LzmP-)~`;|uYSJXHhq2cnb_@Lqhie;`_5n}nJX9-puB0)+PEzKSzj5q%v2Ki zqN*Ty&dG8&+uBrqw)31l`+{H0aSu4R*4bo&%VxWVD#>1^UsFEsG2HoF$TPm@lR(Ua z*!ulHe!AZK`q%&W+vlBD3%`e{Z~1hE>!kN*bC%Q{2Y0+<+8TO)cg5U%x!td1@;5&W z@0iu~d$st@3mO|2d%kj*JjG_o3FcLo($~F++PQY(9j}%Rv&w&c4i`N5%DVQQl4<^r zwXNSH`|@j&;@7`Z4zGKEeQJ3RYp7XW|KmNyHg)d5W4?S}Kjr-8>7JjIe2&dzo5=fB z>2>SIr;q+duloJR`pt)_n~$e2uqoWI$T7va`G((vFDlV!w#WEnfeFCAQQ0f+fG=Y>fq5jhon(N^e!VZGApiIl^^q!=5vy9XTPj zWeXgAtn%h=c=R+X!Ex?}Ge^a9-o5`S^3J+c{1A(F|Ho~QL*(Aa3jZ>9;=S*1*qpY_ylOF+kkhYH&SCQiTe>F-o^Z5N5cMUie9Q^Iat z_;t)QerJ6xTUJK2X~&z4X;v3kl{l_g#=Q3!_rzPy@&Qj9_r0^d^{l&PcEf~k8$Q?F z(I{NdxJ~}LSp1Qn>z3I5Fk84!OYz?wrN#fWw14Y<{G27f=5fumb+=49-ed@b{&>O4 z*t=Ps-~8h4rf+{s)@_;}vfW!bcY4~)$@1Qozw39&M+fL{3j48Pu6+HDf1#FrLI;oZ z9qYF9zdbj5^Xn|$apb#}fTxWi@7qs_xK)>n{JLlHWv}6ua`%O=I2>1f zc3$vlLF6-)q^<*1rsrR63;lQVvQDwXf)eLdpPe&#Ccb{x>3mMUIKL zy2EyM*Rv-jfB)Ld>2O`JvDM|@iMbiqek#84cCd?d*_|sdd(gN|w(&htFF|MH2yeo4>6&7@V!OuXKH`TQv> zo!Q=U>q5T_=StN}r@EtjgV=9P$?GtQ^SJd_VEb={km?JoN*2zXw|?e6k8YDVkJ7pm zUl>o6Fm`N>;|P`8q80PB)3kMV&34TgfmIf)ci1N$V{h#0QZ`bbwbbul+^VoG>u(*m zW6Vpsrm$_X>$4V*w~aCK4a-1f=}uYAm7v!9A3|cTOJ5Ir8Xaz&xGppLscTzUD>u_t z_DN;(DZ3axhV#WTOe&M#-*iQ%{L|mI&B5JwI?Y;z*K(!*{Cw)4TIqsFuYK3G%J(X2 z?Opv>%I;*_`^Ws^x0b%T?{r)GU%^yupE*A+YZQJ^TIuq-Il}wcOtaSR8@`{!c8A^( zR#yrCx$zWp%z`gowZZ~HjkR3nbC>MWVi9MT zI?A`@RIEVOo`5ozg|9mgT1;r!Xy5qloyOdRADu52e|Nqr*tE}_?{WgyTxZD{Y?lqb z99{Uf%PCVu|9X-0QQKF4C%k43kZ2AlZvhEkmu=qGt?}SgpFj#*68pqs?ky^yQlCBW z@cP2mZL_%U3#_^mAmwcEMeTz1tiu;l1fQ)GVmtQvg~{@Z_k^1dNwh4v>wnAjspITP zhkLJagNw1s3(G!D*sp2F`fmG{x!Re*yA%Ve6|VhKc&zT6xWbnu)SZJXdBP8+xf8gx z&TB6}zT|o4V&UUvRs4T;zWlkPgT*gp&zXW4r4u(VtSWF^^x65cWaC18#>)v(bDdLt znlmMSPtJJX=a|XkwCeFMp_k5+$}ZWbR^95)lowce`mgUA)xW`c3jcJCSvurDPu|=0 zZFN>O|NU*b;&KvK#Hra1EF*jq9Wx)Bh2Cb;Y4qGOzfb^E0ka_0`1 zOle!Eer$bHm&v|W=^P)=D@>71Tw#6qLW!H6K-(#iwywUrcO(>os#hOdd8)8eyif0! z`PS>9-~U%l+sh77k@7` z6J2qCPk!DSwX*L{xBPO}nYAu_+vjv$xP6^9n{WD*`uqu7gr&p#7TZjH{5tyB=c4`V zf0QrX|4A@$&foR#ji($;Fwjy|>JmL`q<$ny-Xu1#WTvr!|5SsmTUsqo%ZcT%&)EJp z`P`=VlSg%DEcY^)c{yOV(jJbIn-@*))GUa6)#CBE@s^0=^8_j9$*w*+IZ4+xbyvP- z1nJxSE;*}GTG{yZ3(1op_k=umUwx>TP4FgP+10lPG!C;Yc-?lODXLSpSIhj?u0<1k z#S*{FO-gtyx$NCvDY5wfd~5c9W8d)qSbgK)-~UCwz5g$`=KnwbjepMGKYHcw`^1FD zl3&&-d$?`RxW*o!Ui?T}+)8%)+$D}F?yC=RuGC}54Hr4~PsNHY=)(773t#p)B=R^W z@;K&lE#9kstUgc1l64#6OWSjSypOas{ z*gmpU#))Z{osid!d%hRG9$EO_+u{E7hIQtB-`+`FnJc)$>QI1$^91RpKc|-mynU!_ ze?&?@WSN0g`-ucov+bQ1cb4+_h$KjPIbIij{(g13O83K=rapQ(iB*}>le?oOW=0-9 z;KI09IkJR5{X(wa;?q9w^H@tQTY_XQr??$=;M#T1;>uh> zsdF#ggw>g1FNdCyYGf@{(vDnu;n#(Gvd-@__#S`0ld!-4paUnzJl4m@qZpwAah%o4WQbrS5qX zb#|S}yf?pczG3Tq3;lYzV3t?sIIi4zvT?DF(#e$?x0aPG^nB#-SJkd1o5dv~W0IA^ zwW@`0yB4LZbWfaV3Q7oBnX}W261%^D^edM76{q9^3fZqm7QFX8aAW?0zj}^2mxY_B zecSqNp2U~hC&iEMOP260O_1?$x-Q+m%{nUAU8;7$D~^lb`aaCp&iub7$Nk*0RbBU2 zSStqv&eraIxQSoFWA|+@4~;~mqlB*X|u`Jwh36LUNE2L{J(3^qdFlQ^SV$|D`VdmtMc%|L3MXx0t7D_VgVT z`KA5|lvYlhu{sm%`lat_f|QTrec|?H#!;qip}pl_>P+Vf{)*{yx-Hwf>~mA>iWMtf zb}ibgevJDZC@J+nH#7)z_zy~GmL+@>pVwBG^Stu<9d_Wi{r@*=bsD=b9DgdBY-3)h z!Q=R=rhIaS#V(<`tCpbt@Z-x5lq{r=mKn8`w_Hs1OHN7S-8?N;$GR_}aQ=ZumWuyN zWs^@9cFepQ%i}-&g5{K^OA=1AFZHr*oXhcGddb_ZOx&-ImT^qU)96tw;aiq4FY54@ zSA5fC+9OJ3Cuc9azW0&Mp*^|s$)9JxkUhI_uQu1lYu#!uzs~#q$LJ8tf^3)G15Hv3 zdA}B^NAWOvxEW<^f4g}92bSRSdfsXE-qx|H0pb z{SSVewLf-f_5YTOhp)fjnCEC0>5}cv!OLZy<#KiP)D(kFi##7S1iWosX56G#EY&>O zb;fe<7xL#9XInJ)9Tf3t&ivB*EMcBrQcWH6U;B%V?&;SJH*V-Wsrt?$`cI(+C`B0UKGrVUcWzyBP95{( z&(dEiRC#;^7A`&Q(<1iRL1@=JmMdzTlJu^#cLdo^Irig^+O)au1wYOwe7}ES(qjhU z?&v?Iy=U_i&TV2}{hVdp1>Xwg?GO3xH=V8SN`0>QZ0+wE+utSL+jRW?{WGWZmQ5=& z*t(_p<4g&Mf`X`!w-|w?iVwBHyQOi*NKlc@|_)OdR`AbjA$x`15o@WoZ%!~OR(I@`dr#W*= z`EgJ)GN7_T@V!yk!kynTLU$}QU;`z-q(pA*b;=gZ=^tA14+`&P_5UFjbI>@#Ry|_F z+vJ)$;lr1+CFbaS-#_uDY0sHS|4eOy`EILT_-D4g@8eHjAHCeTOUxdltyPhlc zcF*$*#!>r@zkA5@>-Z;7t!lQvaiyx!v~%kw8K#xw$u^s8*_GaMBR6AJ$H$$%KKl8| z*EY3Bo|aoSz1(2qhSrNadH>C+O-?oZrF85c%a&M|8F_nMet*Ris<}3QA{djTs;Y`z>;<8O|67TKmXT8lR_U38miJMn#L19o+ zC#-CoEwQZ5&O>sB#)AAkZzlh}!q2YGb!Gp{=U3!c|K9&Q=y$!Y{^ zHFO@;HM+L;O+r$l@H5R%Z=M~$Fp;OqZBuA+?Dv9c@0T}EcIEM%3d-CULO7czv))Tz zmE-i*&dPn>U1M$Q8H>y2$KE~qMCf_((M|I|CucG;KYp@5_4c!s@o7Kp&bb?0(r~*R zAQk(JXa9~%wsRU6+H;1wOC+roKU<_eKjF)&`O`teL!MW*tX3;pOXJ!{N{hV()9$8(r zQFg0N(dSzSz-7^euBeT&y;=OXb}bG#xAw5e&en~S`!{~M`2N7>>i@D2?SD(F{QITu z@h|>=%aQwkST^qeGoR!C%lijDH_In}y}iG`bM}3=@JDLZ?poyd)UEeK*w;m; zo(g9!5|nG($HJ!0JtOMYu`{pq)TVDUwA$YH@THL3b29^Hb@Lpm z4U>#5{+K6xo%gAE!P#;y_Xj-Z4oJS)Cmm5LpM0^-LEZNDj0M7f4|X!`%DB?J&YJCV z0@vZos%v)i3HaP`UG+oai`zKCzseT?Mb`rlH8Te1#kYU|$xSsjl1ziiK^bHrvW<;wt zT|aY5FD+;f}w^5saQ}c_p_B!PV8}$vp z^A1SbJg&X*%KB*6Z;8|Al>g1(-o|_;Sh_HGU&8I@&NI@(JN(aleCzS2Q9NXAb;O3S z+cnoVwaJ+ z)#{=WD$(>p#w$51Q@ZTFCeuf24%K%DrFXK;CMo^OBC1wy6GQe72@~#==Jj zZrrhQOXqz2Sz2QD?E@c5IBk_9x0JgpW`4i;;gkOTx;soRi?1+FJjNaCF9XVI(cd3( z+-Xp+;ePkQ_eSmV4HX^d*9HXU9xd$&J#UzEFW7=PMdy=S-eGauc73mT*7H8-S}>(=_{Aa(q34YZ}vHM9n`UT%YI~? z__1c!VC#O);_YX2uISK(roRn0c3%4S zZPVR!U6&n7$v@SOJu^2na~G>{dw$K(YPu zgGT05vRGDU2;985ti(B$YjJvuPKA#3$>N%$r9SgaLoUqU{`T|d`KreikBOUIH1%nj z64u&%p0z~sdaVAYg}x8lHYxY$6|+75JUe2G{Gms72fIFV6i>6QyME-%DZXhk>>GA? zs$4kpN{{Ur_l2)V6t7iW)F`~b#29{GjYo|kR({7Fdn5K)U+X&BgDymUzc9PDV`cUI z=C9TD4FBc-OMKk_i#_Gv!}tk*pa1WDWB)&Y$^VDTJ^sA)7x*=Kf74(4KZa>?|Ezv} z>R%9fvvGrYpW0UOt&g^IJDfFAPx-~*)129JHaFp-qt(|{uRH1);|k>tO4>LZ6pDA= zNnYaZKQXep?aZy#udV5`hvx2VdVx!n~$wu$L}X%uzMGG{1=&>z3DgXYI@%uzOIqC*Fot!$HFJE zEW+i2XKftP-fCVek5BylLHUhbeb3v){TnuZXY9JI|MRz2&OV34$E=^E&rgi3ZwvXT zIjL3M45EEouY4M`>UYmVgU&153rcUb*uIC?e-EF#Ce{B7XHM{yw zxL8!M#lMkR_{6s5@^?Y6d(HNBeEwS=$%MG5Jhxt4zn`RAY5)83&OgaViueUj+BjI0%1?Y^>oV!czQ!N26^pn3{PxMkV|L{tm8QPz^Q+31 z{Cm(n_po>F+y1+4`d+QUTB~j`n`cPN2Nu2(2s^Ji=b-VvT%CEzK6?3!(=E8CYVtHr za=BJ}Q`_f{Sky*Yrm51m)^V_@aYdBLD9zZ>T{4lQXpY43nD?an$i>&hGzg zF$<$Pj+_TY`X+~CH%eY=3RPNNJNo{@{ku#4K2h5_Rl3zk^%L5stX6YqetmE+iA@+6u?b5<$sukULK{x0Bo-`V7|z{WSuDxdl%=m-?rPpt2W_@=1zlAS~C)Z@PPZ<+CL zWa_%~tNi}gvLE~*+amlV=Ap{gihbd@XjV^1uNX#?2yyS~@4WZW!#oqju zm>b)kX}~)3T>muf6NyJE%zYSk>2c^Ru~~4ZRV-Ox(nXz;b;>+b<|RG5xc=}z>Hn;a z^8ZwY>i-I-{Ck;x;{TWUiT`izSNeW=zVcuG|4lFc|FGUs_kDljzo+#_4jePya{HU2 zl*b~^*RE@KRBhOy!BEPVYOr$$YxnaR^_|7PPNv+H-r4Ihi$i7U-03&&{1=FBPua9{ z=YK`BZ*~WM-DAIT{~qdRgmNGOpV2lj(J}e8Tr1$ujqTnDw38 z*LzrczgLSwmF?`%@821(mB%mK;k!_=sy*8qRKiy#Cj?UEMf;szwLDhGq zf5PWUE2Q5YwV$x#uz$+t*XLL8&QlDnX>xfd_^4!)l&7$x;*?$PEv;W_k8I}eeBt0Z zeV)SZZ#+BCK0lFb=U(+zQ)s7q$C7sk#qHGt`Ado(ciwT+C>7s$hFRrPzrcB0C!Nm> z6HP4LJN$}vd@g+6v+TX{w91BvZ;DAX+n@Y@x&QGLk5_VgCf<%HlS@iz^Km%xcAxj{ z%V+l5bZoVIQTmsW~%$f7cmim(1BelVYUrHyBq4@4I2S=q0(>?4+{CO&0*uc0rH_9&Bemw9u!}MOg!?spLbCgfvd>Rg zaQ*a6)j7M)`|ogGS>2H?|MBtbV{($o*UIe|?63EF|6Opa@$>Ec0;g?UCT$bHey#IP z@;=|gE2}>oe}6z!>7t35)Xk?{cU6Q7?(?3B{%&Y6Q9XImv!b`xJ+>=M7EjV*aLrSm zRT=Qj@z#IsTJ_i}FEN%b{|S0_Ya^yqw3T%Bn4bKTd}I^7m<~Rl3k3yuix@NoXg?YJ(e?UkejIZxWfzWYC$n)vn$mQ&hdcGEdore6c>ZPj z-*=i@7DT>kSTgsGh~&J;!+Ub&we^Jl+S~2#d^b_&i*4tpb=-N`vnRXU_tVK+l&-?P z^kdQD=@Rq#gd5gzGjV6Rnwee>491|Mhss-=qI~ z&-mAM{qg@VdUXDOX)gQ!<|+T@&sY3--M;ZVyZxa{ukW{2{#O06&bj045}}B-N8&;i zmwPc>Voi|pN-iqoHhZr*^T_e{2mCpgzf+8?=sEO^J4ddjW3IB0;^yivhTB$HY})sm zD|`3)fLpb#m(FR6ly`6h-B=W89DP3Uj+)cCWB1rW?W4Ji`+q(zcq3acT&;dzMfhej z|3&O#oSA&;L%U_6YK1qGoPzoEAMI@Sz z=1PdlU2-*=csh3ir+ema)obPU4_c31`sST-eV*b(<+pEpC%lkzZ&)Mp`*FFzvlbPt z7cMVTlxOXWH)O1FQ4`ylm9$5~sbz)A+z9oeegU6*tyhbiI$M29c$O(#Wxt@acg|Iw zb(cgsr*(ivm$la^vj~+>)UtD|`)t`2QgbGF|LH07J~2fVuGYDe_olw%(l_mt>+>gb z*jg!e2MM-!nDzhgm~!S;aLV<0pM(!Sy2d>v<3A{e?fNmLOPF83!#-uwOg&rI#MhQD ze{YfPzODb0GtuUIhx)|omXv>nlPWKX9effirR%UQylqnX#51;TX}vx+&7Gho!a<+k zS5mno?ubQs?&gqiS$>YVrY-FGPMGTi)4Wa-=K zC3BP)eLi-uT_dkBNtRtu<@KlwU}nPQ12>J^X{3(o1#^(fJD7{f=D| z`d)Lhvh$Ccpxor2$FJ_2ynf$*i?`?J#D{ZDabc)x3HfJelsL!S+8tgN`2OxcCp0@%kE{EdBQ1it()J(vMEpWe*>yV7z?#_Md5IU4JvCg`K?C zXn9($^A_)%gYx$7Gu-}#eqVpwY#j3*TVDGXH?eim;p-9iYg-RpD_-IqGUK$(gTLlZ z%6pqQFI|sKRPy_k^t>arLq5gJU+}zLi*|+Z<TV42BqB*9>xPza}kt>KJJ zKVR;s{mTl$vm8sRky zT;DbIqYBXhp#*`v$vnI@S^vubsQ{N z=eOSd`QbDNsN@M@SQWnGLKcsc(InU1e;I6Vw$Iq}S9VR!>+cVK{zyAy|1V$k|Mh>@Px=1^_u2ok-}vR@`vZGE3sqegJo4;}I+sHV(_{DJ z4qVB_pwXhwtJ@g4wsTF7RMxI~{blKd?h6mYK2QGX-tk;sabA5#Mc=w-&*eVpKTo+W z9+?`u_|So0_q3Jd-U?hRw_joR?U-?j`Mi%xXOGFvRcZZ(Y z9{qAk?~KXEx1d3A+4c{|-zkLFG(Gy}z2@znN9tiSO^pto&9!lE6kl=TRdwcb(W2Ss zPjb~fH0;!>y#6Df$--caRduy;@Mze2s9$-)im-aDLFYtwBK zm!YNYuRCe#vzb$6&s?ez61#55d9#1Q)Y~cl1UE^af8o-Ych`GzjhEc4l-W7byUud= ze$)|+H7a?!bHmR$>y##Uta@|I_@BkTAC`Cjl{0lepYiO!<>SB8&%2A-FTdm1kmtyy z{{CaMr_;)64wZL@;y3ypm$q)7f1k@$O>^H3%dnW^60>hN6h4^5svy;SRQ1eT>C?$+ zsp4kuHEkvqvj~+7dfj`v{dCLAvY8Rz6g!XHs&HeuAuF_XT4Z%w$~(cc`K99fZdl%& zC!+ZF;Qjhfa)OdCmRL@#?+JOy`L?{IJLs3=Pl*`5H5wbsRZ8VQ+6Y>Fia!7IWOCYH z$w`$}|9;3;BtQRfY{zene9wnU4RaVLWuFnZc2}wGce#AQ#{KiQ+I{|$xJ?AOHikT%Y8kPM2Zpc)hf`nD>Z9A!_Agq3sv8YTgYfoxpMUdiK{hQwsQoi%={)x{RlrPSR1dUgm+jTtu?c+~LXQRJ+?6bSiTcNaFz~j!t-yu)S z)(1?wrQtaLE9a(AlUcj^S=1lo?|-CRV>$oKnu#y8?N;g5&d-^-I6D9F&32bBOV9tj zbWZz;*}Uo7oz=9CMebrffBY%Wl8beH43fv2IfX7tp0`^g^uVWC^Te0Nu9Owmze}D< zFp$`qf7{D-v4w8lF4^it;lr0zd(Ny&PAe4;d#^d)=-?yEgFj>@eL6M?e7lT#5OI|=Ulomh~ZRHR;Ki7ll(hPrSgYC z?U*EiOq=Uf4}VYRRbz-1XAzsle4=w&nZ3(j&lS_RU68ar{^FzijQvbeZ8#-R z6I;&nSGe-bns)~t*|p8x*HU;pd(TAB*oM-iI*0I3`Dw+`7i?_4F?jyS`8sXm&%6WA zmg|=+jQ-$yJ~OX@y(8^K;frY;n^fELCVJd=*Kkzx`FF#ziPI?Yc^GeVXZ0Qj(GFq9 zgYR~OiuAUfG7g6&d3;0+HaciGT+~%*v^dKsXxpw|HCyh#p6x$pm&|`10gv=*Ou`#& z9agpPef#gtKWWjQqIs7(rWoI-G5@iL?ejKUAKm=qj8!dt2Sr4VDV*)7-@AIogeQm1 zwrIspkY>8@{g~&`MIV{i)IFZAc=*y3lunW+swBs4l0Wdwy4AXdyYWY?oqDHsiE!9^ z&1rMpYl2>|-jIm#-_WvRFrY`Ars@}!7ulPX2 zQ|YQnSGrzzoaYZ&x5{CXbad_V4ZriJ+}^Bo{!CNteE&7O-q8Tsj)mh zVhdh(hECo3XVdM4ZQ1Ot(nZb!$Ns6Xsdp_=I{!-V*_x+b9-z*-h36*+y@h!Vzsgnq zF7S%jSn0pM5phrS(2^X_ww*rQ(1?r~0W zlY_%HruA=yHa5FVoAfq5>^$Er6m-!t{esucZ4a++*_2qIC%{IKhyzv#sYQ0079#7czl5v`B z%AcqAoY%|~KC|Y{g8D~iKW=~4HGeXA&TE3o1+!fb1eG*J#mqeKg`Ve(zmaxsS3B!( z#+-Y>Ka$E%SVzB-lR0QC^>;>_kN+b1{cn!4Z~BnY?C`d6nRZhnXVi+uelIJP=mTw= zFMK_=@NM71WChmGA)KG5+1~iOuO%LTzH_Ma{iS)cd;Hru9jQ`1|91<)7vMd%pPpV|`iwM_lFqyZHh? zFWx`&Gur;hoy+eR@BbnZby}|FFQ-Z7Jw1l27tY;XR^Xh-u_#%gb>T`OwdvaovKKzR zqxSySh!s79B`B_7=6e|m0yVolxT^?HXLCk5pt6-}HnSxtKydqkmp;#9sW z?UJUTpG^Lf9OXV-T{P{7m&y_*LGwhF2}W;&Pv181pMD|r+yt!zTf-6_6;LDT!xU9CmY6aZeYNMp8rG>kfd@+chRkMlVvx(pmx96+=PWb)($RRa*&qud9r*y`( zS1ya;yK57B=)@VTW0|6JHKQ`~3N~?EcHlbIcVTJR!j*y%9-M(Ig_U~6wSpzu_Oa}0 zGkzg?c2Rjx3-9-SanO9#hci-|>ihQeMxNHQzZg{}mw2)+;^Flp?q@Hn^7x7VG&<`X z>^dV;RqXb)VmQX(U#p$qI8vrx;~fFSvTRFC%nYt&jd> zq5D(!OV3lxJwCTTgk39~QF{LUBUgl89uM}ut@7}9f!M8er{4zG2qkwiGijZAS(Ws{ zDE)%{yyx%dODi7}H_N=b)->qSoM}eSz4o1tJf*~^9#$ayIrX{XOpaj1yRR${HuX-M zK3{L@TQl!B#*W9AoIJXA6Yuj5UiY-?21dL4HdYq-F5dk5h5Y%$7p6Cy5pbA&r?u_$ zt@-*J7Q|(^PQJo9aazdsS4PVd=V^Vq>XNo{{@F;*nEUdx?;kk9vvKLnu)R|A;troU zQ?>JbxJ|dk|0i!kzn%9z6Zt*y^Sndy_U<;{1u|#tv7c1OkpILi=U%YREq;ToTY492 z-umA={qFyrtkRQ8ViI|r?oW5%_uXY_w6|^IOVb(4y=v~uF8pV(GeYh?XzfJZLAkVB z-_Klj?K!gs)M@AbRtuUsb@P}qOTUUQ{DYd#J7Jw0{06%>o&J7s<Wa*0*S#0KP94}@JhilY%ORu44Vy3goO-wZ)blvsCmxC%rPnSqNSVwkVWTc_r>5^E`~Bvp_y01yyZ`q+ z$Da@SpmIU!oBcnzjq?9(57qxN|M2hN{KKE_-ar22?fV7Rh3uzVdAF3hUtCeN*zL=- zqQ@om>5H#0F1*E@%3ithjam8y^I5AG)$6o3ezcjX;4f-u5$W>3f^qL+$&%T|2E5A> zWIPUCn7`uC4gVIV%MM(z&Y53$(l44%d#*myd2-67oA&dTix?OLK471GFK|-izI>hI z_4n+jx!;fIoAiADaZdZJUt)Jb7uGTHOIo zA!g8$GQs-SlIIp=Yw%tUkdkFS^8O3R1)ObmMK*ko9fXcCelkDDzx(Wxzt-BfJg+;i zTfWztEjE9SOu9j;!)u2 zLs#x68+=n={p-$w3dX-%;zNIJU1-l3o8Pm=Q+y%FFn^g}`z(0=c5*H3zp*a8WgGL> z?uGUTw`W(ITTYvIYyEAXKMU&D)cm^_SXB4efywG!x$TvAe>+#%T{WEHbeth`dEY@1 ztIXe}e9IDFcspE{Y+G_ST<>(P=i7s>sV3fY1y|E2n|e_s2SKbFs3{;$wTt~cQ0ENw>njXOFQo>ba(M)KA6C38q@~>8| zMZ~`~lfTJ7b`W}d*YE_dBS&bSiKoo;@P*C}E?d|(%C6-SSBa80nVTr_tHXC!duM;_ zl5CCUzD5!IZ9*RV&A+MtG~6kad^BRs>(1cWsuwc-k`op+oII+la}hMPt!sBGBd?S{ z`Lndd9E}C(7RI&~)7gIG$pg_U*sj=w~dO}3DzPo(%i}Q`z z%8Ot=lKUeH`}*=XSZ*9{r^Y)hPwCs2EU*Dmbg{N zx%fNFrcS1)9>*)EV^>rjkGmM9IQPg24b;(`#^+)|#cxnZ>m@Usq zf4?r-xJsF)Rgq<<9fRcF{_Xc>+Z|B8&i?W{^V9d)wE~%Y1XkH*1n;__Q@qGA=l7{S zdy0hns|-I*7Td|4%VqBP(rxxB-o~yQkxLZIroCi#ne#$pdvA<LlRAg1eTPk3Eby)xb?1mO7`O}vx%SVUZ~q;aC|!c zaDQ;AZ=A=LC%c}^xsa;zR_o#~g@DQnI;D#mg{Ac>nQl1TUKsjL>09`&i(Y~&?g#|b zPv7>tvtRo3U-wil=S;52zYSSd_Wx42R`mV-!iv+i%l78@Tc%qlb9g0p+*0LOd5*nv z+o85E+mGB+Tw%59cm7iQkpJh7|L&jj+P|&H`t**n^*ibo9%~NUDa@Pndud3@qlFg> zzbZ-3TC&8J#mk&Ui{B-S|D*D`x<5Y--kf#Ad)a5_yo$^3E$?6dDv-FmT{!r7F=!S2 zh1m_aM4t6)R(9VHzZHuy1 z+=&v=+AW8!|1g{{&CJ7i;!E8vcTO(mkLF7^_B1_HQ@GFXugT5~&vaUIZ}O{Gy?-8^yt@6QzO@g- zF1J03482bmZkAu5UM;W8E}!)4-}=OVKl775e$7w*IeUNi)cpT)Vf+8i-}vQXe)6}E z`3YZMnC=oTUl4iknfHO~o^R*>m~=|@SJngzP`VCvRGY?RweyKUfv`{L&&^@2+`2{L zQ7L|)&3w}=?|F5f=@hGabB+6WR`9;rVXO~h>+{$Ci0;1AnYNM{v;pyG3)@E7ULosQ zOZZGYWiy^FxPDow{NwTc6~1e|%FbbaX5-O~}j$99L=!<>qZx>^~*LI+p6K2$oP zJz?tK^-nh|thZ=8(>d*w*{VHyD90_tbU& zb$^rYKfJZL^;bb~YrmQ2s@#C5kFSWu+@5y(!J$IE8}F0k^Pc{F=zII~{@pjirWU+a zEM5@kq}CjMarq98omE;av2VDielNcG-TtKAoCzw+lxE!$akCa(9vbpPaFtEUnZ=LK zEdN=(dJogD{JfZKf!l%pwZAqU-ju!KuhbD2kJVY_ud;JbWlfA+vs7vEw2rMpS~6a@ zYWEnNS6nG@@G{i<;UjqB3uA|g+^3$2mKQ5p|IYus z(`q5>SJ7{eZf*HgS$eTgSM=@QZ6DWpzH$KVI9n>6w3fffd4fx6ncD(0K|$X&U!4|w z3YpVgv@k#Hr?LG#i~ADF_io+4&-&JW&V}mGZ|MdSJ?FjGCWwAjlJ;D^;GXTXsMG@z?JSC5pDnG6K!mUOCN2vdYFFH zP2KBGN~g8o*UEc;zNfd$TOO9-y7ofQLG}3S(%-`?|DCVNpU+nwYsz#wJm{z1?~}V% zZd(1}?6#jK_wH@mW`67EXPMu0$?`u~%SJhPSxoCdx@G|i?mmQAoNt-F0%O%bd@&i<9tgy|Py1Qe6&ZfQddG$ZE z{atrv`Rc#hHoZ6R$jz8$1=>2b;@gMl>Zv8SSMJ&@qq*W`kHh7!Vp?|L;WhoYn@;6l zmR7iZ1hjAHE2EIFR{5g9BzNYmUqipwpNlgUwfnYiU#MkS?KV62zkXgUHI1j3QzIhV>ivXCAydD&p7&hH_1!Q{celhmy@MuGnkI?u&lK5w zC-*w58bhq|4vqy?t=zg*L7YBzp)J=oaWDQZvFw6xiQD;$qWinwU9tVL67*E>EA2c<8O8T_tw{;x4(bhdbIk-SLxgzk+)xb{`Nb*WY3N& z>;3Wbf4upA!u?KXPR5#!Q(04PoctzUr}QWC_d)A7<-Iu-A9rQH{JZ_c$*h%|lv!%? zWnvFYe(8Ujsq|Cm%zg&vU{@X=kqg$dnlm+6bHhc9_R2F&mG<5ADQvM+l$dFsQb`Ufi=QWl?V6s>J^0KEu4OF z3&*W>8uQI3=luP)(D$KJ^OMu}znyzJFDH0H*4($TfhD{XxlS)Gehpf0yr*>j`Ukrn zSsiP7%Mg6pT4H9b^ZN)swprHwPxE%y88E((I=KJKsks@KeqFdG*_L6zdb2|A(@dd| z&(Z<D8Rtu+w?Nd^GvFxBo+j6fNu{V!)edgHK^(y0i?|+`M`@EpF z-CJaniVC@zA6H8JdNkoBb4Kulsi&+S>POC-xvFDZQH#X<_b;ZO6axi9>cO+$HEK?A zbu#+~ZPJ~_;T+eo#jfMF=eccWpf-YfEXS`&_nCJ*H_*MNaIIpY0o%g2T?a1AcbRV4 z`>!ylx2R%O%fXXEzm9(vwS3%>pc=6A;+dlDvDPyfO6Cegc!*3m(pR;U+c!!-ipOzF zshh%!KBpVf%^S@5660kK{bO-)*6cW&+0hmx@J;f;z2^A$Lso^mf8za$#!H|XuYFbdUe@a; z+^=aYd8w(i@^`_Hyo9VwY1_k+8rDt%8h0}UZq~mnJ{xm8$|CuUaeaIr%9y zWX8GA6!r~Lmr^Oa!ks&Pn?Q(U?`@5Zi(TI}IXrFic-dWiAyeXR^vR<4VPaB_9{9yxXldm;Y>) z{j9HyCa?cyWPM*4_|~y`PM3X7zbfchk9|#7ICNHs-@K?*?wH84==7X}XHN0iJd8du zWnR+j2hK8geuT>0|E1@bS1+#q{QbeV?;riRR$f@~E%%K~eaoL?#Vo?*8#C;W9H?M? zb&i8Y%UtS+4+H45jAKuowd~i0JuO*%=63nb>xab^7VdmB>t3M6iqLm%o9}pXm)y`U z+8(>tSMsU>;|nXL4G*N9w6j{wl-N4ovUJLp3R%BeQg+32?uzMFogONsi{f56%)QYU zHBt2bkJKAV2NFQhqw2!2DORAN>>=lUr(It}qS@DXGL(F_w%GYMcFsQj?fbePN8dmA z@aFoY?=O;{m{~Gr$p4+nB+w0UU#N1#(&&Qq2fwXc<)m^)%q+^mJwngt;M4BipI)c# z5msY}P5!~sacFyDEw@gj5;&-CUD+~GH{q<2`VuR7o?1@O0MX4-mijL;C;ucrxi){{ zj;}&T-%i)q%kJt`_u2B&QFRX0_XnTZ9zAkMY}Xk{jULA>T6b26-@Ng83h1De9_}k4 zhw_tG|N9*pul#s&B9j2f5{aH{*SQy(+&X!grb>79Dfl#N&RBlkVDqNt)aQz8?giiY zYyN;^PrlL%>4G2m2cFp;UG-Yx^EBI@v$+eZEtq}NTl6=cK6FhI)EZ5wkwqBF8m_fH z@>N5?+r~o@F4g`rbDc9m8&M464m?N^bO!AO*~>oJmB(+=r}wqVOOiSl>N8H&wg3ADJws29RjV=0XhCUmr#_S%K|k{O=sa^?44uK=5gI3suOUyXk&+oWLtM!!elhgj^9k$K*vA)6PTZNz59EFbmo95VyRb2ag zrufO}=lzm#XHt*;PhGI_Ts^A?Lsf4=@7G6cx6gZS4Qi;m*_iM?U(ecp|M{YqPmfC+ zb>VxaB+s2>)SLd>Xw&R)ZlQ)a<|A%Xv^O4`r8!R_)?(TT54NXo8s1c!%RCkD z47mSo_vZ8U+js1fd#WUTX}P_J->8A zB zWwqFE?A>qu`_0d{Uya`OXB+|e}g~B{L2cy%+7+)UZG&&lb^26Ba9mmHnj7cx~9=+sy zG?Q=APG^pt&fk8&QT%Op*U_f9A?2OG%0GqEB`)87Kj;4cm@C)kh?ZQc(b0RtH}QnV zq316JKD7&ca`$+~H}TA-LcZVsI5dy$`Mk*D%eT(;hb{UlOg$K?cwd-WIK30_wEO6h zW)(ZRKj)>$&bWz7vp3Xk^p1a@@XzLk%d?lPZ7aUlrmH*bJ-@$#>B}RFxNiq~!q`t)3~yZ#}|%0CmYOjI$FRoTogP_*V= zn%*3q`R0vw&k8m=85-E@^NCMA*zKa0YWr61N4(Q+{f+0WrrN)9Q(SWLtDmLdQM!&zU#-}pk#>7!cG%377p?0bCtM1R&bl{{?W-%@e+yo|x@Sc^cO1-o9y ztveDf;p!6T`!WCN@8C+a3n|POl27_|oS*+v_{gW%OWhCrzPA6fUE|chh5ojpua_Ts zH@*7uffu~%!w>AzxvkfAEofE|m&nU0pY|-De_EufZoS6*&%X}dtNZlnO@GAuoxGFO zxY;{CM>|cL$-JaU$9Avwb$t=D_!HavEzfN(*5CGe(}eFzihAm|HZ*0(_y4@%weE0w z%L4BW?ktX90eR5>wz2nd7VkVrF zRh%lED>`5PQ~G2{vt`0XZ!DiyKYGcRWTzB*ew)!P~32Pb)7PS^^Y7JP_ znXsqPVNGMgp3Z_zy&0=|D|RV&J6Z0O7db5GDgHz0pz4>zBjwF33%uRtRHSsN3w-if z+N%=HadbAvQ7I1fSsh$!4AqL;ZJYm3&fD&k8FX!P)Ai3eZXaW=Z+^63MS+UHOmU2$ zoqEj2|2NO9m$yuD@*>`toPY9 zalZIxzmSJF4@8GO+P`*J@$*H|-nWrwL!Z5L&D-(lez47X*CRG!cjJCfZBPH4FF#S` z^%UikVv7#hC9SMAlRVuOr?E*xWt;xWe+3_P=Ot0kcsEPbPM z*D1)TdfU9R+wI}m@6+#2(qFA-@4T&|Ddn5MLl@zB38H4@jA`k7V(ENl<%07PLJb*g z9%!fEN#o9KN#gyXT>3+~lx0zMhsy1a<@_qrT2Fp5^seX9di`MMlfDTjWR>RGIk?<# z*EsmQwLuYK?IkK^PY!AX|KX6}#uP^)x0%tHC3*`XlY+|5>6 z>$K)g*85m{QiePHPn?KFs{X-$9FB|1gon zFOt{XwzcEHyk3qo?>b9eZi=7Eed%#(_32Iapc>5Ef1>U@hZFLO^Ij?_ZLkvSd8;TP z{MJ?aqloaA;7T>Q{W<&V;^c2+M_*#yxKF<9>08&w)8EyFbk5oTyw~~2e$~x6MIxdz zYI`~#uU>O!d%E65IYE{}%Z|^6iuElW7uw8Yn$N~IoSb)boi1~?HvjbfJn=jF61Fhb zr|_?HU=0grbc>d%^5$a8=2EL>3kzp7^A`*YXH0V!bIX=;%a#&L=ku$V{O1w->a=sA z-ldk;lL8*|UVqSiMX%3F?%=1?&TcI*YlJwVDev~#Tj-`qu+UrVyj?>7OSC| z-}`iXznXFnhFvZx{9N09$$OUyc$qwW-g{ko)gke9iW0)2k83@rrcPd;cjRjN&8zDV z&wuYBCwcM><9v;>A1=RjHeT6hQrW|m>+*B|(ek!eb{5|u8udDPo3q8Hh za?<;u#7*y+B3<_+)jgi_Pdrf~;QLnjl=>5=cLFmH85(sl{+(&kn^M4lk z4!0IFC9a1mQ!%ZdI>pb3n z8L|gmm<1R1Mnw6!E1hQH-T80BuR|^8*_bxkvLtPa5cL22XPS%oKGCHbRqh`;mrc2z zBrBxOz*AVNGVR`Uw*P^RN42NgJ8i2t^*ZwZtMFwfKIzX%SnYE!Ky+S$Yu0a&@fNTD zEOv?(YgzJbcYlY<9#c!+ZHt809+qEsPl>K~TXI4r$N=|K3xMJsDnj!c!) z^Xd2+wnZ3}(=^Rqir?427F<}gX3g@>;#|~gLu`itrgXr1~vz|Y94C+*&{#g zmCbh9i7DONO~d^51@P`G;AOPiA@2I2qDp?_mOJa+M3mmA-k6{Cb*IWa?w!s@F8}5@ z`tyczM62}yb;g5QHHl`NiQR!kRWAGs*O|?m8ooh)6Z7+4X(b!~Lnpgi zqk6|u{s-LG6Uv@#Slpjjs@^g6ErXe<;0qt7Gv{Q4%jQ_V@X^f4TpV$aE1~di`%_>0 zYh_M1F1c-7+@BaMeQ=gm%T!(au5w|`hrfN6vmP%+j%gnl~VzS$FMK9+H3#nuwtH}&|Re2YiHpjY8 z({0(wwP6R>rQg1NGHc#3#r)%9y2$qEC123be_tOTDQ{<4;O%m&>_GVarjKmFxwWbm zwW=0BTYTk~eDG|yV4VD5@;(Xaj$g{9KMonywMI$zeB>-E>E~|{IbT>KXlC$9>qG0$ zCFN%>XU+cD_mL3X7U}IdAvbAq}4j0@pOFC>G&q=fHw7j z#_9fQOKL)-xPD_ zWz+TW{0&^w_wy`Y&(Xe}WBPg){|$%sXtszI?|v%h`0|ipP)tepN6)>j zBWCv|?2+Adr|IXBYtpMuCjN-9O)cG`b#pnxcc~X!1HGgLJFcl(D{Uv3x1uxFf%yfE@x8R(dL_};$qkKM1;34FjGm`koKcNgMYIz`(jF=Rjp_at@tBqvBx#yCqp0at4|wt-7FUiXB11H_wdx=S6Ums z@4oSSs~V$LtxWVTjcuiYD|icEoYkBmV|l~Ibw^EVMN`dIy?ZHn_cyZDB&zvY?oqvQ zhxJ>WdiQousT)rd3&j(jM#NOUw4S}2VfS{9-6G#*dajv#c_#AZnF!A`6X^!4;!B(P z{_W}A?=536Yp$i{U9)|cUhrNQ@Y^!sgp5M4&CAm+y8|lQ=4kv#@#MtDt4nj*MLi#U`(XC)%hZJLA{CX-5-lODMeCy;IcuS=gN! z@n4e)54T@^t8gt;F(*suMu7WPE*N^rWqON*sflXLd&4u=x{kL&9Gd^$a)!cc`FR_W1CO{aeXfeTsdcd#wr ze`ZSDzEiKcraa^gd+=D!ao&VIR+@f4ZY)}#xwStW8aXUIloHtB8?zSbAHZ>DVI z3>nE8vTNSW_^A?>@9Vf(y8V>E(LOt_t#)i{H5nJ{vUVFE4_{ajsj2SiXt(jJSYqk( z#KN?nM`m2T80+q~YJOS%#I41yf8XT3=X=lk_O8DFs^*QhE-hx0{@htnw|18|Q@}fp zg)YKn`J7tGGThm5J!hjnR-9_ND9OD{d~QU<_oQ6)4&PFV=vf+OCW&kE*g=W-%Oc_6 z&wOX}c5d7w+i*%EUAux$Pe@WY=fVoUWM|o9%hZ~5eMM%^;xN0KxMsBzPpO3TECcxu zts8d0d#509xA}5-)5&>__s-m!?rCEt2Wp!wRIl)S%t&fUJV$U*(K z_FmV9b5mN*O=&r(v^}z0n|-!6|7s9o?>5%n>fde5-~PSmO}~Z%_fBUQR<#G+$^6~j zxz!?%GdHF0XqetQmAiJ)-08PAWn8vpjj(-Wu}EWU@$~&X;@`D|a+~fdcg?q)vHMeN zt75xFNndxBB1>xf;c12cJCncKV&>fpfIeOR8G|%?d!L{wyAl{2DlAp8X za+zXwXq9~IMGvcgnvTR=v*e6J9qj#EcYG~ikGH>Z=xqD#9o9>Z z9agX6@qLq2ajNB^rf{2DkHj2DUkwq0q-Gtzc1vo)mSqVWmh9kGluJ$y?QLijnE&%2kW`#FCH8$Lqdibfn_gkm9z2{E} z8~8Jt=|{iaYEe|PejCGHQ`XJO+|&2>B;@p0E6V(TaHu(Azme;;Z_F2ME%vxd=rD!+ z(l9es%vsfZ<4VhhwW-22y@q^yXRej#%=Nlcyv|s4foV~huucBt3-69CG&{0kDQ~j# zS+xh!uN1bGB(C5MeBr|>k((JIW4Z0p`(&p+4KJzO%ok^ww(L&Y+3|JKQTKGO4OJ&^ zuZ?*xnmhM+@D}T&=;?KbUvIuTx7|9xO(Du%=jgU0Pfq<6uG!6^;LmCOOCoK0ti-$< zN1KmZ*+^VW%(&BWG1FM>`P&(BDNbjuEE0aaIm~9B$-|4nwsL*1K2}_6d8w*?t*j~F zWpaS@qZ^l8HtcwK_{$_=;mu~p_V7;T<}=$cd*esO*{sRNVLj(>8SG3r{$!7=aIsm> z*@zDnMdHqn-FW(>4Q(oObi* zr8AFB?9z`OnZp~*&38t}P=Do8-fdPE`=1^BvS>1I#PTx|bCXujf4n)&=iF_>%}F}v|J6k>x&)`bk%g@V&}488&N)5*>fH8wb6ULQkG5%@2oH{& zee+t|Oo1b;k#k)qrb`I59AJ|rJsGh;TNaNU>Tbpk@HFHp3s?0c7lX33Mubyn& z(!~bWQ>M&IJkNQ@Zpo5;7Y^Oe-m+|=G53X8LP7fsgmmVs?q0M-bC3Vl;)y4MC)g}u zzG(F)@R{qYFQSQs8(l@4O?jJL8yw%HpYhD-;atIE_~yl;8y7oMRc{+@R_30q&cA(s zkHeO>3@*O9uD1=%#S=?;78-A$GtVz8%tj2Uh>;9Up9rksG?fYx@cIeBm zd3e!Tg{Ww&!@kAI%-)7GqLx>1_)u>ab`GqMVo)&0XB?RI3kpsF;_S>U{! zf=K=W*%cnz1zwCNWLF$`seky@N$>W~m%5%AM;WIF&Rfu_{nzVAr?m1ZwHv>R=Upzh zSGQf9?4iBr*bb3(65D!Y+T4T;g)Y1+J06{P$2YDSO!wU; zB|kw;_EAc$v+R*+YAU=TN6TNGVJdr@dBc|V$01V}QKiUw7KO4pHT&7l>ut@-^|XjMCZxx9Goapnwn`NMA}aXUYD zyCWO&_?xrnJKmL`I{Cp2!NbD4?<}nn=Xd|Q!+gcTwT-fOwtlowsInQ-HMah3KFQ62cL|tpkGocD&rsB<;!ShMt3l%5G}q zhGyA`O;>G%H?z&(u;pImmS$`I@`Cb!=HG{P)+{VkR(qBcaqEk7y4ZtH;R2%HChC1z z{`cvrZToviTI;}DvwZcaw9`kvZ9e(-=Q6dH+*p<@=FPc$^Douzo6mH?aMDd?mZKZn zcVBqAa7*_2LkYglyHB$StCegt$<@x;{^M_(mCD!1MYZ=Yx-Sr96)P61Di(@LX3}!r zVx4cIn3L%o<1ksAVMc7=4UxWkItNnDpNNj!nZDLKpzZA3=g;FeY&f!!ZF6U!=02U6 zd3<@?N6X*ey0oG429vkO#VOk~z9oYPrIf1vs296`IQ}i6Bz5DCw}%fbk*nXmy{CVj z|HHrj$3H$4pZw$SS<639?+MveZs^&6FZ$5@JlzM6rHy|)`0V-T*=5c@&o*<`d^sv& zx6iQoeywSD|Nc1#^Y_m=D8Fys;rs9OA77g+%cDQbVB^ChN7|SVcc-X$zu)iC3ApV`+1O4*pAFfxQ{_(n2?B4wMIuH8IpWob_f5zkCpNG$E{#8^n*6-Zi zvEMf0SUP`r;opl^cG3|?)xS^w_}set$K~8__w4V-9*KXi`*1S5_K%bV(fKwJ2k-y* z{lBQZvwi20|9d;^@5dc@zkl9g_jsSjfBn@z+*|(m$BSPg|BBKD%a5DPxLM$w?SDvk zrQ*D|9!vsv7yPJl1{GUe4xMipoj$7BG zIaAooByMj_e=s4;-MZFR+35>|*Rvm7nJc(#+TFh-%DxD? z{#txt<|Kot;7QVd*Y)zQ+P*b$%{!J2TV5W$)Fyskb zg78d^khT>{Yhyx!eYTj1I`w(Ur!w`pPS{gglE#?j%rkqIz_qd&0!L4Ebvi`fnqZQ7 z>t)vYO$|D?1%FCzowv2rxBqTZp@%^}N4@023gMGy7&j$V|8IP|VbAw?MFz=7pmtD3 zk~pYy@j0M%cYnwZ`!xp-2S(~tnxq|QPSnk_4|(|dcQmNHU{;RmIUBWc!@Hxe$^^V; z*ZJsLfExLC-L-0J>xJX*-am5v`}PlCn|1H(*xsoBZq38Z(W`&_d8V~*$L7BE@;MLh zEs)~h`TXLC77ZrJ8Sa-hh<$H20hNG%6?Nt8E+*HUYg@|uEOhZ>rhA{3$v@s~#?$kn zpg4g&{@&dK&$nOu@bj!_%>JW?c709YE|*{V@quBnwY-eE*F3lWc@hQ&iw-v*x8mt} z@u6T!r6q6Ai-P(Yt$!0D+T9nkJqt8RKK5dZWbsv&h&a1>LPkznN^EyE=yLjjN9sr`ftB->P6%n zKC;<(@hb!}Y+AZhcZu~c4l~nJUszOc?>%R`ENpw_{;hA*lV;4i$(8xAquOcZ*T9@i z=ZMKJFB8J;6}ZmC%598&%>GSpaj)!>SD_pZdi67PH$+72QC;ua%AoR%-{(YE$<2_b zOjBmwzb4%A){sBCE?An=fu(S(z}{PrZ}Q!_sCA`JMQ!`s9j0p!$+JBxeEYg^&)1_I z_x@#xT+j1;VE%pC$BTa@YYOV6-rt{hV0V1~!?pVEAK%CKJy$C*%?RO z`O`k!W;g!v_JEGvvzjjnZ1Q*JAN*autl;f6mU};|c=GQ{9KCJs_VL_x{}1oh7Vasp z7Lva+`aNl;$@%M7)9zJd_{&Dwk<)42SZR-AKFoNvAZ<}<# z-sZr=^MBqww6T+$ak%~a^1`>*Ebjd(650PJhhzVr5{~>@!>0as=N_Ey)a}W=wIR3v zu%xE)w7c%hN}6h(YI22cn!4T?JY*)eA?2OG#1!Fs1ygem2FR#oPUpKKvbR2k(c{aK ziF?X=y!vOy&3L`@){ortntM8bu;fOIKh&;!xUO@)ipEQ&*h7Erq0 z$E$hABqr|>-?E$Y&8^FKtdspW+Ai47G+{#Wbti3Bg>K{H|4whO@qG8jZ5rFs3(Jg- z%wR})%p_nxAw1hB!Ta>N;{kqVVN)lw+FiI8u=#38VUqs3o>#g|I_LiUWD2m~7VzQo zM5c?jJD7Zygj|be-ye7B$qA=)za)3@sbObb1CyOqyM=DwGWcxrIP=O(*F+`m)!o$$ ztWP#)+5EAQ?>1&{)@5C*dGghSMfbGSg*N>-%%V8gvNP75O|O3EdF>Bxcoy*F{|3z& z2e5{f%dus1&5C`dxpgUL@??J%SA7GuKCL~OQ{LV$*cO|;q)fj3mO%Tdg0kHUEBKC8 zGEKN7?fd1%q`LeUxwi{FGhQE(Xul>g{hUW)uAL&cYnw!gzEH!j2OqC%Gpy__JhQ&i z&?+}=p84T3(a$dmtCiTyG)vC8)^t(Rm~ChH`Md5}pr%R2p^lZV?9;Y0Mcn30%skxQ z$!aav_o^^Ef!+LF?t|6U(mo8k_P4Hom;0c5_v;;X)x6j9*FQYAm-kNH37gI~^>RbA z^rJ`i$UZJUvpKEeP>Z|&jeY;Bou!@~G+uT1#v0Mnv+GvyZeqXis!TxmbD2%eqT_Gd zweIZL-l_j?&EsEhOKS?tnd9%?KQz}p%SPf_(gb+{OS8l0WF%&9Oh~zY~*zEpOIl=bhPe!%CV-0p4&>_eNz_Av%7KVEPM2h&jsw|Y@s{smw+03 z%E4-9)>bSqQhD%Uih$pi9paDq@BCYJUX{^ormcg)HumM~c@~=<-R6@u!~FEFSvT+H zzSC8|_B=P1MS9f&6_K?$KT{UY>y|qc+_v>LZ>fN^)=gu#SK>!>6BeDgp#EF=T4m;& zi3!njWdH2Zk7P)?eae-8K^$X-vuM%^=Nkd68`p8gyhzo^^S(NBk`4di8v(5<57Sp? zH!iN$E?Mt;QEKM&zMB(UFUL>H^ZM%kx`2JAy728?$Bv2ZEpy*IdqU2m%Et;9<)Y?T zZnL$}>$mq{Q0iFi-q?S9(al@$minoPSG=vv!P(6HA5S+P|M7jH z`j4|eO#W@z(ewKD?Hy|`KbjWTtzTC5;rdn6KY4kK@;+xD{_T{U`7tv_dj7Gk>cJK1 zB~1Ce{g1CVFRu9fF!|4)g93HO4*xlNz@YAD2Fw0uh1I`5TCB63dFc1!%RdT=#N_?X zK03V8vc|%+z28FK@9e{7PqA~=k1y{qGi%LG4z9?rk$Ufc=0WpG$r=mO?(fH!e|+~s znEJ)w%g!x3uH? zHYc)5k9+Z4-aj|yRX&`v_wOmjsZ1ZOH}}L@X*<|OdvM)X?AB0o7h{W#y0tog!?J|J zjm3^moobUJpSFBxmy;=<&TFkw>~FQ@=Bd5)N1RoC`JS<=%$>c&$Nu{ogU{N+Yu7P( zuU2L4ow#<5SKil}qP1Za{wsLyuAX$t$o%H!OJW9vw|(|+Yj`RW&EeFkR^g2UYme)U zIcs`f`#hTFwDa!Eof^w>yzicP?mzQf;`MoHxwlW9dutF8{N|2sA@>Yr?!~&QzE@NP zr~5zpl2%qWY2WdG5KdO{wbDf?3Hg->8*KMilY4S&AO*+T9ap&g`EUP)xci*nw z|7ODkYbT3^J6Ln9J7%g*SIO!*A7!}n!GSxQq`9->bk=O1ZM;lOrsB}~7m{<$KodYq zdF{=%3YMLCT*eUG?Z?wAU0CmNxMh*!vqED7rM%ad9=ucdU6)W*NrTd(JQBxu0tu=*M87ax!4Et@{)#)X!|4a*WArZc>KkyP`0CU3L<4aUj* zZCfWT_&R|*DtU95kG_?`_D9DaS?!KYDLmZ%Gqh~l`6qj1gFo~6d@gRhQU0b)_@mB( zm#*q*(_&{t7A0mK>{B;RGozBdDPM&Ka(+d`VxfD|MvFr9R*Nbk;ElwXlliz6ku`WoYVP^P( z9bda{i+AUUe|dgma;&s<&+UiFkNh?6xlFkq^P>OC!%x$fuD$ljx4dg(o9*fioj2Eg z=9#(H>+qX1haT!4l1|!w#jx5Xok8$Os7icgTggk7i8a#OTsWm0HQaQ}YF6Gn=>EF9 zqPmi6f0V@G+1&mgo*i0oBv7cSt zQ$Jhs*#5ITkDq^5uEb?I$aZAZqYqiS1gs=FuOpYxC_PWD zrfwP=yFL4fcX}mvza>4r{Uhg(R(|_*S*Ev7&PT^q{ye6=+Cnh>ddX~=Pbqg({13mG zl0Sdqsd@V^3#V*XKN|GgL;P1c+XR!w6Y`4F?zwB+OE53|Shf1dyTq4wLzjfxOo;JX zuY7p>buEBD(JyXp3u(C= z-4a~5JM6t~^reT7|7>$uzMX@8|3>$pa_#;Pb6Swzo6)?4=mXR*2Mvmk0OFwH*9%% z{1Th>^VHb0d#+qzD@%CWXV+I+Dsg&toz9xdjXT~Qz2(QDRV!mPnPINyfoW!4M@!|^ zp5;{7oLo1#)+qUDyQj6m))xnkG%*W*F7wg5v6OjgICvS$!keNCHZNIV${iprbR(dB zm&ccGO2RgSw}0w(Zc>=qWAr z*tIh!F?8Rxvc$96PcL3tCZD}Z;7Xf?&N-W!hgOeX@?EO^+)&vU^HTFtt8g8!)$XSk zUut{TPUwhv-aTooyLZYOTN|y>fATGUljEYl59@{VcNE30`a5y^f^PFh)Z7OnA; z%RXrTRk?S?_kr(Qi@IfXP4nONJXn5P`G@&cj=FV~P3Bu4R|H%4#b?~OU%yQ1sJ=<^ zkFAAV?{7Z;xUrnIo+s}?|3cqC_x88-+nlbrzq8|e&gUIzse7{L9^ZYNSqt?$P z|NMSuQnz&e5&bR6KW1i$*xwCnvurajeH=9B-j%+`;lDWl+%jn0?rU6e+@`&J?dKh7 zvyWGQtK5^G{J#FUQTO(r>(bkZH|1CJ4%yfm%7tsz>E!*(i2WD4qb;F?|6vMu=NZTQ>k~zf z?#%fp;`C48;}<)pPBo^Bw)6B$SJu=dTF!s+MeDRjU0BUM=~ah>U+mmw6EN-5CE+y( zgcB;7MSnEu`2R^X++(%BZ(nCbR{Sof9r4;zF0m{sVNxt_so2$Au&C8x&Bdu<8~1fB zO1mDqZxMs$vdPnT+ef(@+;gzF>7sJe$>ge=&fb2PZwx2zFb4fp2CdJ3#wT#TM8I=f z#NW;=zjHD!3!>*QUhJA-HfU`B6c;exR7>T z^7!lz-f#EnZP#^`{@i~4R=dNLt#=(t`nMY2yEcU-srt<|nK-jkR;t_V^BeBod-iQ} z&1a2Q@%cZ0Dc{}ZwC;COb-qWXtljp#o70;&vMoAU7H_NgWY?db&O*sDx!KkcjYp5} z$(Uj8B(>YDtaSU?;3?}ir$@^aUx=Q0eA+pk0~x0e9LoQvuB}HK7Vz=Pi+J1NEwr3Dp%TALS(j1%x%9I9rR{b)jYFy|2=Cr z@L1d5x%=isp+A?IG-7ZO`pGP{OC{~)qJUR;#Nc-4V&G)|Q`Nw(r zjPHMn6`bAOP=2?#;<#;l_PokH@8b{UE3f{MoWxx3nfq9OW$qu(8;9hDq<_Tb$jZB4 z|8TowQs^JEJx%>ir++ByXu1DGyzs1bfBBta9h>Vq_r9KaJgb}$WaGSg!Rvc;?tHK5 zuDHLygTLwY4~;E{?ukYoK7P@(MrWV>o+f^0?H>kPdib4A|CsRk_6M%t)l-f-^8By0 zul{a&p2_Zm-b4RJ-Wu7fk2@b6OVeYF-q=*Ivp1yGrlF2!0>c-n3HtV~>q@$OK1w+C z@wz3ytaWKMTjVsm(q>8OBF&%qf$w+)&zFE!j!m?5FuLulRDIz8HOD!VPi%O9-e$Jt zgY$2^=ZOV2@~${^@*8*HvE|x*r*lUnmu~SHz`u>U(7MlH9t4iM68%# z?__h?(M0#SzSf)X7u-TJPX71%`Y-mMp3)XUzf;VY3!0whyJRS8ZTR2yQ%dmjw&$@M zuh>0$$ro>F_fUJvU*jEK{M$nQadf_6e6**|Ey$)nD0kj9GwuP&YYtKTdKaZ4{^oyq*Q){|t%c3;rg!S1J5s6y@C z-TKB=G3Q@=sEq19e@UulR?uT%$JYI-L8WIJ{>yL|D%C1Y-S6F5`hD)q^>U12{Qa(@SjV@=_^5D-zCtnI{cm$b;^tj_`gA{REdZy& z{bQ{k-~5cu{}EIXv@7z~k@T6*{r|Hkd}5ec$+WcF#<$YaSLo-v_q#to&`Fx7dj90$ zd+FzXM|(}29(j~u>;31#CEXJ0v0q)!@TW>mvYcsL>TzcKy1y_qcG97Md4a( zT>s;l%ttQC9&riOyXt6Dd%#7aF*o>2TUNm@t%6@S%`6Ikd#T*CQl8TN-a~`+0@LgT z$Bo%J)T2JMzApHwy`kD`L-h?Y>-sHy9-Deo-UXbBcI=7oTJ9>4dHVnSTkbYz)lb{l zG~S-S#A$+03jf42vSqc$FX`=@Kl$00wwbS5TW6kvwsmedx8Wa5{i>S->zS_ z{OU7TJreIzM6cJf{^h z$}xF|BiA{_pG#ak=SYoZ&&nc(%#{-(al%}&lcSyqP6?gx zxcNxV%gpQFKRx*PTRr>{^Qw6t^q#F0nf|$M`tNBwHhnnfef=ppid8R5Z+q(Vio|>C;!ujXNM#-IeS@G@Awux_7 zid(u?zjpt9Zt6Ux` z?BqB1!0**>GL|h7_*R@Vd+G$+mIJPCOWmKH?(;qOT6sy~VeU7VD$927_OIB;TWeXZ z(SB9hZU5<3g^qs*SQacl5#m2_g^W@}=Hbwlhl4a7!_PX$o^=TIP2N50SedIztM0@i zuIN<9f8V)ptXp!UI3BVpYw=ci0n^H-m0J}57jS`{zy?CJF5<@(eAJ$an^ zdGGbPc3WqjKDWL2^5?zJo>#v8|LN7s*LUun7Z%eOQ#|@yZ(d27w}0w-wpRA2Wk22? z`uj8SWc0L_JBpJc+a_4Qx~cWM=wtQFFQQuKCxl=4d+)u`%Y88q7wen7aZjs1H>Gl? zdxHMFqVuyiGkMxq?kt+J^TluR+lNo<^EWB{a$fk0=jW^7C9Bmv!ukc)mIOzg>)8C(hY6UDm%zq2s;R!e26#?>MKdou?FP+ZJH!w5Y11;;VpRCv($t*F9Ao zE?)(lzH+>L#kuL~@{(`o`#FRfz#GQdAH{!6sQCC>Pb@~ydhL;`&yMTe5@d0VVG;g1 z-}9b>4^L7`hu$WxPgj@!IWs>!yeja?Dn}*(M*$YcKQ~s`xNrQ_Q+Tsbk)uhWL%Sh} zLn&_FX+85tS1T4rRP#Z%kArt{KYI1aZRa-`*v4=H7Ds_2SD*I2x>pQh!iB@9o4-2y z9IOMTd!1gs$*uDs3*jnbV((?VwP!~bD=e*CT>AsV{BsX6%;)Qy*Nkkzj$IQNT;N6v zuoNCuWb8mv@Tkif;$NtmBckmr3NXik{msYe0QUfkqd>R}Bxqr3)>)`9K(^yUOo%D; zU{K;{QrKs1)qWmqz=_oF`k(+QhnV~*{@EsV6_CKwf}4N&9R*lEzJj=MkI{77k07_j z@$2oj2N@D42ezyu{86eJ%WrmnPEbTJbb=fd&JK~9{w$Pbe%bRW3LH&81V3vfT}b`z z4>Ei^#9tpT)y)2J*}5|0?R=2??49(4n!yhI@zIItLcO9@`>B(+pB`_oxcaHO?eF3A z40(fZ{5STm)ak7IsPu7p_=n7G{a{-i)+>BbQhc%Lw^A{H% zP|JGTygZ}4;&|-`k-5#qhaR6VpQ5+li*JARo;b~TzWL>?KWp2x_kMoxMoetlz4Tho z*W8a!oL+plvg_JE%~`+IGv3W#u(ck z^Zy?)zhC1FN}C=(pPS!*Apie|`oDkQ{~tN{@UpRz063oP?LeCeUHa#gwfnw1f4}~( z$lJs9XD=@<{xPSrrzB$e-3-~}^`$*~p9y}8I-ar3|H3`{)O#w6$~pVpi~qBn{l+Qv zR@fx!&Hl6BIHMlrTP?p~|D(~W+OEUG-hWL zpQ^WA|N6mAoVSd(SovSfn7iPbh0DrK{Z1=eomRFc?dr<`bE#=(x&q-&V zzWz`1Th#FtSFBEmMth{c7BDhhQe66^+jmN~PM??Hi_phkwa(X1Hxagv(-Ueqa`J$^ z#~+aYo#$)+5A1Syp3Ax$;rFkS+wOL7%Jg32%&KnJ2%l*%`RseexwoCI!riU*x5sSk zOxoG%wYRzIF-Pw?VJSgF{}*$tfbU!NIjnab{=Y5~=yuQY3f4$oA&7Vbjp9!AY%6Dm}t;-|TA5D=vY9)U(MY;&9rf^kj zgj?(Qf2+Lr{Yduy^w)9kuQ_ZybMDTU!i$^d&a3#I8Ld#*x$U(KqsNzjKY#!KKYzNd zIyi{se|>rQ`KH}Bw> zDRpS0(w~JgH4Al|CNe!*skMpq+1H?a8SjT)w+~xwawtrDeS`6Lb@qRjug3(trq-%l zHvQoo88Npoqulw%#j1^KKRT`bemJA|z)N368GWV6x1C$7Z*@F>Z*uf);Uh82cPp2Q z1WoyvQR;W`NoKCrxlb?kynmKI+P2>7EyGPG;fEEReEkfIEt%FDaxAuFTJG*(66m(? zhRfEv4!6%Up6@q`i?NvEGW*_J>*b%y_OIJyRlT&ldwTHV(ldK6PdR_-zZe>|ucj#PkWn0*9maD%Qi(1tdbsEi? zC&Kg0VA~bBHF;JW_9Py^HBHz$O1^BZUP=m%ETn(%rD%dl`^Lpz z6Ww1oUz2D$JJZErlDkptW4WN*kSy7d*X%1y`vUSetu6j~Oz^buJpHd~;_gw$R}_9! zpSbGKTW{xFj)cUkUFwsqY^3fUTs$$?MlL+LDp6e8I&a2XLzY98ONxCy2tAHn)sdO| zx#;DBDElY3zxQptZsWH1#~o8R}kVUd*XHBq1>b?1rS&p*7lnR?#!g|j>;dTamuc`X0m zCHw!3ZH=JZ#-Yf#qQ4{kyvgn38sXLgmrN`EL}v6l>a2@0v|4%ez+>Gz(svFVc&yvw z`+CEk#P)k4Npa>Ig_2Hc2|0-t`YDCBPFSft_pY~~UCY1u zv=~p{s)FASrQX@a96qr`?DcKE8+SZigi|?QN*%hWbY`2ywCisrWbPgm-!Asy`T6A^ ze(&#n+&{nPasKt?g^#}}vB~8prd?#&dXIm(yMs!glTxU&QS9T}XSz7txH;U4INUyQ z9Ovpd=H0;^s&d(M$)?gJo2msamHv~SHZ5aOPrw=me+A~vx^2EwrH#AQdVI1zRK)b2 zj8qOYmo=DixS%qa!;Py$Roi1(mPhLMCAmqhLDD;uglGOgd#`$5cZJVH=IR6`1q9HH4)L$ zjR$Y^DNCl$d%a74_S(qov}?Dj*UwDf|Jm=qi0$9WUwC~C4Q$Sym@&novZAE#-9OGO z>0c+#-pXqI2nVLoj9<%@T1?t7`ldyA)R>l2K!cFTAxv21H{ z%eQrbR=bYBd^vkbe!;B9hnc_Hm%V&Bf6?aXUHYM=cb|xvO`H+sS>eN|IB}=TG0};$ zBAqi`*?V=FH+}ZFzHw*mgk{$pXWeSccrCMZb-B~Nmb{Xrc@sZcvb8M-8M!yRXWF;K zmGZflOy9neTwY%gm3L3~+v3OjHU-VE{-q`vJFUFB}!~jGQGkd?I}X@gZ%swg_ll!J0-Le?w&wg<;u z^$g85H~qRd(;mrB>THf?O1maFBdRU&twi(m{V8@!)2>bkzv5CDDV;i1 zHsoqq@bw%1!LJ2;bDd4L@C01G;O$$xe#?|~u~A;;1}47u8>V_!tix#0dw!)U> zhAh38)Nj4g9ij;#FpRxmyY}02c51+LPI=dL|Kk(VZe2J6mw4&L{DR2I;d1>F$T>oy-mQBq~ zLYbX6l6G@>N3UG*a?!%nhHZYD>jT}dYxu5h4!Qm-~*~CW)O|ZM`D< z&ElQ89n;EI%7>QPPMNZOa`+98vO4CSt-T^sw+6=Ech3IJQR{rU$1i50`Wdn21NX%a zF$jSG(@BO|^Y(r_k(!|WcaIPU3)8{Hf@~LzKGia3v|KvHClqw*BcIptJ7z+AH`isn zs9d!4eecJk0(0&NbM&54*W5a3%bKVl<5iv>n(AsBTVDJ~N}BBD;k8!9bamU8IaWW7 zHm&%P#H644_}S#9sm>;D%N#T2eVa5>+HS^eHzAp6-eqykcPv(}c&B2ymW%(s$hkNU zH`mjmt&g|K1Z;cwATU}a^o`}JcP(x6)Sv6MJ$N$F#luC8Q}bzz-+Cp(t#elVNODsC z%&})mZ@q`wzlD)3txpRywdTKQ5fTd4_Bgvn&2)3ylPg}2CZFo?n=oyu>oHM5!Dx^X z^ZsQNEF?$qcB3r+Mcsp0&1GF4@1=%i_(&VF^wtVeZ4 zrfdPFue3PZnLA6Lh?)h)UG)rpEf8y)T=KOi@ctG5usB=Chn6#Lx-6)?HTkgCH<^HK zZVz|J9yg7>VEwwiwN_-`!I?+Yrk?c$QN@XGxkN=lErJ3Vz26_?JrvPNptXXz8# zS!&xibe_3m6=bx^b4QF{i4*6-iIqQCQXjmU+S8pbH1A(#OxGD@!=+7I-b4j$&PsW! zrKV!kzhHxmlhWr7KaGb)ZChg2tXb8(YFFN=)mA69^VCci&jN+2(x)YLEzbo6qdk(m zEN51JeR7&-)t*IamyEJIe6^kig~&NRyky(!tEFnZeO^(d%FPEKcpe8|pD|OI?Lt0p zA_J(j;%qc%U}0)};OQpeaQZ~E_W`TwV=LCYeNHr<|$!Ygr~=}O|Dj|a@(gd zuOMOlBGqcX=ndf)C)K*Iu~?CFcH(5dj2D$&6CK`l{$NRaAU>zFJ)WyCk2AvhNJ5@? z=gd+T@im8cW=J<~bvE&P=UMS<=|lNRt@R#a_ZTyGRH;3FFs-3En(3UJ=Z*@shfn5p zw8o13I>xvnV^@L0%~^lF!ZcP}ElPgTy)&2P+&s^UpUWQ#&uGjKVEd;S8Pjz}-Dq9M ziXTablDRm0&pZwak=xk0H09~l;Lz*7-oFjj&Q-p0<@>Lq?3w?pY@)>u)d!*z z)Xd!;=}#AwjCVP(H0Mrj(1!Bv$5 zKSbt^(1x;}W0w@Aq?b#??3wg|`=pB2zK$nfw1PHgdHAhXu~{ZC|3Hb%oktrtbRRln zB~yHxBWLd8g72P+8anMKb|@tYd2{w_9?`epPCu`*Mt0GT4Drsb!900(nk}y46XpfG zm&WqP?tR?TbJp0lICh`vU$6RiEc@?#zkccM{Z>X56%~~)`!y38I9ZquPVP2nm^PU; zQ^?e~dhW)P+Fy8mg6`k(FRN2d3}n4wb-eJ`9DA*(buyO=+x%Yu%nr`2|D||WkYoTiNwUQ?-%)k30HpXA>dZTH*h|Z1T8A0ryM3X*W%##a&(pSFP z7#i{)J!UE9{@vwG%;OD(T?db8idA2)m}9FdeDb2Lp!;@~n7xxgHIL=mNtaIX&AQ!| z@m6NxwtdsT%!&HrWMr8yc#1POoKGY2^VBBGYSFa;Hi`Ya)~ToKvm`&4XunAl*+m=6JExzq{qB+z`)EUH*U@v9eAUw{a^^nX zu%-Xd6(gR<-3w<#wkN+9>7MMabZ%bf4J%K}+2>}l6&|x-X#U(d$CUfn88xQr>lS+d%^tM@heI^#j`!mtT}ABOW=qmv%JX{o50H-9b%6+ z3*XAqSZP%laI>x1%S+0yysi=}k#I%_x4cW3I^5WYNC4-Zp%BA3>#MQX!}EWd$A|CPNe6Lob?+RDKT7dAs-{r-%B( zBG#o-Ww&hMzkJcut2Wr)@+WVL%ag=J@z!bk%)7L{y|GU^`cFAbLuRw9>uFJ2<#?a9 zhc--`>63O%aE{&c^PaipeRE14TriC0limDuLznGwlb8#az8^ZFBT>BDV~woJM#acr>aU_}IxXDOf+D$hYv@I^ zC1yyScv)OG$5Q^l&Thq+4LpaB{1IYPV|*d;Yr)d@t=smQgBq@u@(mj+HJ)vocw^_0 zhi^1zdWU_xC^3_5(Yoi2mpt7?#C{jv5lc074=KH4S$j@i_;bLS93_K|Jdd{&GOV(C zCu8|iRLk8P>k6igARQ3E% zfUT-(TG;i^haS{4?MLx?(};Eot4_{1E@0i%Tv|Jbe7E z<-(_@c6KZNu)D&bb?lm^*xAc*Z|sxKrvE{AOau^7$f#Nm-I@$1?T#R^KQLxH)Tamfsw^*ZotIdGhW} zUz!@KS12*NeNpm*?pK=pAzNZB7e4KpbuQ`L0*)FcV-LU8OExX*-nLF~SM~ACEa@c+ zmb9+;ktB0R*ua2y%2S(7j~gbLvQJrKS#*f;YH;3*xnB>za588UZ@Oss;pvWL-0c0g zK1^+51^MpzhSoDCn z(Y;4PyWHv~MJ|7;_SNyW@2+F%e=YI_yLR49N(qrze*WjerSE&E?Gv|ZvwJc3>*Fa4 z*WW1!zWmkUcaM2`4|6K#(Zf43WE+>(noQ#}jM>t6jFQ?A0BOu)3l|Q+gc{e9EjYUz~jSo@zVEaE!(8k zx8A*A_~qyoBN^-I7CCbt??@0;lyq3G;(h3i9c(Rtu%mN$)VbncbL4NO*92TFa*aGI zXewKNZg%@4@ky>#Wp{;`SM<(knWV}#L3F;X!Q;=);y3G$aH)o}gNh#GPmkwBa)_@v zWVn^<@BtSicClV=-CF%G=YB3MKPT^7tKYZMx;Ww}-%(+{O()d&O-gJnR=zz|$SZ!O z#Kypg_s~Jx#swQL;g( z_HAqA_gcjlG-a}m|HN;S`DflLadMqjHC{jO*Rr}@ztvvI&RDXwcE+PmW{)PFF8JFvEuOnHwO@1|MG)uOsT-yCqYvrafRyL~EJW=9VkeX8WP^~z8iHw8t~mPs zRJOb%#k*2W+5Sq&or^Yak4A15coXyJ;}`G4hs{~Dmq+mUFb7_rI;}SIRn?;OC*Aut z+Ars+u~_-`SRilum9I7i8+i`ft919wvC3Ti{_4U3#p%lPg-o_Ww$-?X7%Pd`-Cc60LLvhJB`(r z8^bS7I?o^Xc0J*jbtOY@Zn0g?tW3XYp^9sio=pS8Ka$_NK|tE|**Uklkm&t6h3# zZ!At-&i=MB@3vrC+WLP>cC|372yn3Y>m6cze&fCRLcl))vJbV0ZcGFB>7Av=XK~C|u z`diNb@Yq@D=N+hV+$0v%LYnEz;+SZe^3*io_67Ik(+yix|2{REV>{U*S>`~YulSVE zr5%dSlNEC2Bz@%bP}k9#Kchuxkx&;W*Xe@?bsLMtou53L(l$?h`8f~o16N9H0>X-8 zHnE(Ejgm`y(YB8d-<4i# zS$i)2)bcGmSbW^0n3mjEd4*s@VO>a^1r-hNbEu z{<><7d{5rACh+(&8SWD3X^j<$V_d1SG$bJCqMNTXzv$N3CF$3NWaf2mP3CD6Z@OSF z->@=O!f#$DOZ#&n*?6A{AI5ifnxOt!%;l-fUS={jY0b0NSx@_RvBmA##P~Z-#lH=j zm5qD);uAAcrhR)S=%szj(_`g<%le|mH!tmeJWEf;F7f!n#bz>gdB;DhTGpPM-R|YN zjkgxmj+?ZqIVESM)gmS1Ydtv2_0` z%Y_w}$a^&kpnVvP@E{pHf+M)-Ej9(kC+Y_W4!L zNGZ%kj?tvLci~3MTf5veR=-g&T*|b6g3g;ck1X=#PDwsy_<7{+Aw4ej?=E+0^d3K( ztK<71_Hp6IeLevZdY&sqpNN=DioW4dR3&=w;ZBPkstH+w$7X(Jyj1q4ZC{W}UnBqW z-oL5Q<;w-?cg~sARTg!tE%UX^!gUM#-~3_Ia}|B?Xll>aWS(v33M<%`2#d!1lsPJk zZoO-=jqlPWJD=KMd)248Doevas_)_OQuTK2S~!%2M6eD0#!`cw(M(=hkGNcXpaB zF3$vI<6SCz80Ge@oDtRLX&trFswie#$*HsItu0fyR%KPccsDzt9M=%ym*PW5KqC z)31F?l!{{0(8*Oa+sI-*Uj#JTqSAe<@RNs%iBbP)$*U>Pu1=m5=v(2#IInJ{#V*wc zFZ6PY-#?t)H2Zt%o0vxio4Y2QF-opKC&3Py8Zlm7@H6aNWf!Qktnd^Sd#bntTlkzJ7Gp^puJAx9j4boL_`o8%}%1ASJus zsr)|6R^GiSPp=D$#`lybSoP&`-mo~D^jfBSb+}R8!I_{@R?%=DmmI-`fj?VZo(PG> zdIV*u{&YPXa;+pV_PTFiq_(Ey)fTsB58q90T3ftk%heseEn9+T#HwsNw{gesWkPbn z9$|INreF7#eCxS**WA(j_Xd%PlLCDsN)#OvEnD24O`Z|tSQlvgwYRq9OV34nlfw@_ z@Yw#HY_gRvDCC}3P?Tz8qGi$J6L-ueabJ5Fvw`pU88s&D_6(W3!XLl*gPL>=-ZwY7 zoU?Q}A~tDKpl{~XExy(M|5@(VJ~lDo4~V$rR8u5*@S$Y|>yn4EGyD=F_yjk)x~Pj3 zYih}t&p#crfou9q^B|@aZFbFH>dO~Qe6~%Itv!9ljD5$xyfHntT+&oW~xKnCI>pFHkF-j8Z;_N(e^s>Ha^>hoJ zw~Gz7cON>Y$ripog~@4iXP3UB=GIA1ws<|7bef}I^GQ&MTwtN=lGLjKVOKr9j~m$5 z3WFvHuHW#_OH>a0sQQB~{o%vOP5us6f`+XiWg++6Dnr#Wl=c}In4EoZg2(o+u*o)_ps0(EWsb~}mRnPvUk{GD>F4~J!M0YI zr~j;>UFp=$mDxQ#=P#REfM#iyPJIii_-03VWu(|KF1-1JHT{wJB+rBhzJ(JjU5<)_ z(yNyn@5-4%nUSU`;wC{+H~oTND}WkSz2^)~jJ(V5TlDHOgJxzxQ#VOpU^im&7&*`l95SzZ}Q>V9{vhni1Lzl$7w5>JtvX!m( zH!j)YrIg&w(Ro5y!)E%06*fsi-X15{D6ZepIjO76OZ&E_POhr;{>C+Ttctj$G*`b` zva)o-y++SA_h%9^GnZ~I@7cA?j;m|7=h-!inrkOb>B%bMp1oql%SlS>ZY}9py=fKS zC$8Bi&a73}UO#WoA~i1WXic3=MdS7JmTd7_Bz9YLnzM(CT;NAnmF3|R!>_nRhO$rH zdN(AbbW;2kpDZ`iiyx1+xIGgTnda@WBqc<3dHBTO3m%1)pm|u4saq$`j8@<4zL=YX z>%5|dQu~J)PLnRL*3igYxG%Hep54nR|MOm__dgR4`)92FgFiz-!XI2r?OR9)hqJl7Hlk?aO@f5E2-ZrGG8oRw{iZoZHl|9 zkG+^KX;I4@yrsN9==u%!$W-=9*GY*}<^`*p_kQZ0rMdRaf^8f7zpV@W)xJzpc7A%! zC$7Vbi@$vHzjVvcCpLJ0h<~vBTG_*2zWEy&*`0s##Wd~NzO=M=*~`+_8JcZ$`2WBp zckbel>)(Td?)l{<3eVhGx+MMnYV-9gI+G$*yhDA>uWsENa`jt4>~-hZ;Q2bA(u2|r zbUnPc9((pecFv?*mv4AimZ~3p`c`C$$!VV%T6(TeK^0DGt;w=!i8F4yJ$g6Usiek` zb*Zk&cF&#lYRlK3QeS6W9B*t{JN4m3%bh1f;_kZE6&la1{JP}%l}Qt$-Qxm{Q>V&a zG5vP&lATNSb&j=j51W|q21H)=1DH}K7M zzGC_{@b(4o+Ti_vqWJpH8ry9>@Z$=T^Wx1V-+eD!v2rP`<)3OA8*=sQg&Q^w?$*~bld&oW;z`4V(nL-l=Lp8TSnxgEQf)oEqz(um0kkF&L8EhzA= ztMh4wx3P;$zV?BJmV<9ATrIT~nZ9*m_zjP+xMrRGlSB6H%WSw-mRXrld|O~E@7^h4 z+a`x!@d>MIE_pXeOly_u^a&F#{GXTgYInr{O_T00+}iP2qxWp>|Bsceh^{ZAn0nyl z&DSO8?>Tkhh0b2)$t5NIph1P=-v(=C50{knU%YGX`G3Kd(#ro2Olp~fK`GGO;OK)7 zJj&gImY2gNXU8N|l=SUu)U>KTmXRsHY-8z!wr7k|QEVAm(u=kxx15`2sL7OCGHv5Y zR#4ist)AQYa&?biOkzQWTiAJ)zszf2Tt7BlLAVm)&{Qk4@^n<$LsC==@;Ab7w=@JOPlrTHk)kay?9M? zrro8VX`t+%;8u#!1^ZkG1&abmR@Z`%>ce&`` z>qr0Z{UCaN&E4~brRoe?tE|BVU)<*Yz3sa1wC`WHKR4~}@t3b8YhV2I(vJFBKkwI< zg}IR_zhAGqv+Hk0@T+zc>+-3l`kuGV-dA}yM{my$j=83k|Nc4q83qo%)6c%I{`TQ_ zXm#N?j~|hxoSdA0^H=Wr7I$v`*4tB_STqUQ$ord1Jes3jNP!&fTxLHT7TiPQjA(^H%$u;#suwr?j`+r|&&$ z*nbKw}cZZ!~6`AQD5yJTKWa<+Ulc3=H&f)JRlouEKob||!mzkoY_ITdh|Fc%!eC^}o zdF=X!7kBoS@t?o5J1qE;>5NGmx9qtReo{qJa`xo=>rcMS_VJ6aelX9|?e3R1dl@f3 za;f^btKZk_x=Y=>nb|()W7Dg`c5N5l^xDR3qeB0bS#zdI%#TVad30)0b;0`BZq5zM zQ=ZSBwfEeSEg}a^jjHN@9{qmrN0NO?t=#Mhd)Le9SQon1{ZE@N(W3oVQuxoO`;n&; z8G3upeYn%sTqOMD`|9tfDibFka^_udd;5C^e)EQB>toc7mrpx0M=I;pt|!NPe9wHk zRUKusyUgCUHkm)yJ2F-J|Mx%PpI*#98h=sz_O~yyYTwkkPqr?9_h-$%f4}eFpEx<* zKh00KRrTzhz180rvR(La!bI|>X-dlV3)k)cT`0c0uXgr)$qvv|yL51Athn^_Cx0~8 zXDwgx<>KzUw>0U@4LEz|enOR>5!14?^~Sc&lXG}FT zu6M4=jr;YznLqaAjR{J{%hJ}L_U&FdGyBu$b7$&wyPxbdkKF&hV&_k#zvX3_JKukO zs8(F0>=E|<4D;7>Cw?g#SEN15yK}y|ROe30zk{!h)m?pjePUB1wxz7vnA-5^lwVP* z_uV2cY0x^reJkg$n^)L&?AeSt`@WsHyJA}0`kC!9`YX@IpI-m@j_69=&EB_)*RSvX zySse7*lD{@QF?b`l9t@9zbk&ec>O)qQvFK)Gde4?KYnfB{`xihxv#x{V)(V~_h#_u zy*&Q?{rl3LncKI-YyaIT^ymBj_0vu>MC}a~tiEm$vv(4x!+F`fRoeU?>w&q}<(+-{ zkM#c=q+Gu(_2=t+w>hS~kIMDm?L5!$>W!SE^L6IZ*z(FRXWrZijjQ(e&U+g z-2JFnP|!W4|K-`g6;|C^m+_+Nf$W4+SF_D6QXllTtz%F3ZQfD)`G~{&wwph6-xF3;T&V8utz0j6=dJfG zS)V{T&XE7c%8iK5=Pyx%{U3Voxa^d_nevyhIc;LQZN_{3?+<>yv;V$`Q_=og^>O=M z^M1eH^HceC&4mj;>i*05Na@&b&pCPX%$@5#KAxwaRsB-W$dzBXZ|D45$LyqLv1de| z*=THa{K=QAs^0tM?)^Ky{cm0Kn~&GO2d38li24_BQ@(hg{QY&aZ8B{BzNoYLVq5i? z{kQ6mw;P1mE=-F(zO(SLTKT&>PtVQW{VB$Jd;a~0JK8?iPPFu2fAe_o>hGs~XSp)3 z*s;d--}dw0VjsM^DqZvC<;~wpRr8|u_TOKB%iGKCsq*d6sEb$5MVHAwKVNVDWLr+>jG3Vl`{TDx|Np+#mZc@d$aeDq?%5(0 zSzqn8?Jb)WywU%rCdMsl6|>)|Gk1lA6wio9_3#y5-lm%F=7HO61M+-)AqZxzsr8*E{!Z ztC#$_$QDo>4v|wniDPFe=X4S^Rw6p5FS1`UwjsW-dz?i`e?q z;QX4q`cH+brZ9?3Irl#N{nM3Ke{U%6Vs-Go-@QES{p9)YoBeriZ23In4o}s~tHLpR z%N~pGH3x-3obP#^4Sv%;{5*JKKKoV^p^V3Ui_e^m|Ls|dC}UJAiXwj0{hN2x##%U- z+s7|{s!-_ZX)0&+YYvMV3J7x435FeFs4{ro*R_nh{QbSB`Sa&Lp1Jk+&%dkoTI^IW zc>OIm@9wVNskI{er@J!Ro??i);y!=w)0d`~cCOBnm)HI5%yywS|KHJT;h~_aHSWfe z14pjdtlzi#wGoa5l+{5#9k(DMAO>3ti%Emh|4{Zkp>y7cUt zd#g_Dnm%>L%)gnZ-4KmEA)7**9Wt3^|BluE%zAc&!A0T6(MV3_7p=YR7Db2VEza_j z2`xTy+J5To?e8~~Zco`}v;Cn$^5e~)lH1*uJvn`#ZW7}c$8bt_#eRMH ziL51)A#be^n?yHV1Se(hcQ-?G$oF+270+q;%+ zws}4=zTlVtj!&RvIre^t*=|nI!o!VgLRc<5d|ak6zr^L|66N;(+lFR#-3Na%RF<4Q zU2o&*;GtIM`0~?<1@g%Zn)6F0NSj*U3vfPu;rYJYNAg!5^DM~U|F=)q`&E6_Sv#TN zQw87sragZJnmoAoH^5(Rl%QtdA zRr7l%Oqd{mSS|$Wi*m@F_IkVMu=yWMBZi%e+FSw4IDbr0)`zjasd z{Vrpzp2H|IJL1gy@V68H`gW;xb!pe6?3PPsV9c2JZOZlkr)Fo}`Ez~$%(=U@{LlQl z@~SrCru)g$|J6MgXs^0eS@(FM>h*;FnxD7d$K5&nvs>{~?B$l0mXZ@A>~x@+8Bh9qA0VyWcg` zY+vtscV{vC{sSdt`&XZozb5~rXExtC*jj*>roTJ-^lMUfd!34|EV~Qt9);h(T9q;L z(Iv6E?OFW(YwxwUpHKby`j~igW!l;;I;*$V2K@W=++v z|6Jc&d~fgX58v+XDt-Us{l48_9d_qkzG~|f=g1stI`__wkL%?Nr-B`~4~yeKOEx@S zT-QYu@GPJi^a#xLK#-&iS>)lt0X519oYa{PCJTb6=qCtpK$>1D5c#I#kYQs*MFGeF z$Vm?77uOFR@_iT)#@j!fWfsu0Z=F|o3DF(V-gEe+TQKs zyk*svnIpMi-^%`7ZE;!BRV&wugM81)yZ6eq?*Z3ucsmEnpUrJ9De1j*+5X&_J6lnl z;+$H_4jxb`3y!_*>l@pD#0wJE!Z&5MuiMyv>{(sZt@amhBp26b%$oSI5}RllOkPc>S@s*;vlpNN_U z#$9!EE|z~h`LnjIxFBd3L6qCweYNdBmIytX?Cs&9r~0r+vQzV^%Caewrv&YLbY82` z;lpbcOVH?}mQhjGN&UQKdv2hu+Hhc}M*E#V_|< zu77p8kR9X8n65L*mTQ|1T~cFfUmjkir=+5yqOzrDSLtiBZ|4keSRPM!FVnrZScgxq zP)Pgl8etBW)5o2UP3z;Aj@Fx2=zrj9ja6 zp1qffzuz}H#1N(SOnhHr+PmyyYT_?sXDr&baeB|3s3zs2jir50*F+jD=h+i@z3};x zZPMynV!%#)xMZ5P`qsMvSIeBgPLa;C%3JYz$Kqv=`)+BLgI4IRdi(9f`+1XZ<*k@o z&qTePYf1!tUgg z&F;CNWum7PXKh$f^Qn7wW~O{vMoHgG$wY>~+d;lG*uNozAvQfFr*GRi!B5?@IXTZi zZ7P-UTGa<~VgA3!_Sp9s8y@?HZriUYz`^q0()wOV>htIUr_-@pFs>i1cjUh9@_vw!kC{kZh1H#OdKuiwA^?C|-X0E@iCk((82 zm@j8$y^Majvtt5id6m(t+x7Lw`^^15eR{2)GH1%>zh5V7|GOj1!Sdg>Y|p||+WD(C zz0T#0tM>1{Zf|k)cKy|-cl*Cod{?%;_p4hjzoww;`n}6Z-)~F3sR;J1yYndGlm34b z&~gu+bLGGas=HWSSU|Q_EP5Q>E^AGD+gR(p*m))6~KV#nBb01#ltbObJ zM9k!o_?*UxnF7B>bSu9vzP#tpFHW;J0cmf|T(9jZdE&m{#I5Nfk-skqUdx;O@si-p z?5;JHEZNiL)V1sDXS!eC{_J4#_P;lF)%(=%i@)BVd-?C*pqe+P6*mg)W1c@g_c{2t zy1*aviF?;?mreXzrfT-i=9KsPxeumpzw-0({4G!UUzOWkdHnVJ)|+3qvE7cdKDcbI zd*uI3liparxc9s2t#{X&`*kgA*RTBWY<}sFPZK0}x!LXbtrC3y%5Frhv;BVE@mslF zYwoQ&@M>-Q`{c9N{^y+e?wovPzLj3gzQS1&!d(BvCmfslI?nD;o9wBa+OHP3?*}}+ zT5ekT`MgyT^NX|guRpxnJu9dFugdIl`Q*c8s@G219e=%Dd*j!wkN5oBXEtAcN5iyz z;(7N@E=dUqzJJC2{{<6JO*LDb?Lxh9B7-io_x5^uskuv+=61aK!&bv|`GWoP^UvA! zKmGcBE2rkE#_DY{&wlc<|2+JQ+5SYaG#_X<$7cUW1^pbGBiyt3J|0SYx&M5AjLWaz z#nSIK{y|+<@$c(%ZsY{w+kAc%Uxb>zh?R=oo{aokK1kk zcR=}9nf>?quNz-)d>EK2AAA1$&%#<^j%nS`ugO2y*~?y;cv1wZx9w9uH;?m*>6bNMVq8EinGDIVZ@1t7_@|BePvYM?$?x{{b=Qou|L)y*hkLf1 zL~>qL!kS+lRbuh+>k4ljKE5U?M&n1WQmq~T#;n(g*K&iCUavlW^XoRN{QsfT_y0NE zu)nsh4}|Ui-)-3bZ_Q!t{8bw(uLoY+Q_>=CrtLBR?b%BaMbD#OfwJi!7Wanb+kF=ahtmg|*#e4hE8ML7TJdxF!t!(d{@>#tZ2i6^V!!ju z=jL*cW|sc0OnbY}eRJObTKOa5=Gq&wx{q{6i&PX&X420InlRh?ysn+WbP03)ys#a| z)mT@~IrF8W?C-z!O%cx@eO$dwV?)*H#IXFpl&jMYuenuIf4BRqUR|NhZ|3LwjxXL{ zAs1Syd*+P^mJ#ZE z#s6=3$e^DWmT>p9*Pbt{xYqAoe)6~c>(Ae9pWiIL(ZuWp+CTDSezot<2g1x{`&S=) z7JEEmZ|KD5=5kMNg8XuKZ?WC>e+t>#H9=*N-Op1JzPA2zY#`0bFZ-8)x-`$t-aNlq z`n#g+u3e_gmc0MAa@NE;(C1CS%&1Ady^Z8asW=$8lx#hKl_5Gm7bNRpixcxl+=cfy< z-?Sq)#h>ib=bQEMVtRVzW9FB~k8ahMf7t5F1)e&&Uoc_o?Y<3~48sAGgtnFqC(5g!R`=ez38HQWyj(nC@VSe#)>uvg%t#&@Yps~>KP7LD8+8Ynhx^@&~6mkR9RwVrZwgY(Q% zeeb7nch(&EJe%+Dg2+u-rxPnV?k@}P+f;eoaN8TZW6xrb-}rGV&@5;Ax$P0(U#)Gg zEIhq8K3^{N*qzmn6+ph_p1q`fZ;HlU>u>zti-g1$&kxI;=+w7#gUiz2H@`Vpn|VLG z&^=rAbC%(p!nc=-HoaEp=ZVVc&r#S^Ase1Maq3--t(g}Yel4t47x=S1(xfB)&YA>k{xe%2;5_v z^nPLbH818rruv$jKI@j+{k$Z>Ys)|94s0(JIIhLbWgoTrvR4LvTfE>4_kYEC_Y3sB zo*#D?*Xc79jrcri(Uy`(vvqe>q~q7sM|w(CpF9@J-={jgPw~BZKi}s=&)WNy>r0*- z{?)u`#f|3g|8)NchBk)I7JXvhvQI(Y-J9)#S3f69Q+!kUb@>NBd)p&6hfX|e-M{g( zuj#$NFHGjwB%ZNz^_~&}+Hr7(Q#ZYD&W6XQoyC7Xc+d8xF1opQy~gK9X{?E zoHJe0K^>F`x~KCjs7hqe6+grf#a8FZ>@llDcFO-v`%}LgmhD-2>Rq`>#aCNhQ0mvt zU%B}&Z|JtYWlhuLLK9!FKK^vimsf>x{~mK{HeQ#0^=87<+k0M1fRaSo?3AW8w~8Xt z4tQKNTy1t*?$jpJ`Jf8@`|hAm>p|7I{XfrD)z71|K!JQaE;#Y^YOS1`wLQJ-HBO(? zHI7W#|7^{znh2+F3*t71rk&VRL{PZY|HSA>13{W!L^I8K` ze|@{|zv(fr=Et|+uKR!bB=5hWbUWAVa@o|w+NVAh>&b2Ydi8NmwQp zq;;KqHD#ukbeTtGh}nCqs`DRiX-QdhI8XG@~rkcG8m{b=qrB`_=$4B>t3exHKy1n9MlJjns_Pkv`Kjr!DS8wXV zC*OUawdr$i>9+lKlXQ3YZK~Tn=@0vEP*Qm8@w2~5Uq11%_Nkm(l~c}I_iyt2c6fzJ zUro$zzSGB6e6I+Zc{IlTl0@K4-t`)r^LBrE{JML#Xhq)RgUA0Z&=#=awAt-vloysC znsWKvVo-Al)C`!c-+Oa;M&qPa%vn}>8Lz7su6=*hQ&*f%Gy3y({d3^D^k!*KXf)sH z#h+Rjw|oLMXnv^jE^uWpd%I0J=kD4=tKVmRdUyZJkJI+NKVN*_{O4=1^1c7RCGY)y zVUqthwB7uFO_#Y{gv)FYWBdO_r>*O+KEBKUwc_`Bt3ChrneD!RG2!>?ReQeN;@tMe zPES&Cy@q$^?rqu|6L$-NS_Z$RgXAWb+f8}(=f~&GHJ_#$%GVe6@!Oj|YTiHp;okl) z6~EW-+Vkc|GIIf}q6P^8WXXi|$R3 zv|K;`$YDx;8w0u7245#w5JC<4M*3a)OKg%h4(sH?$ zMw5oZmCrvD-`{FjcscMw@pbEC##dI&%?jT1tnPYD@unkovY%5kXWUTPnBl3^_N-81 z#?hn%vF?eLGTqZul9DF3%#7tqE7R1OrhQF%)^W|}bGKVaG4IU!>vWo>XSzyK&eRi& zR5>MP9bL3PV@KYp;>$-9^d;<+1FO49t@=c+MsnZ0bmEbloFk?P`47 zqU$EN@{FwtO*i=ymjzlF^DJHSG4r$23^V%{$+pBZu`*|!PP3euzAWkOjK;ayW@UPj z5teBQY12aCA3sae{?nU-YiBH&VgC>mfID?W-TO@|Sf2_AP4@Qr#3*FkH)&SwoGELPkEqBh zDAcg`$z>aE^h~?fR1h~qmuG=GXCgx{WB(vRq4)Ct*CnRLOtFR8E4ge`5O&Njb8w={*9PtA^$+#q@X!dn)XH%IJi*zFXfBVX=k zHGj`*QN8YP;!&w-y79ehy~Vs`j8!Hdwd!p37K%s^?4MXEB}nn#7&w*=+upKYqBMwfw&C zj;giCFV^yw>D`R5PD^?^p>b+5o7uUUI;GLAdw*xm30rsgWU}nHcdIuRpFMWVklA~u z>$antOr}|+B)px{IoI3F`|hU5SCe{sgVoZ!gCjF0HvBu}vFsdg+996$d2^p>2i37Y zZpxc5Z;kwsHLMSHw)h;lrO6!r{_BsnJY|zIb3@PHo*vUT)lV|&7n)zyF=0kb*pJ*p zrwr%*TxRGqTO2xgwy=HG{(1)Q-zIBhFKsM6cjTHXclL50o#{&xv!*w7`c4wLe6sNF ziOv&8uX*ZBdVJugn&BD4zNB+Xn#Ol;XiZe*leE~eK5^%Hx3FLN2M^a9ue58)neokvT1N=~zgMXM%eO+O^`nAx*dAz!5dcY{04Xe+y#q2eI@Mx>tanVT=Hy=^t4ZfWs7VUl0dfU0k9TjUq*=V8R z?oOW@?jeWl4kdpVkeS*Yf5Oa$xj5qCcFywszH2_*?@50kR@1coq4+l0{~u(3w7)x` zo+2IRXj$X`Y?Ux9yjA>L?t% zu~_?(O=g&aG4J7s1iAGy?CTcZ=Ip-hTylx=Q4rsx31u^WY&m>HMP5Ot%>16CrNxf* zX&Xz8HjBGzIllH#4u-5Sce47*ebLXto~j# z$L89}>)ZVHsr|h5mB>EX_Y#f@Kdk>0&(c4CS~lVNOqb++CalLrvp?{iQnav|zT(K=pqQCe z9W7f9pDJE3KPLK8Ql!*p-=vvZ{yJV?H`mNuqtCP8qnm_7@`1(14K*syOUeX_#axp% zn(&&x=WRLmM$PcC#>>_5Dz#_3RnldHrTFqr=kE@W8}1or@|u*&A4zLT8}6I*a*1)}om%sa zMhV>a4n}|Ez1>%Tqm1cLxrd8K{jXNf>o4DJ=Tzr^IZH=&$H}AExuj&wsF%rRBYXg;lx5v)&0wp8G$%Wodb@Vi4ps{pdUK zZL;?-GDIKR+`__9&ioCMn-wvbO^3#hv3|l~vDz$s|gBLMPi^?=v z+@A{xDf8wy1}A*lWGnan4R3$2X^HXRAd;V0Pi&qY-q{%26{^cmtZ13>8 zp;HqnMNXPgH{;0~qpPu#7=?BJMjOpo!s+sVgDi{N zJ0+8}icR`K^Ei5aZn$sx^FV5P*^C`q4j)-26O{CLgGDBjfli+J!;jTVa)bFM%_wYH zaz=Scir49wNyhyXX4K8tapmx(8B&wG{ZE+1?75!&cE(Aj?us-CUj1sprHm~8!smUy zKD(J|XJc>Nkonokz@Yc&DMRM+{k|;j@0HYkE(q~cczmM3trC>@wr#$XuDtDBq(rp3 zVfDm2OmXMqSGIrkPh_waU|Y3Jb9QoKjlzd>IdG=i98CaZpvlmiG|f29rwK}{>V8cmkSH*lkIOfYq2iow9!q5 zqNtsIQQsx!ddHk{4BFH`apyPHP1pAN9GjK+*t7iIj3vxPWoP3KJ^m&jGk5iwLqFO) zyf-i@mkUYF_I5e6@AsynMMB?&1@(2Gb9LS7^gm&Cr^Y<#{Wh-b z=h@!GY>L>Da)Uug(xGXiOZbnKn8 zDgED$igm|tX*Rn~<9wmtHKjX@&1OT!QiBH2e0WQV)DCNpqG>6AmaMaK^ZF*ZbX`o& zro2mUC&+|*sxmElD#W^QW6(^7`3iFxw@67Z_sN;FsUTuwo9MsUoIN)*QyEm{CwNI8 zc|TcQZ|TWX7jE2bIsR5v$FD2Ad2yL%D*vJFkLCBxZQ#(%RyRpAPuy6YqMR{*67Osk zeSTUS&Yr~j|Id;v{V#oSp<|Wb> zJ=r}@*?4(808`xTaQ&sHGAE;g5HSx@}l4-lv9XeahY9&8`TjUdRw|p$o6Af3w&_KJx?kEF?FT-{df7-w zSjsrRI>o|se46!AHH}Z73}S0uiq24;D#mfMD}Kh7z3co^dgh4AO)d#I^+qnz+}Ovc zACxbr7fpC_W^u}ziRxC@_qp79CGI)NTh~QZRzatXpYfq}gyaTE_U~6`==-Mb^VGTg zy#3Rj6^tqsT@`7k3N{^F63OT@U;b3hWeJ_PmkYn%b0{d$nv}We;~G@ygZB{=j$YptXnIyEofsKD7&4XeECBAydsc?duO8?UV~&|8>XDoRppK z-7@cPxu3SPdRh#_&2(iy?dwUeC#j0Q-0YdQ(bq`qbkN4)lZP^&TG{+D^KQ<5VODc^ z+e6tohff{QUGw4gk)rp#MGI|Kp6d_NIiJm}=cVYd(qlpQ^{Q#VJ+41|xPPXoa+iVr z_i23(pKKKS{dDz)(sPHL^n7wt0xLx%lf8zF=UF9FbUdFL`eZO?q{g;hi+^(jZlQ>h8CLg(TG|*@M z_YZG48y^&YcwNls6U6c3C}HQc(Nwh%Pc16lVj83;*UIcnjUv; zjj&vnoHV&-VWiBj?nM`jIZ{u(5nQ=T`JCxJwhPzq$3B{@f6ngPXB(fWwbP>amS4zn z-*0DOal-ojUzd#-~kdDg9AxCZ|>zzIW2Gj?SZ74!0bCKXudnJ=c<7&uN_* z%f+qpXy$f{wwZ1ZedY?E`E1PmL`NZz`Guz=xMyM7uxF~%1yJk6r1$U@vze-Vk~b{U z6CclMotn%xjW0;L`18`0Gj1-`m~ne)(nb?e(C~oF(r?eMott@SzEN18q)y?919$wg zGBY#8j_)~Yc*eZ*;02p`N5ecL^t=xrvlO;AU-|k_(DqO-=?kjg4nH@GpVf6VXyx2p zOZT=MHF_x}^5jwdwLZxR>(mp^{llX+&c3 zhhkr!c?U-(%|9o^e%G+%x$p5?o>`&0uJ~p>&wH(PS3i4skD$lx8@o~xA5UuCTCC$GdWxcEL``sfKE?ih~J-+_8^&hA5g12t0?eTx+WSeVc z1eb2QU^H=|qVDu{Qy%OolAXSO+NYb-pBH|;b>P|C_Y3x3_XI63sp`6N-~K?*cAYmd z#v6;zPO;j3YU6Do_mziNZ@u$0w3Ao%($cUuMK;?H7|AhTj(Dcqmv(NE#xp7Rww(;4QX!MCRbzI}c+CwODbw6?9uYGvyp zbz=8%{eHT7X~YH9ZdE?XpgUR9n~q)zSu@vYV|je5QZi))_Tyt%Iqx4iu4b8Y%O!(N?78@Kp} z&+2kfd!wxQw_{U{k=jp&gMqsvBxf{VK2-{euFUy;ow=L-^r*~qnEbVQ#tL=cN!?~2 z{Mo=2^iswz{hF7WZ?s4<`ds68J8v+@@>rn6jAKa|V(kkfW!RQYiZs4%G0XDUMetzM zB8`{+k2634vTx7ciIsCEc`m+v|ALMfD3qk!jjIz`s@f7kC4EV=L7G&nak$<5iIq0o zxsiZ_H-33ub6Mi$FW<)oCR5Ml zD&#M=?)$e$BTc_2VOgL>6*|_dWZ$%W)h$VV&MfEA(Reo;%I7vu^xQ{oU+m+EjF|_VPP06{p`84zvU{= ziJ;;_dZU+_d#op0yk0*1h=f?~~!OGn{Fg>I5dIv3~k<#zE~YSIVZk30wZ} z5m+YevFt(#^G}Ig#ph)U-w8gSV-;@q{?5a{hE4SK{gwtFP;74p`4ddYUjSB zAL6N3d-2n_u+9Gbd7hL{ZyeNKpHqKtU;1R{b6$4I%kTg0+239?SNYxNI|9qjaXxFk z>F6`(;rc881lQWJCLc5|YTPHD=Kb}6*o@=JPiL&V;>Xc(L$lmaQtywPz&_^p3)Tin z?fcF)$M*W;Cma1T4`=77@?Hsk-eyqPCbHw7^Esxf6^tc6K1w@CX2(6dtbhLF-Tv?n zPdknSQ}-C@Oj{Zl5#wFy%6$KCMe8*)UT$3>i}HmNcKtH5`}s(x{N0z$S4u_I@Bg2< ztIcfN`?~2*&LrR2dAYwaQs(d9Ah(Nsw(mcGJ1L);`8MI#o`9mVc?&kJ;?!>E`Lu3& za6m}&%3Q9cPrr6$vRt@yt8w>vHyh?{0TCh0fA%r52uv<%;J5$zcH=!`(5lYkEBEbV z{KDfj(@a0ZWslm?nxG!Z8h;s4rQ>Y}eIy0Xdwxu1IDeie;nEofwe!=Gqhi;j30PSj zn^RuTV<|JAwZFr$J^98-IGsM$ajU3PW&l8dPU*V|mBlyJ3ry#p-{RwzB^GHJ8 z^rpX`u2%fWKW3j}t!TItROwqkd#k7s^y=K3hx=L0=l6m}eKVh0$%L&rcuti&c((|T zZ}LUs309A6&HpO0T~JJ9=rujWAjSO7xPhzgIK!pi#%vQ}{wL4UKkxfJwJDB4IGyFh zv5qg_Ijb0bE_{}EY&ZmJ)y~n(t=AV$XVZAWBlgmM&6oLQP4o6|d9RcCV4jKg1kY3d zb`}4=U;eJsxb6J!g0}VbKa6?g-|u``r@Zdy^m@O^7w)p({o4Cy&G-6e4efRJey@M} z@4NfE^}pAg_x=2I{wJM&g9euV*$%8yh)Kha5dX8OSc(wO# z`@cgPVYwB(TW8--XiKz+y}LK(&Mz@_`yZ88w#nC)wY7XvUL3c2Rc6}C*II2)RKw@S zZjVTqcwlXGxtpZJ?V|gkJPOX6E#BRE$*y4dSi}BL&D3ev_}0i6Nyy0TW#LIEDCo%F zx4-A(B$c{9s_*%ELA}J9&wrn~m-T}>-N&M8Yngp!i5@s2d3bW6vSie(fG?9ct#yCc`-PgOjRjZF7FarSc@36DA|KK`7^=rd1MGSZmm@QkenPNx=K zpJ~UoaMDf_>kdyV;p}TCb`G7X?U;p3z=jZ4Dm2Lh1kK5}vJ_!7H z$0T0u+=u6_HyvL{wixCY@~CY)8DX9JXhTwOP(^O5~;iri1#mA#$ zY_BD}-zOFQ+~>@6PwxYuD)-bJfuG+mbbR*xp8SZXe%V>>#70*py?L)aPFbAVr`&&? z;n&wMyfx0-ieGwhPG2`gKxXP`P%q+#cKoKw3WPjXJ%S-HT?J z>9?Hx6_oXcd-K1Bn^sM72jut4AL0IG#9#e?-(wcO_r?1BxBq=V_kViDg+lpbi!JWU z-`N~E-}b}#zk67k+>hpHuC2XwCjr#<$}i;Uo~DwpQAbpIxzDs+Y03L*zG_U{xporQ zw%uu)ub4_(KiA2bv-Hp$HM5fvGmkFZZ!qcQ=cPB#2Ht;rGicWTH>`p)Zm2zew|(N2 zH;-j(zHx@Hx0Pe|SbbGUX6otw{ZBO4&$TO`JoTSthKcQsohg$il(oG1x?V_dd;h_M ziieWE3rTG3K70HA!Mo|gd-v8pdH0_o{ruOQdms72`exSry{pOq8lsWjG+te4p?3hfByv9Wqamu3LCJaC^Dt_07faf8WrLcMduhC>Eho z@GnU)SBv+v*l{D1B~K4MO-hq!n>?egWxOCUS}`<+|&EGn~tIM#xL>Px4iK`dg!sNHU~@nw405eicTh^ zNwh57uhGRS_Ho9oWeHDbG|u%F`&RVv%flT-TV=w%HZGm(ZMN;)%m~XR$)ME$I}e`V zIc%`(9Ph+w9j7)f*%+#nXD99HVSlJGdH#o+*Tr`f?VWRKRv2g$15`8IGTpnvbQ9y1 z1P!XAE^qNTaKPugb;gg~w&zvaeu5_Oy;4?2n=uOBj@)$5Mq6f4fg*Gc%WK>aKTReYNO!nf&#Z_M-SGUh@y(%JdH6Zlz8Xa9> zAt9lvSy!*yAGmXL*E6L+ugm?Qj!C4<+57!7<;rWmUH=v?)zFiXWOV(>`#IqX6`v&Y zW(gm6>SpoDnY1xtTHDlQ(By

DfAun4Mmo+HYevZ7e%;_2~nQCRRW9_d0HtQ}`#@JqeD7~w< z<;&rm+kf@)=lyA%-Fo%$UmfuN1CzE_@8u7ib3LWBwe(!jt-ano|8M*_ar~D011XlK zjY%_aYrVM}{`kp8vFB4?7k<8_aCGXv{qo_ve)AolsyFX7r~)|LWjZNRC3%01sNTHS zANlTi)!b4nDx3S{>}2~-kJn${5g6cGy0>fEHoZg!+q4!&6SpndRhhxxFWgwOaL=Yr z@5Hw(U|$-2(yd2yn@-N#5GAe4WR&FJi7@zL=K2O`~B?D(>J1FEWcdA!>{Hp)+ zNw@K$r8_~3+y5K#^4w8%dS@glw|{y^%U&0iHPje<|EZc1KXcTzom-s3k%mAX#9TA3YkdDSboyM@_z z=HLB48B{=DT=#P6+P`AHYv+bs-&VAF#k9-Mxqm!*&AsREJARq!uiW3{|8?ADw@bMG z?>lJ!h5khC&DH&-tv74s-P+~v|2NdO z`xpK=dcNZEk@A{9KPBrdYn!uwP7Mh$zkK126i447hZ)e4Y6e+&=wTw?| z)$E;-A!l1ptN!_OyL8{*heGi+#q<34+Z>w_ALDxgUgoyx4sI$BWIELAKld`@=K8rtlf3#CjH{gTg1L zr~iEO`g4%Z&uqDLeUU=j{gXCzxxJFQvSmx@LZQ?9<*W}eNGad4&R_g)hih~-|Jk*% zS4>x}T$QD)UjmUeW9ckL|M+TtDVy<<+e(Ywb}9TX~@c7~n0nw|RO zY50Wr0N=n&S=DUKbl$K)wQER7lt*X*m zExlq@=8{#*JmsWktz4Nc_x+=nf`HA!6X$nbD$bYw+N&is%Q_?P?GoR+y}S0hXU;RZ zcmD1Flb|`aiMI}ZUzGRWap}8dzIRQV{6b#&g}eoAeR*B6OD3wLg9 zUN-Gp;M;4Ut$!{5J}}dA2tN1c|0~!Ipj#O5rgYPfjR9*P; z)k5dX#(#Y76n2;OM*K4s1NkhFN8zmQ$sZTLEO@!6b=l_W>)yrfs?NK7w|MrvXpjd} zE?(9BJMYyL_MFmc@mww5xp$M38EXGu4&C?b+au@u=Xb}Q`*&D=bM5!tH9tP)uedVz zRP(9j@pB%(Ew7h4*#9I}|Nrglmo8pB8?9dd;N9JW?EB&)Vh%^Y|7Y=Pj(pu8X=mqK zfwwcaM(z9ePH28jVOZtbC2RWp?d+@HEB+6-YO1^E$E)dY?)B8a#iV+iKa`_|sZaKi-@!UL0p%zOZBa)A=Xc<^M1H^XAv@_n-duhu@s{ zTkm-M->zA=rtSZ_v+m#5Sw%H>%ir9VU$620`<-29cgz2CdiRgtvi9Ax+Uq(hUran# zU%j;OWl+!jb?>4}zJJl``Cg$4ItXLQ^Sg0YyQ?mi+?(X1;M@PFMu%s?Mh6Lpd~YP4Dvla}2v$mlfymE?D<2?hDVM8H?n5qVAf$+8e$7-Gn)nQ=X@@ zJ(8T@>~u?T&0M3IYvkA1WTdaDoVnmcOp{V^d28QYz-`JC%BBPQsl%=0+wax2F7jIX(N&d+vKWTYLiItiPVjU&C|b z(}m*ISLPmBDkBwI{W2}l^!$0ABiaSpA2Zu$u95dSw@$eJbjpoc)k5k0rS+Bj?N_&{ ziT<}eIr&r9vB35J%f6{iPG?`3H@$A3T;1%GQQuG1{+6C`_h*_du#4}kW#31Kl?VwaHFT1Ql9+eboPy9m!%J}2vudN z@+dSqd?>%DYV#uLRG%NTTkrhu1cTK3{}Vtd+MuNIZ-s<|{hu1q;M*Z@VmAH!vDtX> zz1thU>OPZl4~`03Zxg`J$NTZIeq~8n-@a|P%YPMqj5+^`cfIEAtgTT`-W%>0yOROCE?@V5&ulk8Z1vLJ&&`~jqqe=T6AwSn`~B|h#>U-WzTDZDe}8v5`^#6a zQVUvcD!o;YtuHUvZ*D$({o;)!&*UfX)m$%=%P`k2{J@o+id`F@N=`Vu>g)P@<#x)S zEACZ1uV%3O{YmDt*zr5*4153H>z{FJ*`4$qj5Qz6vZhJ8Ub=nTJvCJL|BN@jb&jG8 z&dyO@r={Kg>Qq<%-f^}1`M$>`-|sy0yZ@K%!G#Ia-h5sENOVVN<^RL}b;;`rP43zT zUAz2r^-`Y;pPyg4dg=E!aiJ

tQ-SKwLj(N)4BxdU{Dz`@I>Dx@47C+>V>_d!vA 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

RgtPKe%m)b6B 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 A>;M1& diff --git a/public/assets/wizard/fullexample.wallet.png b/public/assets/wizard/fullexample.wallet.png deleted file mode 100644 index 328e7917a9426bd7214472c20080c2a3d841d685..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31033 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 diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index 762aa9c18be3eb9de5cb254443672303d7c75540..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1150 zcmZQzU}Ruq5D);-3Je)63=Con3=A3!3=9Gc3=9ek5OD?&U}0bo=7wMp7a3oDW_jr9 zGxIc%*wt625?7yD&OGzXnCsee%hIdQEWTcQZW(v=nZ=K5&n%2UYS8i3rxt!!pIJV; z`pja@)#sLVSD#s&y!y;W?%Gp}@T<=(Ufq0VEOPak#oz1CEkI5}*AC`ieQp_g^_j*0 ztIsU9UVUaU9c0dx=T@drv7)QbEU#RBYTgJ|jD@)R)Y1^D7GwrGeth+r#k;G|EWVt- z?*IxK3={tU4`sgk%;Gg3GazO@H!sG}3>CQc*jyD9PI%3DZm|)n986t%W|4CBxy7Vw z&n)_`KC|e#`pjYu0sSk$8llA9cgFlzpIIEf`pn|Y)#v8Nu0FFk0;QkhFy{5I4c}{=f3nG7?D}oC!&H=I_zX zxbobh^XfB;e^BvvS07sn!8M^Vu01u6fU1Mp_wVWp3-hbbEUrVvFQaL};9h-ZQFQg0 z#b=QEE6*$nK?<%uv-o)RnZ?Vi&nzc^_=ND|$CjKR3{!XYnZ;$0c~_rV?1PDsLSKDm zaUZ1r+B3@lQuM*pg2M3HGmE3>`R@cf1H%D!28IV9%*?>>fSG~e12Y3d0~8;Cih;%1 R85n-JGcf!)&cN^=iUCrRrvCr{ diff --git a/public/fonts/BPmono/BPmono.ttf b/public/fonts/BPmono/BPmono.ttf deleted file mode 100644 index 8b2ada923fb1b6138f882e51ca41554b401a0a91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58648 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

@C|jPbM4O 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 z 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

-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

0hR*xIcRN^mN4LtdkPL9&7E^Ph2Rq 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 diff --git a/public/fonts/MuseoSans/MuseoSans_500-webfont.woff2 b/public/fonts/MuseoSans/MuseoSans_500-webfont.woff2 deleted file mode 100644 index c83e38a0a55f97a8fada4981f733f4c3b4b74a8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23588 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 h!+^zR2cW2&( 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 diff --git a/public/fonts/MuseoSans/MuseoSans_700-webfont.woff b/public/fonts/MuseoSans/MuseoSans_700-webfont.woff deleted file mode 100644 index e4d2440693ddcbf9b2ab0677e09e937bedb16e2e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31928 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 WaTWb!^A``YVPIg4X^`8>zyJW%qd>6$ diff --git a/public/fonts/MuseoSans/MuseoSans_700-webfont.woff2 b/public/fonts/MuseoSans/MuseoSans_700-webfont.woff2 deleted file mode 100644 index 1fda725348c43de9224657485689aa0406db5861..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24092 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 diff --git a/public/fonts/Rubik/Rubik-Bold.otf b/public/fonts/Rubik/Rubik-Bold.otf deleted file mode 100644 index 4d7fc6370121dc67905f2e24de12cd608cf9dc1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101792 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

pBn(!mPU>Y}Ny;XIL+>9%HRzy}^2qJ%#lNNEU)w z6CgB*L}7nmeFYZ##`=eii9LmlgFS_fk3EG=1SHCy!Y0M0z@`RqGnlOdVI$iGQi;MGHiBiE~st*iNfpxv!Uvd;|0WK^8(4Tr?3UEr?7=V z*xZP6!tTS7>H#1#P$Y6gD~3<1e=|O?H@=CjJd!h zBtIar*>155z-7eXtQ2+`BsL3zjp9dKZbotsdkVV}LN|hqY%k33Aay9>NMXya0g{Da zHl*-m*Mo{(VNYQGP}A!n{aPHbiT{~s*Q^#30N|AW%IodiG2f!eGdow36l6LB=!d+_BRL{Y{wrE3Bhbk5E?|Xaezn&X5)j> zBA^xtL@yhNt%k(bL1G&ru`Q6;c1Ua&B(@h4I{?B4*~k_KBH8b-#jxLD%V595mc*6^ zW|ttbk;SpGtJv?bH9*Y)vD=W?JxFY1HIty?GuW1}tztdHHjixs8;HFPiM|zjcFk1$Rt%QROQxD2P8c;QQ>?Z71V73E0i0y{N_CaC?A+aNn*l|eg6eM;Q61xD2 zT?S>>u-{>C0<-V1gV-GiHro{ho4pT-Jq601#eRo<0W|%9*vpXEYmnHRkk~t*?0xKa z*pEQX0kKaZu`eL8uR+*Dt&M=$F8GJsYQWJ(VB7+(!_%1C85kMUpzLx6Mn**_I~6QG z8BEqQFft<7uBKo$$Tj>rhzOKyMr(06fa+3ci=z*$#sO@v1C$N2*MYg2fsx@iR0L#u z7FbOdSR@-H%UA+pV`&|HfQWQvIRq64nI8ofcLR%00gJnVNu*X1<1B~>n6w6y*&tm^y`XjzV>U=H(?Jl)xDz4^ zc272x4RVhfn7s^4W`o_6%?yh1Y-W%fklR6T!D{9+gLFlK*^qW3xGl*D4s*s3h&Wgc zq+RI-au1^o*bQA^SsN$`ifd5ggpsF?XBh)40}sO{22BPgW7je(iD2Q1FW%)!9IJcEIm zc@kJX6LS><6LSND1=A0vf6Oe*T&yn40?cB}GR#V>F3cLtddw!wR;(_}4$N-MCd@vp zF3ds95zKL5*%an1<^tw2Ru|?P<|gJ2<~~*z<|)jxm=}O$mod*`UIS)rV&1{L56n8k ze2V!3^EFl%<~z)fm|rlzV|8Kv!u*ScfrX9Lg@uPjh(!XVjzx||g++_SfYpV?jKzk< z2`uKp;>QvKVlg|gM6o1*SS)EQIV?qBRs~BP^93-gg{6yS0?Ra37nV6Ji&$2G#n!QG zVc7*{9bh@eat6%0#C(e72FpEG7nUb1uUI~?d}H~;%EZdS$_JK(iy>sOu@Iq#jYVuo zvWl=uu_~~tp@bwn{8)8ZjaV&M?O0uy@rNHG)UbsWwh$sYT$tf;PD*`(TyhUopA)k_ zf%Y>^z`0qF!GVF1(FEK}kpPj5iXd@@?cn~5B1nWm1Vl1IZawJ&i%Wq-7{ov%BWTwU zBg1TvID-mU#06vmqYFrc(FG*JFbO2`|1C&_VKP|cIG6K zGE4xAfOZuyGPHt4Zh=G?9YJhH3ozROq@FPxED{bDkpYVsGJIuVWE2Op9T~oZ*dSR3 za0oMk_HZ#Wihy-NVnG3P zYUYDP{{I1yOqW0;V=q{?8!TG{5@9$C5@FB)i7=c4i7+yONQTQ`aj;zsH^CxtU=m#R zvu$C!z`)4B!(a#Ar3FeCpzs8x1}_E%h5!ZzhA;*O1`r>_2H_YupNYYM!GM&!^*`so z3Iiis3R?r%&MXE{7cvgx4`JFo5K@FfcIeVqjnZ?dk-r zMFQP*aEXC|;RY0g;t{l_47B3{bjAs2Cgcx;D8mwlRSX*#HZW{s*u$`g;Sj?KhI0&8 z7;Z5qxflj)eCfY5Xq4c89n)I|#{br!af5#!K;(a3Fqy^l z7woo242=I(K_d+Rc|f)M{~A!c>OUK(F8|L1BLCe5k^ecsqz0$H2=J#1z87#}vjC&LGGX#T3IJ%oGPc zC%lho5`zTOGNx4wvP|2UwlOF%?P1!(pbWbAi^-nJiOHGCg~@}-o5_dCmnn@YohgGU ziz%BahbfP#fT@tFh^d&VgsGINjH!aD3N(Adw4P}L(`KeE3``76j6WEEFfcIwVq#*%$&SgM;VhFAlMBOnCO0NGhD%HyOdbrE znY@_%7_Kk{F$FQ)WC~#lVYtN<#uUbIn< zFfr6K>}6nJ*w4tuV9&tBz{_OE+&Rcv5av4dU30d^HH*j1ny3}fI2yGj7; zDnYQTgut#6X3Ao!0^ixj3UUX?6-@gW7#TPie=z=H{KNQ{@gL)Va5ykBFf!FKFfp)$ zZ(L(w6krr$U}6+ylw)88-?hfisK%(zAjoLMXu=@PXwGQCAO}_rx9S($q#fsJ>vn!dkhSWj~L%G$TNOq{LG-s_?7V+sGMRD1>1<4 zX8oWx5{W_q8#A?`vacI?Z&0fs5%D(`^O`@QrR#3``7i;JfJ< zz##>>n~oWLHytndZaO}Ac&RZ6g72mi0^dz148EIA1bjE082D~Faq!)AQjDOx>Eyt7 z)2V^)rZWQHO=kkWo6Zb;H=P6cZaPOs(A{*-;JfKu7(sW_xq|Pea|7Q^=MKJ`&I5cm zoj3SyIzRB;bV1;|>4F)U!0CXUfdPE4A3OM7KW^~7eth72{RF`G`U!&X^^*eM>jzp@ zsLdb?zSmD4e6ODx_+CGC1}g?T1`Y7Ne!Ad${S3kP`q?so?)7s4-|OcFzSqwke6OEB z_+Gz2@V$OvpqtasLijWT7t>j$8w}jw8}Y=!;Vc2lAK?4+7(g`#(`lw#Os|+;GreJY z%k+-vJ<|uKk4#@cx8;HF)C1j@#)4uh=!QKm@J)K63``8nm~sqEptEI}>=`&gDUyK| zoWEE>DliNnwMlkq15GvhDDUkt2_zZrisa4`O1{KLS-_?Pi7 z0~_N%#(xZajQ<(`Gq8X(F>o?5GBGl+GdVFiF-U^lCjfSz0N8y@OukIM43gk-TmtM? zUa(uanR1zO83dW~nerI~!EO}*yOoEjn5me75$skTrc$O-21c-31(?d2${B>1Dw!%7 zgqYSdt!EHn+Q77dL6~VX(`E)SrY%fc7{tM)l_&!v6X^B_Mo<$1Tw;N4He?37h7oK! z6WClP21dpo3|!EC1Z8{KVi06dW>9BfVbEaEW?*H|VbEa^ zV$fwUWng76V=!mnVX$DZWME^kVz6gmXK-L}V_;=)X9#5AU9U}X5eN>VaQ|PVaR95XAlLaVqS()hEfJGhBAgK z20n&rhB^j*&`E;ey#;z;7lTg76J}rnyNn6!4n_udh9CweupLZb)0x4hvw%%!1)DAo zHk}P@x&hd9cChKj4D}3M3}y`74BZSi3_T1J8Tc6{F-&6MV3^D>nL(Oi3d2+e4u)wA z^BMRV7BDPe;AB|Hu#|y|VHv{;1{;Qz44WBj8MZKNVQ^yD&ai{QhG8eeP6m61T@3pf z>=+I(9A~g+IKgn4fuG?D!xaX5hN}!$8EhD?FL5$%aBO`+YxW?sVWM^b& zkZ0szs6CVK`+ zCI==51`BY$Z~><#BXDXmV)A72WKaaBDIsv~Z~^BIL#ANJ*~*ZcSRi+?Fhw(HGQ~2* zGH5f!GsQFLg3}-*2l0V(5H~o_TY~cuHxnr5TY__w5jZyqfYZAmI5!D^Q@tQK%^HDo z6Aw85TY>Ww54aSt0=ENH!1>D+oWC5w`AZ6%zm%A^GHqp01?Mtr1||j#hE9eq23Bx< zGlJur2^`*-^&IXQkesHXFF|1_R#=y?7ona^Vr0v}d zoZz-F3&UQ9y$qZT`x*8#aDwBWi{S*rB?fMW%M6zpSQ)N>X2QU6&kv4!9&p_Ag5zEU z9QUFOj~SjY@PS)fVhqn1o-y!&(*Zv?9f*U|fdDuiNPyFUAUGWeF)}eSF|aW*Gcq%< zGqNzUFmN)mGO{wTGqN$VF>o?4G5CUWk0dyc8-nwVApVfl(A~*y!!6C>34nZYw z2&#hfjXF5r=z{Z&DmdSmg7b|AIP6Tp`9>3*Z%o1YMim@(ir}y_1&5s$IP6rxVaEr~ zH|*f>G6IK}2sperz~LnW4lhn{c*%kD4GTEm@PqS>05}J5gL426I0qPmbASRk2gowH zGPyG7fb)SYI3Eas^8p(;A1HwHfiyTD@G^xmg)&Gmg@fDtpjN9IIK3-_)4K{dy(@#$ zy9zkH%YxIpI5@qtg44S=IK8ui)4MDFM-3_{@aCdLrV5W*k?PIY478bJu0_8>I^GdS%DgVP=pIPGzR(;hoG?JSinAG2b;r;&Nl=V}?kZ*luag6{3fQ1w56Z!; zU~?eh#0)kE7DAvCWSBr>=3oq}>5=W^1gm8MhY>3{=dgkO2C<(5>>rRT1Q;|y?RL-# z4e-uIb_RA(KNGZTg@K)c8MNOJoP0oO2gG1!U}b<{P?}_irc6-l1f&zB0;GqD!JJWw zQ3`tFG!wX0&jfDOi!M<}f8ZsI(FfpbvW-u^=`#!9U1&k#O%#5Xsr3@^LWsKzv z%;0uAD`O>N6$3M4HDfinXH>_)&)CG+#=s12!!t8>GIlbsFm^F^F)%asF!nI8GWId{ zGq5pEWSq#r&Nzv25(6{i6vio_TO^q57;HJfOEYZIM>U9bG-mK z*YkmMy(Bo-OM!E}G*dKFG=ng>_7efuexl&oj|O=K=*i zI5t2lGMT`!2#QG#1`hBY$)J6y;4>V->Od@zUKw!MGl4@La)&n)IHZ}ty(MmN=rV%C zl?fc8Jm9e80hgxy;IL!?haxjL6q&)H2x(#Sfy0jj9Dc0e@M8mqA3HR(K<#W!a0qdN zOG;*N*a(8dh8G+*g5a>>1&0kYv_#|pmwO;Dz|tegCm=o~^$CEO3=E*%a^SH!P^kzK z0-dx3D-}U}7zTv_C?A2s5;X1$5ocjw1)pNh2F{V77CWe%RAl60aBkoP#|Q^FH*kXEg&CY1IKjDr1DqQ;!EwX^jw2RuZr}vx22OB%F@tjhCpgwP zz_G>(&Ig>}xC7<+0}STi`TH_?Ur%@d@J-27bn; zj87Rj8J{ygXAoq3!T5rKh4CfhO9m0fSB$S1_!(a_f_4GEVSK|N!1$K&9Rnxhd&c(+ zEQ}u+LAMcqV*JD)&iI+}GlKx*SH`al0*v1nzk%+vV6tO?wL3t4Q9f{f;bH=fka2;_ z8!>Qs1IaI};M~CoEkMV$7R}eWy26hHs24MzC26+Yz20aE7P`k?6F+_nu&)45afx#ol-&cVl zi2lCgzkdMu5o#Fqr`+3&3Orm~2Q+ zEKX(Y0F!-SatfH71tu4O$z{pOxdn`Cz~m+{xdTk@1CvL<4{7$z~nkGxdlw_0+R>8KeGP4zzCKWUDfk_cCDFr4Kz@!?O)G014C}uVS zlNMmo4otd$NiQ%7n%M!>9-tb6SelVR5;MzMm8RZI2&lD(}e-ls}TXsd@(*_U}E|TX1xTnnAr3fc$l=9w3&36beZ&+ z^qCBp44I6WjF}>sBEezF1lp~_z{sWmHc<*HCc!4e019nTPL*O{Wa9$0T-ZSEW+v7< z3_MH++vkRdDRTs39}c9vsE@B;%Q3uulQY9Grr26mP; zNDy>BJTn6u%Op75!@$S_IkyiSLM%%d*jTFI5ae@a23D3NDC}WiWa&Y;ilvN!mBj}N z%fMm4!eR!72@H%ZpcQ;Dm-sNSuqc5cXpI>&12YRB3m=OG10xG)ULK}Oje(i@5Az=u zHLzJs%&%BP7#LYVr65cN3j-7LEf!F@!py+P`~{3b4g$NL`56NvGw99&klZ>3MrP1D zu65uPCJjzujLfqb7@1F@h;%S8G4EsEfg)DIz|6dgc@^^#6wx>a7Un5n*oPwS#=y#4 z1BGQMGCB-w%t>$C^kX4O@;x~cdKGxWV*({$g}}$mka|V(+SWVDtHB*2)GTS z!3gSuEnry52x=QHVA#b7>YFWKWMyDtSjh;Q2ie8I$TWk2ok4^_jzNRLh{1-zjR8~| zg2t#oGa8_MhB^$O`2r9NG+Q76DmfTB8JHNRfms_Em>9NzS(jmAOfC%27BcA8W(G#4 z2ym^+zyNW#4OkRZQ-DMmnOwlGW@KPt+QY!iaDvH$fr-hCL6s?rDViyUDHb&U51q>| zXR2VTWU69X#HOvl$iLKSQwa@l$rRMSQ(g^RG0*q*ch0ZRG9>s z*cq6a)R=^rI2f3j)R}~tI2o9kG?+w~xEPq3G?_%1xEWZO0+^DR5}4u`SeOEtl9>{j z;u#njry)vr20I2OCQ#~RVb}*|F)=nU@G|i*@iOr-@iPf92{H*W2{VZ>i87fmB{3y4 zFfo=f2!cWdgqfI_n3-6ZSee+E*qJz(IGMPZxS0}|5}E2iBb$sz8Bc=7v7l==Kx;I( zz~fxIKqS~!Mg}X8N`_d5dtfm?FlhqP#l*uT%D@1&6I4?$Gchr7GcYijFqtrLf$U)5 z2CD_x#K-{J&jT9y(`ImIsApISNfn^+J2<0=@8RlrXx&8 znT|0XXF9=jlIaxFX{IwwKf!LZV%PzwXAsAe+L#a3|2+#nsJ!bzmR^!_OTI42)CU1N?*g zlwK}nVEFCBz)=6kJvh{9Lf)YT42;zt3=F&`{=xc2#eRo3Ffi~kFfcGAB-*g&jg~+Fz_?wG58UMBN_ad z_Ar=Y;F}D7Og9-+nQk)pF={jTF)f48jM@xbjN1R-FlzsQ2NGx0{(p~A`~MF{QwA+Y z?f*ZSdKl!vxPrlt34~o3{FueE1RrHxmeNXE0@6%V5Sd znZb`~8iOCxb_Nrsg$#ZuxQRi92^)@O5NAqbkYNJRAbgU+gNazYh(U(gfI$r%GfiU< zVw%Aqj)4mq)R~a6HG={Z5tzB1K>>uBQW>0?tQmB%;#3A*CNBnUCJ+t6jttsNgs>BX z4&yuqL8c4_T?|~x;LKF|{~uE+gEJ!sgB>FWgA)Y*|HH`f{|+O^|5uD0|IaeXgXI2y zU=(4H1B;3OzrvWpz|WZS{~wbYgEJVbGdMAFGB|^AD45n_Ok;3nG-Z%rZews_D!_vS z7<8HN;Q|I8CJ+u_&}H7hpvRQP;0(pOj0+i@pxB&oA%i-T2!kqC404M-gAn6d1_8!R z3?huv7z99Urd$SFqOl!=B(n*FJUV7FVGv`oW01nY!VDTr$oLI|AoCUmLFPLQf=sCl zf=s;(f{d9A+Kj0Tdf>95gTW7+@8uc%m|*xNgA{V!W?^HHXKG_mWBS412gmam{Fp%a z9)lD(uYvM2C{KZCP<{cGBcODj&A`o+&A`oE!(a+dze^a5nZ7dkF`s4dV}1cH1N@lE z8T^F-Wm+Gx&k?)C>kArdbSn&~o4}INyI`5NCeG;K#I*!G-A=gE-Sp z265)e407Q7yplnNNt=O*sfEFhMFHyOeGGn}GK<-QK^$!FQU*T|4KCxl83dSSFbFX1 zWiV#i$Y9L0gdq@Q7udfbcS6fgaM=hd?=~@*f#s0H0_0~9hWZoaS0<2Nc?Lg_e?Vmh zC?A9KV<>|WlRJYG<6Z=2Dq#>q&QHt{45Ccp4C+kz3{G%t&EUiY!qE(pO#7kYptPIJ z-~>*Spu8)@z{h08APL657<9qu!-+wasg}WsS(Cwu*@?l438Y>KO!G1QWpHA)WRPTb zWN-qfU3&&YCVK{5NS^%vno<1!6{c26Lto1~w)o22o~91~zcMab=KX-249z zlMI6sa~9Oikqk~u2@Fo)bk)h=#Po;331mOGT+w3SX9D3+234jI232tW=VWjO``3a& z6&ya+(DDdUzG#5uki!DxXAp+@6GS^PsDi>17L4Z^M3}M}beYN+RGE4hHCdBmz?Snyw+ z={*B4(|-nDW*-I_rk4!7%*G6oOb;1&nL%Zw1%nK;5Q7NgUIu-}-wYCrUJQne^$gyO zLJand91NOF%NcAKc^K>&Ss1LDHZ$lm@-WyinJ~yR=`qML&SfxQc*bDBD92#T_=iD~ z=^2A5!#f5=hIb6ojJ*sZjJ*t!j7bd6j7bbqjF}8ZjF}7)aQUSSa*RtE)EP?{+!;$4 zG#G0cEEsDU)L`;3nyHatCsQNC3Z|b7_Dt3c_KXi1?3p4M?3o!DoS2*#oETp)I5DL& zs4%57STM#is4&JdSTG)C&}7`rpvky}!GPf}gC@f_1_MTR22G{{1}&xn1{=mS22g!x z!|A!8eZ4Z~9g1{h{?V$f%bWUyjtW>8`J!=T2vpMjgHi$Q~F2LnI2e%#HV z2XCMBGRTAdp2ncY)Xw0<mq{Lv(WWnIXq|9K+_=CZL@dtw<* zlOBT;lP-f3lO2N{a|(kA;}!-%rr8WKOpOfgOim1%OeYycnYhNp znKBsE!REU#m@+9s&DUkHWin=PWzu7CX0l{ZV|HUOVLHcP#N@&t!{p7N#%#!70K!c5 z3_6Vc4C)L&8C)3tF}O1xVUTBh$6&%#!(hg;l);_x0D}dy9fJu2!@mg(4F8=O82(*= zVs8e9f5lL|k%8gA5Cg-%eg=krvltluYcVkV=Vf5{&&t5?PmqD(Ul9Yte@6y}e~TdU z|Ew7p{^dgPDyZH@28Mra3=IEO;d*B|4U=|92$8Z1TNo<>4fZ3^I&iaCr{zCI&VJT_~HGL7c%D%4T8UVeo>oSs82?VCJwf@Gwk* zigPdsFwBFpIT?f))h21eGPNV5iu>OzFU zYy}8AEVZaOGe1uOqBI~_!N35*%*ZcE&d)1TFw`^9v#_wvP0UWsFGz9|8>!s)Cr{|>VCFker zr{(9B6eCGxfXzvR7y?oel95@g;Fh0Pq7a;)R#Ki=l&X+ftdNtLoSIjhnxasemy%kf zP?C|V5bWur;9roM2T|+;QJ|v$^Pr)gp`HTRFsNRTF^Oe~nK_9`IjIWenI#zti3)Cx zfeMKwRtiuT6(<*E7L*k06=&w?C2GHkiwA3P|A?Y5X6wmkj_xbki(G3P{d%wpvPdqV8CF+V9gN9;LQ-u;KyK% zq*s>#S#KCaD%k8yhJ1!Ru=^0Y0~mrC6rg4yL_w}8VMqq6FJn+(Fa+DD$6&!=!C=jh z%aF*B&5+8F&rrgU#-PWL!;s041a^}tgC2t!g9(E2U!kEID?3ntPoS8D1Jed3# ze=z=J{Kfd2@eku)#(#|enHZQDnVgt>nWi#LVw%F_$+Vtfq{XQfs;XyL6X6Z!J8q2p@E@=p^2fHp@X5Fp`T$o!(4`046_+lGpuJ=%dn2& zIKxSXvka#h&M;hJc){?7;T6McrkzaNm>QWnnKm&wGHqmd$h3uNGt*Y4yG)OmCNpp| z_%qF6n!z-kX&O@x(_*GYObeLiGcYjCWn^dMU|?YAWVpcO#pK2`n`t3aE7MG-c}%%X zc}y-$^$ctbTnvE>K@69f(wWkjikOO-N|;KSCNiyK_`^`iWWvgA4-`gDitQgD!(UxB&BD@M2(K@BtTZnGCC#9x}aTdd75*=`qs_rUy(< znVvJEXgd{ETt@SS(dV_X4%NHo8=J88J3$Y_gP-D{A877Rb}1I zx`%Zi>mk;q?F{8w3R%R5|mO^PyJ^4ZT8#dx7}~Y-!8ws z|NjT4P+o9>yMQr;aT4PnCJC_Xk1^d~W?*Jx=3-W3Hf3R85nvHxk!CSqF=Mf2Nn*)j zDPozxvVdh3%Q}{AEC*Olvz%wS!}5sb9jg?p3hM^eoviy<53(L-y}qCf+(&}Q9bpW@we7*i{Ey?9ez9icKiRI={Hj` z*asluGl=+C2O5nAu|W9$lK(S6H1YVa)nCg$`~RB$HT?Ynrt47*i1kSBQRySIhaVp9 zdbsQ1?S~5<9)5W5;f;rPA6|NR>EWq|%N|aC*!$q|gZmE_Jecud0t3T?iU;iv>K+t5 z2z+47z;NdY$P6S58YyRB*uij(v54sl0|T=LvmQv6*?`%I*@oGL*#pe;U`}H$V6I?Z zz`Tli6Z0?TKg|DFSXks(G+4A)3|OpK>{uLFLRg|$GFa+ZT0lBrn5BxPj-`X8i-Ccq zi=_`HN*v9Sf~<}uih+S8iY11ngr$b1hNX_B0aVHj)v^fSz5m<}#6*E6gJmza|ojx(HPILUCD;S$3crily}7~U|v0F|2zzZkAE z{9#~cXk}n#Xk_4EXk*}K=w%RMn7|;+Fp)ukp^rg~VG4sd!&C+ZhItH93^N$y80Ii2 zGR$X?W|+yK%CMM0g<%ncI>S;1HHIY&S_~@~G#QpNm@;f;FlN}upvSO=!GvKGgCWBz z1|5bC4CV~m7%UlfFzjToX4uVO%dnThhG7qb9m75bdxrfCP7H?_To{frI5Qk!ILzS6 zaE!r^;XH#U!zl(|hI61&m?50u216vnErtk&n+(wmcNpRr?lZ(P++&DgxXX~l@RT8u z;R!-aJpXoT$VWy*u zf{a3pmW;fNhKvS`#*8M6ri^-w`iy3bl8oYv%8Xi!oQzzI+>AVo{EPyO!i*w}qKsmU z5{y!e(u^{UvW#+!@{9_Mii}E(DvYX(>WpfP8jPBZI*huE+Kfhw=8P7MDU7L%X^iQN zS&Z3?d5rmt1&oD^#f+tlWsK#F6^xaPRgBe)HH@{4^^6USO^l6<&5SLK?Tj6aZH&E) zlNcv6<}l_mPGQVo>|yL?>|^X_oWR)0*u^-Jv4pXRv5v8o(TZ^@qc!6+MjOWIjJAw3 z82K188SNNnGTJlFVsv1f&FIKDhtY{~E~7K!JVqDB`HZfN3mDxP7czPCY z!x=X*Mlfz>jAY!x7{$1iF`983V+`YV##qK3jB$)R8RHpuF(xqXW=v$l1t<737rj87S#F+OK}!T6H#72|8hH;iu?-!Z;t{J{8;@e|``#xIOt z8NV@pXJCeuRR7O`<{}|%WRj7Ag^7WYk&zdgt(q)w~lH`}M5D?rW%fN7Okr0y<69XdyI|CnsD1!`x5`zYVF@r6GGlMTf2tzbO zB11YuE<*)F9XK1$WLV0uhG8?qPKLt_#~Cg&++%pc@QUFB!xu&dMkYoMMs7xNMkPi~ zMl(hmMi0gS#xTZ2#$3i?#&X6w#ummd#tDpb85c3GWL(ddYq0*353qKFmSPam*>q`OM|aHOw8% zJ3GvZ}CZvl_8lvO2K3v-+`yvc|9`vu3dtvR1Ixv$nDJvQA;0&ANzn zCF=&(?X3G)kFuU&z07)x^&#sE*7vO6SpTxIuyL~qu}QKiu&J}@v6-^jusO4Nu?4b4 zu*I{bvE{OruvN1)v30UdV4Kc1k8LU28n(@ByVwr0onSl9c8%>W+Y`3eY@gVEvNN!= zv-7cwvdge5vum*%vRkm*v%9hTvWKuovnR1|fdca4>UlaR_oqaL9A0ap-cGa9DFVad>hBaD;QjaintO za1?V?aWrytaP)Ib`YIp;dgt(-TXB1FhjXWJ7jrjq_jAwVUd_FW`vmtz z?wi~XxnFXB=KjOO%EQki$)m)h$z#A{&SS^p%HzWm%oD|v$dkd7&r`-z%hSTs%`=H- zCeH$%Q_fcyoChdHZ=6@vh|E!n>dM z6z^T$_k4_eB7D+(N_?7p+I&WQW_-4ME_~j6L41*X349rRC4BXK9efk`X7J7DTfw)U zZx`P|z7u>G`EK*Q;QPe)m!FqkieHo8fZvkef#01!fIpl+jz670kH3_^hQFD=hkr8v zEdGW3EBM#*Z{t72e}VrF|117)0!#vY0#X8M0ww|u0`3CA0`UUb0!0Fq0u2J~0(}Bg z1?C7W7FZ>)QDBF_et}~GX9aEu+!uH(@LAxOppu}TV^UFSS*l}hVscS_o@0J`eqL&} zqibSvX-TRxgiKB>%FlC7&MZnU%}vWmt#D4sFG);JPR%QE1xvXi_z>-`5W`%Oi}Djo z+`;C%fK|F93~>budmscn!2+Iev)q&Ob8{0R_IN@J^n@7iS(2HPlIjju>5-IJy2$rP}%RItue2pg^<72>W$h+7jOyi^D;9pRXCq`*jrYtBeY zEJ_C(n}JZ82^PrA%7mDe2{9`Z917sjGd9mcsLn<*I6J*4H8n3MF)t-EIR{BR2khn? zus3s3@=Nl-th_|fBB7%Ef{fHWu!1}!E%{(aq~@jPBS%X<#7X&xG*S#UstByV2uXht zSiBhF&SGdX$;r=4FD^z>S(21kR07ry_MD+pDcI^#WP3{?VNePQ15ny1g}9^~Y)v`B znsRU?m&4LWB|@eWEK>y!`zo;3wD`2N__X*;5Rn6NfQg|YgffCq#t_N?Oj$xGLlZF1 z04iq+;X&ohAv~xlW?-J7C4_Q>P!?dyzy(4%gDFEN2n7)|gbKPs1l_=t5yVU*h($&a z2O2<>7(pCi1aX-W#AQYhw-`YjVFa<(2x5^D#4Sb;i;N%+G=NxS05Qw}qQn3qX9RJX z0mKFah?xcuGYueS8bIxXItgN!8PuH+$_!$rC4^@VG0YsovxM+0Ax2w5RYDwS39-l# zqQnuR!4VP?j$oChP`^7uY4lxrSfF@?C=6yj=Ah$Bp0z!7Ka z0`{~iB+Hn(f>V#F3)s1)u3#sbLh_NR3&cr~JZ1{GK$;}Cz zo!p$jdCbiToEzPoz?sX<37n7IoQy$%<>my=KyFUp{NUyU&N*&Q#vtFiIT=GN0%sC8 zCvfg?a{{M%Hz#l=adR?(I3An>+?>Ek-^~e}^xd3H%&St1^7T?u^YU{u^Abz)i%K$z zQd3a`%2DLg@=J@5rStPpR2Qd~rRE{ar)8F*D#)xrmIhm&SDKqz1hPC8G?|PnotKGf zd`Wq}9$YoZYB&etZa5cgErJJfG@J)8*!+^5G?2|88sr=h zU7T5=2cjX40I|UKgBc*JK@5nkAQr?95DRQPh*6rCX=GplO0q@<7NE>zWMBa*fQ$?* zK-tyEzyg$jjSMV6In2nw0#qs)8CZaFn2~`6D1r?PzdPHI{Sm5{omyj!(^nGczhd?N+d8dTC}(PHJvG zlAqy1U=u+O0*Mr7=B4Lgia^{2QUtQm6jE-QI)MVzz|_seIS3?d;Ar4lT9gk?6Hbs+ z0B&~}88|^A0Nm0rGBSiD21nPt{F2nd(!`wfqSVBa)FLoDv7n$RzXHt6Ni8l0Gcxni zGV?M^Dl_v+QqzkPL5)x&BLlPI(%js{lFa-(u;oss1&Ku^nTa_mnQ3W7i7A=Mi8%#D z`6;EzB?UR9#o%B7n+9g(mgbaX7UWbyIGK4+1u2LU~FIkb{O1hFb`@!m<_ib z%!9}{Be9*3*hWZfMkZR7;5zKxB{5z+=G2(}T#5Rg(+a5gtE z1?PPOQ%Hl<6r7R_Od$;gQ%Jki6kKK)m_iy6rcR&)Wnk(ADhUisA&m%Ah`pwermLy5 zIk?LN3d!V3uw~9hexW`-NTOgjLD%e%v_c5F{)f>EG|DQ@Ak9$3P{uHgVHU%AhRck+ zjDn1!jFOD9j9rYA8SgVGGPN_EVdi5NVs>KoU@m6fz{187#d4D6B5NFL1#2zq6xJE6 zD_PgF9$`JrdV%!{>krmHYzA!6Yzb_0*_N=aU|Y|2kL?jV2fGlvEqe%i1bYm70(%F0 zANv&W=-m?zDGmjWr5yJ-1vrH{7jYivyu#(i)xb5CYcbb$t~1=W+@;(#+|As(dDM9< zd8Y9E;|<_V=Plwb=dI?g=RM4Ooc98sHeVZG7vEgIlYC$J{_xxKck%c0FXF$$|4=|c zKukbNAVZ)+phloUpkH9Bz-)m-0`CNV3H%e}5abnf67&-c5)2oN6-*V(5-b*+BzRWv zlHe^N9w7rE6Cq0>FQIUuSfK`?cA?!u2ZZhly%tswRu$F~))zJvb`}m0P7uxzo-Djt zc%$%L;pf7yg};k1i|~jDi-?ODh}ep_h~$b?iPVd9iA)ulB{ENBsmMl=ts>V%9*cYw z`6}{XltYw9R7g}pR8G`N)K=70)K@e}G+s1WG)J^dv{|%Wv`2J>=sMB8q9;W!iQW>u zC;CYAh3H!`b}+<60r)g2C-JL>0Ha_ikFC2i#Le3icc3`DZX3$fcR1I zYvMP>?};e~?3SD;IZbkoV<3zcPVqYMq=@Bv+lh zlR6hSy8;*YBeuDdr%&pW-}Rl3_4{77UBCHQTY4wg&y#+{Hf_q3>Al_kU48PuTYpNj z&TMO(RxbUUk*&O;p|)NAck5qC)~=4O??$pyo2JQqkNQ4E^gHYKli%5XpJe4@Q|02e z;X3Ok`}^s4@9)QLxK0+y{yzTQ_4{40=pP>)S?;MOvfSSdxu*9{m?Hn+!2K}Rwkb0@ zr%JD9n>wL?%EXQdtrO+7-m}iEZSJj?4q>Zr?yRjnE87vx#XVJzi~DDj=q9$QGkPaX zmVa>I0Z8xk&Z*Lyko0Q4XPsHs)LSnd$X4IfSz9Nssm|Kg#Km1}$i+QVn~R%WOO~5W zPnP=}+k&az1G&Dle1G(v<@Y1jy8dbP^QF(REtocaZlC;j?w_KpJ$>E%JyO$~9>`WU zx7K#bTl|SI_`ZX6YDe>|GU-sZvgVq`c6r0!J1u@hvd-*mnph=m%+}D@R4?Dv)7~NV zo%^pSYh~Z``uWm)wcqWz{>m%LavQVNwzk%`%7>Nblt)N=ByD=$A>TExds)w7j;DQF zww#mRyShAVzI^S(iLEoGAG6JvK6Pf7{OJzY?~K1~rGKmGn*CO7lkY0)PU$HJg~d^} z=~H@V&X9lmo^|5HzKIj0rnL1p%B8S1)_1lw$(x0n?Ps0PT-Vzuox;}G*51_C-#VdH z{;fJ|?Tjg%)1|pZziZz)_v}jC(ce-_<$rT6s+_l0YR$4G`;O1gtynDAK4C(~BFidC%I{-*)g~ja3QvkLRL?*rreJojFtf4T@*e*&6FWo;3%1wyD0iQ92Fc*}m3^t@3Zw zS!-ub26?t|rX2TXwz-ogO`jtFqw%NQcTKJdy;9SgC)dd(vsJXT)HlihY5Xh4+R@(C z)+tp#rFn)NH~WmHd@k-wTvI1boI0U%LPwvx}y^`>{1OwAVJu|Capi$y#6C-OwSGuFmycBZ;kU zO4AHEt?vq=H@-8n{$^z76MeDg_=yV<+nh71TUzSnCmv({F7GV6#!U9NA6so#Q+;P` z^>0my+O8?}Go=r(&FY%FS$fsH^8AAGvaH1RIa6!o`&*m)nxvE1TI*ZudgN34wuHZx z<`%VQt8Q*?XqW#j`}^*1$?tbrr?$6Fsg|~8t8Z$o?~?E6Y42;1`yTlxwxNL4tDvqt zNjitEwz08RK1fk^JKJ~WU0=Sl?~(r=^dpM3Z&FYHgzpku-+7pS9NZxKoAbLR>${V4 zFW!*)F1<_EC4}p@7<*h-d_cO~Z@=#|StqqMO|O);Vryt>s&DIQ?{ATR`&*t>-@C#^ zQ|hCdFU8(e$6X?oL?I(c)pnzqiG2Knrg^x6#Ru<#8pI^`#S zzcpR*p#{mQa+?ammm5m|*7wm*sGHg}UH%5!qzQdf`sC-&U$XY7^tq+k zA@XJHzh%o=e+yJt1nWteUi0|QE%$xn_w%Ct>`!|4ZaFM{d0m*Dd^`J}yx#?mT%t$W z=6%nU-Su5gw)=Y)SIYz0@}`=qjs>#Z6}9z{zxT6&OY42#ow(}ce)n5&MW}OeyL0`? z@#f;r#`@0g_MQ&;@5+Bt zSh;^Z5`DArxF8gm+RlT#X2u0j%W-RS#9o_iwK3^{Jmrw0$*o*>`5 zwtHdc29De9kq338bt6Nq+vGdbx=VXAIjkof3VR}bgC((M^@`3rT)neaZk66TD>tWi z9~a;DXxaEEF75_PE^cMnp9C7COSyhm<>H&^$Ho1#Li9WTwo{kD?h6DvIj=51D6sB3uWaCVb=hq` z-v#8kx5&22&TIsQ{Ld=UPaB{XC{FYs^R%~?*4Yl%r zvc0*uon<$h$#Pfx=C9%6{(h|4JxeRurM{hR$eyU-7-@6y6+mWVxJn>}U9 z)P8y4H+@t3ryl;q@jZu4cufSC@R#pJpla6a`%Tsvzi+bfZHtyoh~nbDqb$oUdiV71 z8+Y9{dH2X4KF>OF(u7G9rKUAaX^@L!YiMX`Zjm=tWUVO4OOKGUJ{NyS?g~qK$%0kf zp0XF+WVuE6b4`@*-QT^p>)@K{60;{xoH*weS4s`*cacohGrtw3e>?tW)BWw)D&HB^ z9p4k3UMo@E+S*zz6~bOWrDa-Qe^2iOxs5Yff6Fg_@A+L%`nUG?KcZdBdKUGp;`lBp zyXS%QwZka}Gv$A){{ACs6}0tzgZ%gX-#L4-x(d6}C4aNG`$w5c^L$^yNL8}*6)i%yJmJT?3u>#xPRyRQ_}ml75UGQ z|IP4ws%Ti^k`uM^--{ph)OMG5HA?Dr#HM>m^VP`ywqs9-ulDjTSa4A8yIvTVsS4L` zQ}*AY=R>~po!m2X#Tq&8d)-_X-_2!fr-Ev*lHayv-#xy4zxA!LT-PSy{N?M1luDP*Z{%Gd$MzXvNLZI`@lAP%GAjd<-Z$#FZ*ut zyNtDY!j#6@(qAFD}uen0hHldErn)byq)^>SKl)lH2}t@6J$e&_sF z|DMA-rL}2lwY2ItuC|``-VXWiX}?eXF8O_fwX?meyQBbB`UA`l$E(x7BYi zYZHwox%#fDP1B`cu+5w_Vdez+J=1nCz9@ZhZ$^lBbiSLsTeEE7ec8)w+^@fX5?v+B z%|5enYK}gc zUF94G?NQ-Y(!X7DxO}|1zI(ELx4Qo3yZ!|Ep84I&y5@6y*Kf0b^V>@LcPLwJQ)6wH z{BK!y^&Ng^8sxS#vo7eEH+8O5*9O*EtrMoP&Sg;O7qs{ zzh%Cs$qIjX_~Vo4GiV$dfa6g3MgN~qqBgR8?6b7F3_`d-f&YU66!@Etavftc`s2=8 z+cB+ShV(7A8PlfC?2*6w!-Mr1+nGI~Ci1^Cf17^i;QBrn67r@x_kN4Yfdkv>N22H* zws+gZ40`1Mm@3NNDCX+=Vb1zpzr*&;Z)fS>t}0x=b=ZG1fYaixX4Y99^Cr)d>e>oV zi>!r{TUKt7;x79cP|iKErMa(7`nwpHya#*5gytD_a@^mWew-I|`_4W=)=7oycN}}| z)TWto-&wj?``MPVeO{CLo8dP{SiF0Id`2y6%`Mq2Gg!Y1ZT!ytQI@;x$DDHRc-fQF zWZl@Jt5zS9|DO9@kbUOVX*1=I%$K!cuWR@wJFQ`c+^yf`Y`^(Wcz@@W<5u8$YQx3N zrX|b$U4Z%f)ke|p5tm^p=>#Yx>9lw~`W+zsyGMoV_i^^$hWGToJIj4%W-*8cC7Gh{ z8thMZ$3n7gL{~Y7UPoHuZzgH(-vtLl|1-Ef^!U$UD7WJvH+#P<_pHXL-2Sax-<@T* zf0y}Q_+5sXdji+AS~+g^AlU`%+{}0Gi(ZtSHm!eZ&os#m>|N8^r#4Lc9rHa*qFeU6 z=x@Q_qQ8Y!b8$0&UwL12`jlg`zeTvw|>*Oo>uZY@~@XmO^(<>|xqU6}d%6HtPf$95l-p{6y=l)J-L zQ{J2!CiVNiI@c|>88fELkpF&-egD)Qa~8=R{O&2s{aso1yA|8_P_Exr-10H9+zMPL zxwyaAi9X}vULyOul>N6Mcadz3EcbWOtz6#|cgS+@W1IgyQ}*df7FQ>;=-c;ApCjZ;}cRy=UX1J}T)NlE3ir?+!y1uiE zx_Iw+_~6uz%a>2ZnVEXWxybYV_~kCk{X2lopX+-7_fEE%lcrCfAph-qCu{$dzA00s zmT>*fv*5~LubbR7L+-mGo9gd+*3S0M<_@X)Nll=(`eC;35-0C{=ac_Y8picIUxmw0 zQTE#(1-9tMG(Win6)tBVF3lTU+}g6nY}}v{e?I%n#y4EG@_*(l%5pRQXV7(E_|N#Y zfq|L(d!Q_+6SIqL-jo@W`{dW&Vf~(0&-L4x?ZkIA*6(cfTrO;@F0uAb;NEtVE5VD4 z?}zJRQUC8JS-)FlhFt%xC7s50pUa264io|F*e)!H)1NCpPp3RPJ3G5dGP}aRsvy)VjNkdbi*c7T zeoy-@$^2vek2cZijZ^F8tk|ks8k##m-R{r7CBJ`Wo!rqptw!1ssnf&#M=Da5yH@u5 z0&e!1Z)LfseV5~!$$kFb*{c_XRzKkq{`B32`@10Pj2ROq&yzaGKAn57Y}1tbw&sr3 z7P;Rszr(n9Uc9_1)>e+2`Ror~(f#01l598uy-^0Z{WxD)1_IYiS>t@Jt|7V!)z|dVT^j+X7cjub!dA+MR zR&jr~=lY|~&TXZ_#mzpe;SE=f{2y=j-&=l!u=aPfOs|l((*Xs=kAvTLvM0)Z*O%p! z*HUL~ZRLLPBVBYm+nkBhXY|U?{~p3RyQgVtjkGaaO;claul&5-t zc>kUM>-Tft8q2x=aGv7go-ny@;w1U+G2g?u-+veWu4Zucw~;(|?RQZw?oBtjxF7CY zzhS97_kV_(28REP(hUsd+&i6Rxxe%L_LctaYxA4uw_5A>B3XytP>$c~ldk^e{T?X& zot=eSkL!CG`}c+)W~{w^+^tOw^-@mkwKE!K^vQ9vCvtH!?)@(I-R-+9Gq=#$?=s&@ zzsqo!axrqV*Me%$DGhSQY}~(1MdLu#>hDzc-$iM^8Eoq0YCD^n>ZBalYo|5L?2+RR zljZx*VA{a&;{mt)^q$5k_0rt+-^FCPe~5q2=9*e7_eXp&7dN}TEO(ls?5%FDFS6XC zzpcJEe^=?_;(iw)`)Zf0MzgGrqAd5eYh2t7pkhz+caW5CReEZvTw@z+MMFztrBpt9 z<)p@W4RYMy3%IVya{K(YE&CZ&{;HR2>5nDM+|R!INPTzqy7SvZj=Su~)$jb@ZDqNe zzRPm;cF1#^sc>oD;L`K>^tYv4^O{y zJ>~vg#J({rYPqxYZv{8y-;(X1-au7PF$Z_e%sF$GNiUdPSHaDuz{TA-1>}}EuD#!* zxxUZ(uFTB+TjV>7?C-Mg^F+TVe&5Radn-F1FnQyWVz)76lJ+t z+xtMnHr(5tWx1EH0Qbkar#8%#!J>xqw_kyzTz4yLLd}HLE`dyccdrH%EIc{m;2&?ps2GahK*;(>| z?9~%NMVb_-lX+kIPaTVy|DNyc?ea6bxWBXapWtSz2MuiWfCe_WgM7F=eg}Q|@v)q{ zvim##kE`X}-?>4BQ{#8G?`i)T;u;wKGi+#J_|DGA4T)(}w(9oIntJ)#hWu>q@6)wq zx$C>XbN@*G4k{df3v&O+Vq9~N`MW>2XXEGZ4?c5$XKnfR`~^37G{J?NZRXTzGvv7$ zZ+@5OF8g8qjeDLhYi-Yz#+lOh*=Ej|I{APXlThxX7^dqV7 zLb~5sf4l$oF#OH;o0t1{*>@N2KRPwJq zceE+@Ejf>2bKg>R}F`tWDook!3EO(bI{N zU{GUbh8#EBtSQrG$RE>|C@o{yuG=nfTUu-Gko{@&dz=1(+jWXK^q0 z&F`SX420#luWU?rc1w|T{GSSV=H_=X>Z-urj_isDa`p(Hs+`pfda&dnb2L-+| z^G7l6@A97C<+&$+59H#$_WI7Ye4(07&{m{8P+pwVCZ7( zVo+vKVeDq?Vc5vn%h<=D$}o#@D&u4ZHHJ-$(;532HZyEtoWQV^aT4Q126YAv#wm=` z7-uuiXV7F^z&L|Ji*W_RHpZC@+ZlE+&SKcfIEQgA<2(j!#zhP|j0+ib8J93FW?as= zjG>1?k3pYtDdS4U)r_kcb}<+*>}Figu!mtU!#>7!jB6Qs8P_oEXXs-vWSGlf#9++0 zi*X0z1_l$xO$-MZH!^N!+`?eWxQ%fu<8}r!hJ%bd84fWVW;nvQn{hwmUdBC)`xwj_ zEEo?l9%ekqc!0r@!HVH1;}M2qjK>+Q8ILg>XFST_#BhS~1j9*&Qw*mWuQFa?IKyz3 zVFKex24@Br#?y?a7|t=CVLZ#=%CMaAJmWbAH-__!7Z@)xTwu7!c!}W><7LKc4DJjb zjJFxDGu~jl$>7O&i}4PF7sEt`%Zzs!t}t9>xW)+G%fsLe+Rek@1KQ8S;LG@e@j2r& z#+M9}82lLg;rn{tGhAl~V7S5fj^QT5Er#2S9~eI}OlJJVaEDa%CQgQECT@l&Ok7MnOuS5d47m(>4BZUEBOkPZWOukJ1OhHV+Oo2=xOaV-w-Qb~2QB09c5lqocF-);caZK?{2~0^$iA>2% zDd4?SsZ7~S8BCc>IZRnh`QRPUg-iwD9nVEfOf#6~ zFwJ6`%QT;99@8SGg-i>WmM|@4TFkVJX*tshrj<;qnAR|@W?IX%j%hv9CZ>%{8=yP6 z_b}~b+Rn6%X$R9TroBwNnGP`RW7^Mjkm(51VWvY&$C!>X9cMbhbdKo^(^;m|OsAMm zGM#6-z;u!62Gez>OH5aoE;C(ay2f;q=?>Fvrdv#RneH(?WO~GOpXmwH1E$AJPnn)E zJ!g8s^oHp*(<`QzOmCUqF}-K{!1S5v6Vn%_k4#^gzA^n^`p)#1=_k`Kraw%-83Y-G z7=#%_7(^Mw7{nPQ7$g~_nEo*{F*7jzXJ%w(VP<7!W@cyR0PlC^Waeh(W#(b#XXaxT zU>0N+Visl=VHRVSU>0WVOC(4XO?A_V^(BVVpe8WVOC>SXI5p_VAf*R zWY%ZaW7c8TX4Yj$W|++kIt^$Z!(v7UMn^^`MrQ_Y23v+Ah7ty82403r1}26C1{MZ> z1_g#{24;o~1{nqc1_x$iW+R3ehByWr20I2$1}YWGKVuq zGR$F)V2Ed!&K$)Y%^bs=$Q;X@z#PvU$H2x=#hk>P%ACTS#+=NY!JN*V$(+TY$iU7} z%#g;gieV|kOooLFu?!0s3K$BRvzc=k?3r_!3z+kn3z_qnizNyv>zJFEo0%J#TbWy!+nBqUyO}$g+nGBUY8e_CIv83R>KK|Cniy&r z+87!b+8J6H>Y4kPCouOi_b~S}Php~q<-b1-v6bL4QeaBSze$nlQTj?;nDlQWt#mvb`bVa_jHj9h$N%3OwA9$cYZ zNnEX5)40}h-QjlOcH^GJJ%xJ__eSmm+&8(Oa{u7r<~ho9ljj}J4_*^qAKrN00^SAXvL5AvSny~)SGm&jMgw~_A;KPSHozaGCEe2dxWumRKvXL*lH&D@g`P6-f)prINd) zbfsdX;-qq<8l~E#rb<1M`Yg>WttxFJ9Vxv~hF3;a##1I+rdMXI%y(I1SzFlv*%a9d z*-5gCWw*(ml)WqaQ%+y*vD{PnX!%(AeEE9$Uiqc+o8?c*-&dHeuvy`xqLX5iVu#`t zB_Sn6C0C^&rDmlGO2?HhDcx84tDK@dPx-Nmnu?7|tV*rQVwFQGM^vtZzKlx={6|nvj~QTAbQNbyIZ*^)~em^(pEr)X!-cYS?RpY1C^h&^W4bRpYZJ zm!_>|speeG`I@^mPiVf@e5=Kz#iJ#qWuSFX>#)`}ZDDP9?OyGD+D~=VbV7Cdbl&Rx z)UD9{rpKhGu4ko}t@l$uL4TnEtHFGOqlSitS%xQ!c#NWrmKd`dXBsaxK5fEcGR5SI zX`pGh=|eMpGi$R#v#n-l%wCzjG3Pa(Y<}5-*FwW0z#`XTvc*b^V-~k9SuO1>Cs|Ih zTxfaF%ExMl)fKDX)@s(%tXEiXvA%Bo%|_A2z{by}(`KE`9a{z4UfV6U`)nWEKDA@F zGqZECi?Vxf_tBok-o`$}zR7-z{XGY12X}|14!<2a9qSx_IR0{yaguW?bh_(o)aUJblqmVy>&Nm&vakx{?vor!_uSBKkMEwEo|&H0JRGjAX7bnhDPCEnM3lzmivtbKxg;(ccNZ1vga^UasVm(SP6 z*Vi}3H_dmw?_u9Rew==4e#U;zevAD!`W^6B^4IaN^Iz=0%m0-BmjLmApn&#(MFBek z&ISqxng_ZEb_OmD+!}Z>@J$d?P-IY5(8QpXK}Un`2mJ{a2rdYoAABzOSqMi+ct~By z(NL4n#LzvVFT>=*Qp2W)%?~>rb|vgy*sHKF;oRZU;mYBj;lbfK;WgpC;d8@RhF=eV z68P6I-XohIXXpLy2=z!>`=;G++ z=qb@lqBlg}i+&ybHTruDTTDgFs+e1`oU!_`U9s2WG~x>54de6T+v69+Z;!v2AeP{r z(4FupQ7~~rl5mn+Qg~8XQbp3Fq`65el6jKblBXpfO#Yq1og$W^n9`ogkSdUBm70}W zmD-%zlR7u^s-p9xU6_-32#Yw$@x;<(uHL{Wi4e(%H_**%j?Py zRESmhSM01bsC-%_RrRPkta@{eN=JGIue>+0<5n(MyRbJa`LYt&oRd(=nN zr`4C%*VnJC-&udM{%ZZ>`hN|44YCc|4VDe=4WSLm4Mhz#4a*u1H(YMG-|)8KUn5_m zT%&HIb)$Dm%mx z??YvOpZQw_7KNz{(UARZ2vvFUI~U`3_wQ+3%->^8xc-R1grSDsF_-$I&i*5yobgA|Bj%rM^SM@R?vY3dSS*s=|3!g zYeki0V`Z^S&F}rL2AQ2-_rpbl>yP%|CQ1Q~_iqoH;5h@?wWxx-Cdsb<&Td%t<1J{7fWR@~vhS~d z7l@whTDy6#)ZUzRF^$z7?aguvwz2AR39p;@Tj#d+cdd%@nD3HYGv~}%D!p)4T}63K zZD~r&^6Dyi;j*fl%BpQyhq@#|ZV1qj{ceJ0A815Tl=1tj@1o4#52SGIMwLF>{hj?s z)_3;rnzG-wepg`rC^n7jcK3Jo?*VVW`+R3-eD+=b`{wV;%-=c0zIU;Gk9qy*yI-$- z&*AQEU57coyL4)O59a#4EPO9lq@wKp->ca`Q%2v}zO##d5BSdVf@`m~>~EIuKHr7d zzO(L(_|4cW-xJ)O))mb0o4qqW_BV?(AIt&Z@hOlCzMnUc{hj%@Npu?5EwDr0efNes zWb1cDxI>;l`tCPTzUOH7#;#)=-(A{tK@M3O&b}L$OW0>NPOFvs&GOwF?3!H>zZv`F zdjq?(I|Dd=vvP$bdsTp-h2zjM9+o(f8F zmL^=nzkaVpRv`*<)*4V0E=b|}ZG|KSb>I$j+227(!tX&En7=z?WN#;!q8d;Jm#vZo zDg5sEkom`|-vy#`ltJ^Lb!>^nD>rUjxMFj!{A?B3@B7%A%G*i{AbFK9eL>mxCEvNf z2Ym+(h{-a46nkvL^}Xl&LH0!1-v_@3eZN{S`^PO+_PZ1pH zq3>CbzCN1uT~YYg_isO|M1}tmUb!PL{0p>rN3Q*E3&fbsy<8A;qcvo|Yya&r=Hff` zT~BuNCuI9Pf9KfAf-K$qU6k?rw(p`(K`uFy!nF~s;raIhuJ3~1*MHC8`o8Y?&HcW<{32*9 z7G&%9G!5C`41b$M5te^X1;vOG^T!ojd|Mj7^XqrX3f=s!^u7JNk}!jC#m5y~!aKef zHHvdug(CXt+c)YG&@-KyOs5Ootvz2s%+bL zTdto0<%~DKQ^i0X+3(uF%j{(Nf{-`!+CiUo3AoXiCps{VdL zgX?$F-zHIn$PEM8-$f7+(D3^uu!f6V-#7p9`pzwTlWoSdsk7vN%AJ<|?g93}#owjh zxxR~hca#00^t)7a3fp&$tJl8^$^Y~_Eqjsc`^GK%<$KM_h$4hoK za$E0j3kyU=h=%NUeVCHXD2+U4h_E=<_dDjY^WdD)a4s(h$4hqed$4_&ExqqDU?mSq zxEL>fSNeVsl<@yICdoc1;o98G1sA%Y!L{pePm=6+FWGgV#@7>B;TJ#D;U2}zQo(=Q zLB2WCT_wwS_`AaQy6;lV-@l0cmEc&O1?RT7x_HUPV z`Obju)ZRdj-+mLGnS76tp75Pr^fznV&hP9U@?FQeSN9y{_|Dk3XWw@=>GOZG*!X(5 zmMkdyF8Q7Ld%<_+?}FfT_kG^?blF$RvfmlMtFwPM`grNP#&=Cs&`jlT^$!zdbs$R! zzH@%>5dB{8U5)+ThIkL>gfu&Oz9g>iaa^Fr(5&z2vL0M~-`QlpFVW!oZTGiH6w2LV zAp6@7!d(wZQo^zb9R`2i+sX1xDB=2U%Juzfqdpgi4Vu$6<@&x-gKPWW9u%RS2C~Z` zLX%`qKpKUIzAJt=IkxA!qHz89%P395hH7Zj@ViaVceb0~#iYJ-Iqmsvw^8ml@9MY( zhouhfT6X2auFRy#a*H3HnJ)ibBix8GZ* za%C?7Pn_=kuJ+wl_WLpe*~-67qG?=w+2FW<+K>m%%jdZmFMpT+z8y44`Lj_}hig06 z_cIz?pxmazb)M_wC85jTIgq-G-?=~vOTVXa zm4Fncn{Ww#0%bg~%4d*#2WHnpvK?5{dxYJE7v>*;V^2erX;%YKHIgA`wQ^j-S9 zJo697-vy$xBV^ZYkgbO_#1_omG+F+;#G<Q4RL&H{2Ixa5Kc zk?@-zhVV>{S$csowGP*Yd$P-a{A2#UPV74q+k)xSXHSs-p7m3VwWkj>jo0`ozl@Xqe9yF8&@ZI;`V#iUoqC|3DfHrNb`MnzbCu#XF2otP%&NE z@9vYiz?}ckyoMw+QA5`MZ<8oUWEU5x@M{70aA%ot{oV`}hiLvGX)gOa0xXm-yX>Cq z_gSE%wMopGYuRKj2xqefSJ&SrQ6v#p4cYIE5FwE1Lf*t`!o%%-{GJN2U&2Lf$Z;exFD!S+5~FM z&q(3=9SIg*!zHx(yYTni?~=khzUMZ6l@+egM8wkJhF8ksA46NS$VKmqudw%5oE)bmt z?v%8!rB^Q5v~JFlEi>dN_pl1@n%*~Q$~39(=h#07JpOI{Ti;(lp;HdD2}BNg6UY(i z^GmXWVVgksD=b3vq=avQoDW{ABA3VB+SfLrQ%?9!Np(SHyp-@BqkVx7Ux5Z>SLea(+Y!CXFn6-9;jHC&Yyu4~Zb65ihcGFDD_Ujryu z)^Htv8SoOM6YTwM-=F+=Bzk`3*=#Q1by?Nx!ld2uJ#%D*x2>L&v0wT(H#n-wG`WPg zfeitf@O@q@*LM!t?`4g)vLN=E?`q#UWPj*`(!p=vKOb#niyOb$f7g=z?olpu4xDnn zHHv;$IRE~;+ywca#ocqd7IS=;Y;*toTS3}6DnB(#{(F(O>=#+#ioaTlvfnMZgm-LU zPg=7#_l9)ZH&Kh6Gp9P_yB2q^=vmBhym#G++tT-!`8oH?_mp>+ca?KEw-@-COY?nK zm1W%dU55Gl_D0d~PG`Qe9`BR?%B3&M@mqD`3$yQPU=`n;Wx;CNL2ljs=Oba2vy5d| z;8f>1N%myf59iN9JHN|(S3M?N_kG*%0?`v)>p){B+3R9q72|jNo-^NB`i@J295ms# z@FnZ-?3HEFkg=0x;6*X=!uyb_u{uySwk_*$mn6tvmwLItu9p4rR!#Q1-k4zaWmh!lSD_+WeXOb1(@mp@fdG+rK(i^^sniqf; z>@PcUU;6esKmT6&p5pGju3`?KjvOxwX}*ZYci-2&`!4XcyIg47cj@n?-=&4`eBah6 z`rY8k^Y5yC@;y_!r*=(g|89`}F5vos`QR-ObEFm`ZGq6wsGd_Xt74AicSBve!>;nGV?t@@4aa{5iQZ(j{k=|k;?vXEMcj`(HwwLCEdcXg> z3utG9r0|OGd0fH~FJ*;Sd}oq{d0%+O_g_D@m~#ET`o|L-5W*`i_hSTw@C;~RK+Rlz z!|uBV$W$reHQ%Qqwm~c+d$)z@ByKcl^ZuKoVR(B{CD>GColJI z;`pv08zL?I&n@-%#SZz&-ygo0TjjdyyNi43IE26T{}wuK z@xFkgv7)^MI*cUz@3;Ang`$1zH#Q%Yy-|ymWvRk>n3*46dEwG+#@9gCV zkdCyNvML?|Xhc z5*2<&c*C2#@LSNHH@OLa_km2iyNOHqEy%Q2ps``Y?=r$~zN>)a!tn25kb*m#xP;$8 z6oAvQjPRQu+&`y_hOt#N*Vnbm$NuJK?QH96YnN)8+%#40KHL1Mv*z^5&->2LI=!c5 zO1-q>zhV?~zB7Cm7W!WIU3mX@8R2)|r-0&Z$KMMeHTO1g3BNPqYF+>-+8NJ%x8`Dg zCYA~jS$@OryN(b@O!&+*u_r6JcI=n^y&Sxk;3;Ss{0#Z;YuUfcTRr^EYZsN5kS-^D z=lyojc+`q%vhi%fclK$^8mVvzzln%rzbq?!Cr?p!$DdVf!e5~N zAj}~A<-54ItniDZKaU`iP#tC9P-TW``Ofy8OQ`faSMGQ5obTpbKYp<&K$G|j%|E|T zbbeP!zc4ovd|xhxx;sSp>+i+jtp(rpeg}ze1g)aR zzDeY}wCn}h@64~jUY`icHuwL02RZBa-`}aXziUApvGQKZcZJ{5-_vA;zr6kNN%VO! z*Jbt@-wV0)zpHaOdvgi@xbgR}=p0D&tOm<~##onZ+O&A-R{2S6!k<*Re&lG&TBvaS z31)AZ&^obGuCJ3-_(w{8aYm$+*}j06a(owLpS}!u`Mros_{DdBcw6EIQd{B$xGkXt z3GoWq@3~xz-*vysFmL)Dv>L>_*2@Lv&j7{2(!Wbr%bF~x=HfE}_nfM^zBB$VGv(ql z{cgi`_PZGKQ!&u~JU905fxmrOo2E@{o-h5Ht%7UDgpP@=6Xkzbd@uf<^gR!>MSao) zsToaE>g9~tD%x5=o5fsz`>}p^|1K!Y_lIKvX#FeWx$ol4&%`p|0^lSj&iwvolNwjk z-zL!vS-#(U7L@&1_1y)o_PgtkRi<2ge>gxxWKrdC@f@%-f3IFp_I=NH;qRNlGJC%Z zgDv>({(aA5+23~{);|3%&itKC>^m>l_Y>^f=YYqU=G@}StYiJ&2M+Gv2ifDRK|@Tf zRiGV^@LF%}4A$S%e7L^P1!cm1R-79w<*bWx*=K5|W`+YO}cTLNS%C5d?;W=`7$HP|Ib$NEh=H;bw z2=7@N#$}ts^(Tj2_>PY(Ume7%yRyPJo{IT$3GbLKD|`bX{_4BhU0LBf-xq?i+;8_k z&qaN?g!jyrMb`WHy9-Fommd#IxoZAAz@h?X%4TEP-;ro$e7EKLVg0SK{I0C<8?X!R z%$5~?<0Jds5FFrjze~S!ei!|&B@0pV{m$=F(V1-D)vw~5u>A4dNH!3v`_8NNvfu4N zr2)7SRpzQ|eE0p;JH}JrWxkh#s^K$@X|fQp@6NJt(Rm=3?)>vHP4*t7bAZ@@A^hU| z7kDUO=IP)+Z$y>3z8`OVq4(~)#QpC=?+l&^?fNeB=sr2{$@8_Wvw489>#jT-s@*V7da)0NDx+L#-)FIzBzk6fPd=BA~hkcuOUXs4J zIo1^1SxD_F=Mc^_X-|%GmFCOhDuHiq{q6zEs#46)euKBRelKTFShY9*vh;U_3m?8q zg1an>KwTEOR`)l*6{PLr3KDYUzn6t^ndWf)ec{dZz3lsDQR~bT$2;Xa7k97dUCeQ+ zch#AD(hruRbW;lb%%u4;Wq%heDEp!Eorm%4cNylVVo|bu-}Sk^dxPRY@6U5lC_mg- zRtduUT>#1e$QrW1>0YVv+4o=1?#OU-p_NK{A9K!qNRi2LsxQ!c)e?oZ$IUw;q$By{e(*!P0(LJHqygnv8}`)(!sBaZ#S zw$10xZch#gNXc~UlFMYPY_a5uX0M&nI9qNroA8%=+oFAa<6^AkQ`oA$i*kj4HkHni zJIeOm;o^7JS2yxc+OCin{;_%ShV56RUV6U!ZTH*GRr$Ao+@ClfuHTmyz_$$XgN9Vp z#o}dutYF_UZOw7H)1V4>ru>mGE;qK{;@fc@L%Z0vke+NyFJ^B9X$2ZXfJGq3f?EEe#+XLNA zWZusu{3J$J_)OBDZ=!v&e7{pbb1ThUzfHhtue$M@eXp$0iSIJsi@wVU?*R33pyy0f zxN!;ZaFCVbTgUZ%4k#hE{rTu53(@fO5=cuiyvMQa`w7r^P}H9{uv023-MEBzLUn@% z6l6ambc5SuC%(%hLb@HG;UrgRAt}65@h=NDGq#y=<$z3B$MxM2R8p#dI1tBtXMP28 z4cG&FzI%g8&Fg;|on)&)9S`Aec4a^2mV*`eeRudR1MVU1`7sA=+-L2arJJTh#(ie? zgT{S+

oIUd}Fj%Rv?#AacUH^4XjF+9q_!3GXSX&d-XIGTImTP>v7ch^GgR9{^dh z=;-mIi$HdOM{!PoMsbAqG(`PXgn6o_0d#&x11M;qIzgj2un5@pg8^PjV~*k|A;P!J zjZ1hN$Pl0JHe5@7EMWfLCw7%>!IWt;C(3^h_>sa2I)4F5!ajDPo>n!W+C~g$uqja~<_8$g12RV3$AC|I|tgw1eFlaxqc_EXGiXK zen0(PhwHl)SclaPSx_7O_hP87?=ftNT)z|9ev4z#_Zg%w39K(^hwM*}@6KGmBYr2X zX9rt&m@SdZ539!FZL;4j!5dF4q1G*ec7!3;CB$;g#_$fzc$nis#{0)|{a*3I@zj3? z%Lax+{~1&o7)~>8yZ_`N^LP0lj-qSV%$z@6zLC9Qa`QB~oov%4Po5_KU77uS!WKKb z#JJK6h=B+P$`GD#w-f@Qn`A z_Ti~c?eblX-I+a&98Uc^Q}0TjXUVIbxwccjYijr6o~azGdS}jAA-#NNRZg#bPh)p+ zS0hJeXKii1H1dMEY29DHr+@x#@|_zr0XP49y6pE2Y~M}peEQDxUBvMAZ*BSCw%<*@ zzgCvL2wEobCr(H9JNsAB@9E$5*{^L#2na}ubdl#Pk=6Zf1De8P{wQ_^%myt+V*b8C zgX_1~-zHIr7{~^9(DcltpLaxSWPfw~-o>sbTPyqH;CCOc@99OdeBT+mzYG2d`z|Q7 z^t*ifcd74*-z{W?pX~iDFZ$Gm>pS}oo!{*23uV9OY>*Yc@!f>$kE06L?^O2R1qHwP zyyb*nl&f(4&S4jRQZuz_rkwDN??K<^h;BGC_v3dbbjDovciLb0 z`lOeTB}Eya4XEHHMKM3uxkLNazkYA}yAHBY=`k1MkKpgp%)ctvzT~pwVr`i)xpA)a zN46PLr%mtg{vIRyJwjIKhx>QM-#p)yg-zfUsl}q?TfvoV0t+Luv?i+shk>>ku z1zI#E|NRzt8I3E~cPp;rH@?TpcD(+s_`3ajB-anYU|Hc$zgPdQ5OwAH&JS9b0#W__ zpSkSs8GoBZUAfl02Q7P%XZ|U;R`hrB_d8Ww4J{3=^1sb~&ok~}UCQ<9yD!(I#<|j; zAdc($9wWQvy)0-U4fFTa8eHFh{Y@ZN---?gZFZqGuF zZ&Ob0{LU!-UG@))=noe5?~Es66{gDfR(IugRdFb`dBy%_lIF{o-L&AlpDg3P@ABX0 zfr7F`Y?kbI9#B5GT>hP%OZdf)ufG*UPjY?F-5@LcA^OK|Ht-QDHL`zp|K9y$H`rl+ z<-e<&lKf8a&{MgMt zN0#sVe~2ET?+LP=-{nDrPd{J$RsiR^+#*@wA5eR1v1%9o@-qu$^K-Bv-!r&wewV)q znkl^uHG<=N2)n23PlfL$vLH9J&yoEe3ewQ}-9h$yJ*d#>VEb-)|B~!)(eIUPb7a4> ze`gl`UizJ%{p!Z=(p(=w+b`w5von4V{VxB#612)9SL}Ne+jolxmt=qQf3N%=#r1n; z2$!d#?02<4N58Yc4d7(Ivgx}t*Y|FaMY-RVAAVP2{wVgnjO_>)_!IX6d0&qxC}~H32lb=aj&S|4eI)zi{&yzP@1>J7vGG|Ghv__Io+V%M0&= zZ2tx=s;rzKYY@UEeDC+P-|H*6eysh@EGoS3d+As9E1S}t-I73iDv{SjEc+fN`=7zc zf#E-s*#QRT?=KofziWMGJ@=h!=2KaHw%WF~+7|hwnxt%NX}yrs-x=lSea{D-gE33~ z2s>mQXZ~Ea?>q+&yu7_ND|xzH?ZgRfv!tK1P5&+``<=7)H^YVBy3)Tbe{-7tPHK_w z%IsQ+GU+?J`FCq+z7^lYWOqWXzTOBr3yJ;y_moNUJqNm1bRFdQp49T2^Wkqx z>EBwvnLU1U*UCdq33|>pYr=$?ljJu~+q&kq^vi>xzq#crf9JFB<_co3`OYW%J->qO zH)E)`u65GtEj4m8TU#g8O6!BpSE=uj|II$*JB#ag9cj?wG)BK96X*Wp;4_MLY@+4qOvMZb%E=a>Cn#(we6j05-AXS>S%P6kym z`Rw0S?63XS3AC@y$dUW*d7A6{&&KcU=4Ib^d>8!g_MN>E6urV*eoBGP3widP<-6HL z`Q9VlhdPgOd^c=0_|Ek^Li%@*(Qnq@8ujuGT@8&=zh&8kbG}b!pCh|d_PY#weNTN) zot*HN-v(2k{ATFMotg3OcjfO*pt9rI&j8Wi-E6-t%~gK$tL$^RmjgOwtdX^|y{o-L zs(wn-G`VMNi>A()IZ6Jz)b}#h?@Yfd*=naX&Xju^Ap4vB_ao8YLTnCc8!w#Svip+! zcOf>uFWui6zt?^j`OXIlr8@SrSLU9$zdp-Vu8iF`KSo`yA&1M)n`;`|clXElzDvum zVgIh;aP7BlfL(P)p4@lG(_F{Db93E#X!_kv=)3B7`S11Lm4)y8F#HiL`djqYcMs5> z=^66EZ?>?{Xr5Xl_uGR__|EwavNf{8Z`{?{YnvPE?PaGsS~I5$zS*$#=3jXg1Nh- zkAsfonc6t(F4y;o$Juu+sEnQ?fBttEYeV1E)>+ao+2%}{JG)ih`g?K4+u+rveUj;H z-#fl9XPq#ir+zO|NyM*k_8B*U5vek9f zeoy4uzM$;KmG5G$!qi& zO$TkJzso+mWpce-DVs(}&~KR}(1B{7ScNzIw)ruIbq4r^Nn^IEmg-v20+YXDtW^`H zH!P6mvs_U2{lNY2k>I7r(#$_5{R|NOqZ7jQdwcj^uJ6{e`+u+a&LaEJhU@!^@1oy1 zWq*r)kNm#3UY2i?)py30vhSz9^L*F-&J8NsCVZC{uK6MG!%5U7s4^o%{(HiA=qVYs zvfusK?_HX6^4|Ik2RR>h;XS?uF=}$H2SKN+Ol14+@d%VyuCfc)K$43b-w*TO3g74c z7W^*w-TIoW5U5f0{VK@(U%lT2MQz!BYkhC5;%aPZXpy($>TjLYG_zB39h>l;-yG}< zLEWs}4YGVwek*+MFf3bA_Wi_n2GEvvq3=_^%WsA@zHEQI{vIQGF87S{dO2ac0$Jg? zTV;h~C!3wK{;pifAw2gt<78Q3+wZLG--Q?6xc)_o?+mhwK>mFIa?elg?}DNhQ1@VO zVWGS0?1HlIM?QSt{XK*0&>`lZMr%cXr+mNj-Cnk@zX!CgwPnip0@=z2kl%jW{$9n} z@nnK*iwc)<$oEApT(z>_*Bmldl%1q3`*fzngFwUI)2y!S~&u%1yXx&u1BW#c)uh->5kz#*KDpI2fz2SC(80cZ2+|_LG7L$ zFysF$&;fN4c7Naf-J46e1Zw=2@44*4JHW>8`mON2)2QsnoA2yG-&cQ^7cTh8^u1kF zhpoD~t)g9Cc!Nn>D4*Ry8#=x5@vu`@Q|Q?f31hliM1n zRf850wD*F}p8cKW2WL6BG0S)OJ*Y~$^)mp} z*PG8C5ndYID)%akt2u{Dlij30W5ZRc?{$l1Z`gcymYd@8U5#sUG1qnWEt59RSTLXC zcf(}ap9)2?e47@OegFAg5G;~lVz-`>){T{Kh_+Cgox=IPSU*=9|iFmHnV^ZLQQFZMKTq+DiFS_TMGn8Gj3W_x|qn;lp>kNpighyU%qV;rPAv_ajlwh*RH% zy5whm-^*UxRa-0do2@-K##EZ`F&D@iLf`*==gRsnoekQN^XrEQ+&e#P|MuVw;qMW$ zpj8{+Ee^?MK+Enw-~HhF1ODz175)k8MgJ<075=$ZR`?H6Kl(fKD^MR2)RX=``R8gE z+26WA1_dOBR@dQnGgLp=ki_j)H=P@w+uB zb_3xye=pJnOTOym0_#ZrIon9~d%S}+7r0*t(gR9l1&3toz^?xG-50J`_~*C3>qKYC z>VooY*^iswxrJ_m(qaL)R{yRqE1Ur>Emwehj~k+Y#C+dr!*!8exL}HGjU3-={m;lB;vPs45cqxg57==U-<;eQRVo|Ew31_iDk$UP_F ze+}OgWs|s2)}<0!mYLl6{QJ4*jQhUJg6I8y?Ebz)^t)KA-NWC?(*D5(DLL{}zMJ2e z^1W=|jNVDpI%d|LmFS#VH@U9k_fFT}9J#H(cXXw6C-$Up{I;BQ&G5U8^mo&H55J2| zl<%3>y`*a)$8Q-wQL~QZco%8crN?bwQn z_=Jp#FnPY;A>c7c@S=#PpxN~wQs2{V%l^J-&jpja23a8TJs&(~EBfcTDEMp~bY&nT zK7AKw{-OO-Ow>Y!OY?Uc`*#7^?`fdk-c0%L?%$(in|?EW&r$r(kOewY%(#K!tI)#l z;>F*EzH59J^ZlMCE4*drZzhoO!bK0iUor(BTM3$ax7C&v&WZaWIYIXK4;8N8((J-( zemj*|h08Uw32(V9``boQRygOo+4mgLmD}fB|IRCQ?z_hC&8S_E541Yl8yf^BmC{VDRk^y_-6okS=RUb?+RRuKN!A?GXK21>Xobm7i(+(cP6e0UHu*X z@_ed|ufNMa{4VfD==-W4?O)o zRsP&}^*>UIviFL)e&mF4{r(P)o8L~wP5~WqwOvh3wNk#|BirQo&VrYsh<-oyU6lF9 z&mVI{E!gUtTS4Q3dcW8F*89GOby{oF#0F_|w#LS$M)^M_?De4I_aCxNpE6~-{Pz{? z-+qU()=iq+Fk5;J+uTXhr%#gq_C1pI_Zs$k(20r<*($iE%l{~0pZc9umai5RX`rLF z%D#&;KNb6KD*L_ccfbwE!kq8kvcJo|yIXM~EkG!QXM*op5G}l1Kcv2A{gHxb`r}~F z#h1lJc)_d!#Gvo7pb5-U&;+K`cQf{x(?G|5Zjk*G1sU%Ox-a|P95iS7T}GC1$&dNW zKNkO(V#*ue}3JY3}?k{$2jN7zi_e zfAKp=6qG-#*uQ(+ef(W&l6>#t?&Y0}IlfD^m^}XNEdAX|Th>yA>$esAZ)X$Z-%`z> zwE_7(#T>t-Cf_yw?jil#N>R4>`&Lo?#H~-;X-2+?EutC(W0~6|msDk1XSc?^54mzRNNHkQbZ9)!qH|hf(?WA}&xM zg0u6BA3eYMK>7K*2WabG+z+V<;FVEQzq5WwS%F3hr8K8~|3)dwjlgpM|8bNVW&y1NMHjKjiu&3sV31HP`n5s7*581;2}Z7XwX* zF#j+X`|im0UG}>Mm)nKkQu2;q=ly=311brBd*uiDH-HXEY_5~?0q3?Jx$lPk2OoT& zDs}F=*dHlxh&N8Z=K3Dd{pvgCm!MbQEy2+g_g(b6$#)*%dyqU5_dCFw>$?Nnce!gv zzjJ~H1)1G0{Fat;{I1Bh2Q(t+{yPqoaejEc0u2dTo`Luevc3Ses^WW&>|W5inf;BT z-;GY+yFOWdT2IrI2GDgDZS4(h@{z?km7&re@f#j@%1``m%RXbu)amkD&18SuPGEb~ zyJO>7>HTY}!k5T5PMFX>UHS&ww5gM)cgbIG_PYPuK>D}7vBhtdR{5^#?y#OJ&^q-8 zmfww}`M&4K{*VOOx}s6^yYc;d-&H1pa>7PXPEctzy7ya8`nP4Eo<}RV$vI8>2HULu ziPI*@?^&>B&VK3h+mg+D`hrG~$tb44Gow?w9 z4%hYX)?C7O-itj^mi=DNeiO9Vvs_X3X))LLTK4avF0X%!+ehZdr^|g8`>q9A<@r5X z_O}+B@SO|LWu9(vpxw#fRh~1Za($0%eCJ;FJ>$!Fws(!7*c9IKbH(=~qTgj&OrC;* zO54=@w`je*K4`4Z-HPkGsq8a$;Vr+Vrrb0BZX_MY^;^b5)TBKn&PCcKWyhm-*czaR z{hM}PlD@PFX$26U&w{e=uCKo9zGA%eo%_2FsFE-JF-P=w0^4s%r{LeLuB*dN704_7 zwq$K4bs)J4O467 z3fL^Wa#C}x^ndqB{FeCsnRRjpeC2}g_arV*JMnwk{qHmfftqLE+rEnn*ZjQqRn&*=H`{j$&{3}rTz&2RZIe1AdpcOx zvI*~50~(<7VE>-arTUxidx~?}(z5TRkk(u7ckzkf23(q~u9>_62 z&VCiOXZy|a-8@+q)%v^zW#99keoqHiJ=+g4|F{KdrGf9-=Kvq_K&*$>|&G$XWu54l14@dC! zqg|j@_naRSzx#{o%W??EO!&=z-ugRJ8Hey3U1$uyVi%tCoqx%$r+xc4zH;$dfR6y) zF8e*~PZ8^HS4B{f_T8ENd)SW>$i7LiitqCGe^hUm{qFlGhSf_2G?sn!H#?;K`_6vt zJEyD{+jpNIF;E@J-&MHGzWc}uL7P(UAXmlx*zr{~<%iVwD6Vwb-*$?!!nQlvgy*i2 z6^;e@ChmJaSJHyA?eXcV0 z-}(=JGk!PwuKxVRckM}XJ=43Fbj<)w-RV8~tuFnY>Gyfj4tBfbP*>NagE!>**!jR= z4sLUNUjf=~A({ss+WNi^+V1%N_RnqXVGr-Fg1Wumxem#?g3CN{;XmIMpqhO_Ve%8y zfBjV~EBtdUm+&8W5B3xnXjIEg_Iucm?=G_6-x+{AsvwtqFXGBQB%1_Ex^KP*LX8ss z^xa(7h3g(D3K+jDgNB<>S7?`WeU}06$N+VLzMFvz{lRDe?gxPkW&AD;(qjlU?z@*R zSn5?T7g)XXkLO0R-_0GYWWik#kPc9CiZ~=2@?8!*Dyan3Dg5)ypI@T0xPFJg%MMV9 zRRFET?74(9cCZPrSR*T(0q&<1#C<;jsl8xLcd+4Szl&}D&b9PAx5Ia?Mc>7R|1^A` zwn7#(J_X)Y`{U0q(eII4=lH(ZT9(hQ``h=Q-x$BY_%6wON$iK0vh1;GvgzM**uLBA z-uUez_nQw~et+kZ{m#kuZdklVb>YTQ$wF=kob3R;um=}~WUidD-{6cJ1}9~<@>`23lUIg@Y#Y6 z!2ZFqk&Dj^G!pUgJ2T@Cf$svK{+cG+cb{u-zUzZ8jGEQ8l;gX8tHYb$KGMH6k8*ui zVSBe7e2q;}cU@Nzhe3NnxQ6s^m7`pI3O^FRGkupYXWadr_q*433FaPIzIsR)U--`X zeZqGE<`-f=0>5j>f-ZZpHM#cNN$z(F$hnHLFTRO>|M{JX{oS^3L;2s??0hr2zkUDq zor&>BLWeBhANJn@KfM_*fPDU2K=ih<>`!TMc>R_3;rgA?{q6g|uZ-VY=5p~(Z2Zpr z{r@+{Q{TD2Z=ER1m;L|$@v4XanTlKG8GjgqVq*4>^P-@T?qN4A3ed@v`_1yhgLQIe z^Q1ayBhaON4Q;(`eU0+p1^xv7=E-2KYj0_+l?q_5o!L0EU+#P3N!ITgYoEUUE-3YV z)AuOZ0Fa*+-cXkP(W@ZTf{Y)O+Q4yUbPbev)f!~KE3ko*9^ZF0S;h`0=lL%5orn3S_K))+vV42G zKY#!8jq$toci!*Cb+RC3-=EwUf~gd^Z~2`^m_c~YkNZCvMK?#wCP#4z|GFL-f~?Z$ z{&!i3slp7x?>e}IzqQH=ztaLMNx%1fE8Mt=_trtoV-ViUfNbKO29S}$yBdCn{k|r; ziOqoPyP7OqE5!VX_cnl>!XSLDp@U2KRzs_-@U;dlS>c@sO+~*ouf2j78^3jbGoRu5 zp5iRKgp04}x6ZYUtniL^T*4LKwPk-V{9Y<*z-9eiME1ML zy=!y0ejoka+{M-YT?AAR-MIGv6q!VqM2fQC<6*YmTL8MCfU*AGI#9|I6I&hx4zW3e}>bkf5yQJ`f?^26o zg&+K8oduS%{oZr$yW}^i?&CDeBosGAi) z0VoPCtb}%d=dHT;odYx(&?77Srs(%IQ3Ebe=_7XUyW)2y#_!wiJ?fCH`~67N08-Q_ z-TN;4mGL{ny*+ceerJJ099-&XfFt+RckWmBzB5mhE&Z+m_Cm<_hI`+YzB7ReiEsDT zb%L(?(E-bVOAG#c-<7{JGoJa*@SXKux$Jl8-!@=LP|kjHkMa4v?-@<9zrX$N5jEhN z^4qTLhYut)E_@ff016L^GrFSe_mCexU^@*!3CHc;OHeYwo#%hMLqidqnP7Pul8<(Q z@_&o0@T~-{R$1X)TC&31;CT;JCa8kL2vjVbyLY8db}J~sfa<%SLZI9%@tftbFoW=g z@611iMEzuiA5{Jo5?v?DHy?ERSp9c4#vjq3<$<87MNOiJ&En zE5)7#$QrXXHFvc(%l|I=W!K&=V1I{@Lh%Zg4mBD$bnoN z*}f}%S7Cj1{m8kOQr~$jpZ~V}ZSviiYsSPm{qjeqtlM)*`r_&&f4|VM-(uedxLUr; z%l_~Ox%)I|^zJ+7-S5)h#Y|58=9?;C-}Bw^yBq7oiIb+xkUGvjtHDwBk7EdUspBTL z-|oMiSzB6KnrfvI!IL(h*lz92b8(4CvGxy|eYi?~c57pQ9rSV_dGo&es^9&k`DT63 zmHol>T>>rFKR#{ylKl{5m>-Vk2T<5~L{_wEX)Hhaj$!Gk2#achLak|`dw$;;jUYEXlB+AJ= zAkH~BddZ0j`I&8v6KkaPpm!9h^gq@7?kLUI_&uI$%Xg*ki@qx|f4|%)`rYBvced}6 z-(`NYy!$QPFJD{L*-;O=O)rdfIe1YybTp0UlFGHXh|{P*S`+gK;e=$|%E z>LmNDrl~b@f4oDuK=&}7WBc9u-GFOe1@4g3r7TWt={x{oqiSKRS#eTDVmlyu@ z{myqrF2h^DO~3PTeK7p)`rU|Ye_B9LXqrctyzr;rS6OWRwqCe!V(ZQCNwVb&%D&fq z{XY3SJL8(~ir;5|Lc`~~BiH7`d%o++{uceB{$09VZf4i4-sye6)qlrd=K4Lq?KW4N zuk0WG1!eykjvZk554wDa@w>oN=I?4^s24lNbJc;ST=;%(>HeN4D>jMi_tv)W;aqK6 zTzsG%x~Fb@x8xGDko~=`0BW2qXWLGX)uztg$vfP}KvNUeWT>N}RXyK#p+)spSzB7u=-$@foBuPZ9AG#uE1ZxkE4(0{OE>}M!0(^nS8&8|@%`TV z{q5CjXHMT>{9gKuxenyqABH!+r;(g;QPMfyFBw(u^%xuT$hSuf2;pE_&tith^?swoaw`UYl1R8-wW11*1zr8YYe#{ z>pJ8h`oa0%`nwAAZS?&A`ubs5{=*TeIEKPd0B zg7UtU7&PzCnD&b6_ntqxtSyc0kh~ANAn*I7@9eVupv)f(O70iF>&T{8Ru@Avzq0H( zZP`EEY}E~oRh{ygzhAJ{bxm!UA^i-L`)^2JJq*tME}-0BEKwk8P|IA(`Jz7AfPmd^h0ghiCk)(2U>yT@;$}uY70ZGP?EK>^mRV zN5k(f-;KBqqy+?pz%#y`@74*~@ST@uc5XN)bt-(frBgt3P`h0H#FpuD+u5d0?3*=Ne(Hoti#AFxpIcoN7hU+9 z%S67SwymjADxV!{Am4YfhO3EX-{sDnzVV;o4A@q)XToK1K^VPVr?}}$m-{=E5wyj*~d*0(8md}KH8)CSGy&FD*9VxuE;m6Eoka~vsWedwr z-uTZr6J-4Nw-1H$a%F|f;<<$Lkd0sWV@8*#h3t2)d1Z^rPTcsO{N0~R=zHn2?~fk} z*Vl1X|9&fKDl5GI$E;3K3)%PIg}MGS90eN~_k>G$8$+(F@GgdU5DRRma2W$6u!OfO z{Ag`LzE*wPfm|-(?F@O9po`Uow<|#IR^N6YPgZ!lLbfdE&{D2enB}2QxP;eFsN)jO zp8$2i`UyWeP|Vw&kPA`+F%M$c_JllH;q?=;WxxA>7v^gHo+T^vz4*!ZV6b7|?LZZY zaQ=j1h?mw+_|ZwcftufixxO#DCG;cp377DmhC*54nuckR5Z}}AqYK5L-3+-PHOMa8 z&5$Q6yr&^s_IJpC#_oq6{~7({cKrYE+Q9IiVOIl#(0>N~rvCqou|I-@7ktuvAp?CFx6*fg_q+C&cFgrnQ0PU@M}I$5%(v$wrp&h7Z~ zDU*Ar_D!16F)J!AiF z$E6RMU^MXN;`_te{axwDp>m;9-<5vLd>0kI@Zx)zXuRx?IBi+09Iiic-dw^DT7QR$ zzKD>0u}fC3Sys=7>ksb_p6^OR$G$85hMdTJ;JfROS)zJu_qp`I^ZRlyK)2YU1ZI_vvK_v1Q9IXJ!IdomHgIWRsZfG`v9V=b6V4M>F=!HYeYdB zz6*lo!G6^ z=v%g#lc&s{Am1~scUtds4&e{;Uw@Z9F!8%E$K8IvFQC=VmU=1*9r87xrsxB zo*;j2=GK)br4Jp*4s4Zgw*0LbT>o2yBb#0LK?7(fNyqO1(KivYk9NswL993N=Hj#Y z9sHf`N5Xd*p_SiNR(@9#zVQ9lkJ+MHZ1=fLAc6RX4LqmxD2xkafF@gQb5nJjd{;wf zLuWmQ@P~5k-?Cw?zlAw0+fOKc_mci@`Qp>JKKWTq`CMjfHBBwmZSo$qiMhVgAz`bJ zPL!W~_q*od>EA^-R`&K}4$oxPxI zI*mHHs(a<**=f>z3%R}oe`jMn@ROhUMzH9Q`^vIsr^)`ge~`=5hwG2>@6zuovcF4{ zAxuTC-=!(CzgvDAe`oxe1iJQ-`8zN3_cyRkJRs=8yepY zy5#skc6{dgZuy;;dH>HjqHW-LYk6<>x~WamXGAZF22w4UJ88^4{#=9^6E>?*_d$-h2;|IyqfIa=)3r3vzvD z>X!rWb^(di{&q9_E&Kc4?|Tov=ga;E>---4orih%Z{sqqKg!>Ce^-(Hz8e(q-*_9*)8C!A>g8J5 zej9Yzy_22V#<~F!^oF3I&-u;qo#AKFcSgqVZr}Ns&;C3v+6KC`-kZJdyO`{RF4iaQ zi-Uj5N!ct91ciQaeu$;iZ~5X-Ls00~H-SQ5oeLE5JvZKhLVh+V-$l64f*Y*< zd*XK<=99lULBSpJT}3to6xbo(6}duEWU)s;KggQzzTbJ7e}w+#6rJ&1gsVaBH!~=1 znfv9YeHY=X`|V~5iPneT^JO9GAA`ojLqPU?7l2$2{F5JiIWRc0Y0Lh(KUdZhBJm>- zBB2PrHTaL>T-o0S2W8U^%6=FBzVka9Hno51bgA|1)7z&uOqKf` z^F55UTlTxiZ^7RpzXiV=%KqL0w(I-U>0Epe_TleSXK?ZT_JLHFznG6Xh%S@;ZOdBM zIk{37(V>hHyjTfYBdKEU-oNbEWE{Jf>#ZCPjZg3iy2fF88x{o4wB z&|ZgBBj}(#zTdH6oqN9jWC$|4_kZ*=Zv8QDrYtDzKo^#aei!;Kx=*&Dp}n!I zK{AcKrvY?hIW*8FcT9llIsRkb43HjBpiS$aI!$T=`!vv9=xBi^1PZj(U`xJFnJLTn z8_Yibed-KZzCThwc)yo0?)h$aK$h=!G?erAfb91WvHd%_PNQ5&-Op9<+rEa2?{_z7 z((Cy5Ma*}9q=yP6a}b%53?;>SoXu|yN^lv!g8VSm7uxc zw(k?wMK3DL3cFom7oPN8e&Mc9z1ujxav8JLwzk%`%7>L_l!r_ECv1A&A>TExds)w7 zj;DRwwj7t8-3w&RpAoW@?rnY zSmAEn{#&4{tUINry#Kf01?%q&6&%8C&OTh}SKoi1@SgGNhwuF#m_MBnozgg~d&<=9 z+a*fYZK>Zby<^MtMQi1^$4_mX**$ft|lP4&n9&S0AqL!k}$6JYP0_ z`OXX4gD&u0mHDUV_j2$Cv)0O1dFQh5LOW@juyqe=<-c2f&*lQ%l4HB+yKRK*5%w8x zWq(_;J)E(B-EHX``wN{H$X8CB+zQ`p#?kSc;r(x4>EDiOroXkS4Z1u4p&Oz~}& z4OWyr!}eQq&PUVl4$|L!zcal5&e8W&mhX4a@6zv_KjuMhd6)Sv%DnD(spx#R@7l*e z$H@I~_$~-vwu9w>7UbibY}mkO%9X2dx%qI-0C`j6+PZ7sjlQ!nUi~igz5BZm^N+ai z|3$xxD$6d@md#|Fv2fDT)l%OXE$;nR`0c5qVAU|WafaLrw&~L*%$z8{ecJBTSEY|_ z%n!+~DakIE|NTUTt3XlqyB=FXLrFtL9mf~h0!7&cY%P`TWhGL-`M=tJSNrbw_T{@C zx#^(O4~^KWo0}V2AU$0u2s`yf14ltuEF-*@Z-RDHyVFT;5!_K(p4|kV$qox!=nnv)13!#lA0R z`|kGW`gaHU@B6i7ZF0DN?_)Pe2v?W;ZT)@b1X&vuuHUbHxK6fwXEQDPzV*}h1kgT4 zf$z${8NLe(@Ay&NBKqXk>F*r9@}TR(<=ojCTbo-t<&*0wawDaMw|HhBn`JA%v29)Z zI=Sx_%Cd*1$qMiIZO_&@w`=|asYmON-Z;NL#d)?|^@OR-pl#06K?{GsOLSz#<@Qz!1jK6b9^MP&?i1>K?;dfivT|a(_{+PrzbK0~S@*8%^{+ZM)n+BOl zNd5Cm^m&Br4~OqQ>_M^zH^}~(qyh^4@4kN=rgDLf@c41?XMpH;ZLZ&jY~T60LfF6a zbNzNylzko{`#tn@8PL|58S=tAj%dsNmRbK@rk+cK?YrOir>s4FpuL=Y3%N?ZPx!$2ebQIv z@2l2`9#sZ8G6bY+ru=?w+20}GgC@uZs&M@d`W>>DEBwCf_mJP=Q@N&o@B6@b_Q!PQ zr{DWTf22jo9sm^&f6~4)$OivshzD)Xx#hsX_@BYFf#F9U^LLIS!Kk(KX% znq?gnWq<4ab`bp`t}J^e^4;&Z8tZT7#a!pv@?1e}lkY~d zpgs%VZ^^?y9y6Z)q0M~%u;|1o{rwZ=zd!w6%{qVPlxg#%7PHT9npQqj?)TI0RjmE3 zO%qzB8=9Ky>6rZvxOl>6TP+x&O?Z*$h##)jrfDSP(1DJ|3FpoXsbq0Rim;;`tn zDU)W%UuU1&Fu8WB-0$}9=HJ`Do3qZGI&JbiscY;rnkF~2Hnp|4$^CxzyNb2EwyB|9 zs+hfEO2hnGx$n<@SF^THn9@E`noqO)1LNf%I?SMPhKZB=Kn{KO-I#U3w8_)wNv&X? z*F3Fkn%wVa-%VKiTATY@rRzZs4P>vF)-bD8?tANRhTpBf8CYvt8k)+b0@>@QG*6f7 z`yD3w{g1NjfoZb8|9n^H3iIXyTXPKL@}TcwqSK~Ko-TiseSYJVnn`lM+rBe=Z~M-` zI&0$8Y4fCxLY&^*-q9lW`{{2J*0P4?h6<@X_KL~%3mW9UKmBdY+CFJ=$3*Gh|3UWr zhS>A_JAZ2m7jTg4 zxB735yQEY2U?VfA_IW>X`smF>}$p_0qyKzH4!{cXqVP zHPw`qrG6I&t)VLU?#Cr`_J^Ht!h`SSq7y;t`#>hn-yki#;O@rMN75(utXU&}gnf3~ zl-ky|j*d3Drn=(tG-=@k>$HuA(tc6dS@MDG)f1X#%JKPp@BYO2L+uOm54-PtqDLSD zJ>T86W&bEblKcgAw%YG}vV7mG_q_ey{f=?}#~+73GJo&fBl`H@$qT#WU3VY!dno-~ z_V9OR5Dfm#{9D#E)XOGC{wYLGZ|L=I=7{z3)UL6SmyFyKT$f!`mIg zm&->L#<>Pb|KREp4UD_Ir$~PPlI>TIN$=T~WNDd{7$ML1JN9?!ho5yH8NXY6XJp>; zyHs>P+jqXB*S|B!|G2<@Y{BZIa@)Ua$R5;|4QKn!8(^;}|K~D$SZ%78T)YZbm=D*= z?k|kXe|%>?B=+MV+pOu+XUQ*PpWZR4W3t@uydT?GXSUYQE0A_#E2yuiZI%C>_h%bx zM{`F@y;K2v&Gh;E;q~42j~6Rn|8MuQpVPmKGG6*F@V)=L0Q0NgF{0Ot zxqjAv@Bdq`C<|h~2;=$_uEO>Ag%4N2@0jnRKgGU_3T^pO@>}h@n(%`&zhgvyxG2ls znI`*t0h{oJ?~A_AXPrK6>XbQBYuV>CPN|Sv}FFCD)x|V_T;IvCdhx!{aM2L zT~b+gpSJAp7`E!B+Qts~-{F6qesh7=+jllktCsfuE+zZjx{$?`r+>8`+z_S6F}e&Gw7~ei1-hf6MeH`J4V{{8k%s%qq>B zoF)BR2XfFq31x)nMbe4cTMY_)H9XiV&B>W*QBql4Rh_2&u4e)$_TWV=4<=y zUiLlajrME%URj}Y-(|m-eU}lQ_w09!=#%dnvcl`W=d!OXTvvIp|4{#$rAyXw2+vFM z=DG`6qHCN3KF;x+ZAffjQ1H&1a^IJOcd-05VHciP2Tr@{-x+0vXCF8$D;$2n^7jYP z18j3AO`1MM{zv0ax$l}>6MChlH&3pU3uCKnX{m3L|I_$ajp17ItGGY`1VU1FH3RxDZzF;}Tx*;V{?tmts#29lSk3zISc+ zg3b*bx7#BQ>PqWIgj%=Dccyih^=5KdPdF6%MEdv3o1zy$$`fi=t?2x2EITVFr*{We zPJ%RF+4ln<7{5>c%KUxx9ppNF2DsEit<#|;9<*BD53APqi~dLhwSQ*H@82N%Crt%Z z_wxn)XDD=F_|FKf+d<5m4GhfRIll9Vf-3Z>Qy}%b!f$zK=j`xda3^evw+u#dagg>i@Cn*{tgzs6(M^K)IzcOuFmD) z&Bf>T-4UsZw_dp2_k# ze%FFk4i|pd2}eBsp)UG8L{>QC?uOLI@44DL+dDa$Yl}-$q=h5Cb8>;o>fe1VAQdxU zDmpqjT55_*kW}#5d|wW#9L|9%hlk%+iB9b6?dzAHG;7hKP13>(?rlhY^d3~x>$4@Pex3eow@R8@c)A-4`?8lF{LVLdpd3@*nZuXr+ zc+2;ljiL|FE!%ZKUO4AaC~MoqNo_NwU$af0G-=v|j)`sk@`~RXcAeVxxaXiGc!=GJ zt-iUXu}i+jyEL)7;J3wDI(wO>1^7mH%$? z+lW&RQT~q>cqJ5H9v!pEa>ycB#DZi}4;U@uom(0JbOTYMjOEi0W&a}*F94f2Imu{0Y{mR*vtxN8_b8H@?^0cy)^v^Lb$)HZH2J3f2@SKP_ka)G z>XP5r6@KP7yR?eGyHUG*S9N!CPc?^8|8e(E(qKEk*Is*e^$XZe#i!r-o_*(^$@QD( zo9K1f&nMUqE3np2oYFE=dK=rUNz-RNv zuJhkxMW3Bz-!`MHsJN~yL7uPoC&y*R?_5_uUHdM0jrqI64>!@3&a&Sf_P>x_ZYKNN z&4MdmoooMZ2R878^mkXWRnD^C8QGV|ur^GZ&@@we4%^HLQ>IOlU%rd=H={ZiNVdpK zHjk~ksjjJ2KG-niDeIKhrWw`Jc@|v1i`2RJemDJ4zWrV27UQM|-*xUYe~nm=-&sJ*SWYX0&d_Cl!FBSxuk3f731H1SzuEV4`6|kOX9w+4|E;{B?7Jms zAmcmJcb#&^@4??$nZIX?osN+GuK1meJxKN>sC53#_TBtD8>mp9A%Aj%>~FU3B5a^@ zkwC5y0UHQuowNTo|IL07V*GE#sa#!+Z@=5T{%-z?@khjWS?2H8Kr8TWK047OKNFm& zEZC}BI%}Kcv#K+Ty`&w(4}9s6pZbG?ede@jv*b6je|J&)&i32-w}GnSZ|i2cuIlcz zo@$QYPLtm%e>au>E%yDNXg~Y=zCFioNZ&XRqTD0j&d&E^PxsZ8@4p{-|GHf0(s#-4 zGrmji{Vwx8|GSLv{#Rm8xqg_lf1mls{yVqqEzqHrple0lWX(gk{y4Dzp7q0%bwX$J zvwe94o zT?q<`G4Vd~!ux+0{!S46;jb*aR9p6szY15O57+O&AGdqC4u5~beCfyS?}l76dM8Yl ze{kSI7;D><>77%hH?U2e&_88j$As32@|y2iXVx|K)=P)7)i-t4*2!zBv$i&I@qG^s zf)?a8_r5dU|E|Xsgj$Y=f=lrhP${l5=fN{bDQ@%I08)y_flKk+4O~?-Hl%%zmp#_8 zgX4Pus1$bvmE!)OQk?(08`qBGrxwRSOYtASzH>4DVL2qr{QDhrvkl*mFW-e3e+PaS zX8vvc*}g4=(0E;A{QC)L!x7(iJz2)zS>JV;e@B4NX`du3^qcpXaKUe* z3@*^I=Cbz~fA>FPR;iTzKKVZ5pXTrPnEzydpDg-)9ou&y+289_xYB*Nel~%^K?!u5 z;U69oF20{l-$faJ2Y(l3{%xBA;`Va={`9?%`M0mREZ@(jUasH2zV|Z!ex(7C`xE&? zfccMSIFzUU{RQ(M2@QzKKOo-kSq8FvKdUY={(kl7>m%mhaiOw&KP$dRaDi@s z-?893H*tr=pUNNqzq>GYf7fN6`{TbU7vJwipm;s`y^Z-MI97i*f@10nD5AcDBI>sr zME)`J_c&u&zTXcf$qIe zN>mUFPknD^{$63m#rGSW%1-^@V!j316~^~F7ZlAWzwcqb502#Dcc4*u^bzy-q)OS} zPk%f*aQpz{$)m@QGJn?sC!ya-kVJIy`*Gm~-xuRcL%$c@TY6t80d)2DgR+OR!V7*g zvTTxti2gQvT=Ka5@uo+@IlmQtn~M6$ewP&Ull?9%7AGrw<#+gRCXi5gk0@Bfx@(Nz zxgIh9R{X6a3fZUeJH>)4N1f~Y+9uIBS(v%&t}&XO`!4i|`Ji1J*LQBQ1hzWRRBbXl zxN6!KE&H2^1uB*T6}!pB_uKS7W5OfmvWK!@=5L0_J03HeBHYCHd-46H_l15lfL$z{ zfg~k-!5!>SzTZ06KnHJ4U{*zUA>WUc_Zbr(GnfBZDe5N+=KW@U#BA_mrD&Wi-|wQu z8x{)vW_>jA@#IIsFAN^a3g39)C%XM6SG*UO@Qc^}AVuF--eat~$2{TtO7NQgA2aSV z{ua2;tomaHbfXO)NNCZ0<{bzTkb|<$F@LpdTzo$(ZZQ5) z1f5F8{JSbxmXEJ->W?{7zuQe^`(3b-U2cK-e;&?m9`5hqT;Kb+zlZ;3zdehG=X>98 z`|o-@ygvm+_Xsn3F)=VQurkCjtYY}W@PpwGqc)=vV*=w0#@CGRnIxFz`mFV=Q(3REaj`kF)v&d*b+cV&=V0e! z7h)G>H)1zqw`NaguVG)reuDiR`xW*Z9BLe?9GM*X92Fe(98)=#a_r-{&+&{ijdKR) zM$WsOpSbwB{JDa;PIKMly36&6JDWS7yPUg*yMeofyMw!j`v{LZk2a41k0Z}yp4mK$ zcvkYP=ef=Egy$vCUtV@z0bUheeO`NB7hZ4PAl}Km(|OnNZsXm>yN~xE?=e0;J|Vs! zzB<08d>{D!^0V=q@E7oR@z3F3%72sp8UGvp5By&RxCQtGgapI{^aZR1Tm+H@$^~i# z)(Kn@xG(Tn;Ey1iAg`dbpt_)rpn;&7ppBq|pqrqdV2xmdV4L73!F_^91kVXx6TC0@ zSn#2fw@{!^iBPl99HAvbYlSuo?G!pLbXDl4&^@82LNA4W3H=jh z5#|&Y6c!a$7S!eNDYT7$%>g8)2^0R}%Hv@Ib zPyYU3y6ks-v+s<*&3>!v>;2Yl0o~kJ)Kkat+i>Cwqwng{znS1S0l}{7+s`#g{<{m; zZ%66h4!_xSe|vsU=L+c!;`r@5@jHXjcQ?p+zayITC)nmp z?w>ME{=2|O*1o>p{s~gkTPD@Zsk2qJwAa?jTWPR%bab}0Ni|Mvohru-DgU@Ham~i2 zNddd2lt@`}uAk)=eRg=;xno%yJtxVZKf*eFdhg^JQY*}4e`i^6WvO$0=VNp8W^HL{ zZ*7t)Wq&5Soo&s+ru^dK+KkxFSyO7{`F+@TI*ZudgN34Hbs4u=5BP9<^CSP z_3(R$JnjpkL%uVces_}N`|kCf@#A-~{-?6AQ%0$A#whpHneyDC-)+CM-~2BAoeO+1 zxjc0*CfDeDqx;=gn%iD>lbLLa7Z+cnB^P%x`?jp`)eh3XRlJpdOSZ{(m3Pw|&1W zYF=>SQU|E-Ij3hf$K}3dC+vG-e(D}{@I%eDRH-q|b%kSx2ZlG)LZ6g z)ZbZUt=Xzuni|{Xf6M;9{af<;ZPuynEmNwctw5(!*LTTx^tAW2$bAp_6KVU~m$kj6 z`+Fu=6KLYg?Dss&9@g)QvL-oPzo)ZXbp1B{K96-;OT(l}X-&4;mhZA$po6Uge;@sw z^7{^JXGeE?yHx$uhUs#j*yc{2I;mg&yZ!g&tWSS0_^!tFh;8Q7sWariFMPuO-Qo9g zZZ=n0?%#aB{aO9KyR&@{<@)XJ!~UD+yFcsX)|SaN(nf4`%`FY>J#8QxRDS3Gw*1|U zI6Vh;TF-a!?~$x0SIVAb|1SPJl3O$;Zqbg78<*djF8_WuYZ<$CNSv!2AAAu%SxflU zxwxOP&75{q7JT+{6Zq1_>PGOvytco$|F-+Sopo|M=wMzWwuaBL-y5KZ@`~DnJkZoC z|GVY)J=X8nj>`VYWv`poI9={K+l(obKpRq8zTaj2eHDC!$&Wnt=?zos<@oNi&6zZH z;sp8ccYegN{t1Jg2m4bVlwM{oTk~KWR$MV(Dj~wTaXFyZSo&<$tSvpUir9#r`wzrM@ev z-}r4R_j@|%s+J$TqTe&VE3)6+lh zy(hR#plae#)Nudi^yd2EVZ(LSP4@TA@7~{c+i;yMlKs8= zyX*IhV9`GdK|7^tTI7GX{YgyM$u;5VYVYc3hn&dI9WL9*ZNZhS&c)riC{rh>N>M_IE$Kmt|F$PWt*=a^Le7%igs4Zh7qT%vG!8xUpP3xcN4#FI$FnEBHo0 z$+?xF`vB#IHxVaSz9K6=0=}^*G~6$O>CVc|J(k1*>{ugIjj>V^-P!ux+I}q&VsF` zrJ=P={x|Dyt>3KQwOA*$wM?y%HUZaxZ9Q!hTI9bQ{m%Mr_q&3%wWX^SRKqk*m*bmK zC&#^3wyptGrPg#;$#T!|Fq@CCe@P-R;45x$pPB-!uCz``hh%fUG}z z-L!^ja^IQS*ZpSr-7WRIJL5OwZ>Dy+hK7bZd9dsZIlj2YXWv!Ne^-45x^Dh^#djIz zAKQ=*?8Dw%j^p~>_gz{Pav)#b?}{1hkQ4fT|AMxoXMC@yV}~}GXH1#G{e4;s7x#C2 z+1`H85~1lWphNvDxO-*4r-82Q6lH!U7BBlfjQxA??^xD`X%k!LgU*|uI%UR$_KBd& zfUCdvd{6ow$~tLcANVrhd@emU&|ScFpot}8*6**rJ9GWjQk3Opt?vRYt>ymC{-f?Y zJNI|n?{BrZxRqrOYs+%~-tqm@cQ;qWK3@jm9p4$he-fR?B_~{A3*PQ4yyFU&aK$pN zFfPj+(9OBrt?kiV+~1kLANdM8=kz-_=m^z=VtumQ?6W|ngMp4LcjJria`(SWJ>x#Z zb-@-gF2BfG_U7dmvP-zQLFb$)erNv?P|p3G4}Mn1kBytTxIu^GaEqpRab1z+Qeb%{^1m18$bN?| z$5Ug!2U?Do0A7x##>o9WpS7>Q7j#@(6Zp8cnikM;ZQPJnojf=Dj7IL-X^q@YTztE@ zdbzm2vojw0uKayJ=s0wdAMT>xJzIaXy~N$|0`<(GSGoM&`Q1eH0i@L8{>~!H_q~_x zd(6{E-~A@Y_a5!u2)gaXrCs;+?>On-9iR&LJG2EOo-SoHV_h|V`EWZtZ z3w;;=ZuH&gJBT&}(Z9ui8~rx=Ed-+Fxt~Io5`Ydr^WoYl3%b%_vMe{~u!p7}=SBZ` zHpqUTz*bY;{Pf?YtiL_Kt8;$mQgy6LgY(#k8s0aWzPQI=h&EnCNySh8~CrbXPM&q3>ip3Cz676ol- zTk<2Gd55{^X|}mjW=!sv|Nipl(eJ^sUTjt1wPwFx{yoat+1CBtNEWnri7$l9Q4w@h z+}`gjvfL_M!HTlntITA%E4g;cav%HdCYn~dVAaY+3)gR0R0`c*ze<)*%$$pRJ=aa{ zP%azrk+xbtq`rHA&bHP1uEb?y&&ADJSJ&2DA?3mTOqScT@s)Sk5ASE(huDrRE{=~* zDhmloo4L7Gep*}W#9C=fw#LThhF*DY$Q_xWn`N;07KTY{_}Tpykr%$-@LS}h{rh_>HZGklC%nG_lyiTue7`38$4XK5 zc7*H?d-m^+hL=Fc@fbD8e%E1p4>~!CyX!|8>vuaYt7cj5$St5^HB(vk{C8j3pHbi0 zm1Vzxw~GAZ_Td7ZQ~+99BE|hf8`L)CKF@Wrm+SI(`S07m%QJJs)_ml3)^Z=>nkdg* z%5{;uwy~jBo?A=SB8Q8cT~n5O2Um82H1~J6?+j1A`*I)qQ7wwPFQIu#gLDL2c}sm= zt32Ai1a7v=vfOO*CQqNi{X_YWgXq(PpyeHXYr7!JJ0cJ2Nb5$1TDPGt@8E`9BgXu_ zasnt`eH3N6zk7FoxBIQxE6WW!H)@}vEH`K*qj^%j9QV@*S?&eBvfSVE*=K+{Gbh<+ zHs*8vsR@^Ds+IR;uLGY)EB5EiR4!5I_%QcXuKLc&jnk#M*MKh12AzoaJ@>n$@E-2# zjo&$cJT2!=tX;LD~~%+Zf8)>o?Ge=`}C$s4IS-Woo#a5H@+v{ zWLytggv0#Zms|dXEVtZKWm)bx@SWS-wf?f)pyQXdz~>vALuv&v8(Hq}pG05Fa{rKh zFU$SV;qIrq_K&#l+i-C|DCYXUHH_?xWV_@R6%a(;hr`_ z{$i1=(GRT&vcDPGs%u*sTjaUf&o9pp3dk+mC*G}u0(JQxW%I4Yo*DRZ}c+vdj9Nf|;_N-nbe-yl;Pp++t`^4q;@5)@< zkOP{f<+;DJfA{$Wy8eRuJHyZ9?+lFGC$wd`XZF-jt&`?v`!2@C-O?mqoRgUGTT1%3 zgW<#PYSr@X8@r$MujSxw6#ee<@yU0g8%f7~SIP^&*}ZD{p3_p_*||ZdXhDwQMLt{JtRa=(SkS-II}e`jQ!-qSRtUOJGiuDP+H zQ@-jqBP%!P0-@dCEo8abYa1KtzH`ZPTSFEhW@X6-u~&nJeQrJZt|HG3Iv=d`J2SVl zqAd44Wm)du=7!e4*}Ydp?a7rB{^XaN7+@#$TZsENcO`3WXJd1%R62X@)cTpda^Jb< zvU01+|2Fz<$XZs_UeO>G;ltIR`JM55x77FUwci=Iw;ku=ZaSY@_Fd`h)eGF9Rochd zXEaRXZfvNN=dN#Rst5H1HurKpk!9wVn)aPlmQMoGuAN&cQNw+z@e>z!y0cqyw6i>) ztD-D-Q+<0+JNHcaBkbIA;OhuMmkG{noXQP8V)T1_Iron&#_xRhnD=r2kkXdr1|4-g zzh^!N_iw)M6^dWE*=tl~x!HVVx!Jx4$Z~_uzW&b4&Dz)B!+mc<>SOro&DJS(t=xYm zK}&4zZL;4Jzl(BDncgMOEp+Jqt4H6R9)D+lBz(W&hXwa<=#AyqKzAp|FmwOe#oE=; z)zJaTaD1X0*rsyJ3BUPa%io4rG>;k%gZ6SnEx(LZ*vO_8mU z<7PbcUGe*Z?~2Ua9jz^Lzhi!fHE@G=`F!ENr7X+M_&xL?^Y={d@BF1)+}~xtmwlJx zKE=hz{asJ?QW^Km?}c34jg2+(+=}2!c(3(xZT=C%%q{kUZT^%QphmUJ_YPL>30zaS z*}sQ!aYI`hkcJ6p81lh)!E>Ois^q!9S4r1@Un%Neu;wxD>wL{7Vhs(-Qs4weOm;+^Vci)40EfOg!?P_xn|;??T+` z7kn3%C9?A3%7#Y|Z7#TPjco-NN_!tBj7#V~Zgc%qa#2CaF7#SoO6c`v8 zR2Wnl7#Y+V)EO8Vv>3D*7#VaKj2RdiOc_iW7#YmLrdTo9F)%VXGPp1>GPp4WGB7fP zF~l%1GQ=^&GcYnFF(ffCGNdqMGcYpbGUPEZG88bBFfcNdG1M_IGIBC^YCgV&7M#kBUa~T*JmoP44U}RjyxR!yD zaXsUD21dq>jC&Xu84oaiXJBO7&vcuCndueNF9v1?CI(KX{Y*z0n3#?;on&BQI?Z&N zfsyGP(+vhDrdv$67#NveF@0oUWctGNg@KXj2h$G*My8)kzZgI>f(#5?3{x17FfhBg z`GhctWTYk)F{tDumgF(GFtC7P>;HcSW(EcZb_PBME(S)=@E`>SF$M;(C?f+013#F} z1abp|7z4AjV~7HSlCQsy0)t+Vzpny=6*5TVc=#EgtA!~co>ABY&Hg7 z24Mz~?9`$>hAJ@G0w(*wBwDn3l%Cn0^VYMuj1Wp@gA{VGqMSMiE9m#t6n)j7J#%F=;SaF*z`$F->5a z$8>_}6Eg#|9e#iWUg^fjlMUBOQ#f>F^frH8Z|0^cH|1X(> z|G#7k{r`$7{Qoni=>LzHV*fv3ivNF)fte}#|4*ja|38`H|Nmg%WBl{~CzJjEcT5id zzcK~?|G^ac|2tFo|F6iZnEL*IW$OR`nrY(yPfW}Ie_&eq{~H4bkw|0mPR|GyY`8GrtN#rXgKYbM73znJX*-(&Lo|C=fJ{|l(Q zo-#%Mf6f&9|20$m|Hn+r|9@jz`Tqw48{^OaU!msyV2b|#g(>#`7pD0CpBT6pfBt{T z`2YU{Cj0-_nf(6$U<&^KkSX;46Q=P0cbTI9KW2*k{|xL$0meW7?=$}U|Cq_)|0^c< z|G$|0{_kaq{{IbX))%J6|F4+({y$;r|Nnq#;{PX1lm35aS_XFe3#OGIyO`|%zX1Cz z`2TCB(Eo3k!vDWuivItMDfa&hruhGln3n(l0rn*yf)lAoCz!1kSF z3jY6|DfIt)rttr7n4O`1}7y#{d7XGcYp#|NoVN zlkvy@myAFEe`oyl{~hC>|Hl~r{{P1K@Bb+#hW{^_82|rZ^82q2wg;r@G2^fQ-x&Y= zzsLCZ{};x8|8Frd{C~s5`2P!2(EpcAVgG+IFhf%f*tcMPAoqdvfqeJ~s_#A%!~eHX zeQ%h;{{IH6e8%|m|9!?^|GzN)`G1}9@BdGX|NdWry5l2L(Ek@qVgG-EZTQ6$`u{gm z`2U{_+>Af|KVtm(|0d(F|34Xj|NqYT=l=u7zyIGd{`-HAiQ)ei;vQxc|Svs_!!X{C|n@*ME>| zkbiD4{{8=o@!$U&Obq`YF){vsz!dfW2~*tv&+t6*iz)v9XK?7hgogfi#{d7%fzv3+ zulE>#|NjJzwg3N5GBN)D4vv>k46KYl|378?_5V5J@Bg0}|Np-TiVLvZd$4K0z~S`! z|69iY|8Ig#`^fm~|5L`_{~s~_`46^(iQ)ebu#PWa`Ol2M{(ofr{r@E>zcT&@$K5Zm z{3iw`#y|gWGyePk49x$`z?6IfRH|gm$oRv+#URDN@c--oU!WR@6#W13|Hq`L2dVx4 zh@&Eb%5B{J2fB*l_|KI+9Bu4N5`~ScG|M>sn|K}jp|DXK-@&7xBg%AH< z@PFR_eg7YU)cn87!0`X)|F8eg{Gb2-_WvLMzk)Hqov_ZS%d&-?%Q|BL_c!6HBZ|NOrn6r2AK z{NInRivXV~@d+qhq_0aqz`z2kq5t0p#qs~2|9^tR;|G*vN(85$^mXYc7&t-o@Bbel z6%f;5tpDHse}%>N|6`yu#=!9Z<^RJB4F4ZORf1`ldIkna+(P^d@(Tk417l(y$VCi4 z7=JM_FtIW5FbOe9Fv&5gFzGRwFj+ALFr_igVOqqrf@vMo7N%WH2biugyI zk4=S5i_L(|jLn5Dh%JFFkFAESi){wmJhmllyVzOSo!C9tt2j4sKH?JLQsc7V^5Tl& z%HwL_n#8q)Ya7=Iu3OwG+-=+|xKDAv;o;*6;OXNz!^_3%!P~|=hj$b23Eq3WPk7() ze&PMa$H2$N$HOPaC&Q=2r@^PkXToR2=fhXVSHri8Zv)>hz5{&6_|EWM;=93jkM9ZJ zD}EM!E`9-iF@70-C4LQlJ$@5@H~t9ze*!uJj|6)J=Lv2R{3RqHv`lD^&^e(eLf?dW zgyn<{gq?&vg#Cm=grkHLgwup`go}hLgzJP`gu8?%2u~BZ|l3bDkl5&zdl1`EVl5vtf42%rh{(mKkWMbID zpo5{Bm0>LdFT*+pPKNaitPGnOI2gA5|H*(|l$Rm@|9ghg|F0R=GO#fG`2QE&-tqhY zi3w4+KZmwOAa(oJ|9=@68PrHjJ>`!XOR~Pcer4|GybZ|Nmo{{Qo1v zs{h{@)-nh(tYhG1SkJ)Au#tg{VKW0S!oMa1$r7)t;Dg|=^hGKK#C z32H~6v=Uj6O=jB8Aj*I$694}<12>8qdj?IWUOh&Q2u{EL&g9743+=)GgSTG z&#>+PM@IJliy1loFK4p*zkU?-l7W%Q@BbSH9){)re=@B4zn5Y4 z|0mGcm0(!MAjzX$l|J@Az z|93M?_`jQB;{V+Ylm72znDT!w!_@zK8K(W;%`pA{ZiX5EcQefVznfv!|J@9;|Lor|N9u0{r>^>&5Hj& z2>NKt|KDI=ZU6s+VaNX;3_JgyW7zfo2gC0FKN$A>|G}{L{||#-|Nn#G!2fd$ z2mhaAIQ0J@iu$8hxjIfi5Z&oLbTe~#hA|J@8H|LHoVK&ivoa zaQ6RhhI9XSGo1gwo8iL$-3%B1?`F94e>cPB|GOEk{6EKV_5TlsYyU4ZT>pQL;l}@S z44}}x_5U2h?f?53?)=}+aQFXyhI{|_Gu;2bpW(s({os&)^#3u#kJ3HyFPBzrpbJ{|$z3|8FpS|9^ww$N!5AKmT81`1Su1!|(r>82dtoW2VagkC`_A|H8E8{}(dS8R;n#R9X`%!3Mt?C5FlW4>PR# zf16?T|4$5Sz@@M-!#W00hV=~M3>z8v7&bEqGHm<*h2iG^2MiDYzhQXv{}aQf|L+)n z{D02)i$1tTL1qE(}w>~nKu7_&9vqJYo>kw-!X77tor|zVJ(9Y!#V~*XuZwFu$h66;pYDz z3=jYR9W*Kg7$*OJ!LXJA6#K%^aN>s6OFtPN{eR8y>HihRAOC+d{`~(Q)DLE2{QsK? z6c(HRzhc_*{}ls2L-YT|3@!f`F)aW8pJCPiJ<#%ylVL3bDDyYis9k^TO(FCtcK%&wi!^{(&USR>g>M^Obpw=E$++UnjF-w-Ue=6 zqm!U^J}6EwRs06)gpfZO7@6$E|G#3|`u{frBa<%!6S!4}Vge%v0}GQK0~eDg0~1p)11nP~0}E3) z11r;325zVeKz{knWdHvPln?SD#9f3)Hik6}5)5k@&QVfg?TNpU; zklR2mWBW z5NBA;z`(GEK^&UXAi6eyOC@oJO$-ndwlD}WY-eC)*ulWcu#16}VK)OS!yX1!hP@1| z4Eq>Z8TK=rJXM*tGsuEt0L9%*_6%H1-VDr4KA>?z22Q3>22Q4M22Q4}3~UU# z4BZSo49h@u5Cadx3I-mAl?+@As~ET#Rx@xhtYP3n^A8upMg}g1O$?y2j*Vdp11rOJ z1|EhT3_J|G7MznYfrY70gvpLUkjb7w zoXM3zfXS1Ao5`C&gvp0NgejOoj46~sj47N!oGFiigQys3Kb!*ck*-T)dfqjgg&!gOP)Qm&pzs|2#~t44h1!49ra447^M}47^Oi4E#)? z4E#*t4E#)68KjxEgJ*RhD@3*qH1XSfHT=3Mm059|i%WkP>6s${@?Moq-!iIAG>OP&tZl z9mG$dd8)MxDCG>;JQNY8?F@1ZEDU}B|1g|pU|_h*zzQy*KsKPL1IH1n2=OHlLgi0z z>4lqQ1NHrx?EgPy3jY5J+JAY%wDtcZy!s#|Ak0)y$g(p9GcYiPGB7ZOGcba}`u{KJ zoCv5a{s1=ZAGm(_$7KKiDwGd$=RXuSC&Q!v{}?{~|G@AAJTvr!$?yL==seO(rttqD zw|!(#U}$3CWoTyLWN2X!XXs$yWawjHVVJliv2)-x<&*vL@Au!%vFVKYMpc--kQgDAsk22O@E3@i+18H5$%#is12}Az>mke9L>mxuiEDZVocY;T^Kx1B?{vQK}1js*P z(9sbQhK&ro;MO{*1i~%@u}_depFy3$fI*ePm_eGsltGH2<^M&7$^XwW%>92JT0^lg ztYZ*oSkGV%9dlu0*z*4u!?yn~7(V@f#PH+)Lk0l`eFjwq0|rF~V+L^slmGu2Oc}%( zCjY+!E)&-ZUIvr@zZgux zDIAmv68~QWk1c}Y5}gGK^_$?hhLNDrAJC{U2RK!Nlt(yHiFwn5)9k^{{g2Ia`hry0C6RRWCo7~fkwtZ z{eQ*);=N=j{r`hu3j-4aD?{S{`waR2?=h4zurh$hSQ(hWY5Frm{{L4DrT;ltJjHiE|pxf!-F2!iw7M+PR3 zI}9ug48FhomNAGkcrq~j|Nj5e|8M`d|Nr>^$^R|?fBk>;|L6ZV|6l%p{r~CzU;hvP zKlp$D|409S{eSuY&i^z2kNn^L|07t{)BjihAOC;k|MmYL|G)YF?EmincmMzS|Nj5y z|L?&fpCGeDl#&16BJ}_N_Wuil2Vwnx2b*_-@R7;?e?YwdZ~j03|Mvfj|1bVO`v2qq zum2zZfBgRqBtt6x|Cxc|KPU&|)%gDn0|RW{3|%3}1O|rx&;CF7|NQ@>|BwFP{{QL! zr~i-tzx@C8|4)c}(e>csgXRcfa{vE;bc5#k{(t@d8D@!T||6icFIuM5G1JTf# zIuH{JhUvv3g;fY-`v0Ghd0VUsz=Ho@GBAK*4$MI#ATz!HU;TdyPF2tUKluOg|7UO< ze*OO!WImb(lDYqX|No6k)BnFXWqyHE&kxWnHcSm}b6_e^>HpvV-vP~!{{IIO|NrFw z%l{AmpZkC2|Jnb?|3Ci!11$Rd|LgzP{+|P}K`H6~)Bi93{{f{ckO(Mcfx_Vbc~~ri zMA0#5K9|@u4hrx8{r^Ayzwv+O{~!PF|Nrs-`2S=7&;8%^|HuC+|EK()`v1)TFaJ;c zU-EzP|DONr|G)nK>;L`#xBu_@-}}Gk|Ed44|G)nK{D05?RsVne|MLIG|4-n#d$jrb z|KQT#f6V`H|Gz=}iSA}pJ}9RUk=I^>=A=<|f_R`*3o?O$;s5jh5C6aT|K$JU|98Q8 z?dktl|G)hIg)j6#CLrVge?ajCa`pf3|DS=){sqo!@BjY<@le#hVqgH3QrL18B(?ni z`v3d?FaN)R!U1?ozzWslS(E0y2y1oDZfl~}pDT+`Hn$riR_y2GHzxe;=|0{4f zef|II|67pBptS{|o=`|9=Lt3pWXg1(-a-%^(rnsp9|7|6ic^)BlhE z-~ay$TCu^v08SZyQB47vgbn}y0m_#!8Bomz3hDpfz;)&uxHwAA!7NEZsSBbOl=dKD z_5aELTMP{U?|@cj{Qvv^`~TOFwHOd}AoBm$|9?Osjha6GzXRnCkUR+gU-SR=|26-Q z{y+Zz!2gq={0tU-@c+R7v;RT;RtB&g%fPkP2e90?|92P|{y%15`+xR7DCNIrU;z8; z{r@fhmoYH>U-N%61H=E5|9AhN3+BH8w=(`RF#P}ff6xEJ;MFe&{@?z8<^Svd?;te- z$X6hpZ|9k&${=WuuJ2?M*0;LzQny;W71!6%k$d@1%$Q>XWI|ik2^jO0k z`;b)n{~ySY2=kC#iV!89_5V94_DIWTAk+WLcl@c+#JPyf&UfAIgo|C^xodQj1? z|L^^OkK0^`Ds=My8OYi-NJud-{6F^pJg8m-rv|Cjz>{(tWOGf+zf+#-7O|1N079Y_bc`2Qb>X$15$S%bzK8JrKfY-5mQ zFlS)+zvTbB{~P}Q{{QO#OHeKZhuPczXa2wV|NH;P|8M_4{{Q~}!~b9Y|M~yt|2zC; z5COYErS0;Gr|zx;pt|E>SO|G)kJ^8eNUZ~xx`m7D*+ z{eSZR-v3|!U;Kaj{{yJyPuO&H760e|{{k+hUx8A^|F8ew|G)JA-Tw>VGXC@bxBst! zT4bP_<^SLR@BZIsVEF%mxYiuHO&~tl)!=vr@#uuP7$h0Y7`Pd@7(g3sOc=}<92mG5 zKs#t0859`87UpnVV!#mo$#{T7^H4rmVv0|OhF4I()I zUuR(We~p0w+-3l^vp{Q3A$<>UUPQ{J&tYW?NFxM8N<9dh_T>NL|Ns6!%fNuJ_5bVt zzyIHZmzALY|6547fpQ?Si$JyF|Cj$?Kx*y(w?T6MUw}lxtf$}=!rwtHI1nF%>5(Qu zp%1bPT$a53zxMx6a4G@yF5mw@`~UU-)Bj)m|M~v|xa@oT|Nj3E|9}7g^Zzv{wLtWd zNB&>({|%^3_y6htr~m(e)8y&@ul}F@fAjyZ|L_05{(t%Z8)%yR^8eNUyZ?Xve+Df} zh^Xn&-2`4Sd_b|sF!GOh;7dH4Un{C^i5m$(1_g~l*wmL61hL3;cjVJ$Im4-+f~YLkJ?0<{Ym7*N|n z;2iiERO5hD{J+Y;4DmHMmD~aM6izcR{67uK5uh=o|L-8B6{MU3rB{$XP@m-gGg!|U z?t-2FzyIG0kq43g|A2h;|2C*b1M@*6cW?jyg~koIhXWFaVQ~0@cM^bH35pT845$<( zkV_!$gz3Od|Nn_xBH>ntP3HeUaGM02=CR3Rih;@&Oi{Xum=S54AcGA<1cN+-5Q7LF z9r6gd|6du{|9@c+`2Y3)xBtHx)EIpJzh($z@cIAoKfFH!Rm}mW!F43K%}6g3#dl?G%KKkHnTHKq>0~hyU*(=0j5Z z|M!s83o#4a4u$q6{{LfOGWZ1=`?ua@W5poOAP+7{UV-ueL^Y}8|2O}?5FT&AW$OQ< z|L^|?wThnpfAs&#f6!RkPjC+wv`Yvy3Iz^BoVt(yfAIg@|Cj$C|9|lR61cwj39H$0 z=|PD9Kk)zN|3lyzj{E%{~p$A1l1hip5*=iPavf~*gVj9{Bv-t_$D|6A3|LNs_B0I{{#&~ z(2Ut@G?RaT>U_k`D42^7G-yr?#skOh%l{y|!F3GSZqT^&3sCFm|6R}?w*OC{bquIZ z`u_jpe{j76YEArqgTrpN{{Jy}$KB=sH^F5Jq{RjbwIBaK!OGhIU;jTtbNM$&e85Ujh#i!YU_Y;8VEDfq zVG^h<`TzF+SN|{nKLZo}{{ZaPhoJcX{~kGoLsb0V{eK&j1<8+Z|3CWw02D(|(Nq7w zg8SlU{+|Z5SN>lB`5rVI`Tqx`EQY8fiDc4V1uCJ{_9I6yn+ zAt@Xr3&Lpea|hHD0f~b!B!vFo`Tq@}3f6W5mlcQ>`a6(%82)6?0~dH4|H=Os{~!N<2hQ=&{(oU$(mDrLQ)7OGfdgDiJ^26i|K9&o{`dU<$H4jj z$p2&ixBox#e-Q)A{|*0-f=ie;|9^r;JYjaC(vWb1xBxtF^A%RsLDCDV| zT;m@7{}Yi5p?aV-E_j6H{{L%`mcaj4;6Cg#@Z17)jFf@l|IPm||GxwECm?$N|NH;z z|8Gzl0fi?hcQG*hfAAkP%L6LG-h$!=q7p`e!sq`_aL@Vf|I47-hJgV*D+=mazXGLW zNWJ?1=l?VRZ~edb{|dA$2aR03`v3g@oB!`XVfg?4|F{27|9|}d&i_0Aul_&%|2s$& zW(#-(2h@-Hhuk9r&q2Khk0QPK|N8$Iq_TPc|J(oX|Gx@y9RmZn-rxU!*Z*Vxul_&C zz@!dZQO#g>$vlWb5S;Ix|Gx(sbAsCjvgs+P?n4#<*O50tqr{*&2bj$N$B?lU)OHRi z^!}d&sROlJKx)Ay?0xX*91Ng11J$4ZA2P81zxn?!xa|4(|0<|d0nb{2^A}jxQ?N;o zKz%p{2FQpUC?-L2ApHLcD0U&WJg7bdm$-izSpWa}{~Q#zAT=-y>h(j|p!)Ow`~QC! zSiobXcOfwXkpsmRq%99EGvECOnfLSmso|Fi$kGB7bP{Rf2?Xr0DeNNI)XT1=7u zZ$K?gP~8n0=>U&YgUTC>6xT% zMvD>R5E1gp|Iqjcp|fHQU|U*LGb}K7bHds z29*f7)Pu|h$)ULa6QpGXj~^29704_Q2B-fYpfVp44j{8YWdul$niym*$UM-vHi)Jb z29-A;vqA9<^9MM8fojgXuzCTcf;jyD`v2<~B@XXu0|HuCyXJBSv2GQX1 zjf8XridRtC4{{BR2C)fYm|7T(OFbwIKb?& znF>l2K3dI9+Xq!v`xfoafM5>RUl6#k(6b^T`Q~yta($oL7|JQ=VVHi{=!Pvyo{~tnHAu#pe_<+U(s0@LL!)VYb7l;j` zL2M8PhsTTmFF@&=fk{pR)RxgdW}w2r1veu_B?0k;=czJuD8P>tX=94LHufqMHXqbq1eKMb_6?)-0_j5xY~X!=+6+vr2@FiEX$(xPISfp!MGQ== z6%0(Qbx_;_mG5F;U{zsYWDQ|pX1&C~#5#e2iFFzS6YCrXCe}p^Osp#ym{`|A@fHRq z)?ExttOppFSdTFV2y&a(;#ft9M&S%3YJ-{bu6>M z>=q<;7laMc!#V*(vdm(g#xjd_4ulONSr>sw2u5MAfQW%e)-9~-Kr{%m?t-vcJy?&i zhOi!Btz$jIdWmHg>kW`B1hd|Q&>#|p{fhMoSnLDqH`YHav)GteX0dUw%wppMiL%UM z6Je8LQ-HV`%vOW2k?jJh#OW8PJJH?4GK)!t4UG zq3V(21;l1^0m-t=V)J5|#TEczgX01kFCY=NFc1j|f3_G18$_}tfk+5u%Ye`z|FXG2 z!xkx=L9%RlAQFPvN+2|dWUB&^5X{y931<)wmS$K#uzq7}gNAtz%Ph7@AXx}zn*pIg zB-;|Uc_12u*;XO3H-JPSm~9(`29a!gKqLgS9fHy)SZ1-EgRns)+Z7NA!6@uo5HS$R z_KfWThz4P{H%ROsY@a}4Ak6j;L_#n!o1KfD1tQ8ai(LT5VwuG*hG4V(Kw=~N5to~h z+`}@9T?U~W!A76Ad)=@L_#oo1R|`Er7m!LuTQIv8Oxl6f@G~YeFfzJ;MS8#@(I8ux3PENvEe4B+ zgY|}k*$!aRhEW1^1~Q1v1R4!vWDWzVXWRuAi3O32PGDV5AU4A^Fq;>ohG7~+1mreG zJBBw5jEosz*$l=d42%qSK(dU{U|G;CG$Z3(kO&hqSi}}g)-soY&Qb=m9l&e{FuRI* zCdgG__AW3v18njPkO_=xppa*n$?%7Pk&zL^W^`qG%D~8|0%9{ffU@r}Ffy(Mi7*O* z_40$+4j_`@4@eEeLq-+`Mn-U|V2lTeFlvBBG(c(?6~H7b!vzLLMnN#U6+|+$Fo8_w z{r??wrZkwn7EJPkNe8AwpwpzmYz;7}02WaIv!lSa2!h$IAX2zVB!=wP0jLJ2Me6|6 z>HxJ0K&=K)s{qtGU}n9CyLAAng&^$#mRVqS0wgzs*=b1Z93*xT61xJ4U5CVOfwDm@ z30MmP#GVEfpTjZ>)@lH?Dp;Yd1~41iX24)?f#?O1th+!Y%PiIdtj8ej2q^mos1Ap+ z?;)|D;9$Q(690h2{)WW<17U+~1hqUsGzf!QARroqVJ#6bTLeV1%mTGZ*wi3;!E7BQ zwhj2a;0M+(v8EhqBb`{GkI6IF3yMbjEsI~{2 z2V(btSS+*HKx}Bu4`#O^i9>5DRu8r%tRbwI*ygdV0<)u#*a=ANG$eKo61xb&X4`;Z zvsOUZpwZv!Sg9FdN#+0JRs`oj%!aB5sf4u-*#5DzuycV#*ag6Ba0>#;2DbsAY;a8uWrJ&PC>vaRL)qZk8_EXP z-cYs!lKJ2on_U1@Tf=H;FgpUIhGiC*4Xv5M>=Y#NEGWBxWfprGB>k|1*fmJ(CM0$T z61xw|p29MV9ooNO2eB7G&78tA3l=6|@nsP4q1HOUY!RTe7jU!=7#BloZ{}JCM#g9; z8*~eS43r%N7ViR+xeSbq$hE5~SPgPLKOZ6jCG!~=86&`K@5d%=rwA3_qYEAU7m|)g*yMl0mYJxga){Ho`rKI7mIiG$=cTfstVvNEbsmR3r#2 z0`ieJNQ6-dTyHCZS}_b0K`vx60Fewg!Lo^9*+h^C<4TAKlmwZ8+4kuN%VvUgWrB5W z1d9ZMMIh~|RM8rjB6pXAfGa(LfN3u zQv#B2n`77P%1I|c@( z8w`xh91Kj%E(}b}UJOjk0SrvcVGK;nF$_%1Nl=`@z{H%#z{Fg_z{Fg|z`%5mfr04> z0|V151_q`N3=B-)7#NuTK*gRgFfcPQFf+F?Ff;dn#Tl9T7+9ERFfcPu0;^|YZUEb7 z!SsXaA2SOx7gHFs0J9jg46_nb7_$bm9xrw=hxsNG~c?$C^<^^EcWz1`sH-T9@nD;Rs0kcjqUtqq*e1|EF`4RIA z&|L;hVa&f+7+Ba?c$mUigjgh4Hgc`Q6!WKd#hYK@2&PlHskV|6v_Zu;5254VV2b_Z$8Dbe28Fj$@4G9p* z2%6PqWH=1&pMXUeL_p#UpfxIt3=_fP0$>qw5XlHGEf`jT#2Fy{85^+4HXsp38;}}? zHjv2wpCA#2cCg59FbP_P&d6X67QYV`F$Ix~b|CePb|7&^JFtj5Si}V^;tmpFr~`>G zFo8rEn!qAQ7~U~3GJFAvKznW$AaO=eFP@R%9#|aQOJ~pqi8Fxi3SeY71QKWX4i;es zk&KYC%@QQeXbBea2HC~v!vMOez!4*0W=DhBvS3+j22dYQ7AztL7V%*C%D~7d1{MLW$7WQ`elYw4g&F}R;j zFq7d1!%c<_47V8`F>GRZ%J7t77sFeIw+y=(-ZQ*s*u(IN;S;1xFcwG5%vX#>BwH$Z(p;j>(?kERz$H3&VLPHzqfROH3Y29t@Y6yqNqL zt}q2L1u@)Y3SkOixWyF46vl9yDT*nI;SN&_Qw+mhrZ}cJhI>qDOc@OKnX;J57#=ZI zFjX+TXR2bVV)(#R$5hAg5#)b{Pv8*v!nB=fJHt1oeN6ipzJpKmX9Smzpj)=;89=4% zenvJ1dj=*3UM4#x2L=YPtC+#AVgtL19qcL&u&a2%t^&ni7z01pRRUmF34&cE1a_4$ zQx;Pd_}(>EkUK!GVA{vP$iTt)gYg&RAI86o{}}&+!-0{3k*SV>iGdw_YZ?Qi0HY8C z6Qd}j90MyO=)N?5Mm0u#20=z6MiT~UMsr3B205^5&`oFzjMAX6A9^)bZ}k(M|a_cI<~yu^5! z@hamD#%E0SOnwYZpjBgx_ZS!$A2GgXkZ1hJ_?bbM@hjsu1_K6022rq$sA<*@YEv## zK5}{m-HFAxA9S)6_|7#3@SSVyOsAP{FmN&5V!F*B0lt+@ih+qi4t&2H13080_scPZ z@0a5R-!I1p4=*(aLGb-@Lg4%5gu(aAiGc5y69eBbCl0<}PKpt9znmQSemOPp{c=W( zpingd-!EqdzF*D(e7~F{Bj|oPXYl=UE{vf2(`DrPEXU}q{}Dq&z_DrG8V zU}q|0Dq~;;mjF!Q5&)F16~QGAKjTlvpA5{5zZicpurmH;{LR3@_=oWi0~h08#=i_~ zjQ<$_G4L_|XZ+8=0@B35$;8OS$iU9z#N@;v33i_V*nI+E_c1Z~GWjw{g3ECUuv>Y- zZslgmWy)m`WXfmCXAlItRRHW(9POzRm$ zm^LtNU=U{7%(R(7jA;wg76x%}X(h_Q$h01G2LWh48@xsqbUPt4*foq`)0x2LGBGeR z{$St&?*(9IU<1V=11o5KJoq+4b|z;g7X~Jft!Jc zfti7qftNvmfe(B}q6mXH0~3P;gCYYngA#)hgCK)4gE|8Xg9d{(11p0LgARibgD!(9 z11p0WgE<2ag9U>n0~>=CgFOQ~g9C#b11p0&Lm&eOLl8p{12aP~LokCdLkL3%g9t+? zLns3WLl{FO11CciLp%c)LjprG12;noLmmSULq0=3gD5x^^D>k&lro4hlrdB>@G(>~ z)G_dbPId(E56}a$*_~bo?#cmeg->+0}RI* z>={llTxQ^BxWaIS!JgqN!&L?whHDJh7&sWNGu&dZXSmJqfWe&MA;Uuk8-_;=j~HYa z9y2^+5N3GJ@R30TT+6C4d}jF0APTN)O&ESM{ACbh_{Ye|-~g_1IT_g**%{;+IT$$@ z6u@~w9h?{BzeEy4MSn+cTjEy20T2%MV)!0BBOoSOu|sa_DAW{tqP zi3gnjt-yJT2V4qRf!hHp;QZwZ&R>q;{3Qj>UrJ0{nYJ>hf^(TQ0~3P=LnlKQ11mVb z8Nu<*1deZJaC{3hOktS9z``(aF>o_nX1L72%5a4Nbmr|fhHDJ`;JD`j$2~7N z?nS_HFUs(k;RypDxV0t5@QmRZ10OgY@PpHVI5-^$fYX5lI2{Or(}55p6C)D?8zVC# zGXpy#3nL2yCnGB(D+4a11R4Zg7c;!INz9o z^9|_U*E|MMaK7OJ=Nl$)zL5gw8)k665d-HNd2l$Yg2Pc09FB_MaMT0m8%1ykYJx+M z1ssA(;1E;==Nol!zR?Be8&z<=F$L!v4RF|*g7b|gINz9p^NlJv-zb8^&J-MWTHvr# z1&19UINz{?!^;R9ULxS|;sA%23^=?v!Qmwb&NnRJe8UgUHv-@szzxm;Jm4H)49)=x z;2a>!7IPSGadR4fc`-)e(zs<8#1S^{d_gHH1R z^^FA>Kr99Z5e7~M&{-d%(7FV4cQ79V1L)>hun6c>6MhB;&|VraA4af%?-K%@9m2}M z3hqCE`Vedk?BKm&91Ls>Vhqe+%*3DvPEnw7=s3b zDT5F=rExM?Ft{-Yfzz89Loh=KgAh2?iGgbbA#mD*)CkPrGFup&_L#tFj~kr!*uiO! z5uEnez-dneoa!XOsZJc6>L8`HI5^cwf>Rw2IMqpjQf8b$%50EBsh)9 zf>W0`ICaT_Qx~Kp76qp$DR7Ds1g9uoaEjsprzk#fisA>SC>{nT22gKoJp&`S{9y){ zKP=#q2UOg$gTsswT!%4%^BFVPe{5i%v4DNX4mOn)TFZmllAxFc-8YP=<=MdIuzJV9oS4Dpz(NSL^NR^IS`NmbnjYCsPOw@Qa2T#o1`ve!1;kM`muFftl48Zt03rZHwPFoXL(tc(SWB@E1rrHrKvER1E0Gh;PlHMnO~$H33n#Ms8b3~s|SGj=j|GO#dqF?KO9Gxjj{Ft9TAG4?aC zF-~Nh$iU7xiE$DGGvgG-DGco35`Y(60!V=Kz5qDy^MG?b4>;G$fpfhqIM)k+b3Gq8 z*GqzPy%adtOM`1aVQ}py0 zfJ*~0aA_a|E)96VwI3(A_Jg!2Il;A`5a^z4lvo1A59p*|Pzw^oW&!oNK#{-ziVe`( z9wr7*9Dpzf0|)q?W6<7G25>tPtdIeuhlxQ39QI7$P>0;Z%>)i96W9w;Ay&QD^734(7kU}Inf-^2mxJAp70gCZjrBQFCRxL?o4D9R|wzy?j@ z(u^_;Y~cPYJEI(T0gg3R za6aG!#~mooA7C&Cuki+zIy?+K415ec3|tJn42%rS3@i+w@}7r*4SXxPAOkyt5V$-8 zouAFg07^|D3=1lV2_oPd&|&&P;RXtScCbDM22h+aF<3JmWIV{g&UlFN5CaF}VaCG@ z{ESB!k1%jD9%DSlAjo)}@i+q~;|azS3@nT%8Ba2ZFrH#O#lX*an(;IP6XO}iGYkTZ zXBp2ia57$CyuiT8c#-iU0}JCN#!C!BjF%ZNGjK9qVZ6e?!g!VODuXcNHO6ZU;*8fB zuQLcR-eA1Jz{z-%@g{=+<1NNp44jO&8SgO&Fg{{@#K6w@nDH?K2jdgQCk*_IPZ^&w za56q;e9j=q_=52T0}JCz#+M8tjIS79G4M0KW_-=S#Q28s4TAvVTgG<`oQ&@oLAU>Y zWca8#+KK2&9jR zfeV~+n7}EA5u9?E!D)sCoI;qv@yG;@M@DcwGJ|7~1srRj5|RU~pAoE|39OnCteOcW zd_bWL2~B438c8mOODq};%r0&|Aq*lJsYyi)204i(c?>>~GW7p{a7hGOg)YP(!63(= z4j$uS0eKHB$H>6Wz{?=aAju%lpuwQWU;=7aIXi|ZFzEUE`zSDY1o`_aFeEWBfK@Xw za4_&Oh%iVoC@^R;=rfpt#km-m88{jE8AKVR859{*7_=A+7|ftDEa3bp#vsF>#GuNc z&0q*Vt?)ks7XvE;H-jL9ID;&MGJ_g}4ucV>51*KrQ^FVlCKJG92AC`WlNDgHAvv)) zm9Ya%_JPSMU~(3iTmUAQB`4<=Fs=cUo517_Fu4y*9s!f5QgSlW883jzYhdyYn0y2# zUx3MXX+??2j9)+`lMt9R0F!=TG6zg{%im|Fu4m%9srZaa`KaNn9hL7 zOJMRweo;yu(>*Zx3{1WQli$GPKM={xR$Q7?%*+QSMZlyKm{b6hYG6{QxU`^{*$7Np zfJr+r=>jIbz$9p<2UL52=G};;85tx&^G^gwh-vsq@cbDAK9Uz)_JYnnpK-_t+E2p3#2^mdrA#ah%AKHE9n@mQ%?7myKy@NW zB{sG!gAIcVgAYRpLkvS2Lmqf^b`!%chC>Xe7%nl~VtB;xis2K(FGeOtE=D0nDMlqm z9YzyI8%7sKA8;AN$R+{a_0Pzb11?n<895;0jB;SVF)^AjdO$@$D|r|g7#Rbgd_S-X zamEzJHpUfRTn}Jz`S&i9(*@HQPIgPmltcQ^~1WLz2 z=`1K+0i`>j^eia74oV+^(s!WrHweul1f^vlzF^US(qUk6CYDt!pqrZ*7#LZOKwQsq z0iuHS8-&ls1EoQ8oGuKYUX2K7?+@cM1}3JjVAe}8i-}E-frm+pNt;QBNta2FNuSAp z$&ks2$(SjEDH0r(Ol%5lY7C5Q3SbkZpkfkiLJXkL2IW*K21Yh6(6}laxDCvDhk=Jl zfk}}`iAkABg-Ml3jY*wJgGrMqfGLoHnSq;i9~St6fsyqEsH_K@&&Ya=ftz&>76_Vg zWoF=Ft-^py7#LY0=cI#E7HbOw7i$y-YyqF0&dF+p22&UqSyPbgcVpmWl|h4UV7(kH z|BxZ81_L9j29i!51`d`-$dDB@n!wD!&TlhfBLF>5Ifm4_?Bn2?fVqj!G zg(A|yz{I?d8Fb$<0|QJ|2?I0pD&|$ppw;{c(KrSc<|$yD6`ozG&tbqcRP~oCRxs zz{CVfouC{2KrAN41_oXx9wuHUJ|=!90VY8vAtqra5hhV46Q(4lWCkY2G6q3VsDLmN z6B9EN3ll378xuPd2NNd~7ZW#A0#hPW9cW~e@hIa-&`B83wHu%{8eE|HX@*@O5^O6Y zgB3_6LoCBRu$Uj1Gy&;i;$aeHU;x_*swtS6n3%X37?@0$Oc=O8c7X2>1Sq#G9xeigL{Y+;V#F&0E{bW#K0NKFE;LZ@sP|t9J;T{uc?mw6* zgeeq08=uFN&s4xv$JEEv&oqH)BGV+M$sp61)-&yAI>2<0=@8RlrXx&8nT|0XXF9=j zlIaxFX{IwwKf!LZV%PLamassu Admin

diff --git a/public/manifest.json b/public/manifest.json deleted file mode 100644 index 1f2f141f..00000000 --- a/public/manifest.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "short_name": "React App", - "name": "Create React App Sample", - "icons": [ - { - "src": "favicon.ico", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#000000", - "background_color": "#ffffff" -} diff --git a/public/static/js/2.01291e3c.chunk.js b/public/static/js/2.01291e3c.chunk.js deleted file mode 100644 index 7fa7d2b2..00000000 --- a/public/static/js/2.01291e3c.chunk.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see 2.01291e3c.chunk.js.LICENSE.txt */ -(this["webpackJsonplamassu-admin"]=this["webpackJsonplamassu-admin"]||[]).push([[2],[function(t,e,n){"use strict";t.exports=n(607)},function(t,e,n){"use strict";t.exports=n(603)},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(209);function i(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,u=t[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(s){i=!0,o=s}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return n}}(t,e)||Object(r.a)(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},function(t,e,n){"use strict";n.d(e,"d",(function(){return ft})),n.d(e,"b",(function(){return dt})),n.d(e,"h",(function(){return wt})),n.d(e,"e",(function(){return Ot})),n.d(e,"f",(function(){return qt})),n.d(e,"a",(function(){return Gt})),n.d(e,"g",(function(){return H})),n.d(e,"c",(function(){return Yt}));var r,i,o=n(47),a=n(45),u=n(46);try{r=Map}catch(Qt){}try{i=Set}catch(Qt){}function s(t,e,n){if(!t||"object"!==typeof t||"function"===typeof t)return t;if(t.nodeType&&"cloneNode"in t)return t.cloneNode(!0);if(t instanceof Date)return new Date(t.getTime());if(t instanceof RegExp)return new RegExp(t);if(Array.isArray(t))return t.map(c);if(r&&t instanceof r)return new Map(Array.from(t.entries()));if(i&&t instanceof i)return new Set(Array.from(t.values()));if(t instanceof Object){e.push(t);var o=Object.create(t);for(var a in n.push(o),t){var u=e.findIndex((function(e){return e===t[a]}));o[a]=u>-1?n[u]:s(t[a],e,n)}return o}return t}function c(t){return s(t,[],[])}var f=Object.prototype.toString,l=Error.prototype.toString,d=RegExp.prototype.toString,h="undefined"!==typeof Symbol?Symbol.prototype.toString:function(){return""},p=/^Symbol\((.*)\)(.*)$/;function g(t){return t!=+t?"NaN":0===t&&1/t<0?"-0":""+t}function m(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(null==t||!0===t||!1===t)return""+t;var n=typeof t;if("number"===n)return g(t);if("string"===n)return e?'"'.concat(t,'"'):t;if("function"===n)return"[Function "+(t.name||"anonymous")+"]";if("symbol"===n)return h.call(t).replace(p,"Symbol($1)");var r=f.call(t).slice(8,-1);return"Date"===r?isNaN(t.getTime())?""+t:t.toISOString(t):"Error"===r||t instanceof Error?"["+l.call(t)+"]":"RegExp"===r?d.call(t):null}function b(t,e){var n=m(t,e);return null!==n?n:JSON.stringify(t,(function(t,n){var r=m(this[t],e);return null!==r?r:n}),2)}var v={default:"${path} is invalid",required:"${path} is a required field",oneOf:"${path} must be one of the following values: ${values}",notOneOf:"${path} must not be one of the following values: ${values}",notType:function(t){var e=t.path,n=t.type,r=t.value,i=t.originalValue,o=null!=i&&i!==r,a="".concat(e," must be a `").concat(n,"` type, ")+"but the final value was: `".concat(b(r,!0),"`")+(o?" (cast from the value `".concat(b(i,!0),"`)."):".");return null===r&&(a+='\n If "null" is intended as an empty value be sure to mark the schema as `.nullable()`'),a},defined:"${path} must be defined"},y={length:"${path} must be exactly ${length} characters",min:"${path} must be at least ${min} characters",max:"${path} must be at most ${max} characters",matches:'${path} must match the following: "${regex}"',email:"${path} must be a valid email",url:"${path} must be a valid URL",uuid:"${path} must be a valid UUID",trim:"${path} must be a trimmed string",lowercase:"${path} must be a lowercase string",uppercase:"${path} must be a upper case string"},_={min:"${path} must be greater than or equal to ${min}",max:"${path} must be less than or equal to ${max}",lessThan:"${path} must be less than ${less}",moreThan:"${path} must be greater than ${more}",positive:"${path} must be a positive number",negative:"${path} must be a negative number",integer:"${path} must be an integer"},w={min:"${path} field must be later than ${min}",max:"${path} field must be at earlier than ${max}"},S={isValue:"${path} field must be ${value}"},O={noUnknown:"${path} field has unspecified keys: ${unknown}"},x={min:"${path} field must have at least ${min} items",max:"${path} field must have less than or equal to ${max} items",length:"${path} must be have ${length} items"},E=(Object.assign(Object.create(null),{mixed:v,string:y,number:_,date:w,object:O,array:x,boolean:S}),n(189)),M=n.n(E),T=function(t){return t&&t.__isYupSchema__},$=function(){function t(e,n){if(Object(a.a)(this,t),this.refs=e,this.refs=e,"function"!==typeof n){if(!M()(n,"is"))throw new TypeError("`is:` is required for `when()` conditions");if(!n.then&&!n.otherwise)throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");var r=n.is,i=n.then,o=n.otherwise,u="function"===typeof r?r:function(){for(var t=arguments.length,e=new Array(t),n=0;n1?"".concat(s.errors.length," errors occurred"):s.errors[0],Error.captureStackTrace&&Error.captureStackTrace(Object(A.a)(s),n),s}return Object(u.a)(n,null,[{key:"formatError",value:function(t,e){var n=e.label||e.path||"this";return n!==e.path&&(e=N({},e,{path:n})),"string"===typeof t?t.replace(R,(function(t,n){return b(e[n])})):"function"===typeof t?t(e):t}},{key:"isError",value:function(t){return t&&"ValidationError"===t.name}}]),n}(Object(I.a)(Error));function D(t,e){var n=t.endEarly,r=t.tests,i=t.args,a=t.value,u=t.errors,s=t.sort,c=t.path,f=function(t){var e=!1;return function(){e||(e=!0,t.apply(void 0,arguments))}}(e),l=r.length,d=[];if(u=u||[],!l)return u.length?f(new j(u,a,c)):f(null,a);for(var h=0;h1&&void 0!==arguments[1]?arguments[1]:{};if(Object(a.a)(this,t),"string"!==typeof e)throw new TypeError("ref must be a string, got: "+e);if(this.key=e.trim(),""===e)throw new TypeError("ref must be a non-empty string");this.isContext=this.key[0]===U,this.isValue=this.key[0]===z,this.isSibling=!this.isContext&&!this.isValue;var r=this.isContext?U:this.isValue?z:"";this.path=this.key.slice(r.length),this.getter=this.path&&Object(B.getter)(this.path,!0),this.map=n.map}return Object(u.a)(t,[{key:"getValue",value:function(t,e,n){var r=this.isContext?n:this.isValue?t:e;return this.getter&&(r=this.getter(r||{})),this.map&&(r=this.map(r)),r}},{key:"cast",value:function(t,e){return this.getValue(t,null==e?void 0:e.parent,null==e?void 0:e.context)}},{key:"resolve",value:function(){return this}},{key:"describe",value:function(){return{type:"ref",key:this.key}}},{key:"toString",value:function(){return"Ref(".concat(this.key,")")}}],[{key:"isRef",value:function(t){return t&&t.__isYupRef}}]),t}();function q(){return(q=Object.assign||function(t){for(var e=1;e=0||(i[n]=t[n]);return i}(e,["value","path","label","options","originalValue","sync"]),l=t.name,d=t.test,h=t.params,p=t.message,g=u.parent,m=u.context;function b(t){return V.isRef(t)?t.getValue(r,g,m):t}function v(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=F()(q({value:r,originalValue:s,label:a,path:t.path||o},h,t.params),b),n=new j(j.formatError(t.message||p,e),r,e.path,t.type||l);return n.params=e,n}var y=q({path:o,parent:g,type:l,createError:v,resolve:b,options:u,originalValue:s},f);if(c){var _;try{var w;if("function"===typeof(null==(w=_=d.call(y,r,y))?void 0:w.then))throw new Error('Validation test of type: "'.concat(y.type,'" returned a Promise during a synchronous validate. ')+"This test will finish after the validate call has returned")}catch(S){return void n(S)}j.isError(_)?n(_):_?n(null,_):n(v())}else try{Promise.resolve(d.call(y,r,y)).then((function(t){j.isError(t)?n(t):t?n(null,t):n(v())}))}catch(S){n(S)}}return e.OPTIONS=t,e}V.prototype.__isYupRef=!0;var G=function(t){return t.substr(0,t.length-1).substr(1)};function K(t,e,n){var r,i,o,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:n;return e?(Object(B.forEach)(e,(function(u,s,c){var f=s?G(u):u;if((t=t.resolve({context:a,parent:r,value:n})).innerType){var l=c?parseInt(f,10):0;if(n&&l>=n.length)throw new Error("Yup.reach cannot resolve an array item at index: ".concat(u,", in the path: ").concat(e,". ")+"because there is no value at that index. ");r=n,n=n&&n[l],t=t.innerType}if(!c){if(!t.fields||!t.fields[f])throw new Error("The schema does not contain the path: ".concat(e,". ")+"(failed at: ".concat(o,' which is a type: "').concat(t._type,'")'));r=n,n=n&&n[f],t=t.fields[f]}i=f,o=s?"["+u+"]":"."+u})),{schema:t,parent:r,parentPath:i}):{parent:r,parentPath:e,schema:t}}var Y=n(2),Z=n(23),Q=function(){function t(){Object(a.a)(this,t),this.list=new Set,this.refs=new Map}return Object(u.a)(t,[{key:"size",get:function(){return this.list.size+this.refs.size}},{key:"describe",value:function(){var t,e=[],n=Object(Z.a)(this.list);try{for(n.s();!(t=n.n()).done;){var r=t.value;e.push(r)}}catch(u){n.e(u)}finally{n.f()}var i,o=Object(Z.a)(this.refs);try{for(o.s();!(i=o.n()).done;){var a=Object(Y.a)(i.value,2)[1];e.push(a.describe())}}catch(u){o.e(u)}finally{o.f()}return e}},{key:"toArray",value:function(){return Array.from(this.list).concat(Array.from(this.refs.values()))}},{key:"add",value:function(t){V.isRef(t)?this.refs.set(t.key,t):this.list.add(t)}},{key:"delete",value:function(t){V.isRef(t)?this.refs.delete(t.key):this.list.delete(t)}},{key:"has",value:function(t,e){if(this.list.has(t))return!0;for(var n,r=this.refs.values();!(n=r.next()).done;)if(e(n.value)===t)return!0;return!1}},{key:"clone",value:function(){var e=new t;return e.list=new Set(this.list),e.refs=new Map(this.refs),e}},{key:"merge",value:function(t,e){var n=this.clone();return t.list.forEach((function(t){return n.add(t)})),t.refs.forEach((function(t){return n.add(t)})),e.list.forEach((function(t){return n.delete(t)})),e.refs.forEach((function(t){return n.delete(t)})),n}}]),t}();function X(){return(X=Object.assign||function(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:{},n=this.resolve(X({value:t},e)),r=n._cast(t,e);if(void 0!==t&&!1!==e.assert&&!0!==n.isType(r)){var i=b(t),o=b(r);throw new TypeError("The value of ".concat(e.path||"field"," could not be cast to a value ")+'that satisfies the schema type: "'.concat(n._type,'". \n\n')+"attempted value: ".concat(i," \n")+(o!==i?"result of cast: ".concat(o):""))}return r}},{key:"_cast",value:function(t,e){var n=this,r=void 0===t?t:this.transforms.reduce((function(e,r){return r.call(n,e,t,n)}),t);return void 0===r&&(r=this.getDefault()),r}},{key:"_validate",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,i=n.sync,o=n.path,a=n.from,u=void 0===a?[]:a,s=n.originalValue,c=void 0===s?t:s,f=n.strict,l=void 0===f?this.spec.strict:f,d=n.abortEarly,h=void 0===d?this.spec.abortEarly:d,p=t;l||(p=this._cast(p,X({assert:!1},n)));var g={value:p,path:o,options:n,originalValue:c,schema:this,label:this.spec.label,sync:i,from:u},m=[];this._typeError&&m.push(this._typeError),this._whitelistError&&m.push(this._whitelistError),this._blacklistError&&m.push(this._blacklistError),D({args:g,value:p,path:o,sync:i,tests:m,endEarly:h},(function(t){t?r(t,p):D({tests:e.tests,args:g,path:o,sync:i,value:p,endEarly:h},r)}))}},{key:"validate",value:function(t,e,n){var r=this.resolve(X({},e,{value:t}));return"function"===typeof n?r._validate(t,e,n):new Promise((function(n,i){return r._validate(t,e,(function(t,e){t?i(t):n(e)}))}))}},{key:"validateSync",value:function(t,e){var n;return this.resolve(X({},e,{value:t}))._validate(t,X({},e,{sync:!0}),(function(t,e){if(t)throw t;n=e})),n}},{key:"isValid",value:function(t,e){return this.validate(t,e).then((function(){return!0}),(function(t){if(j.isError(t))return!1;throw t}))}},{key:"isValidSync",value:function(t,e){try{return this.validateSync(t,e),!0}catch(n){if(j.isError(n))return!1;throw n}}},{key:"_getDefault",value:function(){var t=this.spec.default;return null==t?t:"function"===typeof t?t.call(this):c(t)}},{key:"getDefault",value:function(t){return this.resolve(t||{})._getDefault()}},{key:"default",value:function(t){if(0===arguments.length)return this._getDefault();var e=this.clone({default:t});return e}},{key:"strict",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],e=this.clone();return e.spec.strict=t,e}},{key:"_isPresent",value:function(t){return null!=t}},{key:"defined",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v.defined;return this.test({message:t,name:"defined",exclusive:!0,test:function(t){return void 0!==t}})}},{key:"required",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v.required;return this.clone({presence:"required"}).withMutation((function(e){return e.test({message:t,name:"required",exclusive:!0,test:function(t){return this.schema._isPresent(t)}})}))}},{key:"notRequired",value:function(){var t=this.clone({presence:"optional"});return t.tests=t.tests.filter((function(t){return"required"!==t.OPTIONS.name})),t}},{key:"nullable",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],e=this.clone({nullable:!1!==t});return e}},{key:"transform",value:function(t){var e=this.clone();return e.transforms.push(t),e}},{key:"test",value:function(){var t;if(void 0===(t=1===arguments.length?"function"===typeof(arguments.length<=0?void 0:arguments[0])?{test:arguments.length<=0?void 0:arguments[0]}:arguments.length<=0?void 0:arguments[0]:2===arguments.length?{name:arguments.length<=0?void 0:arguments[0],test:arguments.length<=1?void 0:arguments[1]}:{name:arguments.length<=0?void 0:arguments[0],message:arguments.length<=1?void 0:arguments[1],test:arguments.length<=2?void 0:arguments[2]}).message&&(t.message=v.default),"function"!==typeof t.test)throw new TypeError("`test` is a required parameters");var e=this.clone(),n=W(t),r=t.exclusive||t.name&&!0===e.exclusiveTests[t.name];if(t.exclusive&&!t.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return t.name&&(e.exclusiveTests[t.name]=!!t.exclusive),e.tests=e.tests.filter((function(e){if(e.OPTIONS.name===t.name){if(r)return!1;if(e.OPTIONS.test===n.OPTIONS.test)return!1}return!0})),e.tests.push(n),e}},{key:"when",value:function(t,e){Array.isArray(t)||"string"===typeof t||(e=t,t=".");var n=this.clone(),r=P(t).map((function(t){return new V(t)}));return r.forEach((function(t){t.isSibling&&n.deps.push(t.key)})),n.conditions.push(new $(r,e)),n}},{key:"typeError",value:function(t){var e=this.clone();return e._typeError=W({message:t,name:"typeError",test:function(t){return!(void 0!==t&&!this.schema.isType(t))||this.createError({params:{type:this.schema._type}})}}),e}},{key:"oneOf",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:v.oneOf,n=this.clone();return t.forEach((function(t){n._whitelist.add(t),n._blacklist.delete(t)})),n._whitelistError=W({message:e,name:"oneOf",test:function(t){if(void 0===t)return!0;var e=this.schema._whitelist;return!!e.has(t,this.resolve)||this.createError({params:{values:e.toArray().join(", ")}})}}),n}},{key:"notOneOf",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:v.notOneOf,n=this.clone();return t.forEach((function(t){n._blacklist.add(t),n._whitelist.delete(t)})),n._blacklistError=W({message:e,name:"notOneOf",test:function(t){var e=this.schema._blacklist;return!e.has(t,this.resolve)||this.createError({params:{values:e.toArray().join(", ")}})}}),n}},{key:"strip",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],e=this.clone();return e.spec.strip=t,e}},{key:"describe",value:function(){var t=this.clone(),e=t.spec,n=e.label;return{meta:e.meta,label:n,type:t.type,oneOf:t._whitelist.describe(),notOneOf:t._blacklist.describe(),tests:t.tests.map((function(t){return{name:t.OPTIONS.name,params:t.OPTIONS.params}})).filter((function(t,e,n){return n.findIndex((function(e){return e.name===t.name}))===e}))}}}]),t}();J.prototype.__isYupSchema__=!0;for(var tt=function(){var t=nt[et];J.prototype["".concat(t,"At")]=function(e,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=K(this,e,n,r.context),o=i.parent,a=i.parentPath,u=i.schema;return u[t](o&&o[a],X({},r,{parent:o,path:e}))}},et=0,nt=["validate","validateSync"];et0&&void 0!==arguments[0]?arguments[0]:S.isValue;return this.test({message:t,name:"is-value",exclusive:!0,params:{value:"true"},test:function(t){return lt(t)||!0===t}})}},{key:"isFalse",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:S.isValue;return this.test({message:t,name:"is-value",exclusive:!0,params:{value:"false"},test:function(t){return lt(t)||!1===t}})}}]),n}(J);dt.prototype=ht.prototype;var pt=n(62),gt=n(51),mt=/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i,bt=/^((https?|ftp):)?\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,vt=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,yt=function(t){return lt(t)||t===t.trim()},_t={}.toString();function wt(){return new St}var St=function(t){Object(k.a)(n,t);var e=Object(C.a)(n);function n(){var t;return Object(a.a)(this,n),(t=e.call(this,{type:"string"})).withMutation((function(){t.transform((function(t){if(this.isType(t))return t;if(Array.isArray(t))return t;var e=null!=t&&t.toString?t.toString():t;return e===_t?t:e}))})),t}return Object(u.a)(n,[{key:"_typeCheck",value:function(t){return t instanceof String&&(t=t.valueOf()),"string"===typeof t}},{key:"_isPresent",value:function(t){return Object(pt.a)(Object(gt.a)(n.prototype),"_isPresent",this).call(this,t)&&!!t.length}},{key:"length",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:y.length;return this.test({message:e,name:"length",exclusive:!0,params:{length:t},test:function(e){return lt(e)||e.length===this.resolve(t)}})}},{key:"min",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:y.min;return this.test({message:e,name:"min",exclusive:!0,params:{min:t},test:function(e){return lt(e)||e.length>=this.resolve(t)}})}},{key:"max",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:y.max;return this.test({name:"max",exclusive:!0,message:e,params:{max:t},test:function(e){return lt(e)||e.length<=this.resolve(t)}})}},{key:"matches",value:function(t,e){var n,r,i=!1;if(e)if("object"===typeof e){var o=e.excludeEmptyString;i=void 0!==o&&o,n=e.message,r=e.name}else n=e;return this.test({name:r||"matches",message:n||y.matches,params:{regex:t},test:function(e){return lt(e)||""===e&&i||-1!==e.search(t)}})}},{key:"email",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.email;return this.matches(mt,{name:"email",message:t,excludeEmptyString:!0})}},{key:"url",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.url;return this.matches(bt,{name:"url",message:t,excludeEmptyString:!0})}},{key:"uuid",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.uuid;return this.matches(vt,{name:"uuid",message:t,excludeEmptyString:!1})}},{key:"ensure",value:function(){return this.default("").transform((function(t){return null===t?"":t}))}},{key:"trim",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.trim;return this.transform((function(t){return null!=t?t.trim():t})).test({message:t,name:"trim",test:yt})}},{key:"lowercase",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.lowercase;return this.transform((function(t){return lt(t)?t:t.toLowerCase()})).test({message:t,name:"string_case",exclusive:!0,test:function(t){return lt(t)||t===t.toLowerCase()}})}},{key:"uppercase",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:y.uppercase;return this.transform((function(t){return lt(t)?t:t.toUpperCase()})).test({message:t,name:"string_case",exclusive:!0,test:function(t){return lt(t)||t===t.toUpperCase()}})}}]),n}(J);wt.prototype=St.prototype;function Ot(){return new xt}var xt=function(t){Object(k.a)(n,t);var e=Object(C.a)(n);function n(){var t;return Object(a.a)(this,n),(t=e.call(this,{type:"number"})).withMutation((function(){t.transform((function(t){var e=t;if("string"===typeof e){if(""===(e=e.replace(/\s/g,"")))return NaN;e=+e}return this.isType(e)?e:parseFloat(e)}))})),t}return Object(u.a)(n,[{key:"_typeCheck",value:function(t){return t instanceof Number&&(t=t.valueOf()),"number"===typeof t&&!function(t){return t!=+t}(t)}},{key:"min",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:_.min;return this.test({message:e,name:"min",exclusive:!0,params:{min:t},test:function(e){return lt(e)||e>=this.resolve(t)}})}},{key:"max",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:_.max;return this.test({message:e,name:"max",exclusive:!0,params:{max:t},test:function(e){return lt(e)||e<=this.resolve(t)}})}},{key:"lessThan",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:_.lessThan;return this.test({message:e,name:"max",exclusive:!0,params:{less:t},test:function(e){return lt(e)||e1&&void 0!==arguments[1]?arguments[1]:_.moreThan;return this.test({message:e,name:"min",exclusive:!0,params:{more:t},test:function(e){return lt(e)||e>this.resolve(t)}})}},{key:"positive",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_.positive;return this.moreThan(0,t)}},{key:"negative",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_.negative;return this.lessThan(0,t)}},{key:"integer",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_.integer;return this.test({name:"integer",message:t,test:function(t){return lt(t)||Number.isInteger(t)}})}},{key:"truncate",value:function(){return this.transform((function(t){return lt(t)?t:0|t}))}},{key:"round",value:function(t){var e,n=["ceil","floor","round","trunc"];if("trunc"===(t=(null==(e=t)?void 0:e.toLowerCase())||"round"))return this.truncate();if(-1===n.indexOf(t.toLowerCase()))throw new TypeError("Only valid options for round() are: "+n.join(", "));return this.transform((function(e){return lt(e)?e:Math[t](e)}))}}]),n}(J);Ot.prototype=xt.prototype;var Et=/^(\d{4}|[+\-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,\.](\d{1,}))?)?(?:(Z)|([+\-])(\d{2})(?::?(\d{2}))?)?)?$/;var Mt=new Date("");function Tt(){return new $t}var $t=function(t){Object(k.a)(n,t);var e=Object(C.a)(n);function n(){var t;return Object(a.a)(this,n),(t=e.call(this,{type:"date"})).withMutation((function(){t.transform((function(t){return this.isType(t)?t:(t=function(t){var e,n,r=[1,4,5,6,7,10,11],i=0;if(n=Et.exec(t)){for(var o,a=0;o=r[a];++a)n[o]=+n[o]||0;n[2]=(+n[2]||1)-1,n[3]=+n[3]||1,n[7]=n[7]?String(n[7]).substr(0,3):0,void 0!==n[8]&&""!==n[8]||void 0!==n[9]&&""!==n[9]?("Z"!==n[8]&&void 0!==n[9]&&(i=60*n[10]+n[11],"+"===n[9]&&(i=0-i)),e=Date.UTC(n[1],n[2],n[3],n[4],n[5]+i,n[6],n[7])):e=+new Date(n[1],n[2],n[3],n[4],n[5],n[6],n[7])}else e=Date.parse?Date.parse(t):NaN;return e}(t),isNaN(t)?Mt:new Date(t))}))})),t}return Object(u.a)(n,[{key:"_typeCheck",value:function(t){return e=t,"[object Date]"===Object.prototype.toString.call(e)&&!isNaN(t.getTime());var e}},{key:"prepareParam",value:function(t,e){var n;if(V.isRef(t))n=t;else{var r=this.cast(t);if(!this._typeCheck(r))throw new TypeError("`".concat(e,"` must be a Date or a value that can be `cast()` to a Date"));n=r}return n}},{key:"min",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:w.min,n=this.prepareParam(t,"min");return this.test({message:e,name:"min",exclusive:!0,params:{min:t},test:function(t){return lt(t)||t>=this.resolve(n)}})}},{key:"max",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:w.max,n=this.prepareParam(t,"max");return this.test({message:e,name:"max",exclusive:!0,params:{max:t},test:function(t){return lt(t)||t<=this.resolve(n)}})}}]),n}(J);$t.INVALID_DATE=Mt,Tt.prototype=$t.prototype,Tt.INVALID_DATE=Mt;var At=n(397),kt=n.n(At),Ct=n(539),It=n.n(Ct),Pt=n(540),Nt=n.n(Pt),Rt=n(541),jt=n.n(Rt);function Dt(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=[],r=[];function i(t,i){var o=Object(B.split)(t)[0];~r.indexOf(o)||r.push(o),~e.indexOf("".concat(i,"-").concat(o))||n.push([i,o])}var o=function(e){if(M()(t,e)){var n=t[e];~r.indexOf(e)||r.push(e),V.isRef(n)&&n.isSibling?i(n.path,e):T(n)&&"deps"in n&&n.deps.forEach((function(t){return i(t,e)}))}};for(var a in t)o(a);return jt.a.array(r,n).reverse()}function Lt(t,e){var n=1/0;return t.some((function(t,r){var i;if(-1!==(null==(i=e.path)?void 0:i.indexOf(t)))return n=r,!0})),n}function Ft(t){return function(e,n){return Lt(t,e)-Lt(t,n)}}function Bt(){return(Bt=Object.assign||function(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:{},o=Object(pt.a)(Object(gt.a)(n.prototype),"_cast",this).call(this,t,i);if(void 0===o)return this.getDefault();if(!this._typeCheck(o))return o;var a,u=this.fields,s=null!=(e=i.stripUnknown)?e:this.spec.noUnknown,c=this._nodes.concat(Object.keys(o).filter((function(t){return-1===r._nodes.indexOf(t)}))),f={},l=Bt({},i,{parent:f,__validating:i.__validating||!1}),d=!1,h=Object(Z.a)(c);try{for(h.s();!(a=h.n()).done;){var p=a.value,g=u[p],m=M()(o,p);if(g){var b=void 0,v=o[p];l.path=(i.path?"".concat(i.path,"."):"")+p;var y="spec"in(g=g.resolve({value:v,context:i.context,parent:f}))?g.spec:void 0,_=null==y?void 0:y.strict;if(null==y?void 0:y.strip){d=d||p in o;continue}void 0!==(b=i.__validating&&_?o[p]:g.cast(o[p],l))&&(f[p]=b)}else m&&!s&&(f[p]=o[p]);f[p]!==o[p]&&(d=!0)}}catch(w){h.e(w)}finally{h.f()}return d?f:o}},{key:"_validate",value:function(t){var e=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2?arguments[2]:void 0,a=[],u=r.sync,s=r.from,c=void 0===s?[]:s,f=r.originalValue,l=void 0===f?t:f,d=r.abortEarly,h=void 0===d?this.spec.abortEarly:d,p=r.recursive,g=void 0===p?this.spec.recursive:p;c=[{schema:this,value:l}].concat(Object(o.a)(c)),r.__validating=!0,r.originalValue=l,r.from=c,Object(pt.a)(Object(gt.a)(n.prototype),"_validate",this).call(this,t,r,(function(t,n){if(t){if(!j.isError(t)||h)return void i(t,n);a.push(t)}if(g&&Ut(n)){l=l||n;var o=e._nodes.map((function(t){return function(i,o){var a=-1===t.indexOf(".")?(r.path?"".concat(r.path,"."):"")+t:"".concat(r.path||"",'["').concat(t,'"]'),u=e.fields[t];u&&"validate"in u?u.validate(n[t],Bt({},r,{path:a,from:c,strict:!0,parent:n,originalValue:l[t]}),o):o(null)}}));D({sync:u,tests:o,value:n,errors:a,endEarly:h,sort:e._sortErrors,path:r.path},i)}else i(a[0]||null,n)}))}},{key:"clone",value:function(t){var e=Object(pt.a)(Object(gt.a)(n.prototype),"clone",this).call(this,t);return e.fields=Bt({},this.fields),e._nodes=this._nodes,e._excludedEdges=this._excludedEdges,e._sortErrors=this._sortErrors,e}},{key:"concat",value:function(t){for(var e=Object(pt.a)(Object(gt.a)(n.prototype),"concat",this).call(this,t),r=e.fields,i=0,o=Object.entries(this.fields);i1&&void 0!==arguments[1]?arguments[1]:[],n=this.clone(),r=Object.assign(n.fields,t);if(n.fields=r,n._sortErrors=Ft(Object.keys(r)),e.length){Array.isArray(e[0])||(e=[e]);var i=e.map((function(t){var e=Object(Y.a)(t,2),n=e[0],r=e[1];return"".concat(n,"-").concat(r)}));n._excludedEdges=n._excludedEdges.concat(i)}return n._nodes=Dt(r,n._excludedEdges),n}},{key:"pick",value:function(t){var e,n={},r=Object(Z.a)(t);try{for(r.s();!(e=r.n()).done;){var i=e.value;this.fields[i]&&(n[i]=this.fields[i])}}catch(o){r.e(o)}finally{r.f()}return this.clone().withMutation((function(t){return t.fields={},t.shape(n)}))}},{key:"omit",value:function(t){var e=this.clone(),n=e.fields;e.fields={};var r,i=Object(Z.a)(t);try{for(i.s();!(r=i.n()).done;){var o=r.value;delete n[o]}}catch(a){i.e(a)}finally{i.f()}return e.withMutation((function(){return e.shape(n)}))}},{key:"from",value:function(t,e,n){var r=Object(B.getter)(t,!0);return this.transform((function(i){if(null==i)return i;var o=i;return M()(i,t)&&(o=Bt({},i),n||delete o[t],o[e]=r(i)),o}))}},{key:"noUnknown",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:O.noUnknown;"string"===typeof t&&(e=t,t=!0);var n=this.test({name:"noUnknown",exclusive:!0,message:e,test:function(e){if(null==e)return!0;var n=zt(this.schema,e);return!t||0===n.length||this.createError({params:{unknown:n.join(", ")}})}});return n.spec.noUnknown=t,n}},{key:"unknown",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:O.noUnknown;return this.noUnknown(!t,e)}},{key:"transformKeys",value:function(t){return this.transform((function(e){return e&&Nt()(e,(function(e,n){return t(n)}))}))}},{key:"camelCase",value:function(){return this.transformKeys(It.a)}},{key:"snakeCase",value:function(){return this.transformKeys(kt.a)}},{key:"constantCase",value:function(){return this.transformKeys((function(t){return kt()(t).toUpperCase()}))}},{key:"describe",value:function(){var t=Object(pt.a)(Object(gt.a)(n.prototype),"describe",this).call(this);return t.fields=F()(this.fields,(function(t){return t.describe()})),t}}]),n}(J);function qt(t){return new Vt(t)}function Wt(){return(Wt=Object.assign||function(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2?arguments[2]:void 0,u=[],s=o.sync,c=o.path,f=this.innerType,l=null!=(e=o.abortEarly)?e:this.spec.abortEarly,d=null!=(r=o.recursive)?r:this.spec.recursive,h=null!=o.originalValue?o.originalValue:t;Object(pt.a)(Object(gt.a)(n.prototype),"_validate",this).call(this,t,o,(function(t,e){if(t){if(!j.isError(t)||l)return void a(t,e);u.push(t)}if(d&&f&&i._typeCheck(e)){h=h||e;for(var n=new Array(e.length),r=function(t){var r=e[t],i="".concat(o.path||"","[").concat(t,"]"),a=Wt({},o,{path:i,strict:!0,parent:e,index:t,originalValue:h[t]});n[t]=function(t,e){return f.validate(r,a,e)}},p=0;p1&&void 0!==arguments[1]?arguments[1]:x.length;return this.test({message:e,name:"length",exclusive:!0,params:{length:t},test:function(e){return lt(e)||e.length===this.resolve(t)}})}},{key:"min",value:function(t,e){return e=e||x.min,this.test({message:e,name:"min",exclusive:!0,params:{min:t},test:function(e){return lt(e)||e.length>=this.resolve(t)}})}},{key:"max",value:function(t,e){return e=e||x.max,this.test({message:e,name:"max",exclusive:!0,params:{max:t},test:function(e){return lt(e)||e.length<=this.resolve(t)}})}},{key:"ensure",value:function(){var t=this;return this.default((function(){return[]})).transform((function(e,n){return t._typeCheck(e)?e:null==n?[]:[].concat(n)}))}},{key:"compact",value:function(t){var e=t?function(e,n,r){return!t(e,n,r)}:function(t){return!!t};return this.transform((function(t){return null!=t?t.filter(e):t}))}},{key:"describe",value:function(){var t=Object(pt.a)(Object(gt.a)(n.prototype),"describe",this).call(this);return this.innerType&&(t.innerType=this.innerType.describe()),t}},{key:"nullable",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return Object(pt.a)(Object(gt.a)(n.prototype),"nullable",this).call(this,t)}},{key:"defined",value:function(){return Object(pt.a)(Object(gt.a)(n.prototype),"defined",this).call(this)}},{key:"required",value:function(t){return Object(pt.a)(Object(gt.a)(n.prototype),"required",this).call(this,t)}}]),n}(J);function Yt(t){return new Zt(t)}Gt.prototype=Kt.prototype;var Zt=function(){function t(e){var n=this;Object(a.a)(this,t),this.type="lazy",this.__isYupSchema__=!0,this._resolve=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.builder(t,e);if(!T(r))throw new TypeError("lazy() functions must return a valid schema");return r.resolve(e)},this.builder=e}return Object(u.a)(t,[{key:"resolve",value:function(t){return this._resolve(t.value,t)}},{key:"cast",value:function(t,e){return this._resolve(t,e).cast(t,e)}},{key:"validate",value:function(t,e,n){return this._resolve(t,e).validate(t,e,n)}},{key:"validateSync",value:function(t,e){return this._resolve(t,e).validateSync(t,e)}},{key:"validateAt",value:function(t,e,n){return this._resolve(e,n).validateAt(t,e,n)}},{key:"validateSyncAt",value:function(t,e,n){return this._resolve(e,n).validateSyncAt(t,e,n)}},{key:"describe",value:function(){return null}},{key:"isValid",value:function(t,e){return this._resolve(t,e).isValid(t,e)}},{key:"isValidSync",value:function(t,e){return this._resolve(t,e).isValidSync(t,e)}}]),t}()},function(t,e,n){"use strict";function r(){return(r=Object.assign||function(t){for(var e=1;e0&&(c=new a.b({graphQLErrors:s})),t=Object(i.a)(Object(i.a)({},t),{loading:r,networkStatus:u,error:c,called:!0}),r){var l=this.previousData.result&&this.previousData.result.data;t.data=l&&f?Object(i.a)(Object(i.a)({},l),f):l||f}else if(c)Object.assign(t,{data:(this.currentObservable.query.getLastResult()||{}).data});else{var d=this.currentObservable.query.options.fetchPolicy;if(e.partialRefetch&&!f&&o&&"cache-only"!==d)return Object.assign(t,{loading:!0,networkStatus:a.c.loading}),t.refetch(),t;t.data=f}}return t.client=this.client,this.previousData.loading=this.previousData.result&&this.previousData.result.loading||!1,this.previousData.result=t,this.currentObservable.query&&this.currentObservable.query.resetQueryStoreErrors(),t},e.prototype.handleErrorOrCompleted=function(){if(this.currentObservable.query&&this.previousData.result){var t=this.previousData.result,e=t.data,n=t.loading,r=t.error;if(!n){var i=this.getOptions(),o=i.query,a=i.variables,s=i.onCompleted,c=i.onError;if(this.previousOptions&&!this.previousData.loading&&Object(u.a)(this.previousOptions.query,o)&&Object(u.a)(this.previousOptions.variables,a))return;s&&!r?s(e):c&&r&&c(r)}}},e.prototype.removeQuerySubscription=function(){this.currentObservable.subscription&&(this.currentObservable.subscription.unsubscribe(),delete this.currentObservable.subscription)},e.prototype.observableQueryFields=function(){return{variables:this.currentObservable.query.variables,refetch:this.obsRefetch,fetchMore:this.obsFetchMore,updateQuery:this.obsUpdateQuery,startPolling:this.obsStartPolling,stopPolling:this.obsStopPolling,subscribeToMore:this.obsSubscribeToMore}},e}(c);function l(t,e,n){void 0===n&&(n=!1);var a=Object(o.useContext)(Object(r.c)()),s=Object(o.useReducer)((function(t){return t+1}),0),c=s[0],l=s[1],d=e?Object(i.a)(Object(i.a)({},e),{query:t}):{query:t},h=Object(o.useRef)(),p=h.current||new f({options:d,context:a,onNewData:function(){p.ssrInitiated()?l():Promise.resolve().then(l)}});p.setOptions(d),p.context=a,p.ssrInitiated()&&!h.current&&(h.current=p);var g=function(t,e){var n=Object(o.useRef)();return n.current&&Object(u.a)(e,n.current.key)||(n.current={key:e,value:t()}),n.current.value}((function(){return n?p.executeLazy():p.execute()}),{options:Object(i.a)(Object(i.a)({},d),{onError:void 0,onCompleted:void 0}),context:a,tick:c}),m=n?g[1]:g;return Object(o.useEffect)((function(){return h.current||(h.current=p),function(){return p.cleanup()}}),[]),Object(o.useEffect)((function(){return p.afterExecute({lazy:n})}),[m.loading,m.networkStatus,m.error,m.data]),g}function d(t,e){return l(t,e,!1)}function h(t,e){return l(t,e,!0)}var p=function(t){function e(e){var n=e.options,i=e.context,o=e.result,a=e.setResult,u=t.call(this,n,i)||this;return u.runMutation=function(t){void 0===t&&(t={}),u.onMutationStart();var e=u.generateNewMutationId();return u.mutate(t).then((function(t){return u.onMutationCompleted(t,e),t})).catch((function(t){if(u.onMutationError(t,e),!u.getOptions().onError)throw t}))},u.verifyDocumentType(n.mutation,r.b.Mutation),u.result=o,u.setResult=a,u.mostRecentMutationId=0,u}return Object(i.c)(e,t),e.prototype.execute=function(t){return this.isMounted=!0,this.verifyDocumentType(this.getOptions().mutation,r.b.Mutation),t.client=this.refreshClient().client,[this.runMutation,t]},e.prototype.afterExecute=function(){return this.isMounted=!0,this.unmount.bind(this)},e.prototype.cleanup=function(){},e.prototype.mutate=function(t){var e=this.getOptions(),n=e.mutation,r=e.variables,o=e.optimisticResponse,a=e.update,u=e.context,s=void 0===u?{}:u,c=e.awaitRefetchQueries,f=void 0!==c&&c,l=e.fetchPolicy,d=Object(i.a)({},t),h=Object.assign({},r,d.variables);return delete d.variables,this.refreshClient().client.mutate(Object(i.a)({mutation:n,optimisticResponse:o,refetchQueries:d.refetchQueries||this.getOptions().refetchQueries,awaitRefetchQueries:f,update:a,context:s,fetchPolicy:l,variables:h},d))},e.prototype.onMutationStart=function(){this.result.loading||this.getOptions().ignoreResults||this.updateResult({loading:!0,error:void 0,data:void 0,called:!0})},e.prototype.onMutationCompleted=function(t,e){var n=this.getOptions(),r=n.onCompleted,i=n.ignoreResults,o=t.data,u=t.errors,s=u&&u.length>0?new a.b({graphQLErrors:u}):void 0;this.isMostRecentMutation(e)&&!i&&this.updateResult({called:!0,loading:!1,data:o,error:s}),r&&r(o)},e.prototype.onMutationError=function(t,e){var n=this.getOptions().onError;this.isMostRecentMutation(e)&&this.updateResult({loading:!1,error:t,data:void 0,called:!0}),n&&n(t)},e.prototype.generateNewMutationId=function(){return++this.mostRecentMutationId},e.prototype.isMostRecentMutation=function(t){return this.mostRecentMutationId===t},e.prototype.updateResult=function(t){!this.isMounted||this.previousResult&&Object(u.a)(this.previousResult,t)||(this.setResult(t),this.previousResult=t)},e}(c);function g(t,e){var n=Object(o.useContext)(Object(r.c)()),a=Object(o.useState)({called:!1,loading:!1}),u=a[0],s=a[1],c=e?Object(i.a)(Object(i.a)({},e),{mutation:t}):{mutation:t},f=Object(o.useRef)();var l=(f.current||(f.current=new p({options:c,context:n,result:u,setResult:s})),f.current);return l.setOptions(c),l.context=n,Object(o.useEffect)((function(){return l.afterExecute()})),l.execute(u)}!function(t){function e(e){var n=e.options,r=e.context,i=e.setResult,o=t.call(this,n,r)||this;return o.currentObservable={},o.setResult=i,o.initialize(n),o}Object(i.c)(e,t),e.prototype.execute=function(t){if(!0===this.getOptions().skip)return this.cleanup(),{loading:!1,error:void 0,data:void 0,variables:this.getOptions().variables};var e=t;this.refreshClient().isNew&&(e=this.getLoadingResult());var n=this.getOptions().shouldResubscribe;return"function"===typeof n&&(n=!!n(this.getOptions())),!1!==n&&this.previousOptions&&Object.keys(this.previousOptions).length>0&&(this.previousOptions.subscription!==this.getOptions().subscription||!Object(u.a)(this.previousOptions.variables,this.getOptions().variables)||this.previousOptions.skip!==this.getOptions().skip)&&(this.cleanup(),e=this.getLoadingResult()),this.initialize(this.getOptions()),this.startSubscription(),this.previousOptions=this.getOptions(),Object(i.a)(Object(i.a)({},e),{variables:this.getOptions().variables})},e.prototype.afterExecute=function(){this.isMounted=!0},e.prototype.cleanup=function(){this.endSubscription(),delete this.currentObservable.query},e.prototype.initialize=function(t){this.currentObservable.query||!0===this.getOptions().skip||(this.currentObservable.query=this.refreshClient().client.subscribe({query:t.subscription,variables:t.variables,fetchPolicy:t.fetchPolicy}))},e.prototype.startSubscription=function(){this.currentObservable.subscription||(this.currentObservable.subscription=this.currentObservable.query.subscribe({next:this.updateCurrentData.bind(this),error:this.updateError.bind(this),complete:this.completeSubscription.bind(this)}))},e.prototype.getLoadingResult=function(){return{loading:!0,error:void 0,data:void 0}},e.prototype.updateResult=function(t){this.isMounted&&this.setResult(t)},e.prototype.updateCurrentData=function(t){var e=this.getOptions().onSubscriptionData;this.updateResult({data:t.data,loading:!1,error:void 0}),e&&e({client:this.refreshClient().client,subscriptionData:t})},e.prototype.updateError=function(t){this.updateResult({error:t,loading:!1})},e.prototype.completeSubscription=function(){var t=this.getOptions().onSubscriptionComplete;t&&t(),this.endSubscription()},e.prototype.endSubscription=function(){this.currentObservable.subscription&&(this.currentObservable.subscription.unsubscribe(),delete this.currentObservable.subscription)}}(c);!function(){function t(){this.queryPromises=new Map,this.queryInfoTrie=new Map}t.prototype.registerSSRObservable=function(t,e){this.lookupQueryInfo(e).observable=t},t.prototype.getSSRObservable=function(t){return this.lookupQueryInfo(t).observable},t.prototype.addQueryPromise=function(t,e){return this.lookupQueryInfo(t.getOptions()).seen?e():(this.queryPromises.set(t.getOptions(),new Promise((function(e){e(t.fetchData())}))),null)},t.prototype.hasPromises=function(){return this.queryPromises.size>0},t.prototype.consumeAndAwaitPromises=function(){var t=this,e=[];return this.queryPromises.forEach((function(n,r){t.lookupQueryInfo(r).seen=!0,e.push(n)})),this.queryPromises.clear(),Promise.all(e)},t.prototype.lookupQueryInfo=function(t){var e=this.queryInfoTrie,n=t.query,r=t.variables,i=e.get(n)||new Map;e.has(n)||e.set(n,i);var o=JSON.stringify(r),a=i.get(o)||{seen:!1,observable:null};return i.has(o)||i.set(o,a),a}}()},function(t,e,n){"use strict";function r(t,e){return e||(e=t.slice(0)),Object.freeze(Object.defineProperties(t,{raw:{value:Object.freeze(e)}}))}n.d(e,"a",(function(){return r}))},function(t,e,n){var r=n(970).parse;function i(t){return t.replace(/[\s,]+/g," ").trim()}var o={},a={};var u=!0;function s(t,e){var n=Object.prototype.toString.call(t);if("[object Array]"===n)return t.map((function(t){return s(t,e)}));if("[object Object]"!==n)throw new Error("Unexpected input.");e&&t.loc&&delete t.loc,t.loc&&(delete t.loc.startToken,delete t.loc.endToken);var r,i,o,a=Object.keys(t);for(r in a)a.hasOwnProperty(r)&&(i=t[a[r]],"[object Object]"!==(o=Object.prototype.toString.call(i))&&"[object Array]"!==o||(t[a[r]]=s(i,!0)));return t}var c=!1;function f(t){var e=i(t);if(o[e])return o[e];var n=r(t,{experimentalFragmentVariables:c});if(!n||"Document"!==n.kind)throw new Error("Not a valid GraphQL document.");return n=s(n=function(t){for(var e,n={},r=[],o=0;o-1};var F=function(t,e){var n=this.__data__,r=N(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this};function B(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t-1&&t%1==0&&t<=9007199254740991},Kt={};Kt["[object Float32Array]"]=Kt["[object Float64Array]"]=Kt["[object Int8Array]"]=Kt["[object Int16Array]"]=Kt["[object Int32Array]"]=Kt["[object Uint8Array]"]=Kt["[object Uint8ClampedArray]"]=Kt["[object Uint16Array]"]=Kt["[object Uint32Array]"]=!0,Kt["[object Arguments]"]=Kt["[object Array]"]=Kt["[object ArrayBuffer]"]=Kt["[object Boolean]"]=Kt["[object DataView]"]=Kt["[object Date]"]=Kt["[object Error]"]=Kt["[object Function]"]=Kt["[object Map]"]=Kt["[object Number]"]=Kt["[object Object]"]=Kt["[object RegExp]"]=Kt["[object Set]"]=Kt["[object String]"]=Kt["[object WeakMap]"]=!1;var Yt=function(t){return E(t)&&Gt(t.length)&&!!Kt[S(t)]};var Zt=function(t){return function(e){return t(e)}},Qt=n(154),Xt=Qt.a&&Qt.a.isTypedArray,Jt=Xt?Zt(Xt):Yt,te=Object.prototype.hasOwnProperty;var ee=function(t,e){var n=Ht(t),r=!n&&zt(t),i=!n&&!r&&Object(Vt.a)(t),o=!n&&!r&&!i&&Jt(t),a=n||r||i||o,u=a?Dt(t.length,String):[],s=u.length;for(var c in t)!e&&!te.call(t,c)||a&&("length"==c||i&&("offset"==c||"parent"==c)||o&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Wt(c,s))||u.push(c);return u},ne=Object.prototype;var re=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||ne)},ie=O(Object.keys,Object),oe=Object.prototype.hasOwnProperty;var ae=function(t){if(!re(t))return ie(t);var e=[];for(var n in Object(t))oe.call(t,n)&&"constructor"!=n&&e.push(n);return e};var ue=function(t){return null!=t&&Gt(t.length)&&!G(t)};var se=function(t){return ue(t)?ee(t):ae(t)};var ce=function(t,e){return t&&jt(e,se(e),t)};var fe=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e},le=Object.prototype.hasOwnProperty;var de=function(t){if(!W(t))return fe(t);var e=re(t),n=[];for(var r in t)("constructor"!=r||!e&&le.call(t,r))&&n.push(r);return n};var he=function(t){return ue(t)?ee(t,!0):de(t)};var pe=function(t,e){return t&&jt(e,he(e),t)},ge=n(538);var me=function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n=0||(i[n]=t[n]);return i}function Bn(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}var Un=function(t){return Array.isArray(t)&&0===t.length},zn=function(t){return"function"===typeof t},Hn=function(t){return null!==t&&"object"===typeof t},Vn=function(t){return String(Math.floor(Number(t)))===t},qn=function(t){return"[object String]"===Object.prototype.toString.call(t)},Wn=function(t){return 0===r.Children.count(t)},Gn=function(t){return Hn(t)&&zn(t.then)};function Kn(t,e,n,r){void 0===r&&(r=0);for(var i=Cn(e);t&&r=0?[]:{}}}return(0===o?t:i)[a[o]]===n?t:(void 0===n?delete i[a[o]]:i[a[o]]=n,0===o&&void 0===n&&delete r[a[o]],r)}function Zn(t,e,n,r){void 0===n&&(n=new WeakMap),void 0===r&&(r={});for(var i=0,o=Object.keys(t);i=n.length)break;o=n[i++]}else{if((i=n.next()).done)break;o=i.value}var a=o;Kn(e,a.path)||(e=Yn(e,a.path,a.message))}}return e}(n)):e(n)}))}))}),[g.validationSchema]),T=Object(r.useCallback)((function(t,e){return new Promise((function(n){return n(w.current[t].validate(e))}))}),[]),$=Object(r.useCallback)((function(t){var e=Object.keys(w.current).filter((function(t){return zn(w.current[t].validate)})),n=e.length>0?e.map((function(e){return T(e,Kn(t,e))})):[Promise.resolve("DO_NOT_DELETE_YOU_WILL_BE_FIRED")];return Promise.all(n).then((function(t){return t.reduce((function(t,n,r){return"DO_NOT_DELETE_YOU_WILL_BE_FIRED"===n||n&&(t=Yn(t,e[r],n)),t}),{})}))}),[T]),A=Object(r.useCallback)((function(t){return Promise.all([$(t),g.validationSchema?M(t):{},g.validate?E(t):{}]).then((function(t){var e=t[0],n=t[1],r=t[2];return l.all([e,n,r],{arrayMerge:ur})}))}),[g.validate,g.validationSchema,$,E,M]),k=cr((function(t){return void 0===t&&(t=O.values),Object(Pn.unstable_runWithPriority)(Pn.unstable_LowPriority,(function(){return A(t).then((function(t){return _.current&&x({type:"SET_ERRORS",payload:t}),t})).catch((function(t){0}))}))})),C=cr((function(t){return void 0===t&&(t=O.values),x({type:"SET_ISVALIDATING",payload:!0}),A(t).then((function(t){return _.current&&(x({type:"SET_ISVALIDATING",payload:!1}),o()(O.errors,t)||x({type:"SET_ERRORS",payload:t})),t}))}));Object(r.useEffect)((function(){s&&!0===_.current&&o()(m.current,g.initialValues)&&k(m.current)}),[s,k]);var I=Object(r.useCallback)((function(t){var e=t&&t.values?t.values:m.current,n=t&&t.errors?t.errors:b.current?b.current:g.initialErrors||{},r=t&&t.touched?t.touched:v.current?v.current:g.initialTouched||{},i=t&&t.status?t.status:y.current?y.current:g.initialStatus;m.current=e,b.current=n,v.current=r,y.current=i;var o=function(){x({type:"RESET_FORM",payload:{isSubmitting:!!t&&!!t.isSubmitting,errors:n,touched:r,status:i,values:e,isValidating:!!t&&!!t.isValidating,submitCount:t&&t.submitCount&&"number"===typeof t.submitCount?t.submitCount:0}})};if(g.onReset){var a=g.onReset(O.values,Q);Gn(a)?a.then(o):o()}else o()}),[g.initialErrors,g.initialStatus,g.initialTouched]);Object(r.useEffect)((function(){!0!==_.current||o()(m.current,g.initialValues)||(d&&(m.current=g.initialValues,I()),s&&k(m.current))}),[d,g.initialValues,I,s,k]),Object(r.useEffect)((function(){d&&!0===_.current&&!o()(b.current,g.initialErrors)&&(b.current=g.initialErrors||nr,x({type:"SET_ERRORS",payload:g.initialErrors||nr}))}),[d,g.initialErrors]),Object(r.useEffect)((function(){d&&!0===_.current&&!o()(v.current,g.initialTouched)&&(v.current=g.initialTouched||rr,x({type:"SET_TOUCHED",payload:g.initialTouched||rr}))}),[d,g.initialTouched]),Object(r.useEffect)((function(){d&&!0===_.current&&!o()(y.current,g.initialStatus)&&(y.current=g.initialStatus,x({type:"SET_STATUS",payload:g.initialStatus}))}),[d,g.initialStatus,g.initialTouched]);var P=cr((function(t){if(w.current[t]&&zn(w.current[t].validate)){var e=Kn(O.values,t),n=w.current[t].validate(e);return Gn(n)?(x({type:"SET_ISVALIDATING",payload:!0}),n.then((function(t){return t})).then((function(e){x({type:"SET_FIELD_ERROR",payload:{field:t,value:e}}),x({type:"SET_ISVALIDATING",payload:!1})}))):(x({type:"SET_FIELD_ERROR",payload:{field:t,value:n}}),Promise.resolve(n))}return g.validationSchema?(x({type:"SET_ISVALIDATING",payload:!0}),M(O.values,t).then((function(t){return t})).then((function(e){x({type:"SET_FIELD_ERROR",payload:{field:t,value:e[t]}}),x({type:"SET_ISVALIDATING",payload:!1})}))):Promise.resolve()})),N=Object(r.useCallback)((function(t,e){var n=e.validate;w.current[t]={validate:n}}),[]),R=Object(r.useCallback)((function(t){delete w.current[t]}),[]),j=cr((function(t,e){return x({type:"SET_TOUCHED",payload:t}),(void 0===e?a:e)?k(O.values):Promise.resolve()})),D=Object(r.useCallback)((function(t){x({type:"SET_ERRORS",payload:t})}),[]),L=cr((function(t,e){var r=zn(t)?t(O.values):t;return x({type:"SET_VALUES",payload:r}),(void 0===e?n:e)?k(r):Promise.resolve()})),F=Object(r.useCallback)((function(t,e){x({type:"SET_FIELD_ERROR",payload:{field:t,value:e}})}),[]),B=cr((function(t,e,r){return x({type:"SET_FIELD_VALUE",payload:{field:t,value:e}}),(void 0===r?n:r)?k(Yn(O.values,t,e)):Promise.resolve()})),U=Object(r.useCallback)((function(t,e){var n,r=e,i=t;if(!qn(t)){t.persist&&t.persist();var o=t.target?t.target:t.currentTarget,a=o.type,u=o.name,s=o.id,c=o.value,f=o.checked,l=(o.outerHTML,o.options),d=o.multiple;r=e||(u||s),i=/number|range/.test(a)?(n=parseFloat(c),isNaN(n)?"":n):/checkbox/.test(a)?function(t,e,n){if("boolean"===typeof t)return Boolean(e);var r=[],i=!1,o=-1;if(Array.isArray(t))r=t,i=(o=t.indexOf(n))>=0;else if(!n||"true"==n||"false"==n)return Boolean(e);if(e&&n&&!i)return r.concat(n);if(!i)return r;return r.slice(0,o).concat(r.slice(o+1))}(Kn(O.values,r),f,c):d?function(t){return Array.from(t).filter((function(t){return t.selected})).map((function(t){return t.value}))}(l):c}r&&B(r,i)}),[B,O.values]),z=cr((function(t){if(qn(t))return function(e){return U(e,t)};U(t)})),H=cr((function(t,e,n){return void 0===e&&(e=!0),x({type:"SET_FIELD_TOUCHED",payload:{field:t,value:e}}),(void 0===n?a:n)?k(O.values):Promise.resolve()})),V=Object(r.useCallback)((function(t,e){t.persist&&t.persist();var n=t.target,r=n.name,i=n.id,o=(n.outerHTML,e||(r||i));H(o,!0)}),[H]),q=cr((function(t){if(qn(t))return function(e){return V(e,t)};V(t)})),W=Object(r.useCallback)((function(t){zn(t)?x({type:"SET_FORMIK_STATE",payload:t}):x({type:"SET_FORMIK_STATE",payload:function(){return t}})}),[]),G=Object(r.useCallback)((function(t){x({type:"SET_STATUS",payload:t})}),[]),K=Object(r.useCallback)((function(t){x({type:"SET_ISSUBMITTING",payload:t})}),[]),Y=cr((function(){return x({type:"SUBMIT_ATTEMPT"}),C().then((function(t){var e=t instanceof Error;if(!e&&0===Object.keys(t).length){var n;try{if(void 0===(n=X()))return}catch(r){throw r}return Promise.resolve(n).then((function(t){return _.current&&x({type:"SUBMIT_SUCCESS"}),t})).catch((function(t){if(_.current)throw x({type:"SUBMIT_FAILURE"}),t}))}if(_.current&&(x({type:"SUBMIT_FAILURE"}),e))throw t}))})),Z=cr((function(t){t&&t.preventDefault&&zn(t.preventDefault)&&t.preventDefault(),t&&t.stopPropagation&&zn(t.stopPropagation)&&t.stopPropagation(),Y().catch((function(t){console.warn("Warning: An unhandled error was caught from submitForm()",t)}))})),Q={resetForm:I,validateForm:C,validateField:P,setErrors:D,setFieldError:F,setFieldTouched:H,setFieldValue:B,setStatus:G,setSubmitting:K,setTouched:j,setValues:L,setFormikState:W,submitForm:Y},X=cr((function(){return h(O.values,Q)})),J=cr((function(t){t&&t.preventDefault&&zn(t.preventDefault)&&t.preventDefault(),t&&t.stopPropagation&&zn(t.stopPropagation)&&t.stopPropagation(),I()})),tt=Object(r.useCallback)((function(t){return{value:Kn(O.values,t),error:Kn(O.errors,t),touched:!!Kn(O.touched,t),initialValue:Kn(m.current,t),initialTouched:!!Kn(v.current,t),initialError:Kn(b.current,t)}}),[O.errors,O.touched,O.values]),et=Object(r.useCallback)((function(t){return{setValue:function(e,n){return B(t,e,n)},setTouched:function(e,n){return H(t,e,n)},setError:function(e){return F(t,e)}}}),[B,H,F]),nt=Object(r.useCallback)((function(t){var e=Hn(t),n=e?t.name:t,r=Kn(O.values,n),i={name:n,value:r,onChange:z,onBlur:q};if(e){var o=t.type,a=t.value,u=t.as,s=t.multiple;"checkbox"===o?void 0===a?i.checked=!!r:(i.checked=!(!Array.isArray(r)||!~r.indexOf(a)),i.value=a):"radio"===o?(i.checked=r===a,i.value=a):"select"===u&&s&&(i.value=i.value||[],i.multiple=!0)}return i}),[q,z,O.values]),rt=Object(r.useMemo)((function(){return!o()(m.current,O.values)}),[m.current,O.values]),it=Object(r.useMemo)((function(){return"undefined"!==typeof c?rt?O.errors&&0===Object.keys(O.errors).length:!1!==c&&zn(c)?c(g):c:O.errors&&0===Object.keys(O.errors).length}),[c,rt,O.errors,g]);return Dn({},O,{initialValues:m.current,initialErrors:b.current,initialTouched:v.current,initialStatus:y.current,handleBlur:q,handleChange:z,handleReset:J,handleSubmit:Z,resetForm:I,setErrors:D,setFormikState:W,setFieldTouched:H,setFieldValue:B,setFieldError:F,setStatus:G,setSubmitting:K,setTouched:j,setValues:L,submitForm:Y,validateForm:C,validateField:P,isValid:it,dirty:rt,unregisterField:R,registerField:N,getFieldProps:nt,getFieldMeta:tt,getFieldHelpers:et,validateOnBlur:a,validateOnChange:n,validateOnMount:s})}function or(t){var e=ir(t),n=t.component,i=t.children,o=t.render,a=t.innerRef;return Object(r.useImperativeHandle)(a,(function(){return e})),Object(r.createElement)(Xn,{value:e},n?Object(r.createElement)(n,e):o?o(e):i?zn(i)?i(e):Wn(i)?null:r.Children.only(i):null)}function ar(t){var e=Array.isArray(t)?[]:{};for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var r=String(n);!0===Array.isArray(t[r])?e[r]=t[r].map((function(t){return!0===Array.isArray(t)||C(t)?ar(t):""!==t?t:void 0})):C(t[r])?e[r]=ar(t[r]):e[r]=""!==t[r]?t[r]:void 0}return e}function ur(t,e,n){var r=t.slice();return e.forEach((function(e,i){if("undefined"===typeof r[i]){var o=!1!==n.clone&&n.isMergeableObject(e);r[i]=o?l(Array.isArray(e)?[]:{},e,n):e}else n.isMergeableObject(e)?r[i]=l(t[i],e,n):-1===t.indexOf(e)&&r.push(e)})),r}var sr="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement?r.useLayoutEffect:r.useEffect;function cr(t){var e=Object(r.useRef)(t);return sr((function(){e.current=t})),Object(r.useCallback)((function(){for(var t=arguments.length,n=new Array(t),r=0;rt?e:t}),0);return Array.from(Dn({},t,{length:e+1}))}return[]},gr=function(t){function e(e){var n;return(n=t.call(this,e)||this).updateArrayField=function(t,e,r){var i=n.props,o=i.name;(0,i.formik.setFormikState)((function(n){var i="function"===typeof r?r:t,a="function"===typeof e?e:t,u=Yn(n.values,o,t(Kn(n.values,o))),s=r?i(Kn(n.errors,o)):void 0,c=e?a(Kn(n.touched,o)):void 0;return Un(s)&&(s=void 0),Un(c)&&(c=void 0),Dn({},n,{values:u,errors:r?Yn(n.errors,o,s):n.errors,touched:e?Yn(n.touched,o,c):n.touched})}))},n.push=function(t){return n.updateArrayField((function(e){return[].concat(pr(e),[jn(t)])}),!1,!1)},n.handlePush=function(t){return function(){return n.push(t)}},n.swap=function(t,e){return n.updateArrayField((function(n){return function(t,e,n){var r=pr(t),i=r[e];return r[e]=r[n],r[n]=i,r}(n,t,e)}),!0,!0)},n.handleSwap=function(t,e){return function(){return n.swap(t,e)}},n.move=function(t,e){return n.updateArrayField((function(n){return function(t,e,n){var r=pr(t),i=r[e];return r.splice(e,1),r.splice(n,0,i),r}(n,t,e)}),!0,!0)},n.handleMove=function(t,e){return function(){return n.move(t,e)}},n.insert=function(t,e){return n.updateArrayField((function(n){return hr(n,t,e)}),(function(e){return hr(e,t,null)}),(function(e){return hr(e,t,null)}))},n.handleInsert=function(t,e){return function(){return n.insert(t,e)}},n.replace=function(t,e){return n.updateArrayField((function(n){return function(t,e,n){var r=pr(t);return r[e]=n,r}(n,t,e)}),!1,!1)},n.handleReplace=function(t,e){return function(){return n.replace(t,e)}},n.unshift=function(t){var e=-1;return n.updateArrayField((function(n){var r=n?[t].concat(n):[t];return e<0&&(e=r.length),r}),(function(t){var n=t?[null].concat(t):[null];return e<0&&(e=n.length),n}),(function(t){var n=t?[null].concat(t):[null];return e<0&&(e=n.length),n})),e},n.handleUnshift=function(t){return function(){return n.unshift(t)}},n.handleRemove=function(t){return function(){return n.remove(t)}},n.handlePop=function(){return function(){return n.pop()}},n.remove=n.remove.bind(Bn(n)),n.pop=n.pop.bind(Bn(n)),n}Ln(e,t);var n=e.prototype;return n.componentDidUpdate=function(t){this.props.validateOnChange&&this.props.formik.validateOnChange&&!o()(Kn(t.formik.values,t.name),Kn(this.props.formik.values,this.props.name))&&this.props.formik.validateForm(this.props.formik.values)},n.remove=function(t){var e;return this.updateArrayField((function(n){var r=n?pr(n):[];return e||(e=r[t]),zn(r.splice)&&r.splice(t,1),r}),!0,!0),e},n.pop=function(){var t;return this.updateArrayField((function(e){var n=e;return t||(t=n&&n.pop&&n.pop()),n}),!0,!0),t},n.render=function(){var t={push:this.push,pop:this.pop,swap:this.swap,move:this.move,insert:this.insert,replace:this.replace,unshift:this.unshift,remove:this.remove,handlePush:this.handlePush,handlePop:this.handlePop,handleSwap:this.handleSwap,handleMove:this.handleMove,handleInsert:this.handleInsert,handleReplace:this.handleReplace,handleUnshift:this.handleUnshift,handleRemove:this.handleRemove},e=this.props,n=e.component,i=e.render,o=e.children,a=e.name,u=Dn({},t,{form:Fn(e.formik,["validate","validationSchema"]),name:a});return n?Object(r.createElement)(n,u):i?i(u):o?"function"===typeof o?o(u):Wn(o)?null:r.Children.only(o):null},e}(r.Component);gr.defaultProps={validateOnChange:!0};var mr=dr(gr),br=(r.Component,dr(function(t){function e(e){var n;n=t.call(this,e)||this;var r=e.render,i=e.children,o=e.component,a=e.as;e.name;return r&&Object(In.a)(!1),o&&r&&Object(In.a)(!1),a&&i&&zn(i)&&Object(In.a)(!1),o&&i&&zn(i)&&Object(In.a)(!1),r&&i&&!Wn(i)&&Object(In.a)(!1),n}Ln(e,t);var n=e.prototype;return n.shouldComponentUpdate=function(t){return this.props.shouldUpdate?this.props.shouldUpdate(t,this.props):t.name!==this.props.name||Kn(t.formik.values,this.props.name)!==Kn(this.props.formik.values,this.props.name)||Kn(t.formik.errors,this.props.name)!==Kn(this.props.formik.errors,this.props.name)||Kn(t.formik.touched,this.props.name)!==Kn(this.props.formik.touched,this.props.name)||Object.keys(this.props).length!==Object.keys(t).length||t.formik.isSubmitting!==this.props.formik.isSubmitting},n.componentDidMount=function(){this.props.formik.registerField(this.props.name,{validate:this.props.validate})},n.componentDidUpdate=function(t){this.props.name!==t.name&&(this.props.formik.unregisterField(t.name),this.props.formik.registerField(this.props.name,{validate:this.props.validate})),this.props.validate!==t.validate&&this.props.formik.registerField(this.props.name,{validate:this.props.validate})},n.componentWillUnmount=function(){this.props.formik.unregisterField(this.props.name)},n.render=function(){var t=this.props,e=t.name,n=t.render,i=t.as,o=t.children,a=t.component,u=t.formik,s=Fn(t,["validate","name","render","as","children","component","shouldUpdate","formik"]),c=Fn(u,["validate","validationSchema"]),f={value:"radio"===s.type||"checkbox"===s.type?s.value:Kn(u.values,e),name:e,onChange:u.handleChange,onBlur:u.handleBlur},l={field:f,meta:{value:Kn(u.values,e),error:Kn(u.errors,e),touched:!!Kn(u.touched,e),initialValue:Kn(u.initialValues,e),initialTouched:!!Kn(u.initialTouched,e),initialError:Kn(u.initialErrors,e)},form:c};if(n)return n(l);if(zn(o))return o(l);if(a){if("string"===typeof a){var d=s.innerRef,h=Fn(s,["innerRef"]);return Object(r.createElement)(a,Dn({ref:d},f,h),o)}return Object(r.createElement)(a,Dn({field:f,form:u},s),o)}var p=i||"input";if("string"===typeof p){var g=s.innerRef,m=Fn(s,["innerRef"]);return Object(r.createElement)(p,Dn({ref:g},f,m),o)}return Object(r.createElement)(p,Dn({},f,s),o)},e}(r.Component)))},function(t,e){t.exports=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}},function(t,e,n){t.exports=n(608)()},function(t,e,n){"use strict";n.d(e,"c",(function(){return i})),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return a})),n.d(e,"d",(function(){return u})),n.d(e,"e",(function(){return s}));var r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function i(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var o=function(){return(o=Object.assign||function(t){for(var e,n=1,r=arguments.length;n0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}},,function(t,e){t.exports=function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}},function(t,e,n){"use strict";function r(t,e){if(null==t)return{};var n,r,i=function(t,e){if(null==t)return{};var n,r,i={},o=Object.keys(t);for(r=0;r=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}n.d(e,"a",(function(){return r}))},,function(t,e,n){"use strict";function r(t,e){if(e.length1?"s":"")+" required, but only "+e.length+" present")}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(209);function i(t,e){var n;if("undefined"===typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=Object(r.a)(t))||e&&t&&"number"===typeof t.length){n&&(t=n);var i=0,o=function(){};return{s:o,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}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 a,u=!0,s=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return u=t.done,t},e:function(t){s=!0,a=t},f:function(){try{u||null==n.return||n.return()}finally{if(s)throw a}}}}},function(t,e,n){"use strict";var r=n(4),i=n(17),o=n(1),a=n.n(o),u=(n(13),n(126)),s=n.n(u),c=n(976),f=n(1014),l=n(401),d=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(n){var o=e.defaultTheme,u=e.withTheme,d=void 0!==u&&u,h=e.name,p=Object(i.a)(e,["defaultTheme","withTheme","name"]);var g=h,m=Object(c.a)(t,Object(r.a)({defaultTheme:o,Component:n,name:h||n.displayName,classNamePrefix:g},p)),b=a.a.forwardRef((function(t,e){t.classes;var u,s=t.innerRef,c=Object(i.a)(t,["classes","innerRef"]),p=m(Object(r.a)({},n.defaultProps,t)),g=c;return("string"===typeof h||d)&&(u=Object(l.a)()||o,h&&(g=Object(f.a)({theme:u,name:h,props:c})),d&&!g.theme&&(g.theme=u)),a.a.createElement(n,Object(r.a)({ref:s||e,classes:p},g))}));return s()(b,n),b}},h=n(136);e.a=function(t,e){return d(t,Object(r.a)({defaultTheme:h.a},e))}},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(22);function i(t){Object(r.a)(1,arguments);var e=Object.prototype.toString.call(t);return t instanceof Date||"object"===typeof t&&"[object Date]"===e?new Date(t.getTime()):"number"===typeof t||"[object Number]"===e?new Date(t):("string"!==typeof t&&"[object String]"!==e||"undefined"===typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule"),console.warn((new Error).stack)),new Date(NaN))}},function(t,e,n){"use strict";n.r(e),n.d(e,"hexToRgb",(function(){return r.g})),n.d(e,"rgbToHex",(function(){return r.k})),n.d(e,"hslToRgb",(function(){return r.h})),n.d(e,"decomposeColor",(function(){return r.b})),n.d(e,"recomposeColor",(function(){return r.j})),n.d(e,"getContrastRatio",(function(){return r.e})),n.d(e,"getLuminance",(function(){return r.f})),n.d(e,"emphasize",(function(){return r.c})),n.d(e,"fade",(function(){return r.d})),n.d(e,"darken",(function(){return r.a})),n.d(e,"lighten",(function(){return r.i})),n.d(e,"createMuiTheme",(function(){return i.a})),n.d(e,"unstable_createMuiStrictModeTheme",(function(){return a})),n.d(e,"createStyles",(function(){return u})),n.d(e,"makeStyles",(function(){return s.a})),n.d(e,"responsiveFontSizes",(function(){return v})),n.d(e,"styled",(function(){return y.a})),n.d(e,"easing",(function(){return _.c})),n.d(e,"duration",(function(){return _.b})),n.d(e,"useTheme",(function(){return w.a})),n.d(e,"withStyles",(function(){return S.a})),n.d(e,"withTheme",(function(){return k})),n.d(e,"createGenerateClassName",(function(){return C.a})),n.d(e,"jssPreset",(function(){return I.a})),n.d(e,"ServerStyleSheets",(function(){return D})),n.d(e,"StylesProvider",(function(){return j.b})),n.d(e,"MuiThemeProvider",(function(){return L.a})),n.d(e,"ThemeProvider",(function(){return L.a}));var r=n(36),i=n(208),o=n(393);function a(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r1&&void 0!==arguments[1]?arguments[1]:{},n=e.breakpoints,r=void 0===n?["sm","md","lg"]:n,i=e.disableAlign,o=void 0!==i&&i,a=e.factor,u=void 0===a?2:a,s=e.variants,l=void 0===s?["h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","caption","button","overline"]:s,h=Object(c.a)({},t);h.typography=Object(c.a)({},h.typography);var v=h.typography,y=p(v.htmlFontSize),_=r.map((function(t){return h.breakpoints.values[t]}));return l.forEach((function(t){var e=v[t],n=parseFloat(y(e.fontSize,"rem"));if(!(n<=1)){var r=n,i=1+(r-1)/u,a=e.lineHeight;if(!d(a)&&!o)throw new Error(Object(f.a)(6));d(a)||(a=parseFloat(y(a,"rem"))/parseFloat(n));var s=null;o||(s=function(t){return g({size:t,grid:m({pixels:4,lineHeight:a,htmlFontSize:v.htmlFontSize})})}),v[t]=Object(c.a)({},e,b({cssProperty:"fontSize",min:i,max:r,unit:"rem",breakpoints:_,transform:s}))}})),h}var y=n(280),_=n(90),w=n(96),S=n(24),O=n(17),x=n(1),E=n.n(x),M=(n(13),n(126)),T=n.n(M),$=n(401);function A(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.defaultTheme,n=function(t){var n=E.a.forwardRef((function(n,r){var i=n.innerRef,o=Object(O.a)(n,["innerRef"]),a=Object($.a)()||e;return E.a.createElement(t,Object(c.a)({theme:a,ref:i||r},o))}));return T()(n,t),n};return n}A();var k=A({defaultTheme:n(136).a}),C=n(972),I=n(575),P=n(297),N=n(171),R=n(72),j=n(1009),D=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object(P.a)(this,t),this.options=e}return Object(N.a)(t,[{key:"collect",value:function(t){var e=new Map;this.sheetsRegistry=new R.b;var n=Object(C.a)();return E.a.createElement(j.b,Object(c.a)({sheetsManager:e,serverGenerateClassName:n,sheetsRegistry:this.sheetsRegistry},this.options),t)}},{key:"toString",value:function(){return this.sheetsRegistry?this.sheetsRegistry.toString():""}},{key:"getStyleElement",value:function(t){return E.a.createElement("style",Object(c.a)({id:"jss-server-side",key:"jss-server-side",dangerouslySetInnerHTML:{__html:this.toString()}},t))}}]),t}(),L=n(1098)},function(t,e,n){"use strict";(function(t){n.d(e,"a",(function(){return B})),n.d(e,"b",(function(){return d})),n.d(e,"c",(function(){return E})),n.d(e,"d",(function(){return V})),n.d(e,"e",(function(){return W})),n.d(e,"f",(function(){return K})),n.d(e,"g",(function(){return I})),n.d(e,"h",(function(){return P})),n.d(e,"i",(function(){return y})),n.d(e,"j",(function(){return A})),n.d(e,"k",(function(){return x})),n.d(e,"l",(function(){return C})),n.d(e,"m",(function(){return T})),n.d(e,"n",(function(){return $})),n.d(e,"o",(function(){return k})),n.d(e,"p",(function(){return l})),n.d(e,"q",(function(){return tt})),n.d(e,"r",(function(){return S})),n.d(e,"s",(function(){return w})),n.d(e,"t",(function(){return p})),n.d(e,"u",(function(){return m})),n.d(e,"v",(function(){return g})),n.d(e,"w",(function(){return v})),n.d(e,"x",(function(){return Q})),n.d(e,"y",(function(){return X})),n.d(e,"z",(function(){return nt})),n.d(e,"A",(function(){return it})),n.d(e,"B",(function(){return ot})),n.d(e,"C",(function(){return q})),n.d(e,"D",(function(){return z})),n.d(e,"E",(function(){return h})),n.d(e,"F",(function(){return _})),n.d(e,"G",(function(){return c})),n.d(e,"H",(function(){return b})),n.d(e,"I",(function(){return J}));var r=n(99),i=n(31),o=n(14),a=n(532),u=n.n(a);n(76);function s(t,e,n,r){if(function(t){return"IntValue"===t.kind}(n)||function(t){return"FloatValue"===t.kind}(n))t[e.value]=Number(n.value);else if(function(t){return"BooleanValue"===t.kind}(n)||function(t){return"StringValue"===t.kind}(n))t[e.value]=n.value;else if(function(t){return"ObjectValue"===t.kind}(n)){var o={};n.fields.map((function(t){return s(o,t.name,t.value,r)})),t[e.value]=o}else if(function(t){return"Variable"===t.kind}(n)){var a=(r||{})[n.name.value];t[e.value]=a}else if(function(t){return"ListValue"===t.kind}(n))t[e.value]=n.values.map((function(t){var n={};return s(n,e,t,r),n[e.value]}));else if(function(t){return"EnumValue"===t.kind}(n))t[e.value]=n.value;else{if(!function(t){return"NullValue"===t.kind}(n))throw new i.a(17);t[e.value]=null}}function c(t,e){var n=null;t.directives&&(n={},t.directives.forEach((function(t){n[t.name.value]={},t.arguments&&t.arguments.forEach((function(r){var i=r.name,o=r.value;return s(n[t.name.value],i,o,e)}))})));var r=null;return t.arguments&&t.arguments.length&&(r={},t.arguments.forEach((function(t){var n=t.name,i=t.value;return s(r,n,i,e)}))),l(t.name.value,r,n)}var f=["connection","include","skip","client","rest","export"];function l(t,e,n){if(n&&n.connection&&n.connection.key){if(n.connection.filter&&n.connection.filter.length>0){var r=n.connection.filter?n.connection.filter:[];r.sort();var i=e,o={};return r.forEach((function(t){o[t]=i[t]})),n.connection.key+"("+JSON.stringify(o)+")"}return n.connection.key}var a=t;if(e){var s=u()(e);a+="("+s+")"}return n&&Object.keys(n).forEach((function(t){-1===f.indexOf(t)&&(n[t]&&Object.keys(n[t]).length?a+="@"+t+"("+JSON.stringify(n[t])+")":a+="@"+t)})),a}function d(t,e){if(t.arguments&&t.arguments.length){var n={};return t.arguments.forEach((function(t){var r=t.name,i=t.value;return s(n,r,i,e)})),n}return null}function h(t){return t.alias?t.alias.value:t.name.value}function p(t){return"Field"===t.kind}function g(t){return"InlineFragment"===t.kind}function m(t){return t&&"id"===t.type&&"boolean"===typeof t.generated}function b(t,e){return void 0===e&&(e=!1),Object(o.a)({type:"id",generated:e},"string"===typeof t?{id:t,typename:void 0}:t)}function v(t){return null!=t&&"object"===typeof t&&"json"===t.type}function y(t,e){if(t.directives&&t.directives.length){var n={};return t.directives.forEach((function(t){n[t.name.value]=d(t,e)})),n}return null}function _(t,e){return void 0===e&&(e={}),(n=t.directives,n?n.filter(O).map((function(t){var e=t.arguments;t.name.value,Object(i.b)(e&&1===e.length,14);var n=e[0];Object(i.b)(n.name&&"if"===n.name.value,15);var r=n.value;return Object(i.b)(r&&("Variable"===r.kind||"BooleanValue"===r.kind),16),{directive:t,ifArgument:n}})):[]).every((function(t){var n=t.directive,r=t.ifArgument,o=!1;return"Variable"===r.value.kind?(o=e[r.value.name.value],Object(i.b)(void 0!==o,13)):o=r.value.value,"skip"===n.name.value?!o:o}));var n}function w(t,e){return function(t){var e=[];return Object(r.b)(t,{Directive:function(t){e.push(t.name.value)}}),e}(e).some((function(e){return t.indexOf(e)>-1}))}function S(t){return t&&w(["client"],t)&&w(["export"],t)}function O(t){var e=t.name.value;return"skip"===e||"include"===e}function x(t,e){var n=e,r=[];return t.definitions.forEach((function(t){if("OperationDefinition"===t.kind)throw new i.a(11);"FragmentDefinition"===t.kind&&r.push(t)})),"undefined"===typeof n&&(Object(i.b)(1===r.length,12),n=r[0].name.value),Object(o.a)(Object(o.a)({},t),{definitions:Object(o.e)([{kind:"OperationDefinition",operation:"query",selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:n}}]}}],t.definitions)})}function E(t){for(var e=[],n=1;n1){var r=[];e=st(e,r);for(var i=1;ie?1:t>=e?0:NaN},o=function(t){var e=t,n=t;function r(t,e,r,i){for(null==r&&(r=0),null==i&&(i=t.length);r>>1;n(t[o],e)<0?r=o+1:i=o}return r}return 1===t.length&&(e=function(e,n){return t(e)-n},n=function(t){return function(e,n){return i(t(e),n)}}(t)),{left:r,center:function(t,n,i,o){null==i&&(i=0),null==o&&(o=t.length);var a=r(t,n,i,o-1);return a>i&&e(t[a-1],n)>-e(t[a],n)?a-1:a},right:function(t,e,r,i){for(null==r&&(r=0),null==i&&(i=t.length);r>>1;n(t[o],e)>0?i=o:r=o+1}return r}}};var a=n(35),u=n.n(a),s=n(23),c=u.a.mark(l),f=function(t){return null===t?NaN:+t};function l(t,e){var n,r,i,o,a,f,l;return u.a.wrap((function(u){for(;;)switch(u.prev=u.next){case 0:if(void 0!==e){u.next=21;break}n=Object(s.a)(t),u.prev=2,n.s();case 4:if((r=n.n()).done){u.next=11;break}if(!(null!=(i=r.value)&&(i=+i)>=i)){u.next=9;break}return u.next=9,i;case 9:u.next=4;break;case 11:u.next=16;break;case 13:u.prev=13,u.t0=u.catch(2),n.e(u.t0);case 16:return u.prev=16,n.f(),u.finish(16);case 19:u.next=40;break;case 21:o=-1,a=Object(s.a)(t),u.prev=23,a.s();case 25:if((f=a.n()).done){u.next=32;break}if(l=f.value,!(null!=(l=e(l,++o,t))&&(l=+l)>=l)){u.next=30;break}return u.next=30,l;case 30:u.next=25;break;case 32:u.next=37;break;case 34:u.prev=34,u.t1=u.catch(23),a.e(u.t1);case 37:return u.prev=37,a.f(),u.finish(37);case 40:case"end":return u.stop()}}),c,null,[[2,13,16,19],[23,34,37,40]])}var d=o(i),h=d.right,p=d.left,g=o(f).center,m=h;function b(t,e){var n=0;if(void 0===e){var r,i=Object(s.a)(t);try{for(i.s();!(r=i.n()).done;){var o=r.value;null!=o&&(o=+o)>=o&&++n}}catch(l){i.e(l)}finally{i.f()}}else{var a,u=-1,c=Object(s.a)(t);try{for(c.s();!(a=c.n()).done;){var f=a.value;null!=(f=e(f,++u,t))&&(f=+f)>=f&&++n}}catch(l){c.e(l)}finally{c.f()}}return n}var v=n(47);function y(t){return 0|t.length}function _(t){return!(t>0)}function w(t){return"object"!==typeof t||"length"in t?t:Array.from(t)}function S(t){return function(e){return t.apply(void 0,Object(v.a)(e))}}function O(){for(var t=arguments.length,e=new Array(t),n=0;nt?1:e>=t?0:NaN};function M(t,e){var n,r=0,i=0,o=0;if(void 0===e){var a,u=Object(s.a)(t);try{for(u.s();!(a=u.n()).done;){var c=a.value;null!=c&&(c=+c)>=c&&(o+=(n=c-i)*(c-(i+=n/++r)))}}catch(p){u.e(p)}finally{u.f()}}else{var f,l=-1,d=Object(s.a)(t);try{for(d.s();!(f=d.n()).done;){var h=f.value;null!=(h=e(h,++l,t))&&(h=+h)>=h&&(o+=(n=h-i)*(h-(i+=n/++r)))}}catch(p){d.e(p)}finally{d.f()}}if(r>1)return o/(r-1)}function T(t,e){var n=M(t,e);return n?Math.sqrt(n):n}var $=function(t,e){var n,r;if(void 0===e){var i,o=Object(s.a)(t);try{for(o.s();!(i=o.n()).done;){var a=i.value;null!=a&&(void 0===n?a>=a&&(n=r=a):(n>a&&(n=a),r=l&&(n=r=l):(n>l&&(n=l),r0){for(o=r[--i];i>0&&(t=o,!(n=(e=r[--i])-((o=t+e)-t))););i>0&&(n<0&&r[i-1]<0||n>0&&r[i-1]>0)&&(e=2*n)==(t=o+e)-o&&(o=t)}return o}}]),t}(),I=function(t,e){var n=new C;if(void 0===e){var r,i=Object(s.a)(t);try{for(i.s();!(r=i.n()).done;){var o=r.value;(o=+o)&&n.add(o)}}catch(l){i.e(l)}finally{i.f()}}else{var a,u=-1,c=Object(s.a)(t);try{for(c.s();!(a=c.n()).done;){var f=a.value;(f=+e(f,++u,t))&&n.add(f)}}catch(l){c.e(l)}finally{c.f()}}return+n},P=n(2),N=n(190),R=n(62),j=n(51),D=n(86),L=n(87),F=n(250),B=function(t){Object(D.a)(n,t);var e=Object(L.a)(n);function n(){var t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:q;Object(A.a)(this,n),t=e.call(this),Object.defineProperties(Object(N.a)(t),{_intern:{value:new Map},_key:{value:i}});var o,a=Object(s.a)(r);try{for(a.s();!(o=a.n()).done;){var u=Object(P.a)(o.value,2),c=u[0],f=u[1];t.set(c,f)}}catch(l){a.e(l)}finally{a.f()}return t}return Object(k.a)(n,[{key:"get",value:function(t){return Object(R.a)(Object(j.a)(n.prototype),"get",this).call(this,z(this,t))}},{key:"has",value:function(t){return Object(R.a)(Object(j.a)(n.prototype),"has",this).call(this,z(this,t))}},{key:"set",value:function(t,e){return Object(R.a)(Object(j.a)(n.prototype),"set",this).call(this,H(this,t),e)}},{key:"delete",value:function(t){return Object(R.a)(Object(j.a)(n.prototype),"delete",this).call(this,V(this,t))}}]),n}(Object(F.a)(Map)),U=function(t){Object(D.a)(n,t);var e=Object(L.a)(n);function n(){var t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:q;Object(A.a)(this,n),t=e.call(this),Object.defineProperties(Object(N.a)(t),{_intern:{value:new Map},_key:{value:i}});var o,a=Object(s.a)(r);try{for(a.s();!(o=a.n()).done;){var u=o.value;t.add(u)}}catch(c){a.e(c)}finally{a.f()}return t}return Object(k.a)(n,[{key:"has",value:function(t){return Object(R.a)(Object(j.a)(n.prototype),"has",this).call(this,z(this,t))}},{key:"add",value:function(t){return Object(R.a)(Object(j.a)(n.prototype),"add",this).call(this,H(this,t))}},{key:"delete",value:function(t){return Object(R.a)(Object(j.a)(n.prototype),"delete",this).call(this,V(this,t))}}]),n}(Object(F.a)(Set));function z(t,e){var n=t._intern,r=(0,t._key)(e);return n.has(r)?n.get(r):e}function H(t,e){var n=t._intern,r=(0,t._key)(e);return n.has(r)?n.get(r):(n.set(r,e),e)}function V(t,e){var n=t._intern,r=(0,t._key)(e);return n.has(r)&&(e=n.get(e),n.delete(r)),e}function q(t){return null!==t&&"object"===typeof t?t.valueOf():t}var W=function(t){return t};function G(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r1?e-1:0),r=1;r2?n-2:0),i=2;i2?n-2:0),i=2;i1?e-1:0),r=1;r1?e-1:0),r=1;r=r.length)return n(i);var a,u=new B,c=r[o++],f=-1,l=Object(s.a)(i);try{for(l.s();!(a=l.n()).done;){var d=a.value,h=c(d,++f,i),p=u.get(h);p?p.push(d):u.set(h,[d])}}catch(_){l.e(_)}finally{l.f()}var g,m=Object(s.a)(u);try{for(m.s();!(g=m.n()).done;){var b=Object(P.a)(g.value,2),v=b[0],y=b[1];u.set(v,t(y,o))}}catch(_){m.e(_)}finally{m.f()}return e(u)}(t,0)}var et=function(t,e){return Array.from(e,(function(e){return t[e]}))};function nt(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r1){var f=Uint32Array.from(t,(function(t,e){return e}));return n.length>1?(n=n.map((function(e){return t.map(e)})),f.sort((function(t,e){var r,o=Object(s.a)(n);try{for(o.s();!(r=o.n()).done;){var a=r.value,u=i(a[t],a[e]);if(u)return u}}catch(c){o.e(c)}finally{o.f()}}))):(c=t.map(c),f.sort((function(t,e){return i(c[t],c[e])}))),et(t,f)}return t.sort(c)}function rt(t,e,n){return(1===e.length?nt(Y(t,e,n),(function(t,e){var n=Object(P.a)(t,2),r=n[0],o=n[1],a=Object(P.a)(e,2),u=a[0],s=a[1];return i(o,s)||i(r,u)})):nt(G(t,n),(function(t,n){var r=Object(P.a)(t,2),o=r[0],a=r[1],u=Object(P.a)(n,2),s=u[0],c=u[1];return e(a,c)||i(o,s)}))).map((function(t){return Object(P.a)(t,1)[0]}))}var it=Array.prototype,ot=it.slice,at=(it.map,function(t){return function(){return t}}),ut=Math.sqrt(50),st=Math.sqrt(10),ct=Math.sqrt(2),ft=function(t,e,n){var r,i,o,a,u=-1;if(n=+n,(t=+t)===(e=+e)&&n>0)return[t];if((r=e0)for(t=Math.ceil(t/a),e=Math.floor(e/a),o=new Array(i=Math.ceil(e-t+1));++u=0?(o>=ut?10:o>=st?5:o>=ct?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(o>=ut?10:o>=st?5:o>=ct?2:1)}function dt(t,e,n){var r=Math.abs(e-t)/Math.max(0,n),i=Math.pow(10,Math.floor(Math.log(r)/Math.LN10)),o=r/i;return o>=ut?i*=10:o>=st?i*=5:o>=ct&&(i*=2),e0?(t=Math.floor(t/i)*i,e=Math.ceil(e/i)*i):i<0&&(t=Math.ceil(t*i)/i,e=Math.floor(e*i)/i),r=i}}var pt=function(t){return Math.ceil(Math.log(b(t))/Math.LN2)+1},gt=function(){var t=W,e=$,n=pt;function r(r){Array.isArray(r)||(r=Array.from(r));var i,o,a=r.length,u=new Array(a);for(i=0;i=f)if(d>=f&&e===$){var b=lt(c,f,h);isFinite(b)&&(b>0?f=(Math.floor(f/b)+1)*b:b<0&&(f=(Math.ceil(f*-b)+1)/-b))}else l.pop()}for(var v=l.length;l[0]<=c;)l.shift(),--v;for(;l[v-1]>f;)l.pop(),--v;var y,_=new Array(v+1);for(i=0;i<=v;++i)(y=_[i]=[]).x0=i>0?l[i-1]:c,y.x1=i=o)&&(n=o)}}catch(l){i.e(l)}finally{i.f()}}else{var a,u=-1,c=Object(s.a)(t);try{for(c.s();!(a=c.n()).done;){var f=a.value;null!=(f=e(f,++u,t))&&(n=f)&&(n=f)}}catch(l){c.e(l)}finally{c.f()}}return n}function bt(t,e){var n;if(void 0===e){var r,i=Object(s.a)(t);try{for(i.s();!(r=i.n()).done;){var o=r.value;null!=o&&(n>o||void 0===n&&o>=o)&&(n=o)}}catch(l){i.e(l)}finally{i.f()}}else{var a,u=-1,c=Object(s.a)(t);try{for(c.s();!(a=c.n()).done;){var f=a.value;null!=(f=e(f,++u,t))&&(n>f||void 0===n&&f>=f)&&(n=f)}}catch(l){c.e(l)}finally{c.f()}}return n}function vt(t,e){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t.length-1,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:i;r>n;){if(r-n>600){var a=r-n+1,u=e-n+1,s=Math.log(a),c=.5*Math.exp(2*s/3),f=.5*Math.sqrt(s*c*(a-c)/a)*(u-a/2<0?-1:1),l=Math.max(n,Math.floor(e-u*c/a+f)),d=Math.min(r,Math.floor(e+(a-u)*c/a+f));vt(t,e,l,d,o)}var h=t[e],p=n,g=r;for(yt(t,n,e),o(t[r],h)>0&&yt(t,n,r);p0;)--g}0===o(t[n],h)?yt(t,n,g):yt(t,++g,r),g<=e&&(n=g+1),e<=g&&(r=g-1)}return t}function yt(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function _t(t,e,n){if(r=(t=Float64Array.from(l(t,n))).length){if((e=+e)<=0||r<2)return bt(t);if(e>=1)return mt(t);var r,i=(r-1)*e,o=Math.floor(i),a=mt(vt(t,o).subarray(0,o+1));return a+(bt(t.subarray(o+1))-a)*(i-o)}}function wt(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:f;if(r=t.length){if((e=+e)<=0||r<2)return+n(t[0],0,t);if(e>=1)return+n(t[r-1],r-1,t);var r,i=(r-1)*e,o=Math.floor(i),a=+n(t[o],o,t),u=+n(t[o+1],o+1,t);return a+(u-a)*(i-o)}}var St=function(t,e,n){return Math.ceil((n-e)/(2*(_t(t,.75)-_t(t,.25))*Math.pow(b(t),-1/3)))},Ot=function(t,e,n){return Math.ceil((n-e)/(3.5*T(t)*Math.pow(b(t),-1/3)))};function xt(t,e){var n,r=-1,i=-1;if(void 0===e){var o,a=Object(s.a)(t);try{for(a.s();!(o=a.n()).done;){var u=o.value;++i,null!=u&&(n=u)&&(n=u,r=i)}}catch(d){a.e(d)}finally{a.f()}}else{var c,f=Object(s.a)(t);try{for(f.s();!(c=f.n()).done;){var l=c.value;null!=(l=e(l,++i,t))&&(n=l)&&(n=l,r=i)}}catch(d){f.e(d)}finally{f.f()}}return r}function Et(t,e){var n=0,r=0;if(void 0===e){var i,o=Object(s.a)(t);try{for(o.s();!(i=o.n()).done;){var a=i.value;null!=a&&(a=+a)>=a&&(++n,r+=a)}}catch(d){o.e(d)}finally{o.f()}}else{var u,c=-1,f=Object(s.a)(t);try{for(f.s();!(u=f.n()).done;){var l=u.value;null!=(l=e(l,++c,t))&&(l=+l)>=l&&(++n,r+=l)}}catch(d){f.e(d)}finally{f.f()}}if(n)return r/n}var Mt=function(t,e){return _t(t,.5,e)},Tt=u.a.mark($t);function $t(t){var e,n,r;return u.a.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:e=Object(s.a)(t),i.prev=1,e.s();case 3:if((n=e.n()).done){i.next=8;break}return r=n.value,i.delegateYield(r,"t0",6);case 6:i.next=3;break;case 8:i.next=13;break;case 10:i.prev=10,i.t1=i.catch(1),e.e(i.t1);case 13:return i.prev=13,e.f(),i.finish(13);case 16:case"end":return i.stop()}}),Tt,null,[[1,10,13,16]])}function At(t){return Array.from($t(t))}function kt(t,e){var n,r=-1,i=-1;if(void 0===e){var o,a=Object(s.a)(t);try{for(a.s();!(o=a.n()).done;){var u=o.value;++i,null!=u&&(n>u||void 0===n&&u>=u)&&(n=u,r=i)}}catch(d){a.e(d)}finally{a.f()}}else{var c,f=Object(s.a)(t);try{for(f.s();!(c=f.n()).done;){var l=c.value;null!=(l=e(l,++i,t))&&(n>l||void 0===n&&l>=l)&&(n=l,r=i)}}catch(d){f.e(d)}finally{f.f()}}return r}function Ct(t){var e,n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:It,i=[],o=!1,a=Object(s.a)(t);try{for(a.s();!(n=a.n()).done;){var u=n.value;o&&i.push(r(e,u)),e=u,o=!0}}catch(c){a.e(c)}finally{a.f()}return i}function It(t,e){return[t,e]}var Pt=function(t,e,n){t=+t,e=+e,n=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+n;for(var r=-1,i=0|Math.max(0,Math.ceil((e-t)/n)),o=new Array(i);++r1&&void 0!==arguments[1]?arguments[1]:i,r=!1;if(1===n.length){var o,a,u=Object(s.a)(t);try{for(u.s();!(a=u.n()).done;){var c=a.value,f=n(c);(r?i(f,o)<0:0===i(f,f))&&(e=c,o=f,r=!0)}}catch(p){u.e(p)}finally{u.f()}}else{var l,d=Object(s.a)(t);try{for(d.s();!(l=d.n()).done;){var h=l.value;(r?n(h,e)<0:0===n(h,h))&&(e=h,r=!0)}}catch(p){d.e(p)}finally{d.f()}}return e}function Rt(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i;if(1===n.length)return kt(t,n);var r,o=-1,a=-1,u=Object(s.a)(t);try{for(u.s();!(r=u.n()).done;){var c=r.value;++a,(o<0?0===n(c,c):n(c,e)<0)&&(e=c,o=a)}}catch(f){u.e(f)}finally{u.f()}return o}function jt(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i,r=!1;if(1===n.length){var o,a,u=Object(s.a)(t);try{for(u.s();!(a=u.n()).done;){var c=a.value,f=n(c);(r?i(f,o)>0:0===i(f,f))&&(e=c,o=f,r=!0)}}catch(p){u.e(p)}finally{u.f()}}else{var l,d=Object(s.a)(t);try{for(d.s();!(l=d.n()).done;){var h=l.value;(r?n(h,e)>0:0===n(h,h))&&(e=h,r=!0)}}catch(p){d.e(p)}finally{d.f()}}return e}function Dt(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i;if(1===n.length)return xt(t,n);var r,o=-1,a=-1,u=Object(s.a)(t);try{for(u.s();!(r=u.n()).done;){var c=r.value;++a,(o<0?0===n(c,c):n(c,e)>0)&&(e=c,o=a)}}catch(f){u.e(f)}finally{u.f()}return o}function Lt(t,e){var n=Rt(t,e);return n<0?void 0:n}var Ft=Bt(Math.random);function Bt(t){return function(e){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,i=r-(n=+n);i;){var o=t()*i--|0,a=e[i+n];e[i+n]=e[o+n],e[o+n]=a}return e}}function Ut(t,e){var n=0;if(void 0===e){var r,i=Object(s.a)(t);try{for(i.s();!(r=i.n()).done;){var o=r.value;(o=+o)&&(n+=o)}}catch(l){i.e(l)}finally{i.f()}}else{var a,u=-1,c=Object(s.a)(t);try{for(c.s();!(a=c.n()).done;){var f=a.value;(f=+e(f,++u,t))&&(n+=f)}}catch(l){c.e(l)}finally{c.f()}}return n}var zt=function(t){if(!(i=t.length))return[];for(var e=-1,n=bt(t,Ht),r=new Array(n);++e1?e-1:0),r=1;r1?e-1:0),r=1;r=0&&(n=t.slice(r+1),t=t.slice(0,r)),t&&!e.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}}))}function we(t,e){for(var n,r=0,i=t.length;r0)for(var n,r,i=new Array(n),o=0;oe?1:t>=e?0:NaN}var He="http://www.w3.org/1999/xhtml",Ve={svg:"http://www.w3.org/2000/svg",xhtml:He,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},qe=function(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),Ve.hasOwnProperty(e)?{space:Ve[e],local:t}:t};function We(t){return function(){this.removeAttribute(t)}}function Ge(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Ke(t,e){return function(){this.setAttribute(t,e)}}function Ye(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function Ze(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}function Qe(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}var Xe=function(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView};function Je(t){return function(){this.style.removeProperty(t)}}function tn(t,e,n){return function(){this.style.setProperty(t,e,n)}}function en(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}function nn(t,e){return t.style.getPropertyValue(e)||Xe(t).getComputedStyle(t,null).getPropertyValue(e)}function rn(t){return function(){delete this[t]}}function on(t,e){return function(){this[t]=e}}function an(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}function un(t){return t.trim().split(/^|\s+/)}function sn(t){return t.classList||new cn(t)}function cn(t){this._node=t,this._names=un(t.getAttribute("class")||"")}function fn(t,e){for(var n=sn(t),r=-1,i=e.length;++r=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function gn(){this.textContent=""}function mn(t){return function(){this.textContent=t}}function bn(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}function vn(){this.innerHTML=""}function yn(t){return function(){this.innerHTML=t}}function _n(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}function wn(){this.nextSibling&&this.parentNode.appendChild(this)}function Sn(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function On(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===He&&e.documentElement.namespaceURI===He?e.createElement(t):e.createElementNS(n,t)}}function xn(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}var En=function(t){var e=qe(t);return(e.local?xn:On)(e)};function Mn(){return null}function Tn(){var t=this.parentNode;t&&t.removeChild(this)}function $n(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function An(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function kn(t){return t.trim().split(/^|\s+/).map((function(t){var e="",n=t.indexOf(".");return n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}}))}function Cn(t){return function(){var e=this.__on;if(e){for(var n,r=0,i=-1,o=e.length;r=w&&(w=_+1);!(y=m[w])&&++w=0;)(r=i[o])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=ze);for(var n=this._groups,r=n.length,i=new Array(r),o=0;o1?this.each((null==e?Je:"function"===typeof e?en:tn)(t,e,null==n?"":n)):nn(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?rn:"function"===typeof e?an:on)(t,e)):this.node()[t]},classed:function(t,e){var n=un(t+"");if(arguments.length<2){for(var r=sn(this.node()),i=-1,o=n.length;++i>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?hr(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?hr(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=nr.exec(t))?new mr(e[1],e[2],e[3],1):(e=rr.exec(t))?new mr(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=ir.exec(t))?hr(e[1],e[2],e[3],e[4]):(e=or.exec(t))?hr(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=ar.exec(t))?_r(e[1],e[2]/100,e[3]/100,1):(e=ur.exec(t))?_r(e[1],e[2]/100,e[3]/100,e[4]):sr.hasOwnProperty(t)?dr(sr[t]):"transparent"===t?new mr(NaN,NaN,NaN,0):null}function dr(t){return new mr(t>>16&255,t>>8&255,255&t,1)}function hr(t,e,n,r){return r<=0&&(t=e=n=NaN),new mr(t,e,n,r)}function pr(t){return t instanceof Yn||(t=lr(t)),t?new mr((t=t.rgb()).r,t.g,t.b,t.opacity):new mr}function gr(t,e,n,r){return 1===arguments.length?pr(t):new mr(t,e,n,null==r?1:r)}function mr(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function br(){return"#"+yr(this.r)+yr(this.g)+yr(this.b)}function vr(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?")":", "+t+")")}function yr(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?"0":"")+t.toString(16)}function _r(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new Or(t,e,n,r)}function wr(t){if(t instanceof Or)return new Or(t.h,t.s,t.l,t.opacity);if(t instanceof Yn||(t=lr(t)),!t)return new Or;if(t instanceof Or)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),o=Math.max(e,n,r),a=NaN,u=o-i,s=(o+i)/2;return u?(a=e===o?(n-r)/u+6*(n0&&s<1?0:a,new Or(a,u,s,t.opacity)}function Sr(t,e,n,r){return 1===arguments.length?wr(t):new Or(t,e,n,null==r?1:r)}function Or(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function xr(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}function Er(t,e,n,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*e+(4-6*o+3*a)*n+(1+3*t+3*o-3*a)*r+a*i)/6}Gn(Yn,lr,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:cr,formatHex:cr,formatHsl:function(){return wr(this).formatHsl()},formatRgb:fr,toString:fr}),Gn(mr,gr,Kn(Yn,{brighter:function(t){return t=null==t?Qn:Math.pow(Qn,t),new mr(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?Zn:Math.pow(Zn,t),new mr(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:br,formatHex:br,formatRgb:vr,toString:vr})),Gn(Or,Sr,Kn(Yn,{brighter:function(t){return t=null==t?Qn:Math.pow(Qn,t),new Or(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?Zn:Math.pow(Zn,t),new Or(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new mr(xr(t>=240?t-240:t+120,i,r),xr(t,i,r),xr(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===t?")":", "+t+")")}}));var Mr=function(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,u=r180||n<-180?n-360*Math.round(n/360):n):$r(isNaN(t)?e:t)}function Cr(t){return 1===(t=+t)?Ir:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}(e,n,t):$r(isNaN(e)?n:e)}}function Ir(t,e){var n=e-t;return n?Ar(t,n):$r(isNaN(t)?e:t)}var Pr=function t(e){var n=Cr(e);function r(t,e){var r=n((t=gr(t)).r,(e=gr(e)).r),i=n(t.g,e.g),o=n(t.b,e.b),a=Ir(t.opacity,e.opacity);return function(e){return t.r=r(e),t.g=i(e),t.b=o(e),t.opacity=a(e),t+""}}return r.gamma=t,r}(1);function Nr(t){return function(e){var n,r,i=e.length,o=new Array(i),a=new Array(i),u=new Array(i);for(n=0;no&&(i=e.slice(o,i),u[a]?u[a]+=i:u[++a]=i),(n=n[0])===(r=r[0])?u[a]?u[a]+=r:u[++a]=r:(u[++a]=null,s.push({i:a,x:zr(n,r)})),o=qr.lastIndex;return o=0&&e._call.call(null,t),e=e._next;--Xr}function li(){ni=(ei=ii.now())+ri,Xr=Jr=0;try{fi()}finally{Xr=0,function(){var t,e,n=Wr,r=1/0;for(;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:Wr=e);Gr=t,hi(r)}(),ni=0}}function di(){var t=ii.now(),e=t-ei;e>1e3&&(ri-=e,ei=t)}function hi(t){Xr||(Jr&&(Jr=clearTimeout(Jr)),t-ni>24?(t<1/0&&(Jr=setTimeout(li,t-ii.now()-ri)),ti&&(ti=clearInterval(ti))):(ti||(ei=ii.now(),ti=setInterval(di,1e3)),Xr=1,oi(li)))}si.prototype=ci.prototype={constructor:si,restart:function(t,e,n){if("function"!==typeof t)throw new TypeError("callback is not a function");n=(null==n?ai():+n)+(null==e?0:+e),this._next||Gr===this||(Gr?Gr._next=this:Wr=this,Gr=this),this._call=t,this._time=n,hi()},stop:function(){this._call&&(this._call=null,this._time=1/0,hi())}};var pi=function(t,e,n){var r=new si;return e=null==e?0:+e,r.restart((function(n){r.stop(),t(n+e)}),e,n),r},gi=Oe("start","end","cancel","interrupt"),mi=[],bi=function(t,e,n,r,i,o){var a=t.__transition;if(a){if(n in a)return}else t.__transition={};!function(t,e,n){var r,i=t.__transition;function o(t){n.state=1,n.timer.restart(a,n.delay,n.time),n.delay<=t&&a(t-n.delay)}function a(o){var c,f,l,d;if(1!==n.state)return s();for(c in i)if((d=i[c]).name===n.name){if(3===d.state)return pi(a);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",t,t.__data__,d.index,d.group),delete i[c]):+c0)throw new Error("too late; already scheduled");return n}function yi(t,e){var n=_i(t,e);if(n.state>3)throw new Error("too late; already running");return n}function _i(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}var wi,Si=function(t,e){var n,r,i,o=t.__transition,a=!0;if(o){for(i in e=null==e?null:e+"",o)(n=o[i]).name===e?(r=n.state>2&&n.state<5,n.state=6,n.timer.stop(),n.on.call(r?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete o[i]):a=!1;a&&delete t.__transition}},Oi=180/Math.PI,xi={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},Ei=function(t,e,n,r,i,o){var a,u,s;return(a=Math.sqrt(t*t+e*e))&&(t/=a,e/=a),(s=t*n+e*r)&&(n-=t*s,r-=e*s),(u=Math.sqrt(n*n+r*r))&&(n/=u,r/=u,s/=u),t*r180?e+=360:e-t>180&&(t+=360),o.push({i:n.push(i(n)+"rotate(",null,r)-2,x:zr(t,e)})):e&&n.push(i(n)+"rotate("+e+r)}(o.rotate,a.rotate,u,s),function(t,e,n,o){t!==e?o.push({i:n.push(i(n)+"skewX(",null,r)-2,x:zr(t,e)}):e&&n.push(i(n)+"skewX("+e+r)}(o.skewX,a.skewX,u,s),function(t,e,n,r,o,a){if(t!==n||e!==r){var u=o.push(i(o)+"scale(",null,",",null,")");a.push({i:u-4,x:zr(t,n)},{i:u-2,x:zr(e,r)})}else 1===n&&1===r||o.push(i(o)+"scale("+n+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,u,s),o=a=null,function(t){for(var e,n=-1,r=s.length;++n=0&&(t=t.slice(0,e)),!t||"start"===t}))}(e)?vi:yi;return function(){var a=o(this,t),u=a.on;u!==r&&(i=(r=u).copy()).on(e,n),a.on=i}}var Yi=Un.prototype.constructor;function Zi(t){return function(){this.style.removeProperty(t)}}function Qi(t,e,n){return function(r){this.style.setProperty(t,e.call(this,r),n)}}function Xi(t,e,n){var r,i;function o(){var o=e.apply(this,arguments);return o!==i&&(r=(i=o)&&Qi(t,o,n)),r}return o._value=e,o}function Ji(t){return function(e){this.textContent=t.call(this,e)}}function to(t){var e,n;function r(){var r=t.apply(this,arguments);return r!==n&&(e=(n=r)&&Ji(r)),e}return r._value=t,r}var eo=0;function no(t,e,n,r){this._groups=t,this._parents=e,this._name=n,this._id=r}function ro(t){return Un().transition(t)}function io(){return++eo}var oo=Un.prototype;function ao(t){return t*t*t}function uo(t){return--t*t*t+1}function so(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}no.prototype=ro.prototype=Object(xe.a)({constructor:no,select:function(t){var e=this._name,n=this._id;"function"!==typeof t&&(t=Me(t));for(var r=this._groups,i=r.length,o=new Array(i),a=0;a1&&n.name===e)return new no([[t]],lo,e,+r);return null},po=function(t){return function(){return t}};function go(t,e){var n=e.sourceEvent,r=e.target,i=e.selection,o=e.mode,a=e.dispatch;Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},selection:{value:i,enumerable:!0,configurable:!0},mode:{value:o,enumerable:!0,configurable:!0},_:{value:a}})}function mo(t){t.stopImmediatePropagation()}var bo=function(t){t.preventDefault(),t.stopImmediatePropagation()},vo={name:"drag"},yo={name:"space"},_o={name:"handle"},wo={name:"center"},So=Math.abs,Oo=Math.max,xo=Math.min;function Eo(t){return[+t[0],+t[1]]}function Mo(t){return[Eo(t[0]),Eo(t[1])]}var To={name:"x",handles:["w","e"].map(Ro),input:function(t,e){return null==t?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}},$o={name:"y",handles:["n","s"].map(Ro),input:function(t,e){return null==t?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},output:function(t){return t&&[t[0][1],t[1][1]]}},Ao={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(Ro),input:function(t){return null==t?null:Mo(t)},output:function(t){return t}},ko={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Co={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},Io={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},Po={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},No={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function Ro(t){return{type:t}}function jo(t){return!t.ctrlKey&&!t.button}function Do(){var t=this.ownerSVGElement||this;return t.hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]}function Lo(){return navigator.maxTouchPoints||"ontouchstart"in this}function Fo(t){for(;!t.__brush;)if(!(t=t.parentNode))return;return t.__brush}function Bo(t){return t[0][0]===t[1][0]||t[0][1]===t[1][1]}function Uo(t){var e=t.__brush;return e?e.dim.output(e.selection):null}function zo(){return qo(To)}function Ho(){return qo($o)}var Vo=function(){return qo(Ao)};function qo(t){var e,n=Do,r=jo,i=Lo,o=!0,a=Oe("start","brush","end"),u=6;function c(e){var n=e.property("__brush",m).selectAll(".overlay").data([Ro("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",ko.overlay).merge(n).each((function(){var t=Fo(this).extent;zn(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])})),e.selectAll(".selection").data([Ro("selection")]).enter().append("rect").attr("class","selection").attr("cursor",ko.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var r=e.selectAll(".handle").data(t.handles,(function(t){return t.type}));r.exit().remove(),r.enter().append("rect").attr("class",(function(t){return"handle handle--"+t.type})).attr("cursor",(function(t){return ko[t.type]})),e.each(f).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",h).filter(i).on("touchstart.brush",h).on("touchmove.brush",p).on("touchend.brush touchcancel.brush",g).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function f(){var t=zn(this),e=Fo(this).selection;e?(t.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]),t.selectAll(".handle").style("display",null).attr("x",(function(t){return"e"===t.type[t.type.length-1]?e[1][0]-u/2:e[0][0]-u/2})).attr("y",(function(t){return"s"===t.type[0]?e[1][1]-u/2:e[0][1]-u/2})).attr("width",(function(t){return"n"===t.type||"s"===t.type?e[1][0]-e[0][0]+u:u})).attr("height",(function(t){return"e"===t.type||"w"===t.type?e[1][1]-e[0][1]+u:u}))):t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function l(t,e,n){var r=t.__brush.emitter;return!r||n&&r.clean?new d(t,e,n):r}function d(t,e,n){this.that=t,this.args=e,this.state=t.__brush,this.active=0,this.clean=n}function h(n){if((!e||n.touches)&&r.apply(this,arguments)){var i,a,u,c,d,h,p,g,m,b,v,y=this,_=n.target.__data__.type,w="selection"===(o&&n.metaKey?_="overlay":_)?vo:o&&n.altKey?wo:_o,S=t===$o?null:Po[_],O=t===To?null:No[_],x=Fo(y),E=x.extent,M=x.selection,T=E[0][0],$=E[0][1],A=E[1][0],k=E[1][1],C=0,I=0,P=S&&O&&o&&n.shiftKey,N=Array.from(n.touches||[n],(function(t){var e=t.identifier;return(t=Qr(t,y)).point0=t.slice(),t.identifier=e,t}));if("overlay"===_){M&&(m=!0);var R=[N[0],N[1]||N[0]];x.selection=M=[[i=t===$o?T:xo(R[0][0],R[1][0]),u=t===To?$:xo(R[0][1],R[1][1])],[d=t===$o?A:Oo(R[0][0],R[1][0]),p=t===To?k:Oo(R[0][1],R[1][1])]],N.length>1&&U()}else i=M[0][0],u=M[0][1],d=M[1][0],p=M[1][1];a=i,c=u,h=d,g=p;var j=zn(y).attr("pointer-events","none"),D=j.selectAll(".overlay").attr("cursor",ko[_]);Si(y);var L=l(y,arguments,!0).beforestart();if(n.touches)L.moved=B,L.ended=z;else{var F=zn(n.view).on("mousemove.brush",B,!0).on("mouseup.brush",z,!0);o&&F.on("keydown.brush",H,!0).on("keyup.brush",V,!0),qn(n.view)}f.call(y),L.start(n,w.name)}function B(t){var e,n=Object(s.a)(t.changedTouches||[t]);try{for(n.s();!(e=n.n()).done;){var r,i=e.value,o=Object(s.a)(N);try{for(o.s();!(r=o.n()).done;){var a=r.value;a.identifier===i.identifier&&(a.cur=Qr(i,y))}}catch(d){o.e(d)}finally{o.f()}}}catch(d){n.e(d)}finally{n.f()}if(P&&!b&&!v&&1===N.length){var u=N[0];So(u.cur[0]-u[0])>So(u.cur[1]-u[1])?v=!0:b=!0}var c,f=Object(s.a)(N);try{for(f.s();!(c=f.n()).done;){var l=c.value;l.cur&&(l[0]=l.cur[0],l[1]=l.cur[1])}}catch(d){f.e(d)}finally{f.f()}m=!0,bo(t),U(t)}function U(t){var e,n=N[0],r=n.point0;switch(C=n[0]-r[0],I=n[1]-r[1],w){case yo:case vo:S&&(C=Oo(T-i,xo(A-d,C)),a=i+C,h=d+C),O&&(I=Oo($-u,xo(k-p,I)),c=u+I,g=p+I);break;case _o:N[1]?(S&&(a=Oo(T,xo(A,N[0][0])),h=Oo(T,xo(A,N[1][0])),S=1),O&&(c=Oo($,xo(k,N[0][1])),g=Oo($,xo(k,N[1][1])),O=1)):(S<0?(C=Oo(T-i,xo(A-i,C)),a=i+C,h=d):S>0&&(C=Oo(T-d,xo(A-d,C)),a=i,h=d+C),O<0?(I=Oo($-u,xo(k-u,I)),c=u+I,g=p):O>0&&(I=Oo($-p,xo(k-p,I)),c=u,g=p+I));break;case wo:S&&(a=Oo(T,xo(A,i-C*S)),h=Oo(T,xo(A,d+C*S))),O&&(c=Oo($,xo(k,u-I*O)),g=Oo($,xo(k,p+I*O)))}h0&&(i=a-C),O<0?p=g-I:O>0&&(u=c-I),w=yo,D.attr("cursor",ko.selection),U());break;default:return}bo(t)}function V(t){switch(t.keyCode){case 16:P&&(b=v=P=!1,U());break;case 18:w===wo&&(S<0?d=h:S>0&&(i=a),O<0?p=g:O>0&&(u=c),w=_o,U());break;case 32:w===yo&&(t.altKey?(S&&(d=h-C*S,i=a+C*S),O&&(p=g-I*O,u=c+I*O),w=wo):(S<0?d=h:S>0&&(i=a),O<0?p=g:O>0&&(u=c),w=_o),D.attr("cursor",ko[_]),U());break;default:return}bo(t)}}function p(t){l(this,arguments).moved(t)}function g(t){l(this,arguments).ended(t)}function m(){var e=this.__brush||{selection:null};return e.extent=Mo(n.apply(this,arguments)),e.dim=t,e}return c.move=function(e,n){e.tween?e.on("start.brush",(function(t){l(this,arguments).beforestart().start(t)})).on("interrupt.brush end.brush",(function(t){l(this,arguments).end(t)})).tween("brush",(function(){var e=this,r=e.__brush,i=l(e,arguments),o=r.selection,a=t.input("function"===typeof n?n.apply(this,arguments):n,r.extent),u=Yr(o,a);function s(t){r.selection=1===t&&null===a?null:u(t),f.call(e),i.brush()}return null!==o&&null!==a?s:s(1)})):e.each((function(){var e=this,r=arguments,i=e.__brush,o=t.input("function"===typeof n?n.apply(e,r):n,i.extent),a=l(e,r).beforestart();Si(e),i.selection=null===o?null:o,f.call(e),a.start().brush().end()}))},c.clear=function(t){c.move(t,null)},d.prototype={beforestart:function(){return 1===++this.active&&(this.state.emitter=this,this.starting=!0),this},start:function(t,e){return this.starting?(this.starting=!1,this.emit("start",t,e)):this.emit("brush",t),this},brush:function(t,e){return this.emit("brush",t,e),this},end:function(t,e){return 0===--this.active&&(delete this.state.emitter,this.emit("end",t,e)),this},emit:function(e,n,r){var i=zn(this.that).datum();a.call(e,this.that,new go(e,{sourceEvent:n,target:c,selection:t.output(this.state.selection),mode:r,dispatch:a}),i)}},c.extent=function(t){return arguments.length?(n="function"===typeof t?t:po(Mo(t)),c):n},c.filter=function(t){return arguments.length?(r="function"===typeof t?t:po(!!t),c):r},c.touchable=function(t){return arguments.length?(i="function"===typeof t?t:po(!!t),c):i},c.handleSize=function(t){return arguments.length?(u=+t,c):u},c.keyModifiers=function(t){return arguments.length?(o=!!t,c):o},c.on=function(){var t=a.on.apply(a,arguments);return t===a?c:t},c}var Wo=Math.abs,Go=Math.cos,Ko=Math.sin,Yo=Math.PI,Zo=Yo/2,Qo=2*Yo,Xo=Math.max,Jo=1e-12;function ta(t,e){return Array.from({length:e-t},(function(e,n){return t+n}))}function ea(t){return function(e,n){return t(e.source.value+e.target.value,n.source.value+n.target.value)}}var na=function(){return oa(!1,!1)};function ra(){return oa(!1,!0)}function ia(){return oa(!0,!1)}function oa(t,e){var n=0,r=null,i=null,o=null;function a(a){var u,c=a.length,f=new Array(c),l=ta(0,c),d=new Array(c*c),h=new Array(c),p=0;a=Float64Array.from({length:c*c},e?function(t,e){return a[e%c][e/c|0]}:function(t,e){return a[e/c|0][e%c]});for(var g=0;gsa)if(Math.abs(f*u-s*c)>sa&&i){var d=n-o,h=r-a,p=u*u+s*s,g=d*d+h*h,m=Math.sqrt(p),b=Math.sqrt(l),v=i*Math.tan((aa-Math.acos((p+l-g)/(2*m*b)))/2),y=v/b,_=v/m;Math.abs(y-1)>sa&&(this._+="L"+(t+y*c)+","+(e+y*f)),this._+="A"+i+","+i+",0,0,"+ +(f*d>c*h)+","+(this._x1=t+_*u)+","+(this._y1=e+_*s)}else this._+="L"+(this._x1=t)+","+(this._y1=e);else;},arc:function(t,e,n,r,i,o){t=+t,e=+e,o=!!o;var a=(n=+n)*Math.cos(r),u=n*Math.sin(r),s=t+a,c=e+u,f=1^o,l=o?r-i:i-r;if(n<0)throw new Error("negative radius: "+n);null===this._x1?this._+="M"+s+","+c:(Math.abs(this._x1-s)>sa||Math.abs(this._y1-c)>sa)&&(this._+="L"+s+","+c),n&&(l<0&&(l=l%ua+ua),l>ca?this._+="A"+n+","+n+",0,1,"+f+","+(t-a)+","+(e-u)+"A"+n+","+n+",0,1,"+f+","+(this._x1=s)+","+(this._y1=c):l>sa&&(this._+="A"+n+","+n+",0,"+ +(l>=aa)+","+f+","+(this._x1=t+n*Math.cos(i))+","+(this._y1=e+n*Math.sin(i))))},rect:function(t,e,n,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +r+"h"+-n+"Z"},toString:function(){return this._}};var da=la,ha=Array.prototype.slice,pa=function(t){return function(){return t}};function ga(t){return t.source}function ma(t){return t.target}function ba(t){return t.radius}function va(t){return t.startAngle}function ya(t){return t.endAngle}function _a(){return 0}function wa(){return 10}function Sa(t){var e=ga,n=ma,r=ba,i=ba,o=va,a=ya,u=_a,s=null;function c(){var c,f=e.apply(this,arguments),l=n.apply(this,arguments),d=u.apply(this,arguments)/2,h=ha.call(arguments),p=+r.apply(this,(h[0]=f,h)),g=o.apply(this,h)-Zo,m=a.apply(this,h)-Zo,b=+i.apply(this,(h[0]=l,h)),v=o.apply(this,h)-Zo,y=a.apply(this,h)-Zo;if(s||(s=c=da()),d>Jo&&(Wo(m-g)>2*d+Jo?m>g?(g+=d,m-=d):(g-=d,m+=d):g=m=(g+m)/2,Wo(y-v)>2*d+Jo?y>v?(v+=d,y-=d):(v-=d,y+=d):v=y=(v+y)/2),s.moveTo(p*Go(g),p*Ko(g)),s.arc(0,0,p,g,m),g!==v||m!==y)if(t){var _=+t.apply(this,arguments),w=b-_,S=(v+y)/2;s.quadraticCurveTo(0,0,w*Go(v),w*Ko(v)),s.lineTo(b*Go(S),b*Ko(S)),s.lineTo(w*Go(y),w*Ko(y))}else s.quadraticCurveTo(0,0,b*Go(v),b*Ko(v)),s.arc(0,0,b,v,y);if(s.quadraticCurveTo(0,0,p*Go(g),p*Ko(g)),s.closePath(),c)return s=null,c+""||null}return t&&(c.headRadius=function(e){return arguments.length?(t="function"===typeof e?e:pa(+e),c):t}),c.radius=function(t){return arguments.length?(r=i="function"===typeof t?t:pa(+t),c):r},c.sourceRadius=function(t){return arguments.length?(r="function"===typeof t?t:pa(+t),c):r},c.targetRadius=function(t){return arguments.length?(i="function"===typeof t?t:pa(+t),c):i},c.startAngle=function(t){return arguments.length?(o="function"===typeof t?t:pa(+t),c):o},c.endAngle=function(t){return arguments.length?(a="function"===typeof t?t:pa(+t),c):a},c.padAngle=function(t){return arguments.length?(u="function"===typeof t?t:pa(+t),c):u},c.source=function(t){return arguments.length?(e=t,c):e},c.target=function(t){return arguments.length?(n=t,c):n},c.context=function(t){return arguments.length?(s=null==t?null:t,c):s},c}var Oa=function(){return Sa()};function xa(){return Sa(wa)}var Ea=Math.PI/180,Ma=180/Math.PI,Ta=.96422,$a=.82521,Aa=4/29,ka=6/29,Ca=3*ka*ka;function Ia(t){if(t instanceof Ra)return new Ra(t.l,t.a,t.b,t.opacity);if(t instanceof Ha)return Va(t);t instanceof mr||(t=pr(t));var e,n,r=Fa(t.r),i=Fa(t.g),o=Fa(t.b),a=ja((.2225045*r+.7168786*i+.0606169*o)/1);return r===i&&i===o?e=n=a:(e=ja((.4360747*r+.3850649*i+.1430804*o)/Ta),n=ja((.0139322*r+.0971045*i+.7141733*o)/$a)),new Ra(116*a-16,500*(e-a),200*(a-n),t.opacity)}function Pa(t,e){return new Ra(t,0,0,null==e?1:e)}function Na(t,e,n,r){return 1===arguments.length?Ia(t):new Ra(t,e,n,null==r?1:r)}function Ra(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}function ja(t){return t>.008856451679035631?Math.pow(t,1/3):t/Ca+Aa}function Da(t){return t>ka?t*t*t:Ca*(t-Aa)}function La(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Fa(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Ba(t){if(t instanceof Ha)return new Ha(t.h,t.c,t.l,t.opacity);if(t instanceof Ra||(t=Ia(t)),0===t.a&&0===t.b)return new Ha(NaN,0r!==h>r&&n<(d-c)*(r-f)/(h-f)+c&&(i=-i)}return i}function uu(t,e,n){var r,i,o,a;return function(t,e,n){return(e[0]-t[0])*(n[1]-t[1])===(n[0]-t[0])*(e[1]-t[1])}(t,e,n)&&(i=t[r=+(t[0]===e[0])],o=n[r],a=e[r],i<=o&&o<=a||a<=o&&o<=i)}var su=function(){},cu=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]],fu=function(){var t=1,e=1,n=pt,r=u;function i(t){var e=n(t);if(Array.isArray(e))e=e.slice().sort(ru);else{var r=$(t),i=r[0],a=r[1];e=dt(i,a,e),e=Pt(Math.floor(i/e)*e,Math.floor(a/e)*e,e)}return e.map((function(e){return o(t,e)}))}function o(n,i){var o=[],u=[];return function(n,r,i){var o,u,s,c,f,l,d=new Array,h=new Array;o=u=-1,c=n[0]>=r,cu[c<<1].forEach(p);for(;++o=r,cu[s|c<<1].forEach(p);cu[c<<0].forEach(p);for(;++u=r,f=n[u*t]>=r,cu[c<<1|f<<2].forEach(p);++o=r,l=f,f=n[u*t+o+1]>=r,cu[s|c<<1|f<<2|l<<3].forEach(p);cu[c|f<<3].forEach(p)}o=-1,f=n[u*t]>=r,cu[f<<2].forEach(p);for(;++o=r,cu[f<<2|l<<3].forEach(p);function p(t){var e,n,r=[t[0][0]+o,t[0][1]+u],s=[t[1][0]+o,t[1][1]+u],c=a(r),f=a(s);(e=h[c])?(n=d[f])?(delete h[e.end],delete d[n.start],e===n?(e.ring.push(s),i(e.ring)):d[e.start]=h[n.end]={start:e.start,end:n.end,ring:e.ring.concat(n.ring)}):(delete h[e.end],e.ring.push(s),h[e.end=f]=e):(e=d[f])?(n=h[c])?(delete d[e.start],delete h[n.end],e===n?(e.ring.push(s),i(e.ring)):d[n.start]=h[e.end]={start:n.start,end:e.end,ring:n.ring.concat(e.ring)}):(delete d[e.start],e.ring.unshift(r),d[e.start=c]=e):d[c]=h[f]={start:c,end:f,ring:[r,s]}}cu[f<<3].forEach(p)}(n,i,(function(t){r(t,n,i),function(t){for(var e=0,n=t.length,r=t[n-1][1]*t[0][0]-t[n-1][0]*t[0][1];++e0?o.push([t]):u.push(t)})),u.forEach((function(t){for(var e,n=0,r=o.length;n0&&a0&&u=0&&o>=0))throw new Error("invalid size");return t=r,e=o,i},i.thresholds=function(t){return arguments.length?(n="function"===typeof t?t:Array.isArray(t)?iu(nu.call(t)):iu(t),i):n},i.smooth=function(t){return arguments.length?(r=t?u:su,i):r===u},i};function lu(t,e,n){for(var r=t.width,i=t.height,o=1+(n<<1),a=0;a=n&&(u>=o&&(s-=t.data[u-o+a*r]),e.data[u-n+a*r]=s/Math.min(u+1,r-1+o-u,o))}function du(t,e,n){for(var r=t.width,i=t.height,o=1+(n<<1),a=0;a=n&&(u>=o&&(s-=t.data[a+(u-o)*r]),e.data[a+(u-n)*r]=s/Math.min(u+1,i-1+o-u,o))}function hu(t){return t[0]}function pu(t){return t[1]}function gu(){return 1}var mu=function(){var t=hu,e=pu,n=gu,r=960,i=500,o=20,a=2,u=3*o,s=r+2*u>>a,c=i+2*u>>a,f=iu(20);function l(r){var i=new Float32Array(s*c),l=new Float32Array(s*c);r.forEach((function(r,o,f){var l=+t(r,o,f)+u>>a,d=+e(r,o,f)+u>>a,h=+n(r,o,f);l>=0&&l=0&&d>a),du({width:s,height:c,data:l},{width:s,height:c,data:i},o>>a),lu({width:s,height:c,data:i},{width:s,height:c,data:l},o>>a),du({width:s,height:c,data:l},{width:s,height:c,data:i},o>>a),lu({width:s,height:c,data:i},{width:s,height:c,data:l},o>>a),du({width:s,height:c,data:l},{width:s,height:c,data:i},o>>a);var h=f(i);if(!Array.isArray(h)){var p=mt(i);h=dt(0,p,h),(h=Pt(0,Math.floor(p/h)*h,h)).shift()}return fu().thresholds(h).size([s,c])(i).map(d)}function d(t){return t.value*=Math.pow(2,-2*a),t.coordinates.forEach(h),t}function h(t){t.forEach(p)}function p(t){t.forEach(g)}function g(t){t[0]=t[0]*Math.pow(2,a)-u,t[1]=t[1]*Math.pow(2,a)-u}function m(){return s=r+2*(u=3*o)>>a,c=i+2*u>>a,l}return l.x=function(e){return arguments.length?(t="function"===typeof e?e:iu(+e),l):t},l.y=function(t){return arguments.length?(e="function"===typeof t?t:iu(+t),l):e},l.weight=function(t){return arguments.length?(n="function"===typeof t?t:iu(+t),l):n},l.size=function(t){if(!arguments.length)return[r,i];var e=+t[0],n=+t[1];if(!(e>=0&&n>=0))throw new Error("invalid size");return r=e,i=n,m()},l.cellSize=function(t){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return a=Math.floor(Math.log(t)/Math.LN2),m()},l.thresholds=function(t){return arguments.length?(f="function"===typeof t?t:Array.isArray(t)?iu(nu.call(t)):iu(t),l):f},l.bandwidth=function(t){if(!arguments.length)return Math.sqrt(o*(o+1));if(!((t=+t)>=0))throw new Error("invalid bandwidth");return o=Math.round((Math.sqrt(4*t*t+1)-1)/2),m()},l},bu=Math.pow(2,-52),vu=new Uint32Array(512),yu=function(){function t(e){Object(A.a)(this,t);var n=e.length>>1;if(n>0&&"number"!==typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;var r=Math.max(2*n-5,0);this._triangles=new Uint32Array(3*r),this._halfedges=new Int32Array(3*r),this._hashSize=Math.ceil(Math.sqrt(n)),this._hullPrev=new Uint32Array(n),this._hullNext=new Uint32Array(n),this._hullTri=new Uint32Array(n),this._hullHash=new Int32Array(this._hashSize).fill(-1),this._ids=new Uint32Array(n),this._dists=new Float64Array(n),this.update()}return Object(k.a)(t,[{key:"update",value:function(){for(var t=this.coords,e=this._hullPrev,n=this._hullNext,r=this._hullTri,i=this._hullHash,o=t.length>>1,a=1/0,u=1/0,s=-1/0,c=-1/0,f=0;fs&&(s=l),d>c&&(c=d),this._ids[f]=f}for(var h,p,g,m=(a+s)/2,b=(u+c)/2,v=1/0,y=0;y0&&(p=O,v=x)}for(var E=t[2*p],M=t[2*p+1],T=1/0,$=0;$j&&(P[N++]=D,j=this._dists[D])}return this.hull=P.subarray(0,N),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(Su(w,S,E,M,k,C)){var L=p,F=E,B=M;p=g,E=k,M=C,g=L,k=F,C=B}var U=function(t,e,n,r,i,o){var a=n-t,u=r-e,s=i-t,c=o-e,f=a*a+u*u,l=s*s+c*c,d=.5/(a*c-u*s);return{x:t+(c*f-u*l)*d,y:e+(a*l-s*f)*d}}(w,S,E,M,k,C);this._cx=U.x,this._cy=U.y;for(var z=0;z0&&Math.abs(K-V)<=bu&&Math.abs(Y-q)<=bu)&&(V=K,q=Y,G!==h&&G!==p&&G!==g)){for(var Z=0,Q=0,X=this._hashKey(K,Y);Q0?3-n:1+n)/4}(t-this._cx,e-this._cy)*this._hashSize)%this._hashSize}},{key:"_legalize",value:function(t){for(var e=this._triangles,n=this._halfedges,r=this.coords,i=0,o=0;;){var a=n[t],u=t-t%3;if(o=u+(t+2)%3,-1!==a){var s=a-a%3,c=u+(t+1)%3,f=s+(a+2)%3,l=e[o],d=e[t],h=e[c],p=e[f];if(Ou(r[2*l],r[2*l+1],r[2*d],r[2*d+1],r[2*h],r[2*h+1],r[2*p],r[2*p+1])){e[t]=p,e[a]=l;var g=n[f];if(-1===g){var m=this._hullStart;do{if(this._hullTri[m]===f){this._hullTri[m]=t;break}m=this._hullPrev[m]}while(m!==this._hullStart)}this._link(t,g),this._link(a,n[o]),this._link(o,f);var b=s+(a+1)%3;i1&&void 0!==arguments[1]?arguments[1]:Tu,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:$u,i=e.length,o=new Float64Array(2*i),a=0;a=33306690738754716e-32*Math.abs(a+u)?a-u:0}function Su(t,e,n,r,i,o){return(wu(i,o,t,e,n,r)||wu(t,e,n,r,i,o)||wu(n,r,i,o,t,e))<0}function Ou(t,e,n,r,i,o,a,u){var s=t-a,c=e-u,f=n-a,l=r-u,d=i-a,h=o-u,p=f*f+l*l,g=d*d+h*h;return s*(l*g-p*h)-c*(f*g-p*d)+(s*s+c*c)*(f*h-l*d)<0}function xu(t,e,n,r,i,o){var a=n-t,u=r-e,s=i-t,c=o-e,f=a*a+u*u,l=s*s+c*c,d=.5/(a*c-u*s),h=(c*f-u*l)*d,p=(a*l-s*f)*d;return h*h+p*p}function Eu(t,e,n,r){if(r-n<=20)for(var i=n+1;i<=r;i++){for(var o=t[i],a=e[o],u=i-1;u>=n&&e[t[u]]>a;)t[u+1]=t[u--];t[u+1]=o}else{var s=n+1,c=r;Mu(t,n+r>>1,s),e[t[n]]>e[t[r]]&&Mu(t,n,r),e[t[s]]>e[t[r]]&&Mu(t,s,r),e[t[n]]>e[t[s]]&&Mu(t,n,s);for(var f=t[s],l=e[f];;){do{s++}while(e[t[s]]l);if(c=c-n?(Eu(t,e,s,r),Eu(t,e,n,c-1)):(Eu(t,e,n,c-1),Eu(t,e,s,r))}}function Mu(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function Tu(t){return t[0]}function $u(t){return t[1]}var Au=1e-6,ku=function(){function t(){Object(A.a)(this,t),this._x0=this._y0=this._x1=this._y1=null,this._=""}return Object(k.a)(t,[{key:"moveTo",value:function(t,e){this._+="M".concat(this._x0=this._x1=+t,",").concat(this._y0=this._y1=+e)}},{key:"closePath",value:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}},{key:"lineTo",value:function(t,e){this._+="L".concat(this._x1=+t,",").concat(this._y1=+e)}},{key:"arc",value:function(t,e,n){var r=(t=+t)+(n=+n),i=e=+e;if(n<0)throw new Error("negative radius");null===this._x1?this._+="M".concat(r,",").concat(i):(Math.abs(this._x1-r)>Au||Math.abs(this._y1-i)>Au)&&(this._+="L"+r+","+i),n&&(this._+="A".concat(n,",").concat(n,",0,1,1,").concat(t-n,",").concat(e,"A").concat(n,",").concat(n,",0,1,1,").concat(this._x1=r,",").concat(this._y1=i))}},{key:"rect",value:function(t,e,n,r){this._+="M".concat(this._x0=this._x1=+t,",").concat(this._y0=this._y1=+e,"h").concat(+n,"v").concat(+r,"h").concat(-n,"Z")}},{key:"value",value:function(){return this._||null}}]),t}(),Cu=function(){function t(){Object(A.a)(this,t),this._=[]}return Object(k.a)(t,[{key:"moveTo",value:function(t,e){this._.push([t,e])}},{key:"closePath",value:function(){this._.push(this._[0].slice())}},{key:"lineTo",value:function(t,e){this._.push([t,e])}},{key:"value",value:function(){return this._.length?this._:null}}]),t}(),Iu=function(){function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0,0,960,500],r=Object(P.a)(n,4),i=r[0],o=r[1],a=r[2],u=r[3];if(Object(A.a)(this,t),!((a=+a)>=(i=+i))||!((u=+u)>=(o=+o)))throw new Error("invalid bounds");this.delaunay=e,this._circumcenters=new Float64Array(2*e.points.length),this.vectors=new Float64Array(2*e.points.length),this.xmax=a,this.xmin=i,this.ymax=u,this.ymin=o,this._init()}return Object(k.a)(t,[{key:"update",value:function(){return this.delaunay.update(),this._init(),this}},{key:"_init",value:function(){for(var t,e,n=this.delaunay,r=n.points,i=n.hull,o=n.triangles,a=this.vectors,u=this.circumcenters=this._circumcenters.subarray(0,o.length/3*2),s=0,c=0,f=o.length;s1;)i-=2;for(var o=2;o4)for(var u=0;u0){if(e>=this.ymax)return null;(i=(this.ymax-e)/r)0){if(t>=this.xmax)return null;(i=(this.xmax-t)/n)this.xmax?2:0)|(ethis.ymax?8:0)}}]),t}(),Pu=u.a.mark(Uu),Nu=2*Math.PI,Ru=Math.pow;function ju(t){return t[0]}function Du(t){return t[1]}function Lu(t,e,n){return[t+Math.sin(t+e)*n,e+Math.cos(t-e)*n]}var Fu=function(){function t(e){Object(A.a)(this,t),this._delaunator=new yu(e),this.inedges=new Int32Array(e.length/2),this._hullIndex=new Int32Array(e.length/2),this.points=this._delaunator.coords,this._init()}return Object(k.a)(t,[{key:"update",value:function(){return this._delaunator.update(),this._init(),this}},{key:"_init",value:function(){var t=this._delaunator,e=this.points;if(t.hull&&t.hull.length>2&&function(t){for(var e=t.triangles,n=t.coords,r=0;r1e-10)return!1}return!0}(t)){this.collinear=Int32Array.from({length:e.length/2},(function(t,e){return e})).sort((function(t,n){return e[2*t]-e[2*n]||e[2*t+1]-e[2*n+1]}));for(var n=this.collinear[0],r=this.collinear[this.collinear.length-1],i=[e[2*n],e[2*n+1],e[2*r],e[2*r+1]],o=1e-8*Math.hypot(i[3]-i[1],i[2]-i[0]),a=0,u=e.length/2;a0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=f[0],this.triangles[1]=f[1],this.triangles[2]=f[1],d[f[0]]=1,2===f.length&&(d[f[1]]=0))}},{key:"voronoi",value:function(t){return new Iu(this,t)}},{key:"neighbors",value:u.a.mark((function t(e){var n,r,i,o,a,s,c,f,l,d,h;return u.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=this.inedges,r=this.hull,i=this._hullIndex,o=this.halfedges,a=this.triangles,!(s=this.collinear)){t.next=10;break}if(!((c=s.indexOf(e))>0)){t.next=6;break}return t.next=6,s[c-1];case 6:if(!(c2&&void 0!==arguments[2]?arguments[2]:0;if((t=+t)!==t||(e=+e)!==e)return-1;for(var r,i=n;(r=this._step(n,t,e))>=0&&r!==n&&r!==i;)n=r;return r}},{key:"_step",value:function(t,e,n){var r=this.inedges,i=this.hull,o=this._hullIndex,a=this.halfedges,u=this.triangles,s=this.points;if(-1===r[t]||!s.length)return(t+1)%(s.length>>1);var c=t,f=Ru(e-s[2*t],2)+Ru(n-s[2*t+1],2),l=r[t],d=l;do{var h=u[d],p=Ru(e-s[2*h],2)+Ru(n-s[2*h+1],2);if(p1&&void 0!==arguments[1]?arguments[1]:2,n=null==t?t=new ku:void 0,r=this.points,i=0,o=r.length;i1&&void 0!==arguments[1]?arguments[1]:ju,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Du,i=arguments.length>3?arguments[3]:void 0;return new t("length"in e?Bu(e,n,r,i):Float64Array.from(Uu(e,n,r,i)))}}]),t}();function Bu(t,e,n,r){for(var i=t.length,o=new Float64Array(2*i),a=0;al}s.mouse("drag",r)}function g(t){zn(t.view).on("mousemove.drag mouseup.drag",null),Wn(t.view,n),Vn(t),s.mouse("end",t)}function m(t,e){if(i.call(this,t,e)){var n,r,a=t.changedTouches,u=o.call(this,t,e),s=a.length;for(n=0;n9999?"+"+Ju(e,6):Ju(e,4))+"-"+Ju(t.getUTCMonth()+1,2)+"-"+Ju(t.getUTCDate(),2)+(o?"T"+Ju(n,2)+":"+Ju(r,2)+":"+Ju(i,2)+"."+Ju(o,3)+"Z":i?"T"+Ju(n,2)+":"+Ju(r,2)+":"+Ju(i,2)+"Z":r||n?"T"+Ju(n,2)+":"+Ju(r,2)+"Z":"")}var es=function(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function r(t,e){var r,i=[],o=t.length,a=0,u=0,s=o<=0,c=!1;function f(){if(s)return Zu;if(c)return c=!1,Yu;var e,r,i=a;if(34===t.charCodeAt(i)){for(;a++=o?s=!0:10===(r=t.charCodeAt(a++))?c=!0:13===r&&(c=!0,10===t.charCodeAt(a)&&++a),t.slice(i+1,e-1).replace(/""/g,'"')}for(;a=(o=(g+b)/2))?g=o:b=o,(f=n>=(a=(m+v)/2))?m=a:v=a,i=h,!(h=h[l=f<<1|c]))return i[l]=p,t;if(u=+t._x.call(null,h.data),s=+t._y.call(null,h.data),e===u&&n===s)return p.next=h,i?i[l]=p:t._root=p,t;do{i=i?i[l]=new Array(4):t._root=new Array(4),(c=e>=(o=(g+b)/2))?g=o:b=o,(f=n>=(a=(m+v)/2))?m=a:v=a}while((l=f<<1|c)===(d=(s>=a)<<1|u>=o));return i[d]=h,i[l]=p,t}var bc=function(t,e,n,r,i){this.node=t,this.x0=e,this.y0=n,this.x1=r,this.y1=i};function vc(t){return t[0]}function yc(t){return t[1]}function _c(t,e,n){var r=new wc(null==e?vc:e,null==n?yc:n,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function wc(t,e,n,r,i,o){this._x=t,this._y=e,this._x0=n,this._y0=r,this._x1=i,this._y1=o,this._root=void 0}function Sc(t){for(var e={data:t.data},n=e;t=t.next;)n=n.next={data:t.data};return e}var Oc=_c.prototype=wc.prototype;Oc.copy=function(){var t,e,n=new wc(this._x,this._y,this._x0,this._y0,this._x1,this._y1),r=this._root;if(!r)return n;if(!r.length)return n._root=Sc(r),n;for(t=[{source:r,target:n._root=new Array(4)}];r=t.pop();)for(var i=0;i<4;++i)(e=r.source[i])&&(e.length?t.push({source:e,target:r.target[i]=new Array(4)}):r.target[i]=Sc(e));return n},Oc.add=function(t){var e=+this._x.call(null,t),n=+this._y.call(null,t);return mc(this.cover(e,n),e,n,t)},Oc.addAll=function(t){var e,n,r,i,o=t.length,a=new Array(o),u=new Array(o),s=1/0,c=1/0,f=-1/0,l=-1/0;for(n=0;nf&&(f=r),il&&(l=i));if(s>f||c>l)return this;for(this.cover(s,c).cover(f,l),n=0;nt||t>=i||r>e||e>=o;)switch(u=(ed||(o=s.y0)>h||(a=s.x1)=b)<<1|t>=m)&&(s=p[p.length-1],p[p.length-1]=p[p.length-1-c],p[p.length-1-c]=s)}else{var v=t-+this._x.call(null,g.data),y=e-+this._y.call(null,g.data),_=v*v+y*y;if(_=(u=(p+m)/2))?p=u:m=u,(f=a>=(s=(g+b)/2))?g=s:b=s,e=h,!(h=h[l=f<<1|c]))return this;if(!h.length)break;(e[l+1&3]||e[l+2&3]||e[l+3&3])&&(n=e,d=l)}for(;h.data!==t;)if(r=h,!(h=h.next))return this;return(i=h.next)&&delete h.next,r?(i?r.next=i:delete r.next,this):e?(i?e[l]=i:delete e[l],(h=e[0]||e[1]||e[2]||e[3])&&h===(e[3]||e[2]||e[1]||e[0])&&!h.length&&(n?n[d]=h:this._root=h),this):(this._root=i,this)},Oc.removeAll=function(t){for(var e=0,n=t.length;ec+p||of+p||as.index){var g=c-u.x-u.vx,m=f-u.y-u.vy,b=g*g+m*m;bt.r&&(t.r=t[e].r)}function s(){if(e){var r,i,o=e.length;for(n=new Array(o),r=0;r1?(null==n?u.delete(t):u.set(t,p(n)),e):u.get(t)},find:function(e,n,r){var i,o,a,u,s,c=0,f=t.length;for(null==r?r=1/0:r*=r,c=0;c1?(c.on(t,n),e):c.on(t)}}},Dc=function(){var t,e,n,r,i,o=xc(-30),a=1,u=1/0,s=.81;function c(n){var i,o=t.length,a=_c(t,Pc,Nc).visitAfter(l);for(r=n,i=0;i=u)){(t.data!==e||t.next)&&(0===l&&(p+=(l=Ec(n))*l),0===d&&(p+=(d=Ec(n))*d),p1?r[0]+r.slice(2):r,+t.slice(n+1)]}var zc=function(t){return(t=Uc(Math.abs(t)))?t[1]:NaN},Hc=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Vc(t){if(!(e=Hc.exec(t)))throw new Error("invalid format: "+t);var e;return new qc({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function qc(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}Vc.prototype=qc.prototype,qc.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var Wc,Gc,Kc,Yc,Zc=function(t,e){var n=Uc(t,e);if(!n)return t+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")},Qc={"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return Zc(100*t,e)},r:Zc,s:function(t,e){var n=Uc(t,e);if(!n)return t+"";var r=n[0],i=n[1],o=i-(Wc=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+Uc(t,Math.max(0,e+o-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}},Xc=function(t){return t},Jc=Array.prototype.map,tf=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"],ef=function(t){var e,n,r=void 0===t.grouping||void 0===t.thousands?Xc:(e=Jc.call(t.grouping,Number),n=t.thousands+"",function(t,r){for(var i=t.length,o=[],a=0,u=e[0],s=0;i>0&&u>0&&(s+u+1>r&&(u=Math.max(1,r-s)),o.push(t.substring(i-=u,i+u)),!((s+=u+1)>r));)u=e[a=(a+1)%e.length];return o.reverse().join(n)}),i=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",a=void 0===t.decimal?".":t.decimal+"",u=void 0===t.numerals?Xc:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(Jc.call(t.numerals,String)),s=void 0===t.percent?"%":t.percent+"",c=void 0===t.minus?"\u2212":t.minus+"",f=void 0===t.nan?"NaN":t.nan+"";function l(t){var e=(t=Vc(t)).fill,n=t.align,l=t.sign,d=t.symbol,h=t.zero,p=t.width,g=t.comma,m=t.precision,b=t.trim,v=t.type;"n"===v?(g=!0,v="g"):Qc[v]||(void 0===m&&(m=12),b=!0,v="g"),(h||"0"===e&&"="===n)&&(h=!0,e="0",n="=");var y="$"===d?i:"#"===d&&/[boxX]/.test(v)?"0"+v.toLowerCase():"",_="$"===d?o:/[%p]/.test(v)?s:"",w=Qc[v],S=/[defgprs%]/.test(v);function O(t){var i,o,s,d=y,O=_;if("c"===v)O=w(t)+O,t="";else{var x=(t=+t)<0||1/t<0;if(t=isNaN(t)?f:w(Math.abs(t),m),b&&(t=function(t){t:for(var e,n=t.length,r=1,i=-1;r0&&(i=0)}return i>0?t.slice(0,i)+t.slice(e+1):t}(t)),x&&0===+t&&"+"!==l&&(x=!1),d=(x?"("===l?l:c:"-"===l||"("===l?"":l)+d,O=("s"===v?tf[8+Wc/3]:"")+O+(x&&"("===l?")":""),S)for(i=-1,o=t.length;++i(s=t.charCodeAt(i))||s>57){O=(46===s?a+t.slice(i+1):t.slice(i))+O,t=t.slice(0,i);break}}g&&!h&&(t=r(t,1/0));var E=d.length+t.length+O.length,M=E>1)+d+t+O+M.slice(E);break;default:t=M+d+t+O}return u(t)}return m=void 0===m?6:/[gprs]/.test(v)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),O.toString=function(){return t+""},O}return{format:l,formatPrefix:function(t,e){var n=l(((t=Vc(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(zc(e)/3))),i=Math.pow(10,-r),o=tf[8+r/3];return function(t){return n(i*t)+o}}}};function nf(t){return Gc=ef(t),Kc=Gc.format,Yc=Gc.formatPrefix,Gc}nf({thousands:",",grouping:[3],currency:["$",""]});var rf=function(t){return Math.max(0,-zc(Math.abs(t)))},of=function(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(zc(e)/3)))-zc(Math.abs(t)))},af=function(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,zc(e)-zc(t))+1},uf=1e-6,sf=1e-12,cf=Math.PI,ff=cf/2,lf=cf/4,df=2*cf,hf=180/cf,pf=cf/180,gf=Math.abs,mf=Math.atan,bf=Math.atan2,vf=Math.cos,yf=Math.ceil,_f=Math.exp,wf=(Math.floor,Math.hypot),Sf=Math.log,Of=Math.pow,xf=Math.sin,Ef=Math.sign||function(t){return t>0?1:t<0?-1:0},Mf=Math.sqrt,Tf=Math.tan;function $f(t){return t>1?0:t<-1?cf:Math.acos(t)}function Af(t){return t>1?ff:t<-1?-ff:Math.asin(t)}function kf(t){return(t=xf(t/2))*t}function Cf(){}function If(t,e){t&&Nf.hasOwnProperty(t.type)&&Nf[t.type](t,e)}var Pf={Feature:function(t,e){If(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r=0?1:-1,i=r*n,o=vf(e=(e*=pf)/2+lf),a=xf(e),u=Uf*a,s=Bf*o+u*vf(i),c=u*r*xf(i);Hf.add(bf(c,s)),Ff=t,Bf=o,Uf=a}var Zf,Qf,Xf,Jf,tl,el,nl,rl,il,ol,al,ul=function(t){return Vf=new C,zf(t,qf),2*Vf};function sl(t){return[bf(t[1],t[0]),Af(t[2])]}function cl(t){var e=t[0],n=t[1],r=vf(n);return[r*vf(e),r*xf(e),xf(n)]}function fl(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function ll(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function dl(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function hl(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function pl(t){var e=Mf(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}var gl={point:ml,lineStart:vl,lineEnd:yl,polygonStart:function(){gl.point=_l,gl.lineStart=wl,gl.lineEnd=Sl,il=new C,qf.polygonStart()},polygonEnd:function(){qf.polygonEnd(),gl.point=ml,gl.lineStart=vl,gl.lineEnd=yl,Hf<0?(Zf=-(Xf=180),Qf=-(Jf=90)):il>uf?Jf=90:il<-1e-6&&(Qf=-90),al[0]=Zf,al[1]=Xf},sphere:function(){Zf=-(Xf=180),Qf=-(Jf=90)}};function ml(t,e){ol.push(al=[Zf=t,Xf=t]),eJf&&(Jf=e)}function bl(t,e){var n=cl([t*pf,e*pf]);if(rl){var r=ll(rl,n),i=ll([r[1],-r[0],0],r);pl(i),i=sl(i);var o,a=t-tl,u=a>0?1:-1,s=i[0]*hf*u,c=gf(a)>180;c^(u*tlJf&&(Jf=o):c^(u*tl<(s=(s+360)%360-180)&&sJf&&(Jf=e)),c?tOl(Zf,Xf)&&(Xf=t):Ol(t,Xf)>Ol(Zf,Xf)&&(Zf=t):Xf>=Zf?(tXf&&(Xf=t)):t>tl?Ol(Zf,t)>Ol(Zf,Xf)&&(Xf=t):Ol(t,Xf)>Ol(Zf,Xf)&&(Zf=t)}else ol.push(al=[Zf=t,Xf=t]);eJf&&(Jf=e),rl=n,tl=t}function vl(){gl.point=bl}function yl(){al[0]=Zf,al[1]=Xf,gl.point=ml,rl=null}function _l(t,e){if(rl){var n=t-tl;il.add(gf(n)>180?n+(n>0?360:-360):n)}else el=t,nl=e;qf.point(t,e),bl(t,e)}function wl(){qf.lineStart()}function Sl(){_l(el,nl),qf.lineEnd(),gf(il)>uf&&(Zf=-(Xf=180)),al[0]=Zf,al[1]=Xf,rl=null}function Ol(t,e){return(e-=t)<0?e+360:e}function xl(t,e){return t[0]-e[0]}function El(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:eOl(r[0],r[1])&&(r[1]=i[1]),Ol(i[0],r[1])>Ol(r[0],r[1])&&(r[0]=i[0])):o.push(r=i);for(a=-1/0,e=0,r=o[n=o.length-1];e<=n;r=i,++e)i=o[e],(u=Ol(r[1],i[0]))>a&&(a=u,Zf=i[0],Xf=r[1])}return ol=al=null,Zf===1/0||Qf===1/0?[[NaN,NaN],[NaN,NaN]]:[[Zf,Qf],[Xf,Jf]]},Hl={sphere:Cf,point:Vl,lineStart:Wl,lineEnd:Yl,polygonStart:function(){Hl.lineStart=Zl,Hl.lineEnd=Ql},polygonEnd:function(){Hl.lineStart=Wl,Hl.lineEnd=Yl}};function Vl(t,e){t*=pf;var n=vf(e*=pf);ql(n*vf(t),n*xf(t),xf(e))}function ql(t,e,n){++Ml,$l+=(t-$l)/Ml,Al+=(e-Al)/Ml,kl+=(n-kl)/Ml}function Wl(){Hl.point=Gl}function Gl(t,e){t*=pf;var n=vf(e*=pf);Fl=n*vf(t),Bl=n*xf(t),Ul=xf(e),Hl.point=Kl,ql(Fl,Bl,Ul)}function Kl(t,e){t*=pf;var n=vf(e*=pf),r=n*vf(t),i=n*xf(t),o=xf(e),a=bf(Mf((a=Bl*o-Ul*i)*a+(a=Ul*r-Fl*o)*a+(a=Fl*i-Bl*r)*a),Fl*r+Bl*i+Ul*o);Tl+=a,Cl+=a*(Fl+(Fl=r)),Il+=a*(Bl+(Bl=i)),Pl+=a*(Ul+(Ul=o)),ql(Fl,Bl,Ul)}function Yl(){Hl.point=Vl}function Zl(){Hl.point=Xl}function Ql(){Jl(Dl,Ll),Hl.point=Vl}function Xl(t,e){Dl=t,Ll=e,t*=pf,e*=pf,Hl.point=Jl;var n=vf(e);Fl=n*vf(t),Bl=n*xf(t),Ul=xf(e),ql(Fl,Bl,Ul)}function Jl(t,e){t*=pf;var n=vf(e*=pf),r=n*vf(t),i=n*xf(t),o=xf(e),a=Bl*o-Ul*i,u=Ul*r-Fl*o,s=Fl*i-Bl*r,c=wf(a,u,s),f=Af(c),l=c&&-f/c;Nl.add(l*a),Rl.add(l*u),jl.add(l*s),Tl+=f,Cl+=f*(Fl+(Fl=r)),Il+=f*(Bl+(Bl=i)),Pl+=f*(Ul+(Ul=o)),ql(Fl,Bl,Ul)}var td=function(t){Ml=Tl=$l=Al=kl=Cl=Il=Pl=0,Nl=new C,Rl=new C,jl=new C,zf(t,Hl);var e=+Nl,n=+Rl,r=+jl,i=wf(e,n,r);return icf?t+Math.round(-t/df)*df:t,e]}function id(t,e,n){return(t%=df)?e||n?nd(ad(t),ud(e,n)):ad(t):e||n?ud(e,n):rd}function od(t){return function(e,n){return[(e+=t)>cf?e-df:e<-cf?e+df:e,n]}}function ad(t){var e=od(t);return e.invert=od(-t),e}function ud(t,e){var n=vf(t),r=xf(t),i=vf(e),o=xf(e);function a(t,e){var a=vf(e),u=vf(t)*a,s=xf(t)*a,c=xf(e),f=c*n+u*r;return[bf(s*i-f*o,u*n-c*r),Af(f*i+s*o)]}return a.invert=function(t,e){var a=vf(e),u=vf(t)*a,s=xf(t)*a,c=xf(e),f=c*i-s*o;return[bf(s*i+c*o,u*n+f*r),Af(f*n-u*r)]},a}rd.invert=rd;var sd=function(t){function e(e){return(e=t(e[0]*pf,e[1]*pf))[0]*=hf,e[1]*=hf,e}return t=id(t[0]*pf,t[1]*pf,t.length>2?t[2]*pf:0),e.invert=function(e){return(e=t.invert(e[0]*pf,e[1]*pf))[0]*=hf,e[1]*=hf,e},e};function cd(t,e,n,r,i,o){if(n){var a=vf(e),u=xf(e),s=r*n;null==i?(i=e+r*df,o=e-s/2):(i=fd(a,i),o=fd(a,o),(r>0?io)&&(i+=r*df));for(var c,f=i;r>0?f>o:f1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}},hd=function(t,e){return gf(t[0]-e[0])=0;--o)i.point((f=c[o])[0],f[1]);else r(d.x,d.p.x,-1,i);d=d.p}c=(d=d.o).z,h=!h}while(!d.v);i.lineEnd()}}};function md(t){if(e=t.length){for(var e,n,r=0,i=t[0];++r=0?1:-1,M=E*x,T=M>cf,$=m*S;if(s.add(bf($*E*xf(M),b*O+$*vf(M))),a+=T?x+E*df:x,T^p>=n^_>=n){var A=ll(cl(h),cl(y));pl(A);var k=ll(o,A);pl(k);var I=(T^x>=0?-1:1)*Af(k[2]);(r>I||r===I&&(A[0]||A[1]))&&(u+=T^x>=0?1:-1)}}return(a<-1e-6||a0){for(l||(i.polygonStart(),l=!0),i.lineStart(),t=0;t1&&2&s&&d.push(d.pop().concat(d.shift())),a.push(d.filter(_d))}return d}};function _d(t){return t.length>1}function wd(t,e){return((t=t.x)[0]<0?t[1]-ff-uf:ff-t[1])-((e=e.x)[0]<0?e[1]-ff-uf:ff-e[1])}var Sd=yd((function(){return!0}),(function(t){var e,n=NaN,r=NaN,i=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(o,a){var u=o>0?cf:-cf,s=gf(o-n);gf(s-cf)0?ff:-ff),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(u,r),t.point(o,r),e=0):i!==u&&s>=cf&&(gf(n-i)uf?mf((xf(e)*(o=vf(r))*xf(n)-xf(r)*(i=vf(e))*xf(t))/(i*o*a)):(e+r)/2}(n,r,o,a),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(u,r),e=0),t.point(n=o,r=a),i=u},lineEnd:function(){t.lineEnd(),n=r=NaN},clean:function(){return 2-e}}}),(function(t,e,n,r){var i;if(null==t)i=n*ff,r.point(-cf,i),r.point(0,i),r.point(cf,i),r.point(cf,0),r.point(cf,-i),r.point(0,-i),r.point(-cf,-i),r.point(-cf,0),r.point(-cf,i);else if(gf(t[0]-e[0])>uf){var o=t[0]0,i=gf(e)>uf;function o(t,n){return vf(t)*vf(n)>e}function a(t,n,r){var i=[1,0,0],o=ll(cl(t),cl(n)),a=fl(o,o),u=o[0],s=a-u*u;if(!s)return!r&&t;var c=e*a/s,f=-e*u/s,l=ll(i,o),d=hl(i,c);dl(d,hl(o,f));var h=l,p=fl(d,h),g=fl(h,h),m=p*p-g*(fl(d,d)-1);if(!(m<0)){var b=Mf(m),v=hl(h,(-p-b)/g);if(dl(v,d),v=sl(v),!r)return v;var y,_=t[0],w=n[0],S=t[1],O=n[1];w<_&&(y=_,_=w,w=y);var x=w-_,E=gf(x-cf)0^v[1]<(gf(v[0]-_)cf^(_<=v[0]&&v[0]<=w)){var M=hl(h,(-p+b)/g);return dl(M,d),[v,sl(M)]}}}function u(e,n){var i=r?t:cf-t,o=0;return e<-i?o|=1:e>i&&(o|=2),n<-i?o|=4:n>i&&(o|=8),o}return yd(o,(function(t){var e,n,s,c,f;return{lineStart:function(){c=s=!1,f=1},point:function(l,d){var h,p=[l,d],g=o(l,d),m=r?g?0:u(l,d):g?u(l+(l<0?cf:-cf),d):0;if(!e&&(c=s=g)&&t.lineStart(),g!==s&&(!(h=a(e,p))||hd(e,h)||hd(p,h))&&(p[2]=1),g!==s)f=0,g?(t.lineStart(),h=a(p,e),t.point(h[0],h[1])):(h=a(e,p),t.point(h[0],h[1],2),t.lineEnd()),e=h;else if(i&&e&&r^g){var b;m&n||!(b=a(p,e,!0))||(f=0,r?(t.lineStart(),t.point(b[0][0],b[0][1]),t.point(b[1][0],b[1][1]),t.lineEnd()):(t.point(b[1][0],b[1][1]),t.lineEnd(),t.lineStart(),t.point(b[0][0],b[0][1],3)))}!g||e&&hd(e,p)||t.point(p[0],p[1]),e=p,s=g,n=m},lineEnd:function(){s&&t.lineEnd(),e=null},clean:function(){return f|(c&&s)<<1}}}),(function(e,r,i,o){cd(o,t,n,i,e,r)}),r?[0,-t]:[-cf,t-cf])},xd=1e9,Ed=-xd;function Md(t,e,n,r){function i(i,o){return t<=i&&i<=n&&e<=o&&o<=r}function o(i,o,u,c){var f=0,l=0;if(null==i||(f=a(i,u))!==(l=a(o,u))||s(i,o)<0^u>0)do{c.point(0===f||3===f?t:n,f>1?r:e)}while((f=(f+u+4)%4)!==l);else c.point(o[0],o[1])}function a(r,i){return gf(r[0]-t)0?0:3:gf(r[0]-n)0?2:1:gf(r[1]-e)0?1:0:i>0?3:2}function u(t,e){return s(t.x,e.x)}function s(t,e){var n=a(t,1),r=a(e,1);return n!==r?n-r:0===n?e[1]-t[1]:1===n?t[0]-e[0]:2===n?t[1]-e[1]:e[0]-t[0]}return function(a){var s,c,f,l,d,h,p,g,m,b,v,y=a,_=dd(),w={point:S,lineStart:function(){w.point=O,c&&c.push(f=[]);b=!0,m=!1,p=g=NaN},lineEnd:function(){s&&(O(l,d),h&&m&&_.rejoin(),s.push(_.result()));w.point=S,m&&y.lineEnd()},polygonStart:function(){y=_,s=[],c=[],v=!0},polygonEnd:function(){var e=function(){for(var e=0,n=0,i=c.length;nr&&(d-o)*(r-a)>(h-a)*(t-o)&&++e:h<=r&&(d-o)*(r-a)<(h-a)*(t-o)&&--e;return e}(),n=v&&e,i=(s=At(s)).length;(n||i)&&(a.polygonStart(),n&&(a.lineStart(),o(null,null,1,a),a.lineEnd()),i&&gd(s,u,e,o,a),a.polygonEnd());y=a,s=c=f=null}};function S(t,e){i(t,e)&&y.point(t,e)}function O(o,a){var u=i(o,a);if(c&&f.push([o,a]),b)l=o,d=a,h=u,b=!1,u&&(y.lineStart(),y.point(o,a));else if(u&&m)y.point(o,a);else{var s=[p=Math.max(Ed,Math.min(xd,p)),g=Math.max(Ed,Math.min(xd,g))],_=[o=Math.max(Ed,Math.min(xd,o)),a=Math.max(Ed,Math.min(xd,a))];!function(t,e,n,r,i,o){var a,u=t[0],s=t[1],c=0,f=1,l=e[0]-u,d=e[1]-s;if(a=n-u,l||!(a>0)){if(a/=l,l<0){if(a0){if(a>f)return;a>c&&(c=a)}if(a=i-u,l||!(a<0)){if(a/=l,l<0){if(a>f)return;a>c&&(c=a)}else if(l>0){if(a0)){if(a/=d,d<0){if(a0){if(a>f)return;a>c&&(c=a)}if(a=o-s,d||!(a<0)){if(a/=d,d<0){if(a>f)return;a>c&&(c=a)}else if(d>0){if(a0&&(t[0]=u+c*l,t[1]=s+c*d),f<1&&(e[0]=u+f*l,e[1]=s+f*d),!0}}}}}(s,_,t,e,n,r)?u&&(y.lineStart(),y.point(o,a),v=!1):(m||(y.lineStart(),y.point(s[0],s[1])),y.point(_[0],_[1]),u||y.lineEnd(),v=!1)}p=o,g=a,m=u}return w}}var Td,$d,Ad,kd,Cd=function(){var t,e,n,r=0,i=0,o=960,a=500;return n={stream:function(n){return t&&e===n?t:t=Md(r,i,o,a)(e=n)},extent:function(u){return arguments.length?(r=+u[0][0],i=+u[0][1],o=+u[1][0],a=+u[1][1],t=e=null,n):[[r,i],[o,a]]}}},Id={sphere:Cf,point:Cf,lineStart:function(){Id.point=Nd,Id.lineEnd=Pd},lineEnd:Cf,polygonStart:Cf,polygonEnd:Cf};function Pd(){Id.point=Id.lineEnd=Cf}function Nd(t,e){$d=t*=pf,Ad=xf(e*=pf),kd=vf(e),Id.point=Rd}function Rd(t,e){t*=pf;var n=xf(e*=pf),r=vf(e),i=gf(t-$d),o=vf(i),a=r*xf(i),u=kd*n-Ad*r*o,s=Ad*n+kd*r*o;Td.add(bf(Mf(a*a+u*u),s)),$d=t,Ad=n,kd=r}var jd=function(t){return Td=new C,zf(t,Id),+Td},Dd=[null,null],Ld={type:"LineString",coordinates:Dd},Fd=function(t,e){return Dd[0]=t,Dd[1]=e,jd(Ld)},Bd={Feature:function(t,e){return zd(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r0&&(i=Fd(t[o],t[o-1]))>0&&n<=i&&r<=i&&(n+r-i)*(1-Math.pow((n-r)/i,2))uf})).map(s)).concat(Pt(yf(o/h)*h,i,h).filter((function(t){return gf(t%g)>uf})).map(c))}return b.lines=function(){return v().map((function(t){return{type:"LineString",coordinates:t}}))},b.outline=function(){return{type:"Polygon",coordinates:[f(r).concat(l(a).slice(1),f(n).reverse().slice(1),l(u).reverse().slice(1))]}},b.extent=function(t){return arguments.length?b.extentMajor(t).extentMinor(t):b.extentMinor()},b.extentMajor=function(t){return arguments.length?(r=+t[0][0],n=+t[1][0],u=+t[0][1],a=+t[1][1],r>n&&(t=r,r=n,n=t),u>a&&(t=u,u=a,a=t),b.precision(m)):[[r,u],[n,a]]},b.extentMinor=function(n){return arguments.length?(e=+n[0][0],t=+n[1][0],o=+n[0][1],i=+n[1][1],e>t&&(n=e,e=t,t=n),o>i&&(n=o,o=i,i=n),b.precision(m)):[[e,o],[t,i]]},b.step=function(t){return arguments.length?b.stepMajor(t).stepMinor(t):b.stepMinor()},b.stepMajor=function(t){return arguments.length?(p=+t[0],g=+t[1],b):[p,g]},b.stepMinor=function(t){return arguments.length?(d=+t[0],h=+t[1],b):[d,h]},b.precision=function(d){return arguments.length?(m=+d,s=Yd(o,i,90),c=Zd(e,t,m),f=Yd(u,a,90),l=Zd(r,n,m),b):m},b.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}function Xd(){return Qd()()}var Jd,th,eh,nh,rh=function(t,e){var n=t[0]*pf,r=t[1]*pf,i=e[0]*pf,o=e[1]*pf,a=vf(r),u=xf(r),s=vf(o),c=xf(o),f=a*vf(n),l=a*xf(n),d=s*vf(i),h=s*xf(i),p=2*Af(Mf(kf(o-r)+a*s*kf(i-n))),g=xf(p),m=p?function(t){var e=xf(t*=p)/g,n=xf(p-t)/g,r=n*f+e*d,i=n*l+e*h,o=n*u+e*c;return[bf(i,r)*hf,bf(o,Mf(r*r+i*i))*hf]}:function(){return[n*hf,r*hf]};return m.distance=p,m},ih=function(t){return t},oh=new C,ah=new C,uh={point:Cf,lineStart:Cf,lineEnd:Cf,polygonStart:function(){uh.lineStart=sh,uh.lineEnd=lh},polygonEnd:function(){uh.lineStart=uh.lineEnd=uh.point=Cf,oh.add(gf(ah)),ah=new C},result:function(){var t=oh/2;return oh=new C,t}};function sh(){uh.point=ch}function ch(t,e){uh.point=fh,Jd=eh=t,th=nh=e}function fh(t,e){ah.add(nh*t-eh*e),eh=t,nh=e}function lh(){fh(Jd,th)}var dh=uh,hh=1/0,ph=hh,gh=-hh,mh=gh;var bh,vh,yh,_h,wh={point:function(t,e){tgh&&(gh=t);emh&&(mh=e)},lineStart:Cf,lineEnd:Cf,polygonStart:Cf,polygonEnd:Cf,result:function(){var t=[[hh,ph],[gh,mh]];return gh=mh=-(ph=hh=1/0),t}},Sh=0,Oh=0,xh=0,Eh=0,Mh=0,Th=0,$h=0,Ah=0,kh=0,Ch={point:Ih,lineStart:Ph,lineEnd:jh,polygonStart:function(){Ch.lineStart=Dh,Ch.lineEnd=Lh},polygonEnd:function(){Ch.point=Ih,Ch.lineStart=Ph,Ch.lineEnd=jh},result:function(){var t=kh?[$h/kh,Ah/kh]:Th?[Eh/Th,Mh/Th]:xh?[Sh/xh,Oh/xh]:[NaN,NaN];return Sh=Oh=xh=Eh=Mh=Th=$h=Ah=kh=0,t}};function Ih(t,e){Sh+=t,Oh+=e,++xh}function Ph(){Ch.point=Nh}function Nh(t,e){Ch.point=Rh,Ih(yh=t,_h=e)}function Rh(t,e){var n=t-yh,r=e-_h,i=Mf(n*n+r*r);Eh+=i*(yh+t)/2,Mh+=i*(_h+e)/2,Th+=i,Ih(yh=t,_h=e)}function jh(){Ch.point=Ih}function Dh(){Ch.point=Fh}function Lh(){Bh(bh,vh)}function Fh(t,e){Ch.point=Bh,Ih(bh=yh=t,vh=_h=e)}function Bh(t,e){var n=t-yh,r=e-_h,i=Mf(n*n+r*r);Eh+=i*(yh+t)/2,Mh+=i*(_h+e)/2,Th+=i,$h+=(i=_h*t-yh*e)*(yh+t),Ah+=i*(_h+e),kh+=3*i,Ih(yh=t,_h=e)}var Uh=Ch;function zh(t){this._context=t}zh.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._context.moveTo(t,e),this._point=1;break;case 1:this._context.lineTo(t,e);break;default:this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,df)}},result:Cf};var Hh,Vh,qh,Wh,Gh,Kh=new C,Yh={point:Cf,lineStart:function(){Yh.point=Zh},lineEnd:function(){Hh&&Qh(Vh,qh),Yh.point=Cf},polygonStart:function(){Hh=!0},polygonEnd:function(){Hh=null},result:function(){var t=+Kh;return Kh=new C,t}};function Zh(t,e){Yh.point=Qh,Vh=Wh=t,qh=Gh=e}function Qh(t,e){Wh-=t,Gh-=e,Kh.add(Mf(Wh*Wh+Gh*Gh)),Wh=t,Gh=e}var Xh=Yh;function Jh(){this._string=[]}function tp(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}Jh.prototype={_radius:4.5,_circle:tp(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._string.push("M",t,",",e),this._point=1;break;case 1:this._string.push("L",t,",",e);break;default:null==this._circle&&(this._circle=tp(this._radius)),this._string.push("M",t,",",e,this._circle)}},result:function(){if(this._string.length){var t=this._string.join("");return this._string=[],t}return null}};var ep=function(t,e){var n,r,i=4.5;function o(t){return t&&("function"===typeof i&&r.pointRadius(+i.apply(this,arguments)),zf(t,n(r))),r.result()}return o.area=function(t){return zf(t,n(dh)),dh.result()},o.measure=function(t){return zf(t,n(Xh)),Xh.result()},o.bounds=function(t){return zf(t,n(wh)),wh.result()},o.centroid=function(t){return zf(t,n(Uh)),Uh.result()},o.projection=function(e){return arguments.length?(n=null==e?(t=null,ih):(t=e).stream,o):t},o.context=function(t){return arguments.length?(r=null==t?(e=null,new Jh):new zh(e=t),"function"!==typeof i&&r.pointRadius(i),o):e},o.pointRadius=function(t){return arguments.length?(i="function"===typeof t?t:(r.pointRadius(+t),+t),o):i},o.projection(t).context(e)},np=function(t){return{stream:rp(t)}};function rp(t){return function(e){var n=new ip;for(var r in t)n[r]=t[r];return n.stream=e,n}}function ip(){}function op(t,e,n){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),null!=r&&t.clipExtent(null),zf(n,t.stream(wh)),e(wh.result()),null!=r&&t.clipExtent(r),t}function ap(t,e,n){return op(t,(function(n){var r=e[1][0]-e[0][0],i=e[1][1]-e[0][1],o=Math.min(r/(n[1][0]-n[0][0]),i/(n[1][1]-n[0][1])),a=+e[0][0]+(r-o*(n[1][0]+n[0][0]))/2,u=+e[0][1]+(i-o*(n[1][1]+n[0][1]))/2;t.scale(150*o).translate([a,u])}),n)}function up(t,e,n){return ap(t,[[0,0],e],n)}function sp(t,e,n){return op(t,(function(n){var r=+e,i=r/(n[1][0]-n[0][0]),o=(r-i*(n[1][0]+n[0][0]))/2,a=-i*n[0][1];t.scale(150*i).translate([o,a])}),n)}function cp(t,e,n){return op(t,(function(n){var r=+e,i=r/(n[1][1]-n[0][1]),o=-i*n[0][0],a=(r-i*(n[1][1]+n[0][1]))/2;t.scale(150*i).translate([o,a])}),n)}ip.prototype={constructor:ip,point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var fp=vf(30*pf),lp=function(t,e){return+e?function(t,e){function n(r,i,o,a,u,s,c,f,l,d,h,p,g,m){var b=c-r,v=f-i,y=b*b+v*v;if(y>4*e&&g--){var _=a+d,w=u+h,S=s+p,O=Mf(_*_+w*w+S*S),x=Af(S/=O),E=gf(gf(S)-1)e||gf((b*A+v*k)/y-.5)>.3||a*d+u*h+s*p2?t[2]%360*pf:0,A()):[m*hf,b*hf,v*hf]},T.angle=function(t){return arguments.length?(y=t%360*pf,A()):y*hf},T.reflectX=function(t){return arguments.length?(_=t?-1:1,A()):_<0},T.reflectY=function(t){return arguments.length?(w=t?-1:1,A()):w<0},T.precision=function(t){return arguments.length?(a=lp(u,M=t*t),k()):Mf(M)},T.fitExtent=function(t,e){return ap(T,t,e)},T.fitSize=function(t,e){return up(T,t,e)},T.fitWidth=function(t,e){return sp(T,t,e)},T.fitHeight=function(t,e){return cp(T,t,e)},function(){return e=t.apply(this,arguments),T.invert=e.invert&&$,A()}}function mp(t){var e=0,n=cf/3,r=gp(t),i=r(e,n);return i.parallels=function(t){return arguments.length?r(e=t[0]*pf,n=t[1]*pf):[e*hf,n*hf]},i}function bp(t,e){var n=xf(t),r=(n+xf(e))/2;if(gf(r)=.12&&i<.234&&r>=-.425&&r<-.214?u:i>=.166&&i<.234&&r>=-.214&&r<-.115?s:a).invert(t)},f.stream=function(n){return t&&e===n?t:t=function(t){var e=t.length;return{point:function(n,r){for(var i=-1;++i0?e<-ff+uf&&(e=-ff+uf):e>ff-uf&&(e=ff-uf);var n=i/Of(kp(e),r);return[n*xf(r*t),i-n*vf(r*t)]}return o.invert=function(t,e){var n=i-e,o=Ef(r)*Mf(t*t+n*n),a=bf(t,gf(n))*Ef(n);return n*r<0&&(a-=cf*Ef(t)*Ef(n)),[a/r,2*mf(Of(i/o,1/r))-ff]},o}var Ip=function(){return mp(Cp).scale(109.5).parallels([30,30])};function Pp(t,e){return[t,e]}Pp.invert=Pp;var Np=function(){return pp(Pp).scale(152.63)};function Rp(t,e){var n=vf(t),r=t===e?xf(t):(n-vf(e))/(e-t),i=n/r+t;if(gf(r)uf&&--i>0);return[t/(.8707+(o=r*r)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),r]};var Kp=function(){return pp(Gp).scale(175.295)};function Yp(t,e){return[vf(e)*xf(t),xf(e)]}Yp.invert=Sp(Af);var Zp=function(){return pp(Yp).scale(249.5).clipAngle(90.000001)};function Qp(t,e){var n=vf(e),r=1+vf(t)*n;return[n*xf(t)/r,xf(e)/r]}Qp.invert=Sp((function(t){return 2*mf(t)}));var Xp=function(){return pp(Qp).scale(250).clipAngle(142)};function Jp(t,e){return[Sf(Tf((ff+e)/2)),-t]}Jp.invert=function(t,e){return[-e,2*mf(_f(t))-ff]};var tg=function(){var t=Ap(Jp),e=t.center,n=t.rotate;return t.center=function(t){return arguments.length?e([-t[1],t[0]]):[(t=e())[1],-t[0]]},t.rotate=function(t){return arguments.length?n([t[0],t[1],t.length>2?t[2]+90:90]):[(t=n())[0],t[1],t[2]-90]},n([0,0,90]).scale(159.155)};function eg(t,e){return t.parent===e.parent?1:2}function ng(t,e){return t+e.x}function rg(t,e){return Math.max(t,e.y)}var ig=function(){var t=eg,e=1,n=1,r=!1;function i(i){var o,a=0;i.eachAfter((function(e){var n=e.children;n?(e.x=function(t){return t.reduce(ng,0)/t.length}(n),e.y=function(t){return 1+t.reduce(rg,0)}(n)):(e.x=o?a+=t(e,o):0,e.y=0,o=e)}));var u=function(t){for(var e;e=t.children;)t=e[0];return t}(i),s=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(i),c=u.x-t(u,s)/2,f=s.x+t(s,u)/2;return i.eachAfter(r?function(t){t.x=(t.x-i.x)*e,t.y=(i.y-t.y)*n}:function(t){t.x=(t.x-c)/(f-c)*e,t.y=(1-(i.y?t.y/i.y:1))*n})}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i};function og(t){var e=0,n=t.children,r=n&&n.length;if(r)for(;--r>=0;)e+=n[r].value;else e=1;t.value=e}var ag=u.a.mark(ug);function ug(){var t,e,n,r,i,o;return u.a.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:n=[t=this];case 1:e=n.reverse(),n=[];case 2:if(!(t=e.pop())){a.next=8;break}return a.next=5,t;case 5:if(r=t.children)for(i=0,o=r.length;i=0;--o)s.push(r=i[o]=new hg(i[o])),r.parent=n,r.depth=n.depth+1;return u.eachBefore(dg)}function cg(t){return t.children}function fg(t){return Array.isArray(t)?t[1]:null}function lg(t){void 0!==t.data.value&&(t.value=t.data.value),t.data=t.data.data}function dg(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function hg(t){this.data=t,this.depth=this.height=0,this.parent=null}hg.prototype=sg.prototype=Object(xe.a)({constructor:hg,count:function(){return this.eachAfter(og)},each:function(t,e){var n,r=-1,i=Object(s.a)(this);try{for(i.s();!(n=i.n()).done;){var o=n.value;t.call(e,o,++r,this)}}catch(a){i.e(a)}finally{i.f()}return this},eachAfter:function(t,e){for(var n,r,i,o=this,a=[o],u=[],s=-1;o=a.pop();)if(u.push(o),n=o.children)for(r=0,i=n.length;r=0;--r)o.push(n[r]);return this},find:function(t,e){var n,r=-1,i=Object(s.a)(this);try{for(i.s();!(n=i.n()).done;){var o=n.value;if(t.call(e,o,++r,this))return o}}catch(a){i.e(a)}finally{i.f()}},sum:function(t){return this.eachAfter((function(e){for(var n=+t(e.data)||0,r=e.children,i=r&&r.length;--i>=0;)n+=r[i].value;e.value=n}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;t=n.pop(),e=r.pop();for(;t===e;)i=t,t=n.pop(),e=r.pop();return i}(e,t),r=[e];e!==n;)e=e.parent,r.push(e);for(var i=r.length;t!==n;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){return Array.from(this)},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(n){n!==t&&e.push({source:n.parent,target:n})})),e},copy:function(){return sg(this).eachBefore(lg)}},Symbol.iterator,ug);var pg=function(t){for(var e,n,r=0,i=(t=function(t){for(var e,n,r=t.length;r;)n=Math.random()*r--|0,e=t[r],t[r]=t[n],t[n]=e;return t}(Array.from(t))).length,o=[];r0&&n*n>r*r+i*i}function vg(t,e){for(var n=0;n(a*=a)?(r=(c+a-i)/(2*c),o=Math.sqrt(Math.max(0,a/c-r*r)),n.x=t.x-r*u-o*s,n.y=t.y-r*s+o*u):(r=(c+i-a)/(2*c),o=Math.sqrt(Math.max(0,i/c-r*r)),n.x=e.x+r*u-o*s,n.y=e.y+r*s+o*u)):(n.x=e.x+n.r,n.y=e.y)}function Og(t,e){var n=t.r+e.r-1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function xg(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,o=(e.y*n.r+n.y*e.r)/r;return i*i+o*o}function Eg(t){this._=t,this.next=null,this.previous=null}function Mg(t){if(!(o=(e=t,t="object"===typeof e&&"length"in e?e:Array.from(e)).length))return 0;var e,n,r,i,o,a,u,s,c,f,l,d;if((n=t[0]).x=0,n.y=0,!(o>1))return n.r;if(r=t[1],n.x=-r.r,r.x=n.r,r.y=0,!(o>2))return n.r+r.r;Sg(r,n,i=t[2]),n=new Eg(n),r=new Eg(r),i=new Eg(i),n.next=i.previous=r,r.next=n.previous=i,i.next=r.previous=n;t:for(s=3;s0)throw new Error("cycle");return o}return n.id=function(e){return arguments.length?(t=Ag(e),n):t},n.parentId=function(t){return arguments.length?(e=Ag(t),n):e},n};function qg(t,e){return t.parent===e.parent?1:2}function Wg(t){var e=t.children;return e?e[0]:t.t}function Gg(t){var e=t.children;return e?e[e.length-1]:t.t}function Kg(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}function Yg(t,e,n){return t.a.parent===e.parent?t.a:n}function Zg(t,e){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=e}Zg.prototype=Object.create(hg.prototype);var Qg=function(){var t=qg,e=1,n=1,r=null;function i(i){var s=function(t){for(var e,n,r,i,o,a=new Zg(t,0),u=[a];e=u.pop();)if(r=e._.children)for(e.children=new Array(o=r.length),i=o-1;i>=0;--i)u.push(n=e.children[i]=new Zg(r[i],i)),n.parent=e;return(a.parent=new Zg(null,0)).children=[a],a}(i);if(s.eachAfter(o),s.parent.m=-s.z,s.eachBefore(a),r)i.eachBefore(u);else{var c=i,f=i,l=i;i.eachBefore((function(t){t.xf.x&&(f=t),t.depth>l.depth&&(l=t)}));var d=c===f?1:t(c,f)/2,h=d-c.x,p=e/(f.x+d+h),g=n/(l.depth||1);i.eachBefore((function(t){t.x=(t.x+h)*p,t.y=t.depth*g}))}return i}function o(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){!function(t){for(var e,n=0,r=0,i=t.children,o=i.length;--o>=0;)(e=i[o]).z+=n,e.m+=n,n+=e.s+(r+=e.c)}(e);var o=(n[0].z+n[n.length-1].z)/2;i?(e.z=i.z+t(e._,i._),e.m=e.z-o):e.z=o}else i&&(e.z=i.z+t(e._,i._));e.parent.A=function(e,n,r){if(n){for(var i,o=e,a=e,u=n,s=o.parent.children[0],c=o.m,f=a.m,l=u.m,d=s.m;u=Gg(u),o=Wg(o),u&&o;)s=Wg(s),(a=Gg(a)).a=e,(i=u.z+l-o.z-c+t(u._,o._))>0&&(Kg(Yg(u,e,r),e,i),c+=i,f+=i),l+=u.m,c+=o.m,d+=s.m,f+=a.m;u&&!Gg(a)&&(a.t=u,a.m+=l-f),o&&!Wg(s)&&(s.t=o,s.m+=c-d,r=e)}return r}(e,i,e.parent.A||r[0])}function a(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function u(t){t.x*=e,t.y=t.depth*n}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i},Xg=function(t,e,n,r,i){for(var o,a=t.children,u=-1,s=a.length,c=t.value&&(i-n)/t.value;++ud&&(d=u),m=f*f*g,(h=Math.max(d/m,m/l))>p){f-=u;break}p=h}b.push(a={value:f,dice:s1?e:1)},n}(Jg),nm=function(){var t=em,e=!1,n=1,r=1,i=[0],o=kg,a=kg,u=kg,s=kg,c=kg;function f(t){return t.x0=t.y0=0,t.x1=n,t.y1=r,t.eachBefore(l),i=[0],e&&t.eachBefore(Dg),t}function l(e){var n=i[e.depth],r=e.x0+n,f=e.y0+n,l=e.x1-n,d=e.y1-n;l=n-1){var f=u[e];return f.x0=i,f.y0=o,f.x1=a,void(f.y1=s)}var l=c[e],d=r/2+l,h=e+1,p=n-1;for(;h>>1;c[g]s-o){var v=r?(i*b+a*m)/r:a;t(e,h,m,i,o,v,s),t(h,n,b,v,o,a,s)}else{var y=r?(o*b+s*m)/r:s;t(e,h,m,i,o,a,y),t(h,n,b,i,y,a,s)}}(0,s,t.value,e,n,r,i)},im=function(t,e,n,r,i){(1&t.depth?Xg:Lg)(t,e,n,r,i)},om=function t(e){function n(t,n,r,i,o){if((a=t._squarify)&&a.ratio===e)for(var a,u,s,c,f,l=-1,d=a.length,h=t.value;++l1?e:1)},n}(Jg),am=function(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}},um=function(t,e){var n=kr(+t,+e);return function(t){var e=n(t);return e-360*Math.floor(e/360)}},sm=function(t,e){return t=+t,e=+e,function(n){return Math.round(t*(1-n)+e*n)}};function cm(t){return((t=Math.exp(t))+1/t)/2}var fm=function t(e,n,r){function i(t,i){var o,a,u=t[0],s=t[1],c=t[2],f=i[0],l=i[1],d=i[2],h=f-u,p=l-s,g=h*h+p*p;if(g<1e-12)a=Math.log(d/c)/e,o=function(t){return[u+t*h,s+t*p,c*Math.exp(e*t*a)]};else{var m=Math.sqrt(g),b=(d*d-c*c+r*g)/(2*c*n*m),v=(d*d-c*c-r*g)/(2*d*n*m),y=Math.log(Math.sqrt(b*b+1)-b),_=Math.log(Math.sqrt(v*v+1)-v);a=(_-y)/e,o=function(t){var r,i=t*a,o=cm(y),f=c/(n*m)*(o*(r=e*i+y,((r=Math.exp(2*r))-1)/(r+1))-function(t){return((t=Math.exp(t))-1/t)/2}(y));return[u+f*h,s+f*p,c*o/cm(e*i+y)]}}return o.duration=1e3*a*e/Math.SQRT2,o}return i.rho=function(e){var n=Math.max(.001,+e),r=n*n;return t(n,r,r*r)},i}(Math.SQRT2,2,4);function lm(t){return function(e,n){var r=t((e=Sr(e)).h,(n=Sr(n)).h),i=Ir(e.s,n.s),o=Ir(e.l,n.l),a=Ir(e.opacity,n.opacity);return function(t){return e.h=r(t),e.s=i(t),e.l=o(t),e.opacity=a(t),e+""}}}var dm=lm(kr),hm=lm(Ir);function pm(t,e){var n=Ir((t=Na(t)).l,(e=Na(e)).l),r=Ir(t.a,e.a),i=Ir(t.b,e.b),o=Ir(t.opacity,e.opacity);return function(e){return t.l=n(e),t.a=r(e),t.b=i(e),t.opacity=o(e),t+""}}function gm(t){return function(e,n){var r=t((e=za(e)).h,(n=za(n)).h),i=Ir(e.c,n.c),o=Ir(e.l,n.l),a=Ir(e.opacity,n.opacity);return function(t){return e.h=r(t),e.c=i(t),e.l=o(t),e.opacity=a(t),e+""}}}var mm=gm(kr),bm=gm(Ir);function vm(t){return function e(n){function r(e,r){var i=t((e=tu(e)).h,(r=tu(r)).h),o=Ir(e.s,r.s),a=Ir(e.l,r.l),u=Ir(e.opacity,r.opacity);return function(t){return e.h=i(t),e.s=o(t),e.l=a(Math.pow(t,n)),e.opacity=u(t),e+""}}return n=+n,r.gamma=e,r}(1)}var ym=vm(kr),_m=vm(Ir);function wm(t,e){void 0===e&&(e=t,t=Yr);for(var n=0,r=e.length-1,i=e[0],o=new Array(r<0?0:r);n1&&(n=t[a[u-2]],r=t[a[u-1]],i=t[e],(r[0]-n[0])*(i[1]-n[1])-(r[1]-n[1])*(i[0]-n[0])<=0);)--u;a[u++]=e}return a.slice(0,u)}var Tm=function(t){if((n=t.length)<3)return null;var e,n,r=new Array(n),i=new Array(n);for(e=0;e=0;--e)c.push(t[r[o[e]][2]]);for(e=+u;eu!==c>u&&a<(s-n)*(u-r)/(c-r)+n&&(f=!f),s=n,c=r;return f},Am=function(t){for(var e,n,r=-1,i=t.length,o=t[i-1],a=o[0],u=o[1],s=0;++r1);return t+n*o*Math.sqrt(-2*Math.log(i)/i)}}return n.source=t,n}(km),Nm=function t(e){var n=Pm.source(e);function r(){var t=n.apply(this,arguments);return function(){return Math.exp(t())}}return r.source=t,r}(km),Rm=function t(e){function n(t){return(t=+t)<=0?function(){return 0}:function(){for(var n=0,r=t;r>1;--r)n+=e();return n+r*e()}}return n.source=t,n}(km),jm=function t(e){var n=Rm.source(e);function r(t){if(0===(t=+t))return e;var r=n(t);return function(){return r()/t}}return r.source=t,r}(km),Dm=function t(e){function n(t){return function(){return-Math.log1p(-e())/t}}return n.source=t,n}(km),Lm=function t(e){function n(t){if((t=+t)<0)throw new RangeError("invalid alpha");return t=1/-t,function(){return Math.pow(1-e(),t)}}return n.source=t,n}(km),Fm=function t(e){function n(t){if((t=+t)<0||t>1)throw new RangeError("invalid p");return function(){return Math.floor(e()+t)}}return n.source=t,n}(km),Bm=function t(e){function n(t){if((t=+t)<0||t>1)throw new RangeError("invalid p");return 0===t?function(){return 1/0}:1===t?function(){return 1}:(t=Math.log1p(-t),function(){return 1+Math.floor(Math.log1p(-e())/t)})}return n.source=t,n}(km),Um=function t(e){var n=Pm.source(e)();function r(t,r){if((t=+t)<0)throw new RangeError("invalid k");if(0===t)return function(){return 0};if(r=null==r?1:+r,1===t)return function(){return-Math.log1p(-e())*r};var i=(t<1?t+1:t)-1/3,o=1/(3*Math.sqrt(i)),a=t<1?function(){return Math.pow(e(),1/t)}:function(){return 1};return function(){do{do{var t=n(),u=1+o*t}while(u<=0);u*=u*u;var s=1-e()}while(s>=1-.0331*t*t*t*t&&Math.log(s)>=.5*t*t+i*(1-u+Math.log(u)));return i*u*a()*r}}return r.source=t,r}(km),zm=function t(e){var n=Um.source(e);function r(t,e){var r=n(t),i=n(e);return function(){var t=r();return 0===t?0:t/(t+i())}}return r.source=t,r}(km),Hm=function t(e){var n=Bm.source(e),r=zm.source(e);function i(t,e){return t=+t,(e=+e)>=1?function(){return t}:e<=0?function(){return 0}:function(){for(var i=0,o=t,a=e;o*a>16&&o*(1-a)>16;){var u=Math.floor((o+1)*a),s=r(u,o-u+1)();s<=a?(i+=u,o-=u,a=(a-s)/(1-s)):(o=u-1,a/=s)}for(var c=a<.5,f=n(c?a:1-a),l=f(),d=0;l<=o;++d)l+=f();return i+(c?d:o-d)}}return i.source=t,i}(km),Vm=function t(e){function n(t,n,r){var i;return 0===(t=+t)?i=function(t){return-Math.log(t)}:(t=1/t,i=function(e){return Math.pow(e,t)}),n=null==n?0:+n,r=null==r?1:+r,function(){return n+r*i(-Math.log1p(-e()))}}return n.source=t,n}(km),qm=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,function(){return t+n*Math.tan(Math.PI*e())}}return n.source=t,n}(km),Wm=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,function(){var r=e();return t+n*Math.log(r/(1-r))}}return n.source=t,n}(km),Gm=function t(e){var n=Um.source(e),r=Hm.source(e);function i(t){return function(){for(var i=0,o=t;o>16;){var a=Math.floor(.875*o),u=n(a)();if(u>o)return i+r(a-1,o/u)();i+=a,o-=u}for(var s=-Math.log1p(-e()),c=0;s<=o;++c)s-=Math.log1p(-e());return i+c}}return i.source=t,i}(km),Km=1664525,Ym=1013904223,Zm=1/4294967296;function Qm(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Math.random(),e=0|(0<=t&&t<1?t/Zm:Math.abs(t));return function(){return Zm*((e=Km*e+Ym|0)>>>0)}}function Xm(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}function Jm(t,e){switch(arguments.length){case 0:break;case 1:"function"===typeof t?this.interpolator(t):this.range(t);break;default:this.domain(t),"function"===typeof e?this.interpolator(e):this.range(e)}return this}var tb=Symbol("implicit");function eb(){var t=new Map,e=[],n=[],r=tb;function i(i){var o=i+"",a=t.get(o);if(!a){if(r!==tb)return r;t.set(o,a=e.push(i))}return n[(a-1)%n.length]}return i.domain=function(n){if(!arguments.length)return e.slice();e=[],t=new Map;var r,o=Object(s.a)(n);try{for(o.s();!(r=o.n()).done;){var a=r.value,u=a+"";t.has(u)||t.set(u,e.push(a))}}catch(c){o.e(c)}finally{o.f()}return i},i.range=function(t){return arguments.length?(n=Array.from(t),i):n.slice()},i.unknown=function(t){return arguments.length?(r=t,i):r},i.copy=function(){return eb(e,n).unknown(r)},Xm.apply(i,arguments),i}function nb(){var t,e,n=eb().unknown(void 0),r=n.domain,i=n.range,o=0,a=1,u=!1,s=0,c=0,f=.5;function l(){var n=r().length,l=ae&&(n=t,t=e,e=n),function(n){return Math.max(t,Math.min(e,n))}}(a[0],a[t-1])),r=t>2?fb:cb,i=o=null,l}function l(e){return isNaN(e=+e)?n:(i||(i=r(a.map(t),u,s)))(t(c(e)))}return l.invert=function(n){return c(e((o||(o=r(u,a.map(t),zr)))(n)))},l.domain=function(t){return arguments.length?(a=Array.from(t,ob),f()):a.slice()},l.range=function(t){return arguments.length?(u=Array.from(t),f()):u.slice()},l.rangeRound=function(t){return u=Array.from(t),s=sm,f()},l.clamp=function(t){return arguments.length?(c=!!t||ub,f()):c!==ub},l.interpolate=function(t){return arguments.length?(s=t,f()):s},l.unknown=function(t){return arguments.length?(n=t,l):n},function(n,r){return t=n,e=r,f()}}function hb(){return db()(ub,ub)}function pb(t,e,n,r){var i,o=dt(t,e,n);switch((r=Vc(null==r?",f":r)).type){case"s":var a=Math.max(Math.abs(t),Math.abs(e));return null!=r.precision||isNaN(i=of(o,a))||(r.precision=i),Yc(r,a);case"":case"e":case"g":case"p":case"r":null!=r.precision||isNaN(i=af(o,Math.max(Math.abs(t),Math.abs(e))))||(r.precision=i-("e"===r.type));break;case"f":case"%":null!=r.precision||isNaN(i=rf(o))||(r.precision=i-2*("%"===r.type))}return Kc(r)}function gb(t){var e=t.domain;return t.ticks=function(t){var n=e();return ft(n[0],n[n.length-1],null==t?10:t)},t.tickFormat=function(t,n){var r=e();return pb(r[0],r[r.length-1],null==t?10:t,n)},t.nice=function(n){null==n&&(n=10);var r,i,o=e(),a=0,u=o.length-1,s=o[a],c=o[u],f=10;for(c0;){if((i=lt(s,c,n))===r)return o[a]=s,o[u]=c,e(o);if(i>0)s=Math.floor(s/i)*i,c=Math.ceil(c/i)*i;else{if(!(i<0))break;s=Math.ceil(s*i)/i,c=Math.floor(c*i)/i}r=i}return t},t}function mb(){var t=hb();return t.copy=function(){return lb(t,mb())},Xm.apply(t,arguments),gb(t)}function bb(t){var e;function n(t){return isNaN(t=+t)?e:t}return n.invert=n,n.domain=n.range=function(e){return arguments.length?(t=Array.from(e,ob),n):t.slice()},n.unknown=function(t){return arguments.length?(e=t,n):e},n.copy=function(){return bb(t).unknown(e)},t=arguments.length?Array.from(t,ob):[0,1],gb(n)}function vb(t,e){var n,r=0,i=(t=t.slice()).length-1,o=t[r],a=t[i];return a0){for(;d<=h;++d)for(f=1,c=n(d);fs)break;g.push(l)}}else for(;d<=h;++d)for(f=o-1,c=n(d);f>=1;--f)if(!((l=c*f)s)break;g.push(l)}2*g.length0?r[i-1]:e[0],i=r?[i[r-1],n]:[i[a-1],i[a]]},a.unknown=function(e){return arguments.length?(t=e,a):a},a.thresholds=function(){return i.slice()},a.copy=function(){return Ub().domain([e,n]).range(o).unknown(t)},Xm.apply(gb(a),arguments)}function zb(){var t,e=[.5],n=[0,1],r=1;function i(i){return i<=i?n[m(e,i,0,r)]:t}return i.domain=function(t){return arguments.length?(e=Array.from(t),r=Math.min(e.length,n.length-1),i):e.slice()},i.range=function(t){return arguments.length?(n=Array.from(t),r=Math.min(e.length,n.length-1),i):n.slice()},i.invertExtent=function(t){var r=n.indexOf(t);return[e[r-1],e[r]]},i.unknown=function(e){return arguments.length?(t=e,i):t},i.copy=function(){return zb().domain(e).range(n).unknown(t)},Xm.apply(i,arguments)}var Hb=new Date,Vb=new Date;function qb(t,e,n,r){function i(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return i.floor=function(e){return t(e=new Date(+e)),e},i.ceil=function(n){return t(n=new Date(n-1)),e(n,1),t(n),n},i.round=function(t){var e=i(t),n=i.ceil(t);return t-e0))return u;do{u.push(a=new Date(+n)),e(n,o),t(n)}while(a=e)for(;t(e),!n(e);)e.setTime(e-1)}),(function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;e(t,-1),!n(t););else for(;--r>=0;)for(;e(t,1),!n(t););}))},n&&(i.count=function(e,r){return Hb.setTime(+e),Vb.setTime(+r),t(Hb),t(Vb),Math.floor(n(Hb,Vb))},i.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?i.filter(r?function(e){return r(e)%t===0}:function(e){return i.count(0,e)%t===0}):i:null}),i}var Wb=qb((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));Wb.every=function(t){return isFinite(t=Math.floor(t))&&t>0?qb((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,n){e.setFullYear(e.getFullYear()+n*t)})):null};var Gb=Wb,Kb=Wb.range,Yb=qb((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()})),Zb=Yb,Qb=Yb.range,Xb=1e3,Jb=6e4,tv=36e5,ev=864e5,nv=6048e5;function rv(t){return qb((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+7*e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Jb)/nv}))}var iv=rv(0),ov=rv(1),av=rv(2),uv=rv(3),sv=rv(4),cv=rv(5),fv=rv(6),lv=iv.range,dv=ov.range,hv=av.range,pv=uv.range,gv=sv.range,mv=cv.range,bv=fv.range,vv=qb((function(t){return t.setHours(0,0,0,0)}),(function(t,e){return t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Jb)/ev}),(function(t){return t.getDate()-1})),yv=vv,_v=vv.range,wv=qb((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*Xb-t.getMinutes()*Jb)}),(function(t,e){t.setTime(+t+e*tv)}),(function(t,e){return(e-t)/tv}),(function(t){return t.getHours()})),Sv=wv,Ov=wv.range,xv=qb((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*Xb)}),(function(t,e){t.setTime(+t+e*Jb)}),(function(t,e){return(e-t)/Jb}),(function(t){return t.getMinutes()})),Ev=xv,Mv=xv.range,Tv=qb((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,e){t.setTime(+t+e*Xb)}),(function(t,e){return(e-t)/Xb}),(function(t){return t.getUTCSeconds()})),$v=Tv,Av=Tv.range,kv=qb((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));kv.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?qb((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,n){e.setTime(+e+n*t)}),(function(e,n){return(n-e)/t})):kv:null};var Cv=kv,Iv=kv.range;function Pv(t){return qb((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+7*e)}),(function(t,e){return(e-t)/nv}))}var Nv=Pv(0),Rv=Pv(1),jv=Pv(2),Dv=Pv(3),Lv=Pv(4),Fv=Pv(5),Bv=Pv(6),Uv=Nv.range,zv=Rv.range,Hv=jv.range,Vv=Dv.range,qv=Lv.range,Wv=Fv.range,Gv=Bv.range,Kv=qb((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/ev}),(function(t){return t.getUTCDate()-1})),Yv=Kv,Zv=Kv.range,Qv=qb((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));Qv.every=function(t){return isFinite(t=Math.floor(t))&&t>0?qb((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)})):null};var Xv=Qv,Jv=Qv.range;function ty(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function ey(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function ny(t,e,n){return{y:t,m:e,d:n,H:0,M:0,S:0,L:0}}function ry(t){var e=t.dateTime,n=t.date,r=t.time,i=t.periods,o=t.days,a=t.shortDays,u=t.months,s=t.shortMonths,c=gy(i),f=my(i),l=gy(o),d=my(o),h=gy(a),p=my(a),g=gy(u),m=my(u),b=gy(s),v=my(s),y={a:function(t){return a[t.getDay()]},A:function(t){return o[t.getDay()]},b:function(t){return s[t.getMonth()]},B:function(t){return u[t.getMonth()]},c:null,d:Dy,e:Dy,f:zy,g:Jy,G:e_,H:Ly,I:Fy,j:By,L:Uy,m:Hy,M:Vy,p:function(t){return i[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:x_,s:E_,S:qy,u:Wy,U:Gy,V:Yy,w:Zy,W:Qy,x:null,X:null,y:Xy,Y:t_,Z:n_,"%":O_},_={a:function(t){return a[t.getUTCDay()]},A:function(t){return o[t.getUTCDay()]},b:function(t){return s[t.getUTCMonth()]},B:function(t){return u[t.getUTCMonth()]},c:null,d:r_,e:r_,f:s_,g:y_,G:w_,H:i_,I:o_,j:a_,L:u_,m:c_,M:f_,p:function(t){return i[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:x_,s:E_,S:l_,u:d_,U:h_,V:g_,w:m_,W:b_,x:null,X:null,y:v_,Y:__,Z:S_,"%":O_},w={a:function(t,e,n){var r=h.exec(e.slice(n));return r?(t.w=p.get(r[0].toLowerCase()),n+r[0].length):-1},A:function(t,e,n){var r=l.exec(e.slice(n));return r?(t.w=d.get(r[0].toLowerCase()),n+r[0].length):-1},b:function(t,e,n){var r=b.exec(e.slice(n));return r?(t.m=v.get(r[0].toLowerCase()),n+r[0].length):-1},B:function(t,e,n){var r=g.exec(e.slice(n));return r?(t.m=m.get(r[0].toLowerCase()),n+r[0].length):-1},c:function(t,n,r){return x(t,e,n,r)},d:Ty,e:Ty,f:Py,g:Oy,G:Sy,H:Ay,I:Ay,j:$y,L:Iy,m:My,M:ky,p:function(t,e,n){var r=c.exec(e.slice(n));return r?(t.p=f.get(r[0].toLowerCase()),n+r[0].length):-1},q:Ey,Q:Ry,s:jy,S:Cy,u:vy,U:yy,V:_y,w:by,W:wy,x:function(t,e,r){return x(t,n,e,r)},X:function(t,e,n){return x(t,r,e,n)},y:Oy,Y:Sy,Z:xy,"%":Ny};function S(t,e){return function(n){var r,i,o,a=[],u=-1,s=0,c=t.length;for(n instanceof Date||(n=new Date(+n));++u53)return null;"w"in o||(o.w=1),"Z"in o?(i=(r=ey(ny(o.y,0,1))).getUTCDay(),r=i>4||0===i?Rv.ceil(r):Rv(r),r=Yv.offset(r,7*(o.V-1)),o.y=r.getUTCFullYear(),o.m=r.getUTCMonth(),o.d=r.getUTCDate()+(o.w+6)%7):(i=(r=ty(ny(o.y,0,1))).getDay(),r=i>4||0===i?ov.ceil(r):ov(r),r=yv.offset(r,7*(o.V-1)),o.y=r.getFullYear(),o.m=r.getMonth(),o.d=r.getDate()+(o.w+6)%7)}else("W"in o||"U"in o)&&("w"in o||(o.w="u"in o?o.u%7:"W"in o?1:0),i="Z"in o?ey(ny(o.y,0,1)).getUTCDay():ty(ny(o.y,0,1)).getDay(),o.m=0,o.d="W"in o?(o.w+6)%7+7*o.W-(i+5)%7:o.w+7*o.U-(i+6)%7);return"Z"in o?(o.H+=o.Z/100|0,o.M+=o.Z%100,ey(o)):ty(o)}}function x(t,e,n,r){for(var i,o,a=0,u=e.length,s=n.length;a=s)return-1;if(37===(i=e.charCodeAt(a++))){if(i=e.charAt(a++),!(o=w[i in cy?e.charAt(a++):i])||(r=o(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}return y.x=S(n,y),y.X=S(r,y),y.c=S(e,y),_.x=S(n,_),_.X=S(r,_),_.c=S(e,_),{format:function(t){var e=S(t+="",y);return e.toString=function(){return t},e},parse:function(t){var e=O(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=S(t+="",_);return e.toString=function(){return t},e},utcParse:function(t){var e=O(t+="",!0);return e.toString=function(){return t},e}}}var iy,oy,ay,uy,sy,cy={"-":"",_:" ",0:"0"},fy=/^\s*\d+/,ly=/^%/,dy=/[\\^$*+?|[\]().{}]/g;function hy(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o68?1900:2e3),n+r[0].length):-1}function xy(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Ey(t,e,n){var r=fy.exec(e.slice(n,n+1));return r?(t.q=3*r[0]-3,n+r[0].length):-1}function My(t,e,n){var r=fy.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Ty(t,e,n){var r=fy.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function $y(t,e,n){var r=fy.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function Ay(t,e,n){var r=fy.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function ky(t,e,n){var r=fy.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function Cy(t,e,n){var r=fy.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function Iy(t,e,n){var r=fy.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function Py(t,e,n){var r=fy.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Ny(t,e,n){var r=ly.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function Ry(t,e,n){var r=fy.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function jy(t,e,n){var r=fy.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function Dy(t,e){return hy(t.getDate(),e,2)}function Ly(t,e){return hy(t.getHours(),e,2)}function Fy(t,e){return hy(t.getHours()%12||12,e,2)}function By(t,e){return hy(1+yv.count(Gb(t),t),e,3)}function Uy(t,e){return hy(t.getMilliseconds(),e,3)}function zy(t,e){return Uy(t,e)+"000"}function Hy(t,e){return hy(t.getMonth()+1,e,2)}function Vy(t,e){return hy(t.getMinutes(),e,2)}function qy(t,e){return hy(t.getSeconds(),e,2)}function Wy(t){var e=t.getDay();return 0===e?7:e}function Gy(t,e){return hy(iv.count(Gb(t)-1,t),e,2)}function Ky(t){var e=t.getDay();return e>=4||0===e?sv(t):sv.ceil(t)}function Yy(t,e){return t=Ky(t),hy(sv.count(Gb(t),t)+(4===Gb(t).getDay()),e,2)}function Zy(t){return t.getDay()}function Qy(t,e){return hy(ov.count(Gb(t)-1,t),e,2)}function Xy(t,e){return hy(t.getFullYear()%100,e,2)}function Jy(t,e){return hy((t=Ky(t)).getFullYear()%100,e,2)}function t_(t,e){return hy(t.getFullYear()%1e4,e,4)}function e_(t,e){var n=t.getDay();return hy((t=n>=4||0===n?sv(t):sv.ceil(t)).getFullYear()%1e4,e,4)}function n_(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+hy(e/60|0,"0",2)+hy(e%60,"0",2)}function r_(t,e){return hy(t.getUTCDate(),e,2)}function i_(t,e){return hy(t.getUTCHours(),e,2)}function o_(t,e){return hy(t.getUTCHours()%12||12,e,2)}function a_(t,e){return hy(1+Yv.count(Xv(t),t),e,3)}function u_(t,e){return hy(t.getUTCMilliseconds(),e,3)}function s_(t,e){return u_(t,e)+"000"}function c_(t,e){return hy(t.getUTCMonth()+1,e,2)}function f_(t,e){return hy(t.getUTCMinutes(),e,2)}function l_(t,e){return hy(t.getUTCSeconds(),e,2)}function d_(t){var e=t.getUTCDay();return 0===e?7:e}function h_(t,e){return hy(Nv.count(Xv(t)-1,t),e,2)}function p_(t){var e=t.getUTCDay();return e>=4||0===e?Lv(t):Lv.ceil(t)}function g_(t,e){return t=p_(t),hy(Lv.count(Xv(t),t)+(4===Xv(t).getUTCDay()),e,2)}function m_(t){return t.getUTCDay()}function b_(t,e){return hy(Rv.count(Xv(t)-1,t),e,2)}function v_(t,e){return hy(t.getUTCFullYear()%100,e,2)}function y_(t,e){return hy((t=p_(t)).getUTCFullYear()%100,e,2)}function __(t,e){return hy(t.getUTCFullYear()%1e4,e,4)}function w_(t,e){var n=t.getUTCDay();return hy((t=n>=4||0===n?Lv(t):Lv.ceil(t)).getUTCFullYear()%1e4,e,4)}function S_(){return"+0000"}function O_(){return"%"}function x_(t){return+t}function E_(t){return Math.floor(+t/1e3)}function M_(t){return iy=ry(t),oy=iy.format,ay=iy.parse,uy=iy.utcFormat,sy=iy.utcParse,iy}M_({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var T_=1e3,$_=6e4,A_=36e5,k_=864e5,C_=2592e6,I_=31536e6;function P_(t){return new Date(t)}function N_(t){return t instanceof Date?+t:+new Date(+t)}function R_(t,e,n,r,i,a,u,s,c){var f=hb(),l=f.invert,d=f.domain,h=c(".%L"),p=c(":%S"),g=c("%I:%M"),m=c("%I %p"),b=c("%a %d"),v=c("%b %d"),y=c("%B"),_=c("%Y"),w=[[u,1,T_],[u,5,5e3],[u,15,15e3],[u,30,3e4],[a,1,$_],[a,5,3e5],[a,15,9e5],[a,30,18e5],[i,1,A_],[i,3,108e5],[i,6,216e5],[i,12,432e5],[r,1,k_],[r,2,1728e5],[n,1,6048e5],[e,1,C_],[e,3,7776e6],[t,1,I_]];function S(o){return(u(o)1)&&(t-=Math.floor(t));var e=Math.abs(t-.5);return OS.h=360*t-100,OS.s=1.5-1.5*e,OS.l=.8-.9*e,OS+""},ES=gr(),MS=Math.PI/3,TS=2*Math.PI/3,$S=function(t){var e;return t=(.5-t)*Math.PI,ES.r=255*(e=Math.sin(t))*e,ES.g=255*(e=Math.sin(t+MS))*e,ES.b=255*(e=Math.sin(t+TS))*e,ES+""},AS=function(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+t*(1172.33-t*(10793.56-t*(33300.12-t*(38394.49-14825.05*t)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+t*(557.33+t*(1225.33-t*(3574.96-t*(1073.77+707.56*t)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+t*(3211.1-t*(15327.97-t*(27814-t*(22569.18-6838.66*t)))))))+")"};function kS(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}var CS=kS(uw("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),IS=kS(uw("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),PS=kS(uw("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),NS=kS(uw("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921")),RS=function(t){return zn(En(t).call(document.documentElement))},jS=0;function DS(){return new LS}function LS(){this._="@"+(++jS).toString(36)}LS.prototype=DS.prototype={constructor:LS,get:function(t){for(var e=this._;!(e in t);)if(!(t=t.parentNode))return;return t[e]},set:function(t,e){return t[this._]=e},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}};var FS=function(t,e){return t.target&&(t=Zr(t),void 0===e&&(e=t.currentTarget),t=t.touches||[t]),Array.from(t,(function(t){return Qr(t,e)}))},BS=function(t){return"string"===typeof t?new Fn([document.querySelectorAll(t)],[document.documentElement]):new Fn([null==t?[]:Te(t)],Ln)},US=function(t){return function(){return t}},zS=Math.abs,HS=Math.atan2,VS=Math.cos,qS=Math.max,WS=Math.min,GS=Math.sin,KS=Math.sqrt,YS=1e-12,ZS=Math.PI,QS=ZS/2,XS=2*ZS;function JS(t){return t>1?0:t<-1?ZS:Math.acos(t)}function tO(t){return t>=1?QS:t<=-1?-QS:Math.asin(t)}function eO(t){return t.innerRadius}function nO(t){return t.outerRadius}function rO(t){return t.startAngle}function iO(t){return t.endAngle}function oO(t){return t&&t.padAngle}function aO(t,e,n,r,i,o,a,u){var s=n-t,c=r-e,f=a-i,l=u-o,d=l*s-f*c;if(!(d*dk*k+C*C&&(x=M,E=T),{cx:x,cy:E,x01:-f,y01:-l,x11:x*(i/w-1),y11:E*(i/w-1)}}var sO=function(){var t=eO,e=nO,n=US(0),r=null,i=rO,o=iO,a=oO,u=null;function s(){var s,c,f=+t.apply(this,arguments),l=+e.apply(this,arguments),d=i.apply(this,arguments)-QS,h=o.apply(this,arguments)-QS,p=zS(h-d),g=h>d;if(u||(u=s=da()),lYS)if(p>XS-YS)u.moveTo(l*VS(d),l*GS(d)),u.arc(0,0,l,d,h,!g),f>YS&&(u.moveTo(f*VS(h),f*GS(h)),u.arc(0,0,f,h,d,g));else{var m,b,v=d,y=h,_=d,w=h,S=p,O=p,x=a.apply(this,arguments)/2,E=x>YS&&(r?+r.apply(this,arguments):KS(f*f+l*l)),M=WS(zS(l-f)/2,+n.apply(this,arguments)),T=M,$=M;if(E>YS){var A=tO(E/f*GS(x)),k=tO(E/l*GS(x));(S-=2*A)>YS?(_+=A*=g?1:-1,w-=A):(S=0,_=w=(d+h)/2),(O-=2*k)>YS?(v+=k*=g?1:-1,y-=k):(O=0,v=y=(d+h)/2)}var C=l*VS(v),I=l*GS(v),P=f*VS(w),N=f*GS(w);if(M>YS){var R,j=l*VS(y),D=l*GS(y),L=f*VS(_),F=f*GS(_);if(pYS?$>YS?(m=uO(L,F,C,I,l,$,g),b=uO(j,D,P,N,l,$,g),u.moveTo(m.cx+m.x01,m.cy+m.y01),$YS&&S>YS?T>YS?(m=uO(P,N,j,D,f,-T,g),b=uO(C,I,L,F,f,-T,g),u.lineTo(m.cx+m.x01,m.cy+m.y01),T=f;--l)u.point(m[l],b[l]);u.lineEnd(),u.areaEnd()}g&&(m[c]=+t(d,c,s),b[c]=+e(d,c,s),u.point(r?+r(d,c,s):m[c],n?+n(d,c,s):b[c]))}if(h)return u=null,h+""||null}function c(){return gO().defined(i).curve(a).context(o)}return t="function"===typeof t?t:void 0===t?hO:US(+t),e="function"===typeof e?e:US(void 0===e?0:+e),n="function"===typeof n?n:void 0===n?pO:US(+n),s.x=function(e){return arguments.length?(t="function"===typeof e?e:US(+e),r=null,s):t},s.x0=function(e){return arguments.length?(t="function"===typeof e?e:US(+e),s):t},s.x1=function(t){return arguments.length?(r=null==t?null:"function"===typeof t?t:US(+t),s):r},s.y=function(t){return arguments.length?(e="function"===typeof t?t:US(+t),n=null,s):e},s.y0=function(t){return arguments.length?(e="function"===typeof t?t:US(+t),s):e},s.y1=function(t){return arguments.length?(n=null==t?null:"function"===typeof t?t:US(+t),s):n},s.lineX0=s.lineY0=function(){return c().x(t).y(e)},s.lineY1=function(){return c().x(t).y(n)},s.lineX1=function(){return c().x(r).y(e)},s.defined=function(t){return arguments.length?(i="function"===typeof t?t:US(!!t),s):i},s.curve=function(t){return arguments.length?(a=t,null!=o&&(u=a(o)),s):a},s.context=function(t){return arguments.length?(null==t?o=u=null:u=a(o=t),s):o},s},bO=function(t,e){return et?1:e>=t?0:NaN},vO=function(t){return t},yO=function(){var t=vO,e=bO,n=null,r=US(0),i=US(XS),o=US(0);function a(a){var u,s,c,f,l,d=(a=fO(a)).length,h=0,p=new Array(d),g=new Array(d),m=+r.apply(this,arguments),b=Math.min(XS,Math.max(-XS,i.apply(this,arguments)-m)),v=Math.min(Math.abs(b)/d,o.apply(this,arguments)),y=v*(b<0?-1:1);for(u=0;u0&&(h+=l);for(null!=e?p.sort((function(t,n){return e(g[t],g[n])})):null!=n&&p.sort((function(t,e){return n(a[t],a[e])})),u=0,c=h?(b-d*y)/h:0;u0?l*c:0)+y,g[s]={data:a[s],index:u,value:l,startAngle:m,endAngle:f,padAngle:v};return g}return a.value=function(e){return arguments.length?(t="function"===typeof e?e:US(+e),a):t},a.sortValues=function(t){return arguments.length?(e=t,n=null,a):e},a.sort=function(t){return arguments.length?(n=t,e=null,a):n},a.startAngle=function(t){return arguments.length?(r="function"===typeof t?t:US(+t),a):r},a.endAngle=function(t){return arguments.length?(i="function"===typeof t?t:US(+t),a):i},a.padAngle=function(t){return arguments.length?(o="function"===typeof t?t:US(+t),a):o},a},_O=SO(dO);function wO(t){this._curve=t}function SO(t){function e(e){return new wO(t(e))}return e._curve=t,e}function OO(t){var e=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?e(SO(t)):e()._curve},t}wO.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};var xO=function(){return OO(gO().curve(_O))},EO=function(){var t=mO().curve(_O),e=t.curve,n=t.lineX0,r=t.lineX1,i=t.lineY0,o=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return OO(n())},delete t.lineX0,t.lineEndAngle=function(){return OO(r())},delete t.lineX1,t.lineInnerRadius=function(){return OO(i())},delete t.lineY0,t.lineOuterRadius=function(){return OO(o())},delete t.lineY1,t.curve=function(t){return arguments.length?e(SO(t)):e()._curve},t},MO=function(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]};function TO(t){return t.source}function $O(t){return t.target}function AO(t){var e=TO,n=$O,r=hO,i=pO,o=null;function a(){var a,u=cO.call(arguments),s=e.apply(this,u),c=n.apply(this,u);if(o||(o=a=da()),t(o,+r.apply(this,(u[0]=s,u)),+i.apply(this,u),+r.apply(this,(u[0]=c,u)),+i.apply(this,u)),a)return o=null,a+""||null}return a.source=function(t){return arguments.length?(e=t,a):e},a.target=function(t){return arguments.length?(n=t,a):n},a.x=function(t){return arguments.length?(r="function"===typeof t?t:US(+t),a):r},a.y=function(t){return arguments.length?(i="function"===typeof t?t:US(+t),a):i},a.context=function(t){return arguments.length?(o=null==t?null:t,a):o},a}function kO(t,e,n,r,i){t.moveTo(e,n),t.bezierCurveTo(e=(e+r)/2,n,e,i,r,i)}function CO(t,e,n,r,i){t.moveTo(e,n),t.bezierCurveTo(e,n=(n+i)/2,r,n,r,i)}function IO(t,e,n,r,i){var o=MO(e,n),a=MO(e,n=(n+i)/2),u=MO(r,n),s=MO(r,i);t.moveTo(o[0],o[1]),t.bezierCurveTo(a[0],a[1],u[0],u[1],s[0],s[1])}function PO(){return AO(kO)}function NO(){return AO(CO)}function RO(){var t=AO(IO);return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t}var jO={draw:function(t,e){var n=Math.sqrt(e/ZS);t.moveTo(n,0),t.arc(0,0,n,0,XS)}},DO={draw:function(t,e){var n=Math.sqrt(e/5)/2;t.moveTo(-3*n,-n),t.lineTo(-n,-n),t.lineTo(-n,-3*n),t.lineTo(n,-3*n),t.lineTo(n,-n),t.lineTo(3*n,-n),t.lineTo(3*n,n),t.lineTo(n,n),t.lineTo(n,3*n),t.lineTo(-n,3*n),t.lineTo(-n,n),t.lineTo(-3*n,n),t.closePath()}},LO=Math.sqrt(1/3),FO=2*LO,BO={draw:function(t,e){var n=Math.sqrt(e/FO),r=n*LO;t.moveTo(0,-n),t.lineTo(r,0),t.lineTo(0,n),t.lineTo(-r,0),t.closePath()}},UO=Math.sin(ZS/10)/Math.sin(7*ZS/10),zO=Math.sin(XS/10)*UO,HO=-Math.cos(XS/10)*UO,VO={draw:function(t,e){var n=Math.sqrt(.8908130915292852*e),r=zO*n,i=HO*n;t.moveTo(0,-n),t.lineTo(r,i);for(var o=1;o<5;++o){var a=XS*o/5,u=Math.cos(a),s=Math.sin(a);t.lineTo(s*n,-u*n),t.lineTo(u*r-s*i,s*r+u*i)}t.closePath()}},qO={draw:function(t,e){var n=Math.sqrt(e),r=-n/2;t.rect(r,r,n,n)}},WO=Math.sqrt(3),GO={draw:function(t,e){var n=-Math.sqrt(e/(3*WO));t.moveTo(0,2*n),t.lineTo(-WO*n,-n),t.lineTo(WO*n,-n),t.closePath()}},KO=-.5,YO=Math.sqrt(3)/2,ZO=1/Math.sqrt(12),QO=3*(ZO/2+1),XO={draw:function(t,e){var n=Math.sqrt(e/QO),r=n/2,i=n*ZO,o=r,a=n*ZO+n,u=-o,s=a;t.moveTo(r,i),t.lineTo(o,a),t.lineTo(u,s),t.lineTo(KO*r-YO*i,YO*r+KO*i),t.lineTo(KO*o-YO*a,YO*o+KO*a),t.lineTo(KO*u-YO*s,YO*u+KO*s),t.lineTo(KO*r+YO*i,KO*i-YO*r),t.lineTo(KO*o+YO*a,KO*a-YO*o),t.lineTo(KO*u+YO*s,KO*s-YO*u),t.closePath()}},JO=[jO,DO,BO,qO,VO,GO,XO],tx=function(t,e){var n=null;function r(){var r;if(n||(n=r=da()),t.apply(this,arguments).draw(n,+e.apply(this,arguments)),r)return n=null,r+""||null}return t="function"===typeof t?t:US(t||jO),e="function"===typeof e?e:US(void 0===e?64:+e),r.type=function(e){return arguments.length?(t="function"===typeof e?e:US(e),r):t},r.size=function(t){return arguments.length?(e="function"===typeof t?t:US(+t),r):e},r.context=function(t){return arguments.length?(n=null==t?null:t,r):n},r},ex=function(){};function nx(t,e,n){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+n)/6)}function rx(t){this._context=t}rx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:nx(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:nx(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};var ix=function(t){return new rx(t)};function ox(t){this._context=t}ox.prototype={areaStart:ex,areaEnd:ex,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:nx(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};var ax=function(t){return new ox(t)};function ux(t){this._context=t}ux.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:nx(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};var sx=function(t){return new ux(t)};function cx(t,e){this._basis=new rx(t),this._beta=e}cx.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,n=t.length-1;if(n>0)for(var r,i=t[0],o=e[0],a=t[n]-i,u=e[n]-o,s=-1;++s<=n;)r=s/n,this._basis.point(this._beta*t[s]+(1-this._beta)*(i+r*a),this._beta*e[s]+(1-this._beta)*(o+r*u));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};var fx=function t(e){function n(t){return 1===e?new rx(t):new cx(t,e)}return n.beta=function(e){return t(+e)},n}(.85);function lx(t,e,n){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-n),t._x2,t._y2)}function dx(t,e){this._context=t,this._k=(1-e)/6}dx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:lx(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:lx(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var hx=function t(e){function n(t){return new dx(t,e)}return n.tension=function(e){return t(+e)},n}(0);function px(t,e){this._context=t,this._k=(1-e)/6}px.prototype={areaStart:ex,areaEnd:ex,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:lx(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var gx=function t(e){function n(t){return new px(t,e)}return n.tension=function(e){return t(+e)},n}(0);function mx(t,e){this._context=t,this._k=(1-e)/6}mx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:lx(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var bx=function t(e){function n(t){return new mx(t,e)}return n.tension=function(e){return t(+e)},n}(0);function vx(t,e,n){var r=t._x1,i=t._y1,o=t._x2,a=t._y2;if(t._l01_a>YS){var u=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,s=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*u-t._x0*t._l12_2a+t._x2*t._l01_2a)/s,i=(i*u-t._y0*t._l12_2a+t._y2*t._l01_2a)/s}if(t._l23_a>YS){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,f=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*c+t._x1*t._l23_2a-e*t._l12_2a)/f,a=(a*c+t._y1*t._l23_2a-n*t._l12_2a)/f}t._context.bezierCurveTo(r,i,o,a,t._x2,t._y2)}function yx(t,e){this._context=t,this._alpha=e}yx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:vx(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var _x=function t(e){function n(t){return e?new yx(t,e):new dx(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function wx(t,e){this._context=t,this._alpha=e}wx.prototype={areaStart:ex,areaEnd:ex,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:vx(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Sx=function t(e){function n(t){return e?new wx(t,e):new px(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function Ox(t,e){this._context=t,this._alpha=e}Ox.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:vx(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var xx=function t(e){function n(t){return e?new Ox(t,e):new mx(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function Ex(t){this._context=t}Ex.prototype={areaStart:ex,areaEnd:ex,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))}};var Mx=function(t){return new Ex(t)};function Tx(t){return t<0?-1:1}function $x(t,e,n){var r=t._x1-t._x0,i=e-t._x1,o=(t._y1-t._y0)/(r||i<0&&-0),a=(n-t._y1)/(i||r<0&&-0),u=(o*i+a*r)/(r+i);return(Tx(o)+Tx(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(u))||0}function Ax(t,e){var n=t._x1-t._x0;return n?(3*(t._y1-t._y0)/n-e)/2:e}function kx(t,e,n){var r=t._x0,i=t._y0,o=t._x1,a=t._y1,u=(o-r)/3;t._context.bezierCurveTo(r+u,i+u*e,o-u,a-u*n,o,a)}function Cx(t){this._context=t}function Ix(t){this._context=new Px(t)}function Px(t){this._context=t}function Nx(t){return new Cx(t)}function Rx(t){return new Ix(t)}function jx(t){this._context=t}function Dx(t){var e,n,r=t.length-1,i=new Array(r),o=new Array(r),a=new Array(r);for(i[0]=0,o[0]=2,a[0]=t[0]+2*t[1],e=1;e=0;--e)i[e]=(a[e]-i[e+1])/o[e];for(o[r-1]=(t[r]+i[r-1])/2,e=0;e=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var n=this._x*(1-this._t)+t*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,e)}}this._x=t,this._y=e}};var Bx=function(t){return new Fx(t,.5)};function Ux(t){return new Fx(t,0)}function zx(t){return new Fx(t,1)}var Hx=function(t,e){if((i=t.length)>1)for(var n,r,i,o=1,a=t[e[0]],u=a.length;o=0;)n[e]=e;return n};function qx(t,e){return t[e]}function Wx(t){var e=[];return e.key=t,e}var Gx=function(){var t=US([]),e=Vx,n=Hx,r=qx;function i(i){var o,a,u,c=Array.from(t.apply(this,arguments),Wx),f=c.length,l=-1,d=Object(s.a)(i);try{for(d.s();!(u=d.n()).done;){var h=u.value;for(o=0,++l;o0){for(var n,r,i,o=0,a=t[0].length;o0)for(var n,r,i,o,a,u,s=0,c=t[e[0]].length;s0?(r[0]=o,r[1]=o+=i):i<0?(r[1]=a,r[0]=a+=i):(r[0]=0,r[1]=i)},Zx=function(t,e){if((n=t.length)>0){for(var n,r=0,i=t[e[0]],o=i.length;r0&&(r=(n=t[e[0]]).length)>0){for(var n,r,i,o=0,a=1;ao&&(o=e,r=n);return r}var tE=function(t){var e=t.map(eE);return Vx(t).sort((function(t,n){return e[t]-e[n]}))};function eE(t){for(var e,n=0,r=-1,i=t.length;++rr?(r+i)/2:Math.min(0,r)||Math.max(0,i),a>o?(o+a)/2:Math.min(0,o)||Math.max(0,a))}var SE=function(){var t,e,n,r=mE,i=bE,o=wE,a=yE,u=_E,s=[0,1/0],c=[[-1/0,-1/0],[1/0,1/0]],f=250,l=fm,d=Oe("start","zoom","end"),h=500,p=0,g=10;function m(t){t.property("__zoom",vE).on("wheel.zoom",O).on("mousedown.zoom",x).on("dblclick.zoom",E).filter(u).on("touchstart.zoom",M).on("touchmove.zoom",T).on("touchend.zoom touchcancel.zoom",$).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function b(t,e){return(e=Math.max(s[0],Math.min(s[1],e)))===t.k?t:new lE(e,t.x,t.y)}function v(t,e,n){var r=e[0]-n[0]*t.k,i=e[1]-n[1]*t.k;return r===t.x&&i===t.y?t:new lE(t.k,r,i)}function y(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function _(t,e,n,r){t.on("start.zoom",(function(){w(this,arguments).event(r).start()})).on("interrupt.zoom end.zoom",(function(){w(this,arguments).event(r).end()})).tween("zoom",(function(){var t=this,o=arguments,a=w(t,o).event(r),u=i.apply(t,o),s=null==n?y(u):"function"===typeof n?n.apply(t,o):n,c=Math.max(u[1][0]-u[0][0],u[1][1]-u[0][1]),f=t.__zoom,d="function"===typeof e?e.apply(t,o):e,h=l(f.invert(s).concat(c/f.k),d.invert(s).concat(c/d.k));return function(t){if(1===t)t=d;else{var e=h(t),n=c/e[2];t=new lE(n,s[0]-e[0]*n,s[1]-e[1]*n)}a.zoom(null,t)}}))}function w(t,e,n){return!n&&t.__zooming||new S(t,e)}function S(t,e){this.that=t,this.args=e,this.active=0,this.sourceEvent=null,this.extent=i.apply(t,e),this.taps=0}function O(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),i=1;i1?e-1:0),a=1;ap}u.event(t).zoom("mouse",o(v(u.that.__zoom,u.mouse[0]=Qr(t,l),u.mouse[1]),u.extent,c))}function m(t){s.on("mousemove.zoom mouseup.zoom",null),Wn(t.view,u.moved),gE(t),u.event(t).end()}}function E(t){for(var e=arguments.length,n=new Array(e>1?e-1:0),a=1;a0?zn(this).transition().duration(f).call(_,h,s,t):zn(this).call(m.transform,h,s,t)}}function M(n){for(var i=arguments.length,o=new Array(i>1?i-1:0),a=1;a1?e-1:0),r=1;r1?r-1:0),o=1;o=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|t}function p(t,e){if(s.isBuffer(t))return t.length;if("undefined"!==typeof ArrayBuffer&&"function"===typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!==typeof t&&(t=""+t);var n=t.length;if(0===n)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return U(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return z(t).length;default:if(r)return U(t).length;e=(""+e).toLowerCase(),r=!0}}function g(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return k(this,e,n);case"utf8":case"utf-8":return M(this,e,n);case"ascii":return $(this,e,n);case"latin1":case"binary":return A(this,e,n);case"base64":return E(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function m(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function b(t,e,n,r,i){if(0===t.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"===typeof e&&(e=s.from(e,r)),s.isBuffer(e))return 0===e.length?-1:v(t,e,n,r,i);if("number"===typeof e)return e&=255,s.TYPED_ARRAY_SUPPORT&&"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):v(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function v(t,e,n,r,i){var o,a=1,u=t.length,s=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;a=2,u/=2,s/=2,n/=2}function c(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(i){var f=-1;for(o=n;ou&&(n=u-s),o=n;o>=0;o--){for(var l=!0,d=0;di&&(r=i):r=i;var o=e.length;if(o%2!==0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a>8,i=n%256,o.push(i),o.push(r);return o}(e,t.length-n),t,n,r)}function E(t,e,n){return 0===e&&n===t.length?r.fromByteArray(t):r.fromByteArray(t.slice(e,n))}function M(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:c>223?3:c>191?2:1;if(i+l<=n)switch(l){case 1:c<128&&(f=c);break;case 2:128===(192&(o=t[i+1]))&&(s=(31&c)<<6|63&o)>127&&(f=s);break;case 3:o=t[i+1],a=t[i+2],128===(192&o)&&128===(192&a)&&(s=(15&c)<<12|(63&o)<<6|63&a)>2047&&(s<55296||s>57343)&&(f=s);break;case 4:o=t[i+1],a=t[i+2],u=t[i+3],128===(192&o)&&128===(192&a)&&128===(192&u)&&(s=(15&c)<<18|(63&o)<<12|(63&a)<<6|63&u)>65535&&s<1114112&&(f=s)}null===f?(f=65533,l=1):f>65535&&(f-=65536,r.push(f>>>10&1023|55296),f=56320|1023&f),r.push(f),i+=l}return function(t){var e=t.length;if(e<=T)return String.fromCharCode.apply(String,t);var n="",r=0;for(;r0&&(t=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(t+=" ... ")),""},s.prototype.compare=function(t,e,n,r,i){if(!s.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0),u=Math.min(o,a),c=this.slice(r,i),f=t.slice(e,n),l=0;li)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return y(this,t,e,n);case"utf8":case"utf-8":return _(this,t,e,n);case"ascii":return w(this,t,e,n);case"latin1":case"binary":return S(this,t,e,n);case"base64":return O(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,e,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},s.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var T=4096;function $(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",o=e;on)throw new RangeError("Trying to access beyond buffer length")}function P(t,e,n,r,i,o){if(!s.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function N(t,e,n,r){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-n,2);i>>8*(r?i:1-i)}function R(t,e,n,r){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-n,4);i>>8*(r?i:3-i)&255}function j(t,e,n,r,i,o){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function D(t,e,n,r,o){return o||j(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function L(t,e,n,r,o){return o||j(t,0,n,8),i.write(t,e,n,r,52,8),n+8}s.prototype.slice=function(t,e){var n,r=this.length;if((t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e0&&(i*=256);)r+=this[t+--e]*i;return r},s.prototype.readUInt8=function(t,e){return e||I(t,1,this.length),this[t]},s.prototype.readUInt16LE=function(t,e){return e||I(t,2,this.length),this[t]|this[t+1]<<8},s.prototype.readUInt16BE=function(t,e){return e||I(t,2,this.length),this[t]<<8|this[t+1]},s.prototype.readUInt32LE=function(t,e){return e||I(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},s.prototype.readUInt32BE=function(t,e){return e||I(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},s.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||I(t,e,this.length);for(var r=this[t],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*e)),r},s.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||I(t,e,this.length);for(var r=e,i=1,o=this[t+--r];r>0&&(i*=256);)o+=this[t+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},s.prototype.readInt8=function(t,e){return e||I(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},s.prototype.readInt16LE=function(t,e){e||I(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},s.prototype.readInt16BE=function(t,e){e||I(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},s.prototype.readInt32LE=function(t,e){return e||I(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},s.prototype.readInt32BE=function(t,e){return e||I(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},s.prototype.readFloatLE=function(t,e){return e||I(t,4,this.length),i.read(this,t,!0,23,4)},s.prototype.readFloatBE=function(t,e){return e||I(t,4,this.length),i.read(this,t,!1,23,4)},s.prototype.readDoubleLE=function(t,e){return e||I(t,8,this.length),i.read(this,t,!0,52,8)},s.prototype.readDoubleBE=function(t,e){return e||I(t,8,this.length),i.read(this,t,!1,52,8)},s.prototype.writeUIntLE=function(t,e,n,r){(t=+t,e|=0,n|=0,r)||P(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+n},s.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,1,255,0),s.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},s.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,2,65535,0),s.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):N(this,t,e,!0),e+2},s.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,2,65535,0),s.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):N(this,t,e,!1),e+2},s.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,4,4294967295,0),s.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):R(this,t,e,!0),e+4},s.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,4,4294967295,0),s.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):R(this,t,e,!1),e+4},s.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);P(this,t,e,n,i-1,-i)}var o=0,a=1,u=0;for(this[e]=255&t;++o>0)-u&255;return e+n},s.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);P(this,t,e,n,i-1,-i)}var o=n-1,a=1,u=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===u&&0!==this[e+o+1]&&(u=1),this[e+o]=(t/a>>0)-u&255;return e+n},s.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,1,127,-128),s.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},s.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,2,32767,-32768),s.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):N(this,t,e,!0),e+2},s.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,2,32767,-32768),s.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):N(this,t,e,!1),e+2},s.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,4,2147483647,-2147483648),s.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):R(this,t,e,!0),e+4},s.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||P(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),s.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):R(this,t,e,!1),e+4},s.prototype.writeFloatLE=function(t,e,n){return D(this,t,e,!0,n)},s.prototype.writeFloatBE=function(t,e,n){return D(this,t,e,!1,n)},s.prototype.writeDoubleLE=function(t,e,n){return L(this,t,e,!0,n)},s.prototype.writeDoubleBE=function(t,e,n){return L(this,t,e,!1,n)},s.prototype.copy=function(t,e,n,r){if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e=0;--i)t[i+e]=this[i+n];else if(o<1e3||!s.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"===typeof t)for(o=e;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;o.push(n)}else if(n<2048){if((e-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function z(t){return r.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(F,"")).length<2)return"";for(;t.length%4!==0;)t+="=";return t}(t))}function H(t,e,n,r){for(var i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}}).call(this,n(59))},function(t,e,n){"use strict";function r(t){if(null===t||!0===t||!1===t)return NaN;var e=Number(t);return isNaN(e)?e:e<0?Math.ceil(e):Math.floor(e)}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";(function(t){n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return s}));var r=n(14),i="Invariant Violation",o=Object.setPrototypeOf,a=void 0===o?function(t,e){return t.__proto__=e,t}:o,u=function(t){function e(n){void 0===n&&(n=i);var r=t.call(this,"number"===typeof n?i+": "+n+" (see https://github.com/apollographql/invariant-packages)":n)||this;return r.framesToPop=1,r.name=i,a(r,e.prototype),r}return Object(r.c)(e,t),e}(Error);function s(t,e){if(!t)throw new u(e)}function c(t){return function(){return console[t].apply(console,arguments)}}!function(t){t.warn=c("warn"),t.error=c("error")}(s||(s={}));var f={env:{}};if("object"===typeof t)f=t;else try{Function("stub","process = stub")(f)}catch(l){}}).call(this,n(69))},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(57);function i(t){return function e(n){return 0===arguments.length||Object(r.a)(n)?e:t.apply(this,arguments)}}},function(t,e,n){var r;!function(i){"use strict";var o,a=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,u=Math.ceil,s=Math.floor,c="[BigNumber Error] ",f=c+"Number primitive has more than 15 significant digits: ",l=1e14,d=14,h=9007199254740991,p=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],g=1e7,m=1e9;function b(t){var e=0|t;return t>0||t===e?e:e-1}function v(t){for(var e,n,r=1,i=t.length,o=t[0]+"";rc^n?1:-1;for(u=(s=i.length)<(c=o.length)?s:c,a=0;ao[a]^n?1:-1;return s==c?0:s>c^n?1:-1}function _(t,e,n,r){if(tn||t!==s(t))throw Error(c+(r||"Argument")+("number"==typeof t?tn?" out of range: ":" not an integer: ":" not a primitive number: ")+String(t))}function w(t){var e=t.c.length-1;return b(t.e/d)==e&&t.c[e]%2!=0}function S(t,e){return(t.length>1?t.charAt(0)+"."+t.slice(1):t)+(e<0?"e":"e+")+e}function O(t,e,n){var r,i;if(e<0){for(i=n+".";++e;i+=n);t=i+t}else if(++e>(r=t.length)){for(i=n,e-=r;--e;i+=n);t+=i}else ek?b.c=b.e=null:t.e=10;l/=10,c++);return void(c>k?b.c=b.e=null:(b.e=c,b.c=[t]))}m=String(t)}else{if(!a.test(m=String(t)))return i(b,m,p);b.s=45==m.charCodeAt(0)?(m=m.slice(1),-1):1}(c=m.indexOf("."))>-1&&(m=m.replace(".","")),(l=m.search(/e/i))>0?(c<0&&(c=l),c+=+m.slice(l+1),m=m.substring(0,l)):c<0&&(c=m.length)}else{if(_(e,2,R.length,"Base"),10==e)return B(b=new j(t),E+b.e+1,M);if(m=String(t),p="number"==typeof t){if(0*t!=0)return i(b,m,p,e);if(b.s=1/t<0?(m=m.slice(1),-1):1,j.DEBUG&&m.replace(/^0\.0*|\./,"").length>15)throw Error(f+t)}else b.s=45===m.charCodeAt(0)?(m=m.slice(1),-1):1;for(n=R.slice(0,e),c=l=0,g=m.length;lc){c=g;continue}}else if(!u&&(m==m.toUpperCase()&&(m=m.toLowerCase())||m==m.toLowerCase()&&(m=m.toUpperCase()))){u=!0,l=-1,c=0;continue}return i(b,String(t),p,e)}p=!1,(c=(m=r(m,e,10,b.s)).indexOf("."))>-1?m=m.replace(".",""):c=m.length}for(l=0;48===m.charCodeAt(l);l++);for(g=m.length;48===m.charCodeAt(--g););if(m=m.slice(l,++g)){if(g-=l,p&&j.DEBUG&&g>15&&(t>h||t!==s(t)))throw Error(f+b.s*t);if((c=c-l-1)>k)b.c=b.e=null;else if(c=$)?S(s,a):O(s,a,"0");else if(o=(t=B(new j(t),e,n)).e,u=(s=v(t.c)).length,1==r||2==r&&(e<=o||o<=T)){for(;uu){if(--e>0)for(s+=".";e--;s+="0");}else if((e+=o-u)>0)for(o+1==u&&(s+=".");e--;s+="0");return t.s<0&&i?"-"+s:s}function L(t,e){for(var n,r=1,i=new j(t[0]);r=10;i/=10,r++);return(n=r+n*d-1)>k?t.c=t.e=null:n=10;c/=10,i++);if((o=e-i)<0)o+=d,a=e,g=(f=m[h=0])/b[i-a-1]%10|0;else if((h=u((o+1)/d))>=m.length){if(!r)break t;for(;m.length<=h;m.push(0));f=g=0,i=1,a=(o%=d)-d+1}else{for(f=c=m[h],i=1;c>=10;c/=10,i++);g=(a=(o%=d)-d+i)<0?0:f/b[i-a-1]%10|0}if(r=r||e<0||null!=m[h+1]||(a<0?f:f%b[i-a-1]),r=n<4?(g||r)&&(0==n||n==(t.s<0?3:2)):g>5||5==g&&(4==n||r||6==n&&(o>0?a>0?f/b[i-a]:0:m[h-1])%10&1||n==(t.s<0?8:7)),e<1||!m[0])return m.length=0,r?(e-=t.e+1,m[0]=b[(d-e%d)%d],t.e=-e||0):m[0]=t.e=0,t;if(0==o?(m.length=h,c=1,h--):(m.length=h+1,c=b[d-o],m[h]=a>0?s(f/b[i-a]%b[a])*c:0),r)for(;;){if(0==h){for(o=1,a=m[0];a>=10;a/=10,o++);for(a=m[0]+=c,c=1;a>=10;a/=10,c++);o!=c&&(t.e++,m[0]==l&&(m[0]=1));break}if(m[h]+=c,m[h]!=l)break;m[h--]=0,c=1}for(o=m.length;0===m[--o];m.pop());}t.e>k?t.c=t.e=null:t.e=$?S(e,n):O(e,n,"0"),t.s<0?"-"+e:e)}return j.clone=t,j.ROUND_UP=0,j.ROUND_DOWN=1,j.ROUND_CEIL=2,j.ROUND_FLOOR=3,j.ROUND_HALF_UP=4,j.ROUND_HALF_DOWN=5,j.ROUND_HALF_EVEN=6,j.ROUND_HALF_CEIL=7,j.ROUND_HALF_FLOOR=8,j.EUCLID=9,j.config=j.set=function(t){var e,n;if(null!=t){if("object"!=typeof t)throw Error(c+"Object expected: "+t);if(t.hasOwnProperty(e="DECIMAL_PLACES")&&(_(n=t[e],0,m,e),E=n),t.hasOwnProperty(e="ROUNDING_MODE")&&(_(n=t[e],0,8,e),M=n),t.hasOwnProperty(e="EXPONENTIAL_AT")&&((n=t[e])&&n.pop?(_(n[0],-m,0,e),_(n[1],0,m,e),T=n[0],$=n[1]):(_(n,-m,m,e),T=-($=n<0?-n:n))),t.hasOwnProperty(e="RANGE"))if((n=t[e])&&n.pop)_(n[0],-m,-1,e),_(n[1],1,m,e),A=n[0],k=n[1];else{if(_(n,-m,m,e),!n)throw Error(c+e+" cannot be zero: "+n);A=-(k=n<0?-n:n)}if(t.hasOwnProperty(e="CRYPTO")){if((n=t[e])!==!!n)throw Error(c+e+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw C=!n,Error(c+"crypto unavailable");C=n}else C=n}if(t.hasOwnProperty(e="MODULO_MODE")&&(_(n=t[e],0,9,e),I=n),t.hasOwnProperty(e="POW_PRECISION")&&(_(n=t[e],0,m,e),P=n),t.hasOwnProperty(e="FORMAT")){if("object"!=typeof(n=t[e]))throw Error(c+e+" not an object: "+n);N=n}if(t.hasOwnProperty(e="ALPHABET")){if("string"!=typeof(n=t[e])||/^.$|[+-.\s]|(.).*\1/.test(n))throw Error(c+e+" invalid: "+n);R=n}}return{DECIMAL_PLACES:E,ROUNDING_MODE:M,EXPONENTIAL_AT:[T,$],RANGE:[A,k],CRYPTO:C,MODULO_MODE:I,POW_PRECISION:P,FORMAT:N,ALPHABET:R}},j.isBigNumber=function(t){if(!t||!0!==t._isBigNumber)return!1;if(!j.DEBUG)return!0;var e,n,r=t.c,i=t.e,o=t.s;t:if("[object Array]"=={}.toString.call(r)){if((1===o||-1===o)&&i>=-m&&i<=m&&i===s(i)){if(0===r[0]){if(0===i&&1===r.length)return!0;break t}if((e=(i+1)%d)<1&&(e+=d),String(r[0]).length==e){for(e=0;e=l||n!==s(n))break t;if(0!==n)return!0}}}else if(null===r&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(c+"Invalid BigNumber: "+t)},j.maximum=j.max=function(){return L(arguments,o.lt)},j.minimum=j.min=function(){return L(arguments,o.gt)},j.random=function(){var t=9007199254740992,e=Math.random()*t&2097151?function(){return s(Math.random()*t)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)};return function(t){var n,r,i,o,a,f=0,l=[],h=new j(x);if(null==t?t=E:_(t,0,m),o=u(t/d),C)if(crypto.getRandomValues){for(n=crypto.getRandomValues(new Uint32Array(o*=2));f>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),n[f]=r[0],n[f+1]=r[1]):(l.push(a%1e14),f+=2);f=o/2}else{if(!crypto.randomBytes)throw C=!1,Error(c+"crypto unavailable");for(n=crypto.randomBytes(o*=7);f=9e15?crypto.randomBytes(7).copy(n,f):(l.push(a%1e14),f+=7);f=o/7}if(!C)for(;f=10;a/=10,f++);fn-1&&(null==a[i+1]&&(a[i+1]=0),a[i+1]+=a[i]/n|0,a[i]%=n)}return a.reverse()}return function(r,i,o,a,u){var s,c,f,l,d,h,p,g,m=r.indexOf("."),b=E,y=M;for(m>=0&&(l=P,P=0,r=r.replace(".",""),h=(g=new j(i)).pow(r.length-m),P=l,g.c=e(O(v(h.c),h.e,"0"),10,o,t),g.e=g.c.length),f=l=(p=e(r,i,o,u?(s=R,t):(s=t,R))).length;0==p[--l];p.pop());if(!p[0])return s.charAt(0);if(m<0?--f:(h.c=p,h.e=f,h.s=a,p=(h=n(h,g,b,y,o)).c,d=h.r,f=h.e),m=p[c=f+b+1],l=o/2,d=d||c<0||null!=p[c+1],d=y<4?(null!=m||d)&&(0==y||y==(h.s<0?3:2)):m>l||m==l&&(4==y||d||6==y&&1&p[c-1]||y==(h.s<0?8:7)),c<1||!p[0])r=d?O(s.charAt(1),-b,s.charAt(0)):s.charAt(0);else{if(p.length=c,d)for(--o;++p[--c]>o;)p[c]=0,c||(++f,p=[1].concat(p));for(l=p.length;!p[--l];);for(m=0,r="";m<=l;r+=s.charAt(p[m++]));r=O(r,f,s.charAt(0))}return r}}(),n=function(){function t(t,e,n){var r,i,o,a,u=0,s=t.length,c=e%g,f=e/g|0;for(t=t.slice();s--;)u=((i=c*(o=t[s]%g)+(r=f*o+(a=t[s]/g|0)*c)%g*g+u)/n|0)+(r/g|0)+f*a,t[s]=i%n;return u&&(t=[u].concat(t)),t}function e(t,e,n,r){var i,o;if(n!=r)o=n>r?1:-1;else for(i=o=0;ie[i]?1:-1;break}return o}function n(t,e,n,r){for(var i=0;n--;)t[n]-=i,i=t[n]1;t.splice(0,1));}return function(r,i,o,a,u){var c,f,h,p,g,m,v,y,_,w,S,O,x,E,M,T,$,A=r.s==i.s?1:-1,k=r.c,C=i.c;if(!k||!k[0]||!C||!C[0])return new j(r.s&&i.s&&(k?!C||k[0]!=C[0]:C)?k&&0==k[0]||!C?0*A:A/0:NaN);for(_=(y=new j(A)).c=[],A=o+(f=r.e-i.e)+1,u||(u=l,f=b(r.e/d)-b(i.e/d),A=A/d|0),h=0;C[h]==(k[h]||0);h++);if(C[h]>(k[h]||0)&&f--,A<0)_.push(1),p=!0;else{for(E=k.length,T=C.length,h=0,A+=2,(g=s(u/(C[0]+1)))>1&&(C=t(C,g,u),k=t(k,g,u),T=C.length,E=k.length),x=T,S=(w=k.slice(0,T)).length;S=u/2&&M++;do{if(g=0,(c=e(C,w,T,S))<0){if(O=w[0],T!=S&&(O=O*u+(w[1]||0)),(g=s(O/M))>1)for(g>=u&&(g=u-1),v=(m=t(C,g,u)).length,S=w.length;1==e(m,w,v,S);)g--,n(m,T=10;A/=10,h++);B(y,o+(y.e=h+f*d-1)+1,a,p)}else y.e=f,y.r=+p;return y}}(),i=function(){var t=/^(-?)0([xbo])(?=\w[\w.]*$)/i,e=/^([^.]+)\.$/,n=/^\.([^.]+)$/,r=/^-?(Infinity|NaN)$/,i=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(o,a,u,s){var f,l=u?a:a.replace(i,"");if(r.test(l))o.s=isNaN(l)?null:l<0?-1:1;else{if(!u&&(l=l.replace(t,(function(t,e,n){return f="x"==(n=n.toLowerCase())?16:"b"==n?2:8,s&&s!=f?t:e})),s&&(f=s,l=l.replace(e,"$1").replace(n,"0.$1")),a!=l))return new j(l,f);if(j.DEBUG)throw Error(c+"Not a"+(s?" base "+s:"")+" number: "+a);o.s=null}o.c=o.e=null}}(),o.absoluteValue=o.abs=function(){var t=new j(this);return t.s<0&&(t.s=1),t},o.comparedTo=function(t,e){return y(this,new j(t,e))},o.decimalPlaces=o.dp=function(t,e){var n,r,i,o=this;if(null!=t)return _(t,0,m),null==e?e=M:_(e,0,8),B(new j(o),t+o.e+1,e);if(!(n=o.c))return null;if(r=((i=n.length-1)-b(this.e/d))*d,i=n[i])for(;i%10==0;i/=10,r--);return r<0&&(r=0),r},o.dividedBy=o.div=function(t,e){return n(this,new j(t,e),E,M)},o.dividedToIntegerBy=o.idiv=function(t,e){return n(this,new j(t,e),0,1)},o.exponentiatedBy=o.pow=function(t,e){var n,r,i,o,a,f,l,h,p=this;if((t=new j(t)).c&&!t.isInteger())throw Error(c+"Exponent not an integer: "+U(t));if(null!=e&&(e=new j(e)),a=t.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!t.c||!t.c[0])return h=new j(Math.pow(+U(p),a?2-w(t):+U(t))),e?h.mod(e):h;if(f=t.s<0,e){if(e.c?!e.c[0]:!e.s)return new j(NaN);(r=!f&&p.isInteger()&&e.isInteger())&&(p=p.mod(e))}else{if(t.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||a&&p.c[1]>=24e7:p.c[0]<8e13||a&&p.c[0]<=9999975e7)))return o=p.s<0&&w(t)?-0:0,p.e>-1&&(o=1/o),new j(f?1/o:o);P&&(o=u(P/d+2))}for(a?(n=new j(.5),f&&(t.s=1),l=w(t)):l=(i=Math.abs(+U(t)))%2,h=new j(x);;){if(l){if(!(h=h.times(p)).c)break;o?h.c.length>o&&(h.c.length=o):r&&(h=h.mod(e))}if(i){if(0===(i=s(i/2)))break;l=i%2}else if(B(t=t.times(n),t.e+1,1),t.e>14)l=w(t);else{if(0===(i=+U(t)))break;l=i%2}p=p.times(p),o?p.c&&p.c.length>o&&(p.c.length=o):r&&(p=p.mod(e))}return r?h:(f&&(h=x.div(h)),e?h.mod(e):o?B(h,P,M,undefined):h)},o.integerValue=function(t){var e=new j(this);return null==t?t=M:_(t,0,8),B(e,e.e+1,t)},o.isEqualTo=o.eq=function(t,e){return 0===y(this,new j(t,e))},o.isFinite=function(){return!!this.c},o.isGreaterThan=o.gt=function(t,e){return y(this,new j(t,e))>0},o.isGreaterThanOrEqualTo=o.gte=function(t,e){return 1===(e=y(this,new j(t,e)))||0===e},o.isInteger=function(){return!!this.c&&b(this.e/d)>this.c.length-2},o.isLessThan=o.lt=function(t,e){return y(this,new j(t,e))<0},o.isLessThanOrEqualTo=o.lte=function(t,e){return-1===(e=y(this,new j(t,e)))||0===e},o.isNaN=function(){return!this.s},o.isNegative=function(){return this.s<0},o.isPositive=function(){return this.s>0},o.isZero=function(){return!!this.c&&0==this.c[0]},o.minus=function(t,e){var n,r,i,o,a=this,u=a.s;if(e=(t=new j(t,e)).s,!u||!e)return new j(NaN);if(u!=e)return t.s=-e,a.plus(t);var s=a.e/d,c=t.e/d,f=a.c,h=t.c;if(!s||!c){if(!f||!h)return f?(t.s=-e,t):new j(h?a:NaN);if(!f[0]||!h[0])return h[0]?(t.s=-e,t):new j(f[0]?a:3==M?-0:0)}if(s=b(s),c=b(c),f=f.slice(),u=s-c){for((o=u<0)?(u=-u,i=f):(c=s,i=h),i.reverse(),e=u;e--;i.push(0));i.reverse()}else for(r=(o=(u=f.length)<(e=h.length))?u:e,u=e=0;e0)for(;e--;f[n++]=0);for(e=l-1;r>u;){if(f[--r]=0;){for(n=0,p=O[i]%_,m=O[i]/_|0,o=i+(a=s);o>i;)n=((c=p*(c=S[--a]%_)+(u=m*c+(f=S[a]/_|0)*p)%_*_+v[o]+n)/y|0)+(u/_|0)+m*f,v[o--]=c%y;v[o]=n}return n?++r:v.splice(0,1),F(t,v,r)},o.negated=function(){var t=new j(this);return t.s=-t.s||null,t},o.plus=function(t,e){var n,r=this,i=r.s;if(e=(t=new j(t,e)).s,!i||!e)return new j(NaN);if(i!=e)return t.s=-e,r.minus(t);var o=r.e/d,a=t.e/d,u=r.c,s=t.c;if(!o||!a){if(!u||!s)return new j(i/0);if(!u[0]||!s[0])return s[0]?t:new j(u[0]?r:0*i)}if(o=b(o),a=b(a),u=u.slice(),i=o-a){for(i>0?(a=o,n=s):(i=-i,n=u),n.reverse();i--;n.push(0));n.reverse()}for((i=u.length)-(e=s.length)<0&&(n=s,s=u,u=n,e=i),i=0;e;)i=(u[--e]=u[e]+s[e]+i)/l|0,u[e]=l===u[e]?0:u[e]%l;return i&&(u=[i].concat(u),++a),F(t,u,a)},o.precision=o.sd=function(t,e){var n,r,i,o=this;if(null!=t&&t!==!!t)return _(t,1,m),null==e?e=M:_(e,0,8),B(new j(o),t,e);if(!(n=o.c))return null;if(r=(i=n.length-1)*d+1,i=n[i]){for(;i%10==0;i/=10,r--);for(i=n[0];i>=10;i/=10,r++);}return t&&o.e+1>r&&(r=o.e+1),r},o.shiftedBy=function(t){return _(t,-9007199254740991,h),this.times("1e"+t)},o.squareRoot=o.sqrt=function(){var t,e,r,i,o,a=this,u=a.c,s=a.s,c=a.e,f=E+4,l=new j("0.5");if(1!==s||!u||!u[0])return new j(!s||s<0&&(!u||u[0])?NaN:u?a:1/0);if(0==(s=Math.sqrt(+U(a)))||s==1/0?(((e=v(u)).length+c)%2==0&&(e+="0"),s=Math.sqrt(+e),c=b((c+1)/2)-(c<0||c%2),r=new j(e=s==1/0?"1e"+c:(e=s.toExponential()).slice(0,e.indexOf("e")+1)+c)):r=new j(s+""),r.c[0])for((s=(c=r.e)+f)<3&&(s=0);;)if(o=r,r=l.times(o.plus(n(a,o,f,1))),v(o.c).slice(0,s)===(e=v(r.c)).slice(0,s)){if(r.e0&&g>0){for(o=g%u||u,l=p.substr(0,o);o0&&(l+=f+p.slice(o)),h&&(l="-"+l)}r=d?l+(n.decimalSeparator||"")+((s=+n.fractionGroupSize)?d.replace(new RegExp("\\d{"+s+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):d):l}return(n.prefix||"")+r+(n.suffix||"")},o.toFraction=function(t){var e,r,i,o,a,u,s,f,l,h,g,m,b=this,y=b.c;if(null!=t&&(!(s=new j(t)).isInteger()&&(s.c||1!==s.s)||s.lt(x)))throw Error(c+"Argument "+(s.isInteger()?"out of range: ":"not an integer: ")+U(s));if(!y)return new j(b);for(e=new j(x),l=r=new j(x),i=f=new j(x),m=v(y),a=e.e=m.length-b.e-1,e.c[0]=p[(u=a%d)<0?d+u:u],t=!t||s.comparedTo(e)>0?a>0?e:l:s,u=k,k=1/0,s=new j(m),f.c[0]=0;h=n(s,e,0,1),1!=(o=r.plus(h.times(i))).comparedTo(t);)r=i,i=o,l=f.plus(h.times(o=l)),f=o,e=s.minus(h.times(o=e)),s=o;return o=n(t.minus(r),i,0,1),f=f.plus(o.times(l)),r=r.plus(o.times(i)),f.s=l.s=b.s,g=n(l,i,a*=2,M).minus(b).abs().comparedTo(n(f,r,a,M).minus(b).abs())<1?[l,i]:[f,r],k=u,g},o.toNumber=function(){return+U(this)},o.toPrecision=function(t,e){return null!=t&&_(t,1,m),D(this,t,e,2)},o.toString=function(t){var e,n=this,i=n.s,o=n.e;return null===o?i?(e="Infinity",i<0&&(e="-"+e)):e="NaN":(null==t?e=o<=T||o>=$?S(v(n.c),o):O(v(n.c),o,"0"):10===t?e=O(v((n=B(new j(n),E+o+1,M)).c),n.e,"0"):(_(t,2,R.length,"Base"),e=r(O(v(n.c),o,"0"),10,t,i,!0)),i<0&&n.c[0]&&(e="-"+e)),e},o.valueOf=o.toJSON=function(){return U(this)},o._isBigNumber=!0,null!=e&&j.set(e),j}()).default=o.BigNumber=o,void 0===(r=function(){return o}.call(e,n,e,t))||(t.exports=r)}()},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(284);function i(t){if("string"!==typeof t)throw new Error(Object(r.a)(7));return t.charAt(0).toUpperCase()+t.slice(1)}},function(t,e,n){t.exports=n(720)},function(t,e,n){"use strict";n.d(e,"g",(function(){return o})),n.d(e,"k",(function(){return a})),n.d(e,"h",(function(){return u})),n.d(e,"b",(function(){return s})),n.d(e,"j",(function(){return c})),n.d(e,"e",(function(){return f})),n.d(e,"f",(function(){return l})),n.d(e,"c",(function(){return d})),n.d(e,"d",(function(){return h})),n.d(e,"a",(function(){return p})),n.d(e,"i",(function(){return g}));var r=n(284);function i(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.min(Math.max(e,t),n)}function o(t){t=t.substr(1);var e=new RegExp(".{1,".concat(t.length>=6?2:1,"}"),"g"),n=t.match(e);return n&&1===n[0].length&&(n=n.map((function(t){return t+t}))),n?"rgb".concat(4===n.length?"a":"","(").concat(n.map((function(t,e){return e<3?parseInt(t,16):Math.round(parseInt(t,16)/255*1e3)/1e3})).join(", "),")"):""}function a(t){if(0===t.indexOf("#"))return t;var e=s(t).values;return"#".concat(e.map((function(t){return function(t){var e=t.toString(16);return 1===e.length?"0".concat(e):e}(t)})).join(""))}function u(t){var e=(t=s(t)).values,n=e[0],r=e[1]/100,i=e[2]/100,o=r*Math.min(i,1-i),a=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(t+n/30)%12;return i-o*Math.max(Math.min(e-3,9-e,1),-1)},u="rgb",f=[Math.round(255*a(0)),Math.round(255*a(8)),Math.round(255*a(4))];return"hsla"===t.type&&(u+="a",f.push(e[3])),c({type:u,values:f})}function s(t){if(t.type)return t;if("#"===t.charAt(0))return s(o(t));var e=t.indexOf("("),n=t.substring(0,e);if(-1===["rgb","rgba","hsl","hsla"].indexOf(n))throw new Error(Object(r.a)(3,t));var i=t.substring(e+1,t.length-1).split(",");return{type:n,values:i=i.map((function(t){return parseFloat(t)}))}}function c(t){var e=t.type,n=t.values;return-1!==e.indexOf("rgb")?n=n.map((function(t,e){return e<3?parseInt(t,10):t})):-1!==e.indexOf("hsl")&&(n[1]="".concat(n[1],"%"),n[2]="".concat(n[2],"%")),"".concat(e,"(").concat(n.join(", "),")")}function f(t,e){var n=l(t),r=l(e);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function l(t){var e="hsl"===(t=s(t)).type?s(u(t)).values:t.values;return e=e.map((function(t){return(t/=255)<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)})),Number((.2126*e[0]+.7152*e[1]+.0722*e[2]).toFixed(3))}function d(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.15;return l(t)>.5?p(t,e):g(t,e)}function h(t,e){return t=s(t),e=i(e),"rgb"!==t.type&&"hsl"!==t.type||(t.type+="a"),t.values[3]=e,c(t)}function p(t,e){if(t=s(t),e=i(e),-1!==t.type.indexOf("hsl"))t.values[2]*=1-e;else if(-1!==t.type.indexOf("rgb"))for(var n=0;n<3;n+=1)t.values[n]*=1-e;return c(t)}function g(t,e){if(t=s(t),e=i(e),-1!==t.type.indexOf("hsl"))t.values[2]+=(100-t.values[2])*e;else if(-1!==t.type.indexOf("rgb"))for(var n=0;n<3;n+=1)t.values[n]+=(255-t.values[n])*e;return c(t)}},function(t,e,n){var r=n(29),i=r.Buffer;function o(t,e){for(var n in t)e[n]=t[n]}function a(t,e,n){return i(t,e,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=r:(o(r,e),e.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(t,e,n){if("number"===typeof t)throw new TypeError("Argument must not be a number");return i(t,e,n)},a.alloc=function(t,e,n){if("number"!==typeof t)throw new TypeError("Argument must be a number");var r=i(t);return void 0!==e?"string"===typeof n?r.fill(e,n):r.fill(e):r.fill(0),r},a.allocUnsafe=function(t){if("number"!==typeof t)throw new TypeError("Argument must be a number");return i(t)},a.allocUnsafeSlow=function(t){if("number"!==typeof t)throw new TypeError("Argument must be a number");return r.SlowBuffer(t)}},function(t,e){"function"===typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},function(t,e,n){"use strict";function r(t,e,n){return(n=n||[]).length>=e?t.apply(null,n.slice(0,e).reverse()):function(){var i=Array.prototype.slice.call(arguments);return r(t,e,n.concat(i))}}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";function r(t,e){return function(){return null}}n.r(e),n.d(e,"chainPropTypes",(function(){return r})),n.d(e,"deepmerge",(function(){return i.a})),n.d(e,"elementAcceptingRef",(function(){return s})),n.d(e,"elementTypeAcceptingRef",(function(){return c})),n.d(e,"exactProp",(function(){return f})),n.d(e,"formatMuiErrorMessage",(function(){return l.a})),n.d(e,"getDisplayName",(function(){return v})),n.d(e,"HTMLElementType",(function(){return y})),n.d(e,"ponyfillGlobal",(function(){return _})),n.d(e,"refType",(function(){return w}));var i=n(393),o=n(13),a=n.n(o);var u=(a.a.element,function(){return null});u.isRequired=(a.a.element.isRequired,function(){return null});var s=u;var c=(o.elementType,function(){return null});n(58),n(4);function f(t){return t}var l=n(284),d=n(135),h=n(103),p=/^\s*function(?:\s|\s*\/\*.*\*\/\s*)+([^(\s/]*)\s*/;function g(t){var e="".concat(t).match(p);return e&&e[1]||""}function m(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return t.displayName||t.name||g(t)||e}function b(t,e,n){var r=m(e);return t.displayName||(""!==r?"".concat(n,"(").concat(r,")"):n)}function v(t){if(null!=t){if("string"===typeof t)return t;if("function"===typeof t)return m(t,"Component");if("object"===Object(d.a)(t))switch(t.$$typeof){case h.ForwardRef:return b(t,t.render,"ForwardRef");case h.Memo:return b(t,t.type,"memo");default:return}}}function y(t,e,n,r,i){return null}var _="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),w=a.a.oneOfType([a.a.func,a.a.object])},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(32),i=n(16),o=n(57);function a(t){return function e(n,a,u){switch(arguments.length){case 0:return e;case 1:return Object(o.a)(n)?e:Object(i.a)((function(e,r){return t(n,e,r)}));case 2:return Object(o.a)(n)&&Object(o.a)(a)?e:Object(o.a)(n)?Object(i.a)((function(e,n){return t(e,a,n)})):Object(o.a)(a)?Object(i.a)((function(e,r){return t(n,e,r)})):Object(r.a)((function(e){return t(n,a,e)}));default:return Object(o.a)(n)&&Object(o.a)(a)&&Object(o.a)(u)?e:Object(o.a)(n)&&Object(o.a)(a)?Object(i.a)((function(e,n){return t(e,n,u)})):Object(o.a)(n)&&Object(o.a)(u)?Object(i.a)((function(e,n){return t(e,a,n)})):Object(o.a)(a)&&Object(o.a)(u)?Object(i.a)((function(e,r){return t(n,e,r)})):Object(o.a)(n)?Object(r.a)((function(e){return t(e,a,u)})):Object(o.a)(a)?Object(r.a)((function(e){return t(n,e,u)})):Object(o.a)(u)?Object(r.a)((function(e){return t(n,a,e)})):t(n,a,u)}}}},function(t,e){t.exports=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}},function(t,e){function n(t,e){for(var n=0;n"']/g,Q=RegExp(Y.source),X=RegExp(Z.source),J=/<%-([\s\S]+?)%>/g,tt=/<%([\s\S]+?)%>/g,et=/<%=([\s\S]+?)%>/g,nt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,rt=/^\w*$/,it=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ot=/[\\^$.*+?()[\]{}|]/g,at=RegExp(ot.source),ut=/^\s+|\s+$/g,st=/^\s+/,ct=/\s+$/,ft=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,lt=/\{\n\/\* \[wrapped with (.+)\] \*/,dt=/,? & /,ht=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,pt=/\\(\\)?/g,gt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,mt=/\w*$/,bt=/^[-+]0x[0-9a-f]+$/i,vt=/^0b[01]+$/i,yt=/^\[object .+?Constructor\]$/,_t=/^0o[0-7]+$/i,wt=/^(?:0|[1-9]\d*)$/,St=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Ot=/($^)/,xt=/['\n\r\u2028\u2029\\]/g,Et="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Mt="\\u2700-\\u27bf",Tt="a-z\\xdf-\\xf6\\xf8-\\xff",$t="A-Z\\xc0-\\xd6\\xd8-\\xde",At="\\ufe0e\\ufe0f",kt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ct="['\u2019]",It="[\\ud800-\\udfff]",Pt="["+kt+"]",Nt="["+Et+"]",Rt="\\d+",jt="[\\u2700-\\u27bf]",Dt="["+Tt+"]",Lt="[^\\ud800-\\udfff"+kt+Rt+Mt+Tt+$t+"]",Ft="\\ud83c[\\udffb-\\udfff]",Bt="[^\\ud800-\\udfff]",Ut="(?:\\ud83c[\\udde6-\\uddff]){2}",zt="[\\ud800-\\udbff][\\udc00-\\udfff]",Ht="["+$t+"]",Vt="(?:"+Dt+"|"+Lt+")",qt="(?:"+Ht+"|"+Lt+")",Wt="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Gt="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Kt="(?:"+Nt+"|"+Ft+")"+"?",Yt="[\\ufe0e\\ufe0f]?",Zt=Yt+Kt+("(?:\\u200d(?:"+[Bt,Ut,zt].join("|")+")"+Yt+Kt+")*"),Qt="(?:"+[jt,Ut,zt].join("|")+")"+Zt,Xt="(?:"+[Bt+Nt+"?",Nt,Ut,zt,It].join("|")+")",Jt=RegExp(Ct,"g"),te=RegExp(Nt,"g"),ee=RegExp(Ft+"(?="+Ft+")|"+Xt+Zt,"g"),ne=RegExp([Ht+"?"+Dt+"+"+Wt+"(?="+[Pt,Ht,"$"].join("|")+")",qt+"+"+Gt+"(?="+[Pt,Ht+Vt,"$"].join("|")+")",Ht+"?"+Vt+"+"+Wt,Ht+"+"+Gt,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Rt,Qt].join("|"),"g"),re=RegExp("[\\u200d\\ud800-\\udfff"+Et+At+"]"),ie=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,oe=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ae=-1,ue={};ue[D]=ue[L]=ue[F]=ue[B]=ue[U]=ue[z]=ue[H]=ue[V]=ue[q]=!0,ue[y]=ue[_]=ue[R]=ue[w]=ue[j]=ue[S]=ue[O]=ue[x]=ue[M]=ue[T]=ue[$]=ue[k]=ue[C]=ue[I]=ue[N]=!1;var se={};se[y]=se[_]=se[R]=se[j]=se[w]=se[S]=se[D]=se[L]=se[F]=se[B]=se[U]=se[M]=se[T]=se[$]=se[k]=se[C]=se[I]=se[P]=se[z]=se[H]=se[V]=se[q]=!0,se[O]=se[x]=se[N]=!1;var ce={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},fe=parseFloat,le=parseInt,de="object"==typeof t&&t&&t.Object===Object&&t,he="object"==typeof self&&self&&self.Object===Object&&self,pe=de||he||Function("return this")(),ge=e&&!e.nodeType&&e,me=ge&&"object"==typeof r&&r&&!r.nodeType&&r,be=me&&me.exports===ge,ve=be&&de.process,ye=function(){try{var t=me&&me.require&&me.require("util").types;return t||ve&&ve.binding&&ve.binding("util")}catch(e){}}(),_e=ye&&ye.isArrayBuffer,we=ye&&ye.isDate,Se=ye&&ye.isMap,Oe=ye&&ye.isRegExp,xe=ye&&ye.isSet,Ee=ye&&ye.isTypedArray;function Me(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Te(t,e,n,r){for(var i=-1,o=null==t?0:t.length;++i-1}function Pe(t,e,n){for(var r=-1,i=null==t?0:t.length;++r-1;);return n}function en(t,e){for(var n=t.length;n--&&ze(e,t[n],0)>-1;);return n}function nn(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}var rn=Ge({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),on=Ge({"&":"&","<":"<",">":">",'"':""","'":"'"});function an(t){return"\\"+ce[t]}function un(t){return re.test(t)}function sn(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function cn(t,e){return function(n){return t(e(n))}}function fn(t,e){for(var n=-1,r=t.length,i=0,o=[];++n",""":'"',"'":"'"});var mn=function t(e){var n=(e=null==e?pe:mn.defaults(pe.Object(),e,mn.pick(pe,oe))).Array,r=e.Date,i=e.Error,Et=e.Function,Mt=e.Math,Tt=e.Object,$t=e.RegExp,At=e.String,kt=e.TypeError,Ct=n.prototype,It=Et.prototype,Pt=Tt.prototype,Nt=e["__core-js_shared__"],Rt=It.toString,jt=Pt.hasOwnProperty,Dt=0,Lt=function(){var t=/[^.]+$/.exec(Nt&&Nt.keys&&Nt.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),Ft=Pt.toString,Bt=Rt.call(Tt),Ut=pe._,zt=$t("^"+Rt.call(jt).replace(ot,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ht=be?e.Buffer:o,Vt=e.Symbol,qt=e.Uint8Array,Wt=Ht?Ht.allocUnsafe:o,Gt=cn(Tt.getPrototypeOf,Tt),Kt=Tt.create,Yt=Pt.propertyIsEnumerable,Zt=Ct.splice,Qt=Vt?Vt.isConcatSpreadable:o,Xt=Vt?Vt.iterator:o,ee=Vt?Vt.toStringTag:o,re=function(){try{var t=lo(Tt,"defineProperty");return t({},"",{}),t}catch(e){}}(),ce=e.clearTimeout!==pe.clearTimeout&&e.clearTimeout,de=r&&r.now!==pe.Date.now&&r.now,he=e.setTimeout!==pe.setTimeout&&e.setTimeout,ge=Mt.ceil,me=Mt.floor,ve=Tt.getOwnPropertySymbols,ye=Ht?Ht.isBuffer:o,Fe=e.isFinite,Ge=Ct.join,bn=cn(Tt.keys,Tt),vn=Mt.max,yn=Mt.min,_n=r.now,wn=e.parseInt,Sn=Mt.random,On=Ct.reverse,xn=lo(e,"DataView"),En=lo(e,"Map"),Mn=lo(e,"Promise"),Tn=lo(e,"Set"),$n=lo(e,"WeakMap"),An=lo(Tt,"create"),kn=$n&&new $n,Cn={},In=Fo(xn),Pn=Fo(En),Nn=Fo(Mn),Rn=Fo(Tn),jn=Fo($n),Dn=Vt?Vt.prototype:o,Ln=Dn?Dn.valueOf:o,Fn=Dn?Dn.toString:o;function Bn(t){if(nu(t)&&!qa(t)&&!(t instanceof Vn)){if(t instanceof Hn)return t;if(jt.call(t,"__wrapped__"))return Bo(t)}return new Hn(t)}var Un=function(){function t(){}return function(e){if(!eu(e))return{};if(Kt)return Kt(e);t.prototype=e;var n=new t;return t.prototype=o,n}}();function zn(){}function Hn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=o}function Vn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=b,this.__views__=[]}function qn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function sr(t,e,n,r,i,a){var u,s=1&e,c=2&e,f=4&e;if(n&&(u=i?n(t,r,i,a):n(t)),u!==o)return u;if(!eu(t))return t;var l=qa(t);if(l){if(u=function(t){var e=t.length,n=new t.constructor(e);e&&"string"==typeof t[0]&&jt.call(t,"index")&&(n.index=t.index,n.input=t.input);return n}(t),!s)return Ai(t,u)}else{var d=go(t),h=d==x||d==E;if(Ya(t))return Oi(t,s);if(d==$||d==y||h&&!i){if(u=c||h?{}:bo(t),!s)return c?function(t,e){return ki(t,po(t),e)}(t,function(t,e){return t&&ki(e,Pu(e),t)}(u,t)):function(t,e){return ki(t,ho(t),e)}(t,ir(u,t))}else{if(!se[d])return i?t:{};u=function(t,e,n){var r=t.constructor;switch(e){case R:return xi(t);case w:case S:return new r(+t);case j:return function(t,e){var n=e?xi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case D:case L:case F:case B:case U:case z:case H:case V:case q:return Ei(t,n);case M:return new r;case T:case I:return new r(t);case k:return function(t){var e=new t.constructor(t.source,mt.exec(t));return e.lastIndex=t.lastIndex,e}(t);case C:return new r;case P:return i=t,Ln?Tt(Ln.call(i)):{}}var i}(t,d,s)}}a||(a=new Yn);var p=a.get(t);if(p)return p;a.set(t,u),uu(t)?t.forEach((function(r){u.add(sr(r,e,n,r,t,a))})):ru(t)&&t.forEach((function(r,i){u.set(i,sr(r,e,n,i,t,a))}));var g=l?o:(f?c?io:ro:c?Pu:Iu)(t);return $e(g||t,(function(r,i){g&&(r=t[i=r]),er(u,i,sr(r,e,n,i,t,a))})),u}function cr(t,e,n){var r=n.length;if(null==t)return!r;for(t=Tt(t);r--;){var i=n[r],a=e[i],u=t[i];if(u===o&&!(i in t)||!a(u))return!1}return!0}function fr(t,e,n){if("function"!=typeof t)throw new kt(a);return Io((function(){t.apply(o,n)}),e)}function lr(t,e,n,r){var i=-1,o=Ie,a=!0,u=t.length,s=[],c=e.length;if(!u)return s;n&&(e=Ne(e,Qe(n))),r?(o=Pe,a=!1):e.length>=200&&(o=Je,a=!1,e=new Kn(e));t:for(;++i-1},Wn.prototype.set=function(t,e){var n=this.__data__,r=nr(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},Gn.prototype.clear=function(){this.size=0,this.__data__={hash:new qn,map:new(En||Wn),string:new qn}},Gn.prototype.delete=function(t){var e=co(this,t).delete(t);return this.size-=e?1:0,e},Gn.prototype.get=function(t){return co(this,t).get(t)},Gn.prototype.has=function(t){return co(this,t).has(t)},Gn.prototype.set=function(t,e){var n=co(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},Kn.prototype.add=Kn.prototype.push=function(t){return this.__data__.set(t,u),this},Kn.prototype.has=function(t){return this.__data__.has(t)},Yn.prototype.clear=function(){this.__data__=new Wn,this.size=0},Yn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Yn.prototype.get=function(t){return this.__data__.get(t)},Yn.prototype.has=function(t){return this.__data__.has(t)},Yn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Wn){var r=n.__data__;if(!En||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Gn(r)}return n.set(t,e),this.size=n.size,this};var dr=Pi(_r),hr=Pi(wr,!0);function pr(t,e){var n=!0;return dr(t,(function(t,r,i){return n=!!e(t,r,i)})),n}function gr(t,e,n){for(var r=-1,i=t.length;++r0&&n(u)?e>1?br(u,e-1,n,r,i):Re(i,u):r||(i[i.length]=u)}return i}var vr=Ni(),yr=Ni(!0);function _r(t,e){return t&&vr(t,e,Iu)}function wr(t,e){return t&&yr(t,e,Iu)}function Sr(t,e){return Ce(e,(function(e){return Xa(t[e])}))}function Or(t,e){for(var n=0,r=(e=yi(e,t)).length;null!=t&&ne}function Tr(t,e){return null!=t&&jt.call(t,e)}function $r(t,e){return null!=t&&e in Tt(t)}function Ar(t,e,r){for(var i=r?Pe:Ie,a=t[0].length,u=t.length,s=u,c=n(u),f=1/0,l=[];s--;){var d=t[s];s&&e&&(d=Ne(d,Qe(e))),f=yn(d.length,f),c[s]=!r&&(e||a>=120&&d.length>=120)?new Kn(s&&d):o}d=t[0];var h=-1,p=c[0];t:for(;++h=u?s:s*("desc"==n[r]?-1:1)}return t.index-e.index}(t,e,n)}))}function qr(t,e,n){for(var r=-1,i=e.length,o={};++r-1;)u!==t&&Zt.call(u,s,1),Zt.call(t,s,1);return t}function Gr(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==o){var o=i;yo(i)?Zt.call(t,i,1):li(t,i)}}return t}function Kr(t,e){return t+me(Sn()*(e-t+1))}function Yr(t,e){var n="";if(!t||e<1||e>g)return n;do{e%2&&(n+=t),(e=me(e/2))&&(t+=t)}while(e);return n}function Zr(t,e){return Po(To(t,e,is),t+"")}function Qr(t){return Qn(Uu(t))}function Xr(t,e){var n=Uu(t);return jo(n,ur(e,0,n.length))}function Jr(t,e,n,r){if(!eu(t))return t;for(var i=-1,a=(e=yi(e,t)).length,u=a-1,s=t;null!=s&&++io?0:o+e),(r=r>o?o:r)<0&&(r+=o),o=e>r?0:r-e>>>0,e>>>=0;for(var a=n(o);++i>>1,a=t[o];null!==a&&!cu(a)&&(n?a<=e:a=200){var c=e?null:Yi(t);if(c)return ln(c);a=!1,i=Je,s=new Kn}else s=e?[]:u;t:for(;++r=r?t:ri(t,e,n)}var Si=ce||function(t){return pe.clearTimeout(t)};function Oi(t,e){if(e)return t.slice();var n=t.length,r=Wt?Wt(n):new t.constructor(n);return t.copy(r),r}function xi(t){var e=new t.constructor(t.byteLength);return new qt(e).set(new qt(t)),e}function Ei(t,e){var n=e?xi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function Mi(t,e){if(t!==e){var n=t!==o,r=null===t,i=t===t,a=cu(t),u=e!==o,s=null===e,c=e===e,f=cu(e);if(!s&&!f&&!a&&t>e||a&&u&&c&&!s&&!f||r&&u&&c||!n&&c||!i)return 1;if(!r&&!a&&!f&&t1?n[i-1]:o,u=i>2?n[2]:o;for(a=t.length>3&&"function"==typeof a?(i--,a):o,u&&_o(n[0],n[1],u)&&(a=i<3?o:a,i=1),e=Tt(e);++r-1?i[a?e[u]:u]:o}}function Fi(t){return no((function(e){var n=e.length,r=n,i=Hn.prototype.thru;for(t&&e.reverse();r--;){var u=e[r];if("function"!=typeof u)throw new kt(a);if(i&&!s&&"wrapper"==ao(u))var s=new Hn([],!0)}for(r=s?r:n;++r1&&y.reverse(),h&&fs))return!1;var f=a.get(t),l=a.get(e);if(f&&l)return f==e&&l==t;var d=-1,h=!0,p=2&n?new Kn:o;for(a.set(t,e),a.set(e,t);++d-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(ft,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return $e(v,(function(n){var r="_."+n[0];e&n[1]&&!Ie(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(lt);return e?e[1].split(dt):[]}(r),n)))}function Ro(t){var e=0,n=0;return function(){var r=_n(),i=16-(r-n);if(n=r,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(o,arguments)}}function jo(t,e){var n=-1,r=t.length,i=r-1;for(e=e===o?r:e;++n1?t[e-1]:o;return n="function"==typeof n?(t.pop(),n):o,aa(t,n)}));function ha(t){var e=Bn(t);return e.__chain__=!0,e}function pa(t,e){return e(t)}var ga=no((function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,i=function(e){return ar(e,t)};return!(e>1||this.__actions__.length)&&r instanceof Vn&&yo(n)?((r=r.slice(n,+n+(e?1:0))).__actions__.push({func:pa,args:[i],thisArg:o}),new Hn(r,this.__chain__).thru((function(t){return e&&!t.length&&t.push(o),t}))):this.thru(i)}));var ma=Ci((function(t,e,n){jt.call(t,n)?++t[n]:or(t,n,1)}));var ba=Li(Vo),va=Li(qo);function ya(t,e){return(qa(t)?$e:dr)(t,so(e,3))}function _a(t,e){return(qa(t)?Ae:hr)(t,so(e,3))}var wa=Ci((function(t,e,n){jt.call(t,n)?t[n].push(e):or(t,n,[e])}));var Sa=Zr((function(t,e,r){var i=-1,o="function"==typeof e,a=Ga(t)?n(t.length):[];return dr(t,(function(t){a[++i]=o?Me(e,t,r):kr(t,e,r)})),a})),Oa=Ci((function(t,e,n){or(t,n,e)}));function xa(t,e){return(qa(t)?Ne:Fr)(t,so(e,3))}var Ea=Ci((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]}));var Ma=Zr((function(t,e){if(null==t)return[];var n=e.length;return n>1&&_o(t,e[0],e[1])?e=[]:n>2&&_o(e[0],e[1],e[2])&&(e=[e[0]]),Vr(t,br(e,1),[])})),Ta=de||function(){return pe.Date.now()};function $a(t,e,n){return e=n?o:e,e=t&&null==e?t.length:e,Qi(t,d,o,o,o,o,e)}function Aa(t,e){var n;if("function"!=typeof e)throw new kt(a);return t=gu(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=o),n}}var ka=Zr((function(t,e,n){var r=1;if(n.length){var i=fn(n,uo(ka));r|=f}return Qi(t,r,e,n,i)})),Ca=Zr((function(t,e,n){var r=3;if(n.length){var i=fn(n,uo(Ca));r|=f}return Qi(e,r,t,n,i)}));function Ia(t,e,n){var r,i,u,s,c,f,l=0,d=!1,h=!1,p=!0;if("function"!=typeof t)throw new kt(a);function g(e){var n=r,a=i;return r=i=o,l=e,s=t.apply(a,n)}function m(t){return l=t,c=Io(v,e),d?g(t):s}function b(t){var n=t-f;return f===o||n>=e||n<0||h&&t-l>=u}function v(){var t=Ta();if(b(t))return y(t);c=Io(v,function(t){var n=e-(t-f);return h?yn(n,u-(t-l)):n}(t))}function y(t){return c=o,p&&r?g(t):(r=i=o,s)}function _(){var t=Ta(),n=b(t);if(r=arguments,i=this,f=t,n){if(c===o)return m(f);if(h)return Si(c),c=Io(v,e),g(f)}return c===o&&(c=Io(v,e)),s}return e=bu(e)||0,eu(n)&&(d=!!n.leading,u=(h="maxWait"in n)?vn(bu(n.maxWait)||0,e):u,p="trailing"in n?!!n.trailing:p),_.cancel=function(){c!==o&&Si(c),l=0,r=f=i=c=o},_.flush=function(){return c===o?s:y(Ta())},_}var Pa=Zr((function(t,e){return fr(t,1,e)})),Na=Zr((function(t,e,n){return fr(t,bu(e)||0,n)}));function Ra(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new kt(a);var n=function n(){var r=arguments,i=e?e.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=t.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(Ra.Cache||Gn),n}function ja(t){if("function"!=typeof t)throw new kt(a);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Ra.Cache=Gn;var Da=_i((function(t,e){var n=(e=1==e.length&&qa(e[0])?Ne(e[0],Qe(so())):Ne(br(e,1),Qe(so()))).length;return Zr((function(r){for(var i=-1,o=yn(r.length,n);++i=e})),Va=Cr(function(){return arguments}())?Cr:function(t){return nu(t)&&jt.call(t,"callee")&&!Yt.call(t,"callee")},qa=n.isArray,Wa=_e?Qe(_e):function(t){return nu(t)&&Er(t)==R};function Ga(t){return null!=t&&tu(t.length)&&!Xa(t)}function Ka(t){return nu(t)&&Ga(t)}var Ya=ye||bs,Za=we?Qe(we):function(t){return nu(t)&&Er(t)==S};function Qa(t){if(!nu(t))return!1;var e=Er(t);return e==O||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!ou(t)}function Xa(t){if(!eu(t))return!1;var e=Er(t);return e==x||e==E||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Ja(t){return"number"==typeof t&&t==gu(t)}function tu(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=g}function eu(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function nu(t){return null!=t&&"object"==typeof t}var ru=Se?Qe(Se):function(t){return nu(t)&&go(t)==M};function iu(t){return"number"==typeof t||nu(t)&&Er(t)==T}function ou(t){if(!nu(t)||Er(t)!=$)return!1;var e=Gt(t);if(null===e)return!0;var n=jt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Rt.call(n)==Bt}var au=Oe?Qe(Oe):function(t){return nu(t)&&Er(t)==k};var uu=xe?Qe(xe):function(t){return nu(t)&&go(t)==C};function su(t){return"string"==typeof t||!qa(t)&&nu(t)&&Er(t)==I}function cu(t){return"symbol"==typeof t||nu(t)&&Er(t)==P}var fu=Ee?Qe(Ee):function(t){return nu(t)&&tu(t.length)&&!!ue[Er(t)]};var lu=Wi(Lr),du=Wi((function(t,e){return t<=e}));function hu(t){if(!t)return[];if(Ga(t))return su(t)?pn(t):Ai(t);if(Xt&&t[Xt])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[Xt]());var e=go(t);return(e==M?sn:e==C?ln:Uu)(t)}function pu(t){return t?(t=bu(t))===p||t===-1/0?17976931348623157e292*(t<0?-1:1):t===t?t:0:0===t?t:0}function gu(t){var e=pu(t),n=e%1;return e===e?n?e-n:e:0}function mu(t){return t?ur(gu(t),0,b):0}function bu(t){if("number"==typeof t)return t;if(cu(t))return m;if(eu(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=eu(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(ut,"");var n=vt.test(t);return n||_t.test(t)?le(t.slice(2),n?2:8):bt.test(t)?m:+t}function vu(t){return ki(t,Pu(t))}function yu(t){return null==t?"":ci(t)}var _u=Ii((function(t,e){if(xo(e)||Ga(e))ki(e,Iu(e),t);else for(var n in e)jt.call(e,n)&&er(t,n,e[n])})),wu=Ii((function(t,e){ki(e,Pu(e),t)})),Su=Ii((function(t,e,n,r){ki(e,Pu(e),t,r)})),Ou=Ii((function(t,e,n,r){ki(e,Iu(e),t,r)})),xu=no(ar);var Eu=Zr((function(t,e){t=Tt(t);var n=-1,r=e.length,i=r>2?e[2]:o;for(i&&_o(e[0],e[1],i)&&(r=1);++n1),e})),ki(t,io(t),n),r&&(n=sr(n,7,to));for(var i=e.length;i--;)li(n,e[i]);return n}));var Du=no((function(t,e){return null==t?{}:function(t,e){return qr(t,e,(function(e,n){return $u(t,n)}))}(t,e)}));function Lu(t,e){if(null==t)return{};var n=Ne(io(t),(function(t){return[t]}));return e=so(e),qr(t,n,(function(t,n){return e(t,n[0])}))}var Fu=Zi(Iu),Bu=Zi(Pu);function Uu(t){return null==t?[]:Xe(t,Iu(t))}var zu=ji((function(t,e,n){return e=e.toLowerCase(),t+(n?Hu(e):e)}));function Hu(t){return Qu(yu(t).toLowerCase())}function Vu(t){return(t=yu(t))&&t.replace(St,rn).replace(te,"")}var qu=ji((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),Wu=ji((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Gu=Ri("toLowerCase");var Ku=ji((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}));var Yu=ji((function(t,e,n){return t+(n?" ":"")+Qu(e)}));var Zu=ji((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),Qu=Ri("toUpperCase");function Xu(t,e,n){return t=yu(t),(e=n?o:e)===o?function(t){return ie.test(t)}(t)?function(t){return t.match(ne)||[]}(t):function(t){return t.match(ht)||[]}(t):t.match(e)||[]}var Ju=Zr((function(t,e){try{return Me(t,o,e)}catch(n){return Qa(n)?n:new i(n)}})),ts=no((function(t,e){return $e(e,(function(e){e=Lo(e),or(t,e,ka(t[e],t))})),t}));function es(t){return function(){return t}}var ns=Fi(),rs=Fi(!0);function is(t){return t}function os(t){return Rr("function"==typeof t?t:sr(t,1))}var as=Zr((function(t,e){return function(n){return kr(n,t,e)}})),us=Zr((function(t,e){return function(n){return kr(t,n,e)}}));function ss(t,e,n){var r=Iu(e),i=Sr(e,r);null!=n||eu(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=Sr(e,Iu(e)));var o=!(eu(n)&&"chain"in n)||!!n.chain,a=Xa(t);return $e(i,(function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(o||e){var n=t(this.__wrapped__),i=n.__actions__=Ai(this.__actions__);return i.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,Re([this.value()],arguments))})})),t}function cs(){}var fs=Hi(Ne),ls=Hi(ke),ds=Hi(Le);function hs(t){return wo(t)?We(Lo(t)):function(t){return function(e){return Or(e,t)}}(t)}var ps=qi(),gs=qi(!0);function ms(){return[]}function bs(){return!1}var vs=zi((function(t,e){return t+e}),0),ys=Ki("ceil"),_s=zi((function(t,e){return t/e}),1),ws=Ki("floor");var Ss=zi((function(t,e){return t*e}),1),Os=Ki("round"),xs=zi((function(t,e){return t-e}),0);return Bn.after=function(t,e){if("function"!=typeof e)throw new kt(a);return t=gu(t),function(){if(--t<1)return e.apply(this,arguments)}},Bn.ary=$a,Bn.assign=_u,Bn.assignIn=wu,Bn.assignInWith=Su,Bn.assignWith=Ou,Bn.at=xu,Bn.before=Aa,Bn.bind=ka,Bn.bindAll=ts,Bn.bindKey=Ca,Bn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return qa(t)?t:[t]},Bn.chain=ha,Bn.chunk=function(t,e,r){e=(r?_o(t,e,r):e===o)?1:vn(gu(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var a=0,u=0,s=n(ge(i/e));ai?0:i+n),(r=r===o||r>i?i:gu(r))<0&&(r+=i),r=n>r?0:mu(r);n>>0)?(t=yu(t))&&("string"==typeof e||null!=e&&!au(e))&&!(e=ci(e))&&un(t)?wi(pn(t),0,n):t.split(e,n):[]},Bn.spread=function(t,e){if("function"!=typeof t)throw new kt(a);return e=null==e?0:vn(gu(e),0),Zr((function(n){var r=n[e],i=wi(n,0,e);return r&&Re(i,r),Me(t,this,i)}))},Bn.tail=function(t){var e=null==t?0:t.length;return e?ri(t,1,e):[]},Bn.take=function(t,e,n){return t&&t.length?ri(t,0,(e=n||e===o?1:gu(e))<0?0:e):[]},Bn.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?ri(t,(e=r-(e=n||e===o?1:gu(e)))<0?0:e,r):[]},Bn.takeRightWhile=function(t,e){return t&&t.length?hi(t,so(e,3),!1,!0):[]},Bn.takeWhile=function(t,e){return t&&t.length?hi(t,so(e,3)):[]},Bn.tap=function(t,e){return e(t),t},Bn.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new kt(a);return eu(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Ia(t,e,{leading:r,maxWait:e,trailing:i})},Bn.thru=pa,Bn.toArray=hu,Bn.toPairs=Fu,Bn.toPairsIn=Bu,Bn.toPath=function(t){return qa(t)?Ne(t,Lo):cu(t)?[t]:Ai(Do(yu(t)))},Bn.toPlainObject=vu,Bn.transform=function(t,e,n){var r=qa(t),i=r||Ya(t)||fu(t);if(e=so(e,4),null==n){var o=t&&t.constructor;n=i?r?new o:[]:eu(t)&&Xa(o)?Un(Gt(t)):{}}return(i?$e:_r)(t,(function(t,r,i){return e(n,t,r,i)})),n},Bn.unary=function(t){return $a(t,1)},Bn.union=na,Bn.unionBy=ra,Bn.unionWith=ia,Bn.uniq=function(t){return t&&t.length?fi(t):[]},Bn.uniqBy=function(t,e){return t&&t.length?fi(t,so(e,2)):[]},Bn.uniqWith=function(t,e){return e="function"==typeof e?e:o,t&&t.length?fi(t,o,e):[]},Bn.unset=function(t,e){return null==t||li(t,e)},Bn.unzip=oa,Bn.unzipWith=aa,Bn.update=function(t,e,n){return null==t?t:di(t,e,vi(n))},Bn.updateWith=function(t,e,n,r){return r="function"==typeof r?r:o,null==t?t:di(t,e,vi(n),r)},Bn.values=Uu,Bn.valuesIn=function(t){return null==t?[]:Xe(t,Pu(t))},Bn.without=ua,Bn.words=Xu,Bn.wrap=function(t,e){return La(vi(e),t)},Bn.xor=sa,Bn.xorBy=ca,Bn.xorWith=fa,Bn.zip=la,Bn.zipObject=function(t,e){return mi(t||[],e||[],er)},Bn.zipObjectDeep=function(t,e){return mi(t||[],e||[],Jr)},Bn.zipWith=da,Bn.entries=Fu,Bn.entriesIn=Bu,Bn.extend=wu,Bn.extendWith=Su,ss(Bn,Bn),Bn.add=vs,Bn.attempt=Ju,Bn.camelCase=zu,Bn.capitalize=Hu,Bn.ceil=ys,Bn.clamp=function(t,e,n){return n===o&&(n=e,e=o),n!==o&&(n=(n=bu(n))===n?n:0),e!==o&&(e=(e=bu(e))===e?e:0),ur(bu(t),e,n)},Bn.clone=function(t){return sr(t,4)},Bn.cloneDeep=function(t){return sr(t,5)},Bn.cloneDeepWith=function(t,e){return sr(t,5,e="function"==typeof e?e:o)},Bn.cloneWith=function(t,e){return sr(t,4,e="function"==typeof e?e:o)},Bn.conformsTo=function(t,e){return null==e||cr(t,e,Iu(e))},Bn.deburr=Vu,Bn.defaultTo=function(t,e){return null==t||t!==t?e:t},Bn.divide=_s,Bn.endsWith=function(t,e,n){t=yu(t),e=ci(e);var r=t.length,i=n=n===o?r:ur(gu(n),0,r);return(n-=e.length)>=0&&t.slice(n,i)==e},Bn.eq=Ua,Bn.escape=function(t){return(t=yu(t))&&X.test(t)?t.replace(Z,on):t},Bn.escapeRegExp=function(t){return(t=yu(t))&&at.test(t)?t.replace(ot,"\\$&"):t},Bn.every=function(t,e,n){var r=qa(t)?ke:pr;return n&&_o(t,e,n)&&(e=o),r(t,so(e,3))},Bn.find=ba,Bn.findIndex=Vo,Bn.findKey=function(t,e){return Be(t,so(e,3),_r)},Bn.findLast=va,Bn.findLastIndex=qo,Bn.findLastKey=function(t,e){return Be(t,so(e,3),wr)},Bn.floor=ws,Bn.forEach=ya,Bn.forEachRight=_a,Bn.forIn=function(t,e){return null==t?t:vr(t,so(e,3),Pu)},Bn.forInRight=function(t,e){return null==t?t:yr(t,so(e,3),Pu)},Bn.forOwn=function(t,e){return t&&_r(t,so(e,3))},Bn.forOwnRight=function(t,e){return t&&wr(t,so(e,3))},Bn.get=Tu,Bn.gt=za,Bn.gte=Ha,Bn.has=function(t,e){return null!=t&&mo(t,e,Tr)},Bn.hasIn=$u,Bn.head=Go,Bn.identity=is,Bn.includes=function(t,e,n,r){t=Ga(t)?t:Uu(t),n=n&&!r?gu(n):0;var i=t.length;return n<0&&(n=vn(i+n,0)),su(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&ze(t,e,n)>-1},Bn.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:gu(n);return i<0&&(i=vn(r+i,0)),ze(t,e,i)},Bn.inRange=function(t,e,n){return e=pu(e),n===o?(n=e,e=0):n=pu(n),function(t,e,n){return t>=yn(e,n)&&t=-9007199254740991&&t<=g},Bn.isSet=uu,Bn.isString=su,Bn.isSymbol=cu,Bn.isTypedArray=fu,Bn.isUndefined=function(t){return t===o},Bn.isWeakMap=function(t){return nu(t)&&go(t)==N},Bn.isWeakSet=function(t){return nu(t)&&"[object WeakSet]"==Er(t)},Bn.join=function(t,e){return null==t?"":Ge.call(t,e)},Bn.kebabCase=qu,Bn.last=Qo,Bn.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r;return n!==o&&(i=(i=gu(n))<0?vn(r+i,0):yn(i,r-1)),e===e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,i):Ue(t,Ve,i,!0)},Bn.lowerCase=Wu,Bn.lowerFirst=Gu,Bn.lt=lu,Bn.lte=du,Bn.max=function(t){return t&&t.length?gr(t,is,Mr):o},Bn.maxBy=function(t,e){return t&&t.length?gr(t,so(e,2),Mr):o},Bn.mean=function(t){return qe(t,is)},Bn.meanBy=function(t,e){return qe(t,so(e,2))},Bn.min=function(t){return t&&t.length?gr(t,is,Lr):o},Bn.minBy=function(t,e){return t&&t.length?gr(t,so(e,2),Lr):o},Bn.stubArray=ms,Bn.stubFalse=bs,Bn.stubObject=function(){return{}},Bn.stubString=function(){return""},Bn.stubTrue=function(){return!0},Bn.multiply=Ss,Bn.nth=function(t,e){return t&&t.length?Hr(t,gu(e)):o},Bn.noConflict=function(){return pe._===this&&(pe._=Ut),this},Bn.noop=cs,Bn.now=Ta,Bn.pad=function(t,e,n){t=yu(t);var r=(e=gu(e))?hn(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return Vi(me(i),n)+t+Vi(ge(i),n)},Bn.padEnd=function(t,e,n){t=yu(t);var r=(e=gu(e))?hn(t):0;return e&&re){var r=t;t=e,e=r}if(n||t%1||e%1){var i=Sn();return yn(t+i*(e-t+fe("1e-"+((i+"").length-1))),e)}return Kr(t,e)},Bn.reduce=function(t,e,n){var r=qa(t)?je:Ke,i=arguments.length<3;return r(t,so(e,4),n,i,dr)},Bn.reduceRight=function(t,e,n){var r=qa(t)?De:Ke,i=arguments.length<3;return r(t,so(e,4),n,i,hr)},Bn.repeat=function(t,e,n){return e=(n?_o(t,e,n):e===o)?1:gu(e),Yr(yu(t),e)},Bn.replace=function(){var t=arguments,e=yu(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Bn.result=function(t,e,n){var r=-1,i=(e=yi(e,t)).length;for(i||(i=1,t=o);++rg)return[];var n=b,r=yn(t,b);e=so(e),t-=b;for(var i=Ze(r,e);++n=a)return t;var s=n-hn(r);if(s<1)return r;var c=u?wi(u,0,s).join(""):t.slice(0,s);if(i===o)return c+r;if(u&&(s+=c.length-s),au(i)){if(t.slice(s).search(i)){var f,l=c;for(i.global||(i=$t(i.source,yu(mt.exec(i))+"g")),i.lastIndex=0;f=i.exec(l);)var d=f.index;c=c.slice(0,d===o?s:d)}}else if(t.indexOf(ci(i),s)!=s){var h=c.lastIndexOf(i);h>-1&&(c=c.slice(0,h))}return c+r},Bn.unescape=function(t){return(t=yu(t))&&Q.test(t)?t.replace(Y,gn):t},Bn.uniqueId=function(t){var e=++Dt;return yu(t)+e},Bn.upperCase=Zu,Bn.upperFirst=Qu,Bn.each=ya,Bn.eachRight=_a,Bn.first=Go,ss(Bn,function(){var t={};return _r(Bn,(function(e,n){jt.call(Bn.prototype,n)||(t[n]=e)})),t}(),{chain:!1}),Bn.VERSION="4.17.20",$e(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Bn[t].placeholder=Bn})),$e(["drop","take"],(function(t,e){Vn.prototype[t]=function(n){n=n===o?1:vn(gu(n),0);var r=this.__filtered__&&!e?new Vn(this):this.clone();return r.__filtered__?r.__takeCount__=yn(n,r.__takeCount__):r.__views__.push({size:yn(n,b),type:t+(r.__dir__<0?"Right":"")}),r},Vn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),$e(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=1==n||3==n;Vn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:so(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),$e(["head","last"],(function(t,e){var n="take"+(e?"Right":"");Vn.prototype[t]=function(){return this[n](1).value()[0]}})),$e(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");Vn.prototype[t]=function(){return this.__filtered__?new Vn(this):this[n](1)}})),Vn.prototype.compact=function(){return this.filter(is)},Vn.prototype.find=function(t){return this.filter(t).head()},Vn.prototype.findLast=function(t){return this.reverse().find(t)},Vn.prototype.invokeMap=Zr((function(t,e){return"function"==typeof t?new Vn(this):this.map((function(n){return kr(n,t,e)}))})),Vn.prototype.reject=function(t){return this.filter(ja(so(t)))},Vn.prototype.slice=function(t,e){t=gu(t);var n=this;return n.__filtered__&&(t>0||e<0)?new Vn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==o&&(n=(e=gu(e))<0?n.dropRight(-e):n.take(e-t)),n)},Vn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Vn.prototype.toArray=function(){return this.take(b)},_r(Vn.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),i=Bn[r?"take"+("last"==e?"Right":""):e],a=r||/^find/.test(e);i&&(Bn.prototype[e]=function(){var e=this.__wrapped__,u=r?[1]:arguments,s=e instanceof Vn,c=u[0],f=s||qa(e),l=function(t){var e=i.apply(Bn,Re([t],u));return r&&d?e[0]:e};f&&n&&"function"==typeof c&&1!=c.length&&(s=f=!1);var d=this.__chain__,h=!!this.__actions__.length,p=a&&!d,g=s&&!h;if(!a&&f){e=g?e:new Vn(this);var m=t.apply(e,u);return m.__actions__.push({func:pa,args:[l],thisArg:o}),new Hn(m,d)}return p&&g?t.apply(this,u):(m=this.thru(l),p?r?m.value()[0]:m.value():m)})})),$e(["pop","push","shift","sort","splice","unshift"],(function(t){var e=Ct[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);Bn.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(qa(i)?i:[],t)}return this[n]((function(n){return e.apply(qa(n)?n:[],t)}))}})),_r(Vn.prototype,(function(t,e){var n=Bn[e];if(n){var r=n.name+"";jt.call(Cn,r)||(Cn[r]=[]),Cn[r].push({name:e,func:n})}})),Cn[Bi(o,2).name]=[{name:"wrapper",func:o}],Vn.prototype.clone=function(){var t=new Vn(this.__wrapped__);return t.__actions__=Ai(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Ai(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Ai(this.__views__),t},Vn.prototype.reverse=function(){if(this.__filtered__){var t=new Vn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Vn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=qa(t),r=e<0,i=n?t.length:0,o=function(t,e,n){var r=-1,i=n.length;for(;++r=this.__values__.length;return{done:t,value:t?o:this.__values__[this.__index__++]}},Bn.prototype.plant=function(t){for(var e,n=this;n instanceof zn;){var r=Bo(n);r.__index__=0,r.__values__=o,e?i.__wrapped__=r:e=r;var i=r;n=n.__wrapped__}return i.__wrapped__=t,e},Bn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Vn){var e=t;return this.__actions__.length&&(e=new Vn(this)),(e=e.reverse()).__actions__.push({func:pa,args:[ea],thisArg:o}),new Hn(e,this.__chain__)}return this.thru(ea)},Bn.prototype.toJSON=Bn.prototype.valueOf=Bn.prototype.value=function(){return pi(this.__wrapped__,this.__actions__)},Bn.prototype.first=Bn.prototype.head,Xt&&(Bn.prototype[Xt]=function(){return this}),Bn}();pe._=mn,(i=function(){return mn}.call(e,n,e,r))===o||(r.exports=i)}).call(this)}).call(this,n(59),n(94)(t))},function(t,e,n){t.exports=function(){var t=t||function(t,e){var n=Object.create||function(){function t(){}return function(e){var n;return t.prototype=e,n=new t,t.prototype=null,n}}(),r={},i=r.lib={},o=i.Base={extend:function(t){var e=n(this);return t&&e.mixIn(t),e.hasOwnProperty("init")&&this.init!==e.init||(e.init=function(){e.$super.init.apply(this,arguments)}),e.init.prototype=e,e.$super=this,e},create:function(){var t=this.extend();return t.init.apply(t,arguments),t},init:function(){},mixIn:function(t){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);t.hasOwnProperty("toString")&&(this.toString=t.toString)},clone:function(){return this.init.prototype.extend(this)}},a=i.WordArray=o.extend({init:function(t,n){t=this.words=t||[],this.sigBytes=n!=e?n:4*t.length},toString:function(t){return(t||s).stringify(this)},concat:function(t){var e=this.words,n=t.words,r=this.sigBytes,i=t.sigBytes;if(this.clamp(),r%4)for(var o=0;o>>2]>>>24-o%4*8&255;e[r+o>>>2]|=a<<24-(r+o)%4*8}else for(o=0;o>>2]=n[o>>>2];return this.sigBytes+=i,this},clamp:function(){var e=this.words,n=this.sigBytes;e[n>>>2]&=4294967295<<32-n%4*8,e.length=t.ceil(n/4)},clone:function(){var t=o.clone.call(this);return t.words=this.words.slice(0),t},random:function(e){for(var n,r=[],i=function(e){e=e;var n=987654321,r=4294967295;return function(){var i=((n=36969*(65535&n)+(n>>16)&r)<<16)+(e=18e3*(65535&e)+(e>>16)&r)&r;return i/=4294967296,(i+=.5)*(t.random()>.5?1:-1)}},o=0;o>>2]>>>24-i%4*8&255;r.push((o>>>4).toString(16)),r.push((15&o).toString(16))}return r.join("")},parse:function(t){for(var e=t.length,n=[],r=0;r>>3]|=parseInt(t.substr(r,2),16)<<24-r%8*4;return new a.init(n,e/2)}},c=u.Latin1={stringify:function(t){for(var e=t.words,n=t.sigBytes,r=[],i=0;i>>2]>>>24-i%4*8&255;r.push(String.fromCharCode(o))}return r.join("")},parse:function(t){for(var e=t.length,n=[],r=0;r>>2]|=(255&t.charCodeAt(r))<<24-r%4*8;return new a.init(n,e)}},f=u.Utf8={stringify:function(t){try{return decodeURIComponent(escape(c.stringify(t)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(t){return c.parse(unescape(encodeURIComponent(t)))}},l=i.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=f.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(e){var n=this._data,r=n.words,i=n.sigBytes,o=this.blockSize,u=i/(4*o),s=(u=e?t.ceil(u):t.max((0|u)-this._minBufferSize,0))*o,c=t.min(4*s,i);if(s){for(var f=0;f=f.OP_1&&t<=f.OP_16||t===f.OP_1NEGATE)}(t)}function p(t){return s.Array(t)&&t.every(h)}function g(t){return 0===t.length?f.OP_0:1===t.length?t[0]>=1&&t[0]<=16?d+t[0]:129===t[0]?f.OP_1NEGATE:void 0:void 0}function m(t){if(r.isBuffer(t))return t;u(s.Array,t);var e=t.reduce((function(t,e){return r.isBuffer(e)?1===e.length&&void 0!==g(e)?t+1:t+a.encodingLength(e.length)+e.length:t+1}),0),n=r.allocUnsafe(e),i=0;if(t.forEach((function(t){if(r.isBuffer(t)){var e=g(t);if(void 0!==e)return n.writeUInt8(e,i),void(i+=1);i+=a.encode(n,t.length,i),t.copy(n,i),i+=t.length}else n.writeUInt8(t,i),i+=1})),i!==n.length)throw new Error("Could not decode chunks");return n}function b(t){if(s.Array(t))return t;u(s.Buffer,t);for(var e=[],n=0;nf.OP_0&&r<=f.OP_PUSHDATA4){var i=a.decode(t,n);if(null===i)return null;if((n+=i.size)+i.number>t.length)return null;var o=t.slice(n,n+i.number);n+=i.number;var c=g(o);void 0!==c?e.push(c):e.push(o)}else e.push(r),n+=1}return e}function v(t){var e=-129&t;return e>0&&e<4}t.exports={compile:m,decompile:b,fromASM:function(t){return u(s.String,t),m(t.split(" ").map((function(t){return void 0!==f[t]?f[t]:(u(s.Hex,t),r.from(t,"hex"))})))},toASM:function(t){return r.isBuffer(t)&&(t=b(t)),t.map((function(t){if(r.isBuffer(t)){var e=g(t);if(void 0===e)return t.toString("hex");t=e}return l[t]})).join(" ")},toStack:function(t){return t=b(t),u(p,t),t.map((function(t){return r.isBuffer(t)?t:t===f.OP_0?r.allocUnsafe(0):c.encode(t-d)}))},number:n(461),signature:n(783),isCanonicalPubKey:function(t){return o.isPoint(t)},isCanonicalScriptSignature:function(t){return!!r.isBuffer(t)&&(!!v(t[t.length-1])&&i.check(t.slice(0,-1)))},isPushOnly:p,isDefinedHashType:v}},function(t,e,n){"use strict";function r(t,e){return Object.prototype.hasOwnProperty.call(e,t)}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(51);function i(t,e,n){return(i="undefined"!==typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var i=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=Object(r.a)(t)););return t}(t,e);if(i){var o=Object.getOwnPropertyDescriptor(i,e);return o.get?o.get.call(n):o.value}})(t,e,n||t)}},function(t,e,n){"use strict";(function(e){var r=n(29),i=(n(267),n(79),n(52));function o(t,e){if(t.length!==e.length)return!1;for(var n=t.length,r=0;r>24&255),n.push(t>>16&255),n.push(t>>8&255),n.push(255&t),e.from(n)},integerFromBuffer:function(t){return i.checkArgumentType(t,"Buffer","buffer"),t[0]<<24|t[1]<<16|t[2]<<8|t[3]},integerFromSingleByteBuffer:function(t){return i.checkArgumentType(t,"Buffer","buffer"),t[0]},bufferToHex:function(t){return i.checkArgumentType(t,"Buffer","buffer"),t.toString("hex")},reverse:function(t){return e.from(t).reverse()}},t.exports.NULL_HASH=t.exports.fill(e.alloc(32),0),t.exports.EMPTY_BUFFER=e.alloc(0)}).call(this,n(29).Buffer)},function(t,e,n){"use strict";e.a={init:function(){return this.xf["@@transducer/init"]()},result:function(t){return this.xf["@@transducer/result"](t)}}},function(t,e,n){"use strict";function r(t,e){if(null==t)return{};var n,r,i={},o=Object.keys(t);for(r=0;r=0||(i[n]=t[n]);return i}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";function r(t,e,n,r,i,o,a){try{var u=t[o](a),s=u.value}catch(c){return void n(c)}u.done?e(s):Promise.resolve(s).then(r,i)}function i(t){return function(){var e=this,n=arguments;return new Promise((function(i,o){var a=t.apply(e,n);function u(t){r(a,i,o,u,s,"next",t)}function s(t){r(a,i,o,u,s,"throw",t)}u(void 0)}))}}n.d(e,"a",(function(){return i}))},function(t){t.exports=JSON.parse('{"OP_FALSE":0,"OP_0":0,"OP_PUSHDATA1":76,"OP_PUSHDATA2":77,"OP_PUSHDATA4":78,"OP_1NEGATE":79,"OP_RESERVED":80,"OP_TRUE":81,"OP_1":81,"OP_2":82,"OP_3":83,"OP_4":84,"OP_5":85,"OP_6":86,"OP_7":87,"OP_8":88,"OP_9":89,"OP_10":90,"OP_11":91,"OP_12":92,"OP_13":93,"OP_14":94,"OP_15":95,"OP_16":96,"OP_NOP":97,"OP_VER":98,"OP_IF":99,"OP_NOTIF":100,"OP_VERIF":101,"OP_VERNOTIF":102,"OP_ELSE":103,"OP_ENDIF":104,"OP_VERIFY":105,"OP_RETURN":106,"OP_TOALTSTACK":107,"OP_FROMALTSTACK":108,"OP_2DROP":109,"OP_2DUP":110,"OP_3DUP":111,"OP_2OVER":112,"OP_2ROT":113,"OP_2SWAP":114,"OP_IFDUP":115,"OP_DEPTH":116,"OP_DROP":117,"OP_DUP":118,"OP_NIP":119,"OP_OVER":120,"OP_PICK":121,"OP_ROLL":122,"OP_ROT":123,"OP_SWAP":124,"OP_TUCK":125,"OP_CAT":126,"OP_SUBSTR":127,"OP_LEFT":128,"OP_RIGHT":129,"OP_SIZE":130,"OP_INVERT":131,"OP_AND":132,"OP_OR":133,"OP_XOR":134,"OP_EQUAL":135,"OP_EQUALVERIFY":136,"OP_RESERVED1":137,"OP_RESERVED2":138,"OP_1ADD":139,"OP_1SUB":140,"OP_2MUL":141,"OP_2DIV":142,"OP_NEGATE":143,"OP_ABS":144,"OP_NOT":145,"OP_0NOTEQUAL":146,"OP_ADD":147,"OP_SUB":148,"OP_MUL":149,"OP_DIV":150,"OP_MOD":151,"OP_LSHIFT":152,"OP_RSHIFT":153,"OP_BOOLAND":154,"OP_BOOLOR":155,"OP_NUMEQUAL":156,"OP_NUMEQUALVERIFY":157,"OP_NUMNOTEQUAL":158,"OP_LESSTHAN":159,"OP_GREATERTHAN":160,"OP_LESSTHANOREQUAL":161,"OP_GREATERTHANOREQUAL":162,"OP_MIN":163,"OP_MAX":164,"OP_WITHIN":165,"OP_RIPEMD160":166,"OP_SHA1":167,"OP_SHA256":168,"OP_HASH160":169,"OP_HASH256":170,"OP_CODESEPARATOR":171,"OP_CHECKSIG":172,"OP_CHECKSIGVERIFY":173,"OP_CHECKMULTISIG":174,"OP_CHECKMULTISIGVERIFY":175,"OP_NOP1":176,"OP_NOP2":177,"OP_CHECKLOCKTIMEVERIFY":177,"OP_NOP3":178,"OP_CHECKSEQUENCEVERIFY":178,"OP_NOP4":179,"OP_NOP5":180,"OP_NOP6":181,"OP_NOP7":182,"OP_NOP8":183,"OP_NOP9":184,"OP_NOP10":185,"OP_PUBKEYHASH":253,"OP_PUBKEY":254,"OP_INVALIDOPCODE":255}')},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(523);function i(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,Object(r.a)(t,e)}},function(t,e){var n,r,i=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function u(t){if(n===setTimeout)return setTimeout(t,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"===typeof setTimeout?setTimeout:o}catch(t){n=o}try{r="function"===typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var s,c=[],f=!1,l=-1;function d(){f&&s&&(f=!1,s.length?c=s.concat(c):l=-1,c.length&&h())}function h(){if(!f){var t=u(d);f=!0;for(var e=c.length;e;){for(s=c,c=[];++l1)for(var n=1;n<+~=|^:(),"'`\s])/g,b="undefined"!==typeof CSS&&CSS.escape,v=function(t){return b?b(t):t.replace(m,"\\$1")},y=function(){function t(t,e,n){this.type="style",this.key=void 0,this.isProcessed=!1,this.style=void 0,this.renderer=void 0,this.renderable=void 0,this.options=void 0;var r=n.sheet,i=n.Renderer;this.key=t,this.options=n,this.style=e,r?this.renderer=r.renderer:i&&(this.renderer=new i)}return t.prototype.prop=function(t,e,n){if(void 0===e)return this.style[t];var r=!!n&&n.force;if(!r&&this.style[t]===e)return this;var i=e;n&&!1===n.process||(i=this.options.jss.plugins.onChangeValue(e,t,this));var o=null==i||!1===i,a=t in this.style;if(o&&!a&&!r)return this;var u=o&&a;if(u?delete this.style[t]:this.style[t]=i,this.renderable&&this.renderer)return u?this.renderer.removeProperty(this.renderable,t):this.renderer.setProperty(this.renderable,t,i),this;var s=this.options.sheet;return s&&s.attached,this},t}(),_=function(t){function e(e,n,r){var i;(i=t.call(this,e,n,r)||this).selectorText=void 0,i.id=void 0,i.renderable=void 0;var o=r.selector,a=r.scoped,s=r.sheet,c=r.generateId;return o?i.selectorText=o:!1!==a&&(i.id=c(Object(u.a)(Object(u.a)(i)),s),i.selectorText="."+v(i.id)),i}Object(a.a)(e,t);var n=e.prototype;return n.applyTo=function(t){var e=this.renderer;if(e){var n=this.toJSON();for(var r in n)e.setProperty(t,r,n[r])}return this},n.toJSON=function(){var t={};for(var e in this.style){var n=this.style[e];"object"!==typeof n?t[e]=n:Array.isArray(n)&&(t[e]=h(n))}return t},n.toString=function(t){var e=this.options.sheet,n=!!e&&e.options.link?Object(r.a)({},t,{allowEmpty:!0}):t;return g(this.selectorText,this.style,n)},Object(o.a)(e,[{key:"selector",set:function(t){if(t!==this.selectorText){this.selectorText=t;var e=this.renderer,n=this.renderable;if(n&&e)e.setSelector(n,t)||e.replaceRule(n,this)}},get:function(){return this.selectorText}}]),e}(y),w={onCreateRule:function(t,e,n){return"@"===t[0]||n.parent&&"keyframes"===n.parent.type?null:new _(t,e,n)}},S={indent:1,children:!0},O=/@([\w-]+)/,x=function(){function t(t,e,n){this.type="conditional",this.at=void 0,this.key=void 0,this.query=void 0,this.rules=void 0,this.options=void 0,this.isProcessed=!1,this.renderable=void 0,this.key=t;var i=t.match(O);for(var o in this.at=i?i[1]:"unknown",this.query=n.name||"@"+this.at,this.options=n,this.rules=new G(Object(r.a)({},n,{parent:this})),e)this.rules.add(o,e[o]);this.rules.process()}var e=t.prototype;return e.getRule=function(t){return this.rules.get(t)},e.indexOf=function(t){return this.rules.indexOf(t)},e.addRule=function(t,e,n){var r=this.rules.add(t,e,n);return r?(this.options.jss.plugins.onProcessRule(r),r):null},e.toString=function(t){if(void 0===t&&(t=S),null==t.indent&&(t.indent=S.indent),null==t.children&&(t.children=S.children),!1===t.children)return this.query+" {}";var e=this.rules.toString(t);return e?this.query+" {\n"+e+"\n}":""},t}(),E=/@media|@supports\s+/,M={onCreateRule:function(t,e,n){return E.test(t)?new x(t,e,n):null}},T={indent:1,children:!0},$=/@keyframes\s+([\w-]+)/,A=function(){function t(t,e,n){this.type="keyframes",this.at="@keyframes",this.key=void 0,this.name=void 0,this.id=void 0,this.rules=void 0,this.options=void 0,this.isProcessed=!1,this.renderable=void 0;var i=t.match($);i&&i[1]?this.name=i[1]:this.name="noname",this.key=this.type+"-"+this.name,this.options=n;var o=n.scoped,a=n.sheet,u=n.generateId;for(var s in this.id=!1===o?this.name:v(u(this,a)),this.rules=new G(Object(r.a)({},n,{parent:this})),e)this.rules.add(s,e[s],Object(r.a)({},n,{parent:this}));this.rules.process()}return t.prototype.toString=function(t){if(void 0===t&&(t=T),null==t.indent&&(t.indent=T.indent),null==t.children&&(t.children=T.children),!1===t.children)return this.at+" "+this.id+" {}";var e=this.rules.toString(t);return e&&(e="\n"+e+"\n"),this.at+" "+this.id+" {"+e+"}"},t}(),k=/@keyframes\s+/,C=/\$([\w-]+)/g,I=function(t,e){return"string"===typeof t?t.replace(C,(function(t,n){return n in e?e[n]:t})):t},P=function(t,e,n){var r=t[e],i=I(r,n);i!==r&&(t[e]=i)},N={onCreateRule:function(t,e,n){return"string"===typeof t&&k.test(t)?new A(t,e,n):null},onProcessStyle:function(t,e,n){return"style"===e.type&&n?("animation-name"in t&&P(t,"animation-name",n.keyframes),"animation"in t&&P(t,"animation",n.keyframes),t):t},onChangeValue:function(t,e,n){var r=n.options.sheet;if(!r)return t;switch(e){case"animation":case"animation-name":return I(t,r.keyframes);default:return t}}},R=function(t){function e(){for(var e,n=arguments.length,r=new Array(n),i=0;i=this.index)e.push(t);else for(var r=0;rn)return void e.splice(r,0,t)},e.reset=function(){this.registry=[]},e.remove=function(t){var e=this.registry.indexOf(t);this.registry.splice(e,1)},e.toString=function(t){for(var e=void 0===t?{}:t,n=e.attached,r=Object(s.a)(e,["attached"]),i="",o=0;o0){var n=function(t,e){for(var n=0;ne.index&&r.options.insertionPoint===e.insertionPoint)return r}return null}(e,t);if(n&&n.renderer)return{parent:n.renderer.element.parentNode,node:n.renderer.element};if((n=function(t,e){for(var n=t.length-1;n>=0;n--){var r=t[n];if(r.attached&&r.options.insertionPoint===e.insertionPoint)return r}return null}(e,t))&&n.renderer)return{parent:n.renderer.element.parentNode,node:n.renderer.element.nextSibling}}var r=t.insertionPoint;if(r&&"string"===typeof r){var i=function(t){for(var e=ut(),n=0;nn?n:e},dt=function(){function t(t){this.getPropertyValue=rt,this.setProperty=it,this.removeProperty=ot,this.setSelector=at,this.element=void 0,this.sheet=void 0,this.hasInsertedRules=!1,this.cssRules=[],t&&Q.add(t),this.sheet=t;var e=this.sheet?this.sheet.options:{},n=e.media,r=e.meta,i=e.element;this.element=i||function(){var t=document.createElement("style");return t.textContent="\n",t}(),this.element.setAttribute("data-jss",""),n&&this.element.setAttribute("media",n),r&&this.element.setAttribute("data-meta",r);var o=ct();o&&this.element.setAttribute("nonce",o)}var e=t.prototype;return e.attach=function(){if(!this.element.parentNode&&this.sheet){!function(t,e){var n=e.insertionPoint,r=st(e);if(!1!==r&&r.parent)r.parent.insertBefore(t,r.node);else if(n&&"number"===typeof n.nodeType){var i=n,o=i.parentNode;o&&o.insertBefore(t,i.nextSibling)}else ut().appendChild(t)}(this.element,this.sheet.options);var t=Boolean(this.sheet&&this.sheet.deployed);this.hasInsertedRules&&t&&(this.hasInsertedRules=!1,this.deploy())}},e.detach=function(){if(this.sheet){var t=this.element.parentNode;t&&t.removeChild(this.element),this.sheet.options.link&&(this.cssRules=[],this.element.textContent="\n")}},e.deploy=function(){var t=this.sheet;t&&(t.options.link?this.insertRules(t.rules):this.element.textContent="\n"+t.toString()+"\n")},e.insertRules=function(t,e){for(var n=0;ne.maxLength)&&((void 0===e.length||n.length===e.length)&&n.every((function(e,n){try{return d(t,e,r)}catch(i){throw s(i,n)}}))))))}return t=l(t),e=e||{},n.toJSON=function(){var n="["+o(t)+"]";return void 0!==e.length?n+="{"+e.length+"}":void 0===e.minLength&&void 0===e.maxLength||(n+="{"+(void 0===e.minLength?0:e.minLength)+","+(void 0===e.maxLength?1/0:e.maxLength)+"}"),n},n},maybe:function t(e){function n(n,r){return i.Nil(n)||e(n,r,t)}return e=l(e),n.toJSON=function(){return"?"+o(e)},n},map:function(t,e){function n(n,r){if(!i.Object(n))return!1;if(i.Nil(n))return!1;for(var o in n){try{e&&d(e,o,r)}catch(u){throw s(u,o,"key")}try{var a=n[o];d(t,a,r)}catch(u){throw s(u,o)}}return!0}return t=l(t),e&&(e=l(e)),n.toJSON=e?function(){return"{"+o(e)+": "+o(t)+"}"}:function(){return"{"+o(t)+"}"},n},object:function(t){var e={};for(var n in t)e[n]=l(t[n]);function r(t,n){if(!i.Object(t))return!1;if(i.Nil(t))return!1;var r;try{for(r in e){d(e[r],t[r],n)}}catch(o){throw s(o,r)}if(n)for(r in t)if(!e[r])throw new u(void 0,r);return!0}return r.toJSON=function(){return o(e)},r},anyOf:function(){var t=[].slice.call(arguments).map(l);function e(e,n){return t.some((function(t){try{return d(t,e,n)}catch(r){return!1}}))}return e.toJSON=function(){return t.map(o).join("|")},e},allOf:function(){var t=[].slice.call(arguments).map(l);function e(e,n){return t.every((function(t){try{return d(t,e,n)}catch(r){return!1}}))}return e.toJSON=function(){return t.map(o).join(" & ")},e},quacksLike:function(t){function e(e){return t===c(e)}return e.toJSON=function(){return t},e},tuple:function(){var t=[].slice.call(arguments).map(l);function e(e,n){return!i.Nil(e)&&(!i.Nil(e.length)&&((!n||e.length===t.length)&&t.every((function(t,r){try{return d(t,e[r],n)}catch(i){throw s(i,r)}}))))}return e.toJSON=function(){return"("+t.map(o).join(", ")+")"},e},value:function(t){function e(e){return e===t}return e.toJSON=function(){return t},e}};function l(t){if(i.String(t))return"?"===t[0]?f.maybe(t.slice(1)):i[t]||f.quacksLike(t);if(t&&i.Object(t)){if(i.Array(t)){if(1!==t.length)throw new TypeError("Expected compile() parameter of type Array of length 1");return f.arrayOf(t[0])}return f.object(t)}return i.Function(t)?t:f.value(t)}function d(t,e,n,r){if(i.Function(t)){if(t(e,n))return!0;throw new a(r||t,e)}return d(l(t),e,n)}for(var h in f.oneOf=f.anyOf,i)d[h]=i[h];for(h in f)d[h]=f[h];var p=n(781);for(h in p)d[h]=p[h];d.compile=l,d.TfTypeError=a,d.TfPropertyTypeError=u,t.exports=d},function(t,e,n){"use strict";(function(e){var r=n(113),i=n(52),o=n(49),a=function(t){for(var n=e.alloc(t.length),r=0;rt.size?n=r.trim(n,o):o0&&0===(127&t[t.length-1])&&(t.length<=1||0===(128&t[t.length-2])))throw new Error("non-minimally encoded script number");return r.fromSM(t,{endian:"little"})},r.prototype.toScriptNumBuffer=function(){return this.toSM({endian:"little"})},r.trim=function(t,e){return t.slice(e-t.length,t.length)},r.pad=function(t,n,r){for(var i=e.alloc(r),o=0;o=0}}},function(t,e){function n(){return t.exports=n=Object.assign||function(t){for(var e=1;e>>2];t.sigBytes-=e}},g=(n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:h,padding:p}),reset:function(){f.reset.call(this);var t=this.cfg,e=t.iv,n=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var r=n.createEncryptor;else r=n.createDecryptor,this._minBufferSize=1;this._mode&&this._mode.__creator==r?this._mode.init(this,e&&e.words):(this._mode=r.call(n,this,e&&e.words),this._mode.__creator=r)},_doProcessBlock:function(t,e){this._mode.processBlock(t,e)},_doFinalize:function(){var t=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){t.pad(this._data,this.blockSize);var e=this._process(!0)}else e=this._process(!0),t.unpad(e);return e},blockSize:4}),n.CipherParams=r.extend({init:function(t){this.mixIn(t)},toString:function(t){return(t||this.formatter).stringify(this)}})),m=(e.format={}).OpenSSL={stringify:function(t){var e=t.ciphertext,n=t.salt;if(n)var r=i.create([1398893684,1701076831]).concat(n).concat(e);else r=e;return r.toString(s)},parse:function(t){var e=s.parse(t),n=e.words;if(1398893684==n[0]&&1701076831==n[1]){var r=i.create(n.slice(2,4));n.splice(0,4),e.sigBytes-=16}return g.create({ciphertext:e,salt:r})}},b=n.SerializableCipher=r.extend({cfg:r.extend({format:m}),encrypt:function(t,e,n,r){r=this.cfg.extend(r);var i=t.createEncryptor(n,r),o=i.finalize(e),a=i.cfg;return g.create({ciphertext:o,key:n,iv:a.iv,algorithm:t,mode:a.mode,padding:a.padding,blockSize:t.blockSize,formatter:r.format})},decrypt:function(t,e,n,r){return r=this.cfg.extend(r),e=this._parse(e,r.format),t.createDecryptor(n,r).finalize(e.ciphertext)},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),v=(e.kdf={}).OpenSSL={execute:function(t,e,n,r){r||(r=i.random(8));var o=c.create({keySize:e+n}).compute(t,r),a=i.create(o.words.slice(e),4*n);return o.sigBytes=4*e,g.create({key:o,iv:a,salt:r})}},y=n.PasswordBasedCipher=b.extend({cfg:b.cfg.extend({kdf:v}),encrypt:function(t,e,n,r){var i=(r=this.cfg.extend(r)).kdf.execute(n,t.keySize,t.ivSize);r.iv=i.iv;var o=b.encrypt.call(this,t,e,i.key,r);return o.mixIn(i),o},decrypt:function(t,e,n,r){r=this.cfg.extend(r),e=this._parse(e,r.format);var i=r.kdf.execute(n,t.keySize,t.ivSize,e.salt);return r.iv=i.iv,b.decrypt.call(this,t,e,i.key,r)}})}()))}()},function(t,e,n){"use strict";(function(e){var r=n(481),i=n(63),o=n(52),a=t.exports;a.sha1=function(t){return o.checkArgument(i.isBuffer(t)),r.createHash("sha1").update(t).digest()},a.sha1.blocksize=512,a.sha256=function(t){return o.checkArgument(i.isBuffer(t)),r.createHash("sha256").update(t).digest()},a.sha256.blocksize=512,a.sha256sha256=function(t){return o.checkArgument(i.isBuffer(t)),a.sha256(a.sha256(t))},a.ripemd160=function(t){return o.checkArgument(i.isBuffer(t)),r.createHash("ripemd160").update(t).digest()},a.sha256ripemd160=function(t){return o.checkArgument(i.isBuffer(t)),a.ripemd160(a.sha256(t))},a.sha512=function(t){return o.checkArgument(i.isBuffer(t)),r.createHash("sha512").update(t).digest()},a.sha512.blocksize=1024,a.hmac=function(t,n,r){o.checkArgument(i.isBuffer(n)),o.checkArgument(i.isBuffer(r)),o.checkArgument(t.blocksize);var a=t.blocksize/8;if(r.length>a)r=t(r);else if(r0&&void 0!==arguments[0]?arguments[0]:["all"],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.duration,u=void 0===n?o.standard:n,s=e.easing,c=void 0===s?i.easeInOut:s,f=e.delay,l=void 0===f?0:f;Object(r.a)(e,["duration","easing","delay"]);return(Array.isArray(t)?t:[t]).map((function(t){return"".concat(t," ").concat("string"===typeof u?u:a(u)," ").concat(c," ").concat("string"===typeof l?l:a(l))})).join(",")},getAutoHeightDuration:function(t){if(!t)return 0;var e=t/36;return Math.round(10*(4+15*Math.pow(e,.25)+e/5))}}},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(526);var i=n(282),o=n(527);function a(t,e){return Object(r.a)(t)||function(t,e){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,u=t[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(s){i=!0,o=s}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return n}}(t,e)||Object(i.a)(t,e)||Object(o.a)()}},function(t,e,n){"use strict";n.d(e,"a",(function(){return c})),n.d(e,"b",(function(){return s})),n.d(e,"c",(function(){return u})),n.d(e,"d",(function(){return l})),n.d(e,"e",(function(){return d}));var r,i=n(1),o=n.n(i),a=n(31);function u(){return r||(r=o.a.createContext({})),r}var s,c=function(t){var e=t.client,n=t.children,r=u();return o.a.createElement(r.Consumer,null,(function(t){return void 0===t&&(t={}),e&&t.client!==e&&(t=Object.assign({},t,{client:e})),Object(a.b)(t.client,5),o.a.createElement(r.Provider,{value:t},n)}))};!function(t){t[t.Query=0]="Query",t[t.Mutation=1]="Mutation",t[t.Subscription=2]="Subscription"}(s||(s={}));var f=new Map;function l(t){var e;switch(t){case s.Query:e="Query";break;case s.Mutation:e="Mutation";break;case s.Subscription:e="Subscription"}return e}function d(t){var e,n,r=f.get(t);if(r)return r;Object(a.b)(!!t&&!!t.kind,1);var i=t.definitions.filter((function(t){return"FragmentDefinition"===t.kind})),o=t.definitions.filter((function(t){return"OperationDefinition"===t.kind&&"query"===t.operation})),u=t.definitions.filter((function(t){return"OperationDefinition"===t.kind&&"mutation"===t.operation})),c=t.definitions.filter((function(t){return"OperationDefinition"===t.kind&&"subscription"===t.operation}));Object(a.b)(!i.length||o.length||u.length||c.length,2),Object(a.b)(o.length+u.length+c.length<=1,3),n=o.length?s.Query:s.Mutation,o.length||u.length||(n=s.Subscription);var l=o.length?o:u.length?u:c;Object(a.b)(1===l.length,4);var d=l[0];e=d.variableDefinitions||[];var h={name:d.name&&"Name"===d.name.kind?d.name.value:"data",type:n,variables:e};return f.set(t,h),h}},function(t,e,n){"use strict";e.a=Array.isArray||function(t){return null!=t&&t.length>=0&&"[object Array]"===Object.prototype.toString.call(t)}},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e){function n(t,e){if(!t)throw new Error(e||"Assertion failed")}t.exports=n,n.equal=function(t,e,n){if(t!=e)throw new Error(n||"Assertion failed: "+t+" != "+e)}},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n(401),i=(n(1),n(136));function o(){return Object(r.a)()||i.a}},function(t,e,n){"use strict";var r=n(16),i=n(71),o=n(138),a=n(75),u=n(64),s=function(){function t(t,e){this.xf=e,this.f=t}return t.prototype["@@transducer/init"]=u.a.init,t.prototype["@@transducer/result"]=u.a.result,t.prototype["@@transducer/step"]=function(t,e){return this.xf["@@transducer/step"](t,this.f(e))},t}(),c=Object(r.a)((function(t,e){return new s(t,e)})),f=n(85),l=n(98),d=Object(r.a)(Object(i.a)(["fantasy-land/map","map"],c,(function(t,e){switch(Object.prototype.toString.call(e)){case"[object Function]":return Object(f.a)(e.length,(function(){return t.call(this,e.apply(this,arguments))}));case"[object Object]":return Object(a.a)((function(n,r){return n[r]=t(e[r]),n}),{},Object(l.a)(e));default:return Object(o.a)(t,e)}})));e.a=d},function(t,e,n){"use strict";var r=n(32),i=n(61),o=n(289),a=!{toString:null}.propertyIsEnumerable("toString"),u=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],s=function(){return arguments.propertyIsEnumerable("length")}(),c=function(t,e){for(var n=0;n=0;)e=u[n],Object(i.a)(e,t)&&!c(r,e)&&(r[r.length]=e),n-=1;return r})):Object(r.a)((function(t){return Object(t)!==t?[]:Object.keys(t)}));e.a=f},function(t,e,n){"use strict";n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return a}));var r=n(287),i={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]},o=Object.freeze({});function a(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i,a=void 0,c=Array.isArray(t),f=[t],l=-1,d=[],h=void 0,p=void 0,g=void 0,m=[],b=[],v=t;do{var y=++l===f.length,_=y&&0!==d.length;if(y){if(p=0===b.length?void 0:m[m.length-1],h=g,g=b.pop(),_){if(c)h=h.slice();else{for(var w={},S=0,O=Object.keys(h);S72)return!1;if(48!=t[0])return!1;if(t[1]!=t.length-2)return!1;if(2!=t[2])return!1;var e=t[3];if(0==e)return!1;if(128&t[4])return!1;if(e>t.length-7)return!1;if(e>1&&0==t[4]&&!(128&t[5]))return!1;var n=e+4;if(2!=t[n])return!1;var r=t[n+1];return 0!=r&&(!(128&t[n+2])&&(n+r+2==t.length&&!(r>1&&0==t[n+2]&&!(128&t[n+3]))))},s.prototype.hasLowS=function(){return!this.s.lt(new r(1))&&!this.s.gt(new r("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0","hex"))},s.prototype.hasDefinedHashtype=function(){if(!u.isNaturalNumber(this.nhashtype))return!1;var t=~(s.SIGHASH_FORKID|s.SIGHASH_ANYONECANPAY)>>>0,e=this.nhashtype&t;return!(es.SIGHASH_SINGLE)},s.prototype.toTxFormat=function(t){var n=this.toDER(t),r=e.alloc(1);return r.writeUInt8(this.nhashtype,0),e.concat([n,r])},s.SIGHASH_ALL=1,s.SIGHASH_NONE=2,s.SIGHASH_SINGLE=3,s.SIGHASH_FORKID=64,s.SIGHASH_ANYONECANPAY=128,t.exports=s}).call(this,n(29).Buffer)},function(t,e,n){"use strict";(function(e){var r=n(78),i=n(186),o=n(84),a=n(79),u=n(159),s=n(49),c=n(52);function f(t,e){if(!(this instanceof f))return new f(t,e);if(c.checkArgument(t,"First argument is required, please include public key data."),t instanceof f)return t;e=e||{};var n=this._classifyArgs(t,e);return n.point.validate(),a.defineImmutable(this,{point:n.point,compressed:n.compressed,network:n.network||u.defaultNetwork}),this}f.prototype._classifyArgs=function(t,n){var r={compressed:s.isUndefined(n.compressed)||n.compressed};if(t instanceof i)r.point=t;else if(t.x&&t.y)r=f._transformObject(t);else if("string"===typeof t)r=f._transformDER(e.from(t,"hex"));else if(f._isBuffer(t))r=f._transformDER(t);else{if(!f._isPrivateKey(t))throw new TypeError("First argument is an unrecognized data format.");r=f._transformPrivateKey(t)}return r.network||(r.network=s.isUndefined(n.network)?void 0:u.get(n.network)),r},f._isPrivateKey=function(t){return t instanceof n(273)},f._isBuffer=function(t){return t instanceof e||t instanceof Uint8Array},f._transformPrivateKey=function(t){c.checkArgument(f._isPrivateKey(t),"Must be an instance of PrivateKey");var e={};return e.point=i.getG().mul(t.bn),e.compressed=t.compressed,e.network=t.network,e},f._transformDER=function(t,e){c.checkArgument(f._isBuffer(t),"Must be a hex buffer of DER encoded public key");var n,o,a,u,l={};if(e=!!s.isUndefined(e)||e,4!==t[0]&&(e||6!==t[0]&&7!==t[0]))if(3===t[0])a=t.slice(1),n=new r(a),(l=f._transformX(!0,n)).compressed=!0;else{if(2!==t[0])throw new TypeError("Invalid DER format public key");a=t.slice(1),n=new r(a),(l=f._transformX(!1,n)).compressed=!0}else{if(a=t.slice(1,33),u=t.slice(33,65),32!==a.length||32!==u.length||65!==t.length)throw new TypeError("Length of x and y must be 32 bytes");n=new r(a),o=new r(u),l.point=new i(n,o),l.compressed=!1}return l},f._transformX=function(t,e){c.checkArgument("boolean"===typeof t,"Must specify whether y is odd or not (true or false)");var n={};return n.point=i.fromX(t,e),n},f._transformObject=function(t){var e=new r(t.x,"hex"),n=new r(t.y,"hex");return new f(new i(e,n),{compressed:t.compressed})},f.fromPrivateKey=function(t){c.checkArgument(f._isPrivateKey(t),"Must be an instance of PrivateKey");var e=f._transformPrivateKey(t);return new f(e.point,{compressed:e.compressed,network:e.network})},f.fromDER=f.fromBuffer=function(t,e){c.checkArgument(f._isBuffer(t),"Must be a hex buffer of DER encoded public key");var n=f._transformDER(t,e);return new f(n.point,{compressed:n.compressed})},f.fromPoint=function(t,e){return c.checkArgument(t instanceof i,"First argument must be an instance of Point."),new f(t,{compressed:e})},f.fromString=function(t,n){var r=e.from(t,n||"hex"),i=f._transformDER(r);return new f(i.point,{compressed:i.compressed})},f.fromX=function(t,e){var n=f._transformX(t,e);return new f(n.point,{compressed:n.compressed})},f.getValidationError=function(t){var e;try{new f(t)}catch(n){e=n}return e},f.isValid=function(t){return!f.getValidationError(t)},f.prototype.toObject=f.prototype.toJSON=function(){return{x:this.point.getX().toString("hex",2),y:this.point.getY().toString("hex",2),compressed:this.compressed}},f.prototype.toBuffer=f.prototype.toDER=function(){var t,n=this.point.getX(),r=this.point.getY(),i=n.toBuffer({size:32}),o=r.toBuffer({size:32});return this.compressed?(t=o[o.length-1]%2?e.from([3]):e.from([2]),e.concat([t,i])):(t=e.from([4]),e.concat([t,i,o]))},f.prototype._getID=function(){return o.sha256ripemd160(this.toBuffer())},f.prototype.toAddress=function(t){return n(187).fromPublicKey(this,t||this.network)},f.prototype.toString=function(){return this.toDER().toString("hex")},f.prototype.inspect=function(){return""},t.exports=f}).call(this,n(29).Buffer)},function(t,e,n){var r=n(726).runInContext();t.exports=n(727)(r,r)},function(t,e,n){"use strict";t.exports=n(615)},function(t,e,n){"use strict";var r=n(164),i=n(41),o=Object(i.a)(Object(r.a)("slice",(function(t,e,n){return Array.prototype.slice.call(n,t,e)})));e.a=o},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n(1),i=n(191);function o(){return r.useContext(i.a)}},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(300);function i(t,e){return Object(r.a)(e,t,0)>=0}},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(245);var i=n(525),o=n(282);function a(t){return function(t){if(Array.isArray(t))return Object(r.a)(t)}(t)||Object(i.a)(t)||Object(o.a)(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n(25),i=n(22);function o(t,e){Object(i.a)(2,arguments);var n=Object(r.a)(t),o=Object(r.a)(e),a=n.getTime()-o.getTime();return a<0?-1:a>0?1:a}},function(t,e,n){"use strict";function r(t){var e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return e.setUTCFullYear(t.getFullYear()),t.getTime()-e.getTime()}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";n.r(e),n.d(e,"ApolloLink",(function(){return y})),n.d(e,"concat",(function(){return v})),n.d(e,"createOperation",(function(){return d})),n.d(e,"empty",(function(){return g})),n.d(e,"execute",(function(){return _})),n.d(e,"from",(function(){return m})),n.d(e,"fromError",(function(){return l})),n.d(e,"fromPromise",(function(){return f})),n.d(e,"makePromise",(function(){return c})),n.d(e,"split",(function(){return b})),n.d(e,"toPromise",(function(){return s}));var r=n(82);n.d(e,"Observable",(function(){return r.a}));var i=n(31),o=n(14),a=n(27);n.d(e,"getOperationName",(function(){return a.n}));!function(t){function e(e,n){var r=t.call(this,e)||this;return r.link=n,r}Object(o.c)(e,t)}(Error);function u(t){return t.request.length<=1}function s(t){var e=!1;return new Promise((function(n,r){t.subscribe({next:function(t){e||(e=!0,n(t))},error:r})}))}var c=s;function f(t){return new r.a((function(e){t.then((function(t){e.next(t),e.complete()})).catch(e.error.bind(e))}))}function l(t){return new r.a((function(e){e.error(t)}))}function d(t,e){var n=Object(o.a)({},t);return Object.defineProperty(e,"setContext",{enumerable:!1,value:function(t){n="function"===typeof t?Object(o.a)({},n,t(n)):Object(o.a)({},n,t)}}),Object.defineProperty(e,"getContext",{enumerable:!1,value:function(){return Object(o.a)({},n)}}),Object.defineProperty(e,"toKey",{enumerable:!1,value:function(){return function(t){var e=t.query,n=t.variables,r=t.operationName;return JSON.stringify([r,e,n])}(e)}}),e}function h(t,e){return e?e(t):r.a.of()}function p(t){return"function"===typeof t?new y(t):t}function g(){return new y((function(){return r.a.of()}))}function m(t){return 0===t.length?g():t.map(p).reduce((function(t,e){return t.concat(e)}))}function b(t,e,n){var i=p(e),o=p(n||new y(h));return u(i)&&u(o)?new y((function(e){return t(e)?i.request(e)||r.a.of():o.request(e)||r.a.of()})):new y((function(e,n){return t(e)?i.request(e,n)||r.a.of():o.request(e,n)||r.a.of()}))}var v=function(t,e){var n=p(t);if(u(n))return n;var i=p(e);return u(i)?new y((function(t){return n.request(t,(function(t){return i.request(t)||r.a.of()}))||r.a.of()})):new y((function(t,e){return n.request(t,(function(t){return i.request(t,e)||r.a.of()}))||r.a.of()}))},y=function(){function t(t){t&&(this.request=t)}return t.prototype.split=function(e,n,r){return this.concat(b(e,n,r||new t(h)))},t.prototype.concat=function(t){return v(this,t)},t.prototype.request=function(t,e){throw new i.a(1)},t.empty=g,t.from=m,t.split=b,t.execute=_,t}();function _(t,e){return t.request(d(e.context,function(t){var e={variables:t.variables||{},extensions:t.extensions||{},operationName:t.operationName,query:t.query};return e.operationName||(e.operationName="string"!==typeof e.query?Object(a.n)(e.query):""),e}(function(t){for(var e=["query","operationName","variables","extensions","context"],n=0,r=Object.keys(t);n=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return r}function s(t,e,n,r){for(var i=0,o=Math.min(t.length,n),a=e;a=49?u-49+10:u>=17?u-17+10:u}return i}o.isBN=function(t){return t instanceof o||null!==t&&"object"===typeof t&&t.constructor.wordSize===o.wordSize&&Array.isArray(t.words)},o.max=function(t,e){return t.cmp(e)>0?t:e},o.min=function(t,e){return t.cmp(e)<0?t:e},o.prototype._init=function(t,e,n){if("number"===typeof t)return this._initNumber(t,e,n);if("object"===typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&i++,16===e?this._parseHex(t,i):this._parseBase(t,e,i),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initNumber=function(t,e,n){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(r(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initArray=function(t,e,n){if(r("number"===typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)a=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[o]|=a<>>26-u&67108863,(u+=24)>=26&&(u-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-u&67108863,(u+=24)>=26&&(u-=26,o++);return this.strip()},o.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=6)i=u(t,n,n+6),this.words[r]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,r++);n+6!==e&&(i=u(t,e,n+6),this.words[r]|=i<>>26-o&4194303),this.strip()},o.prototype._parseBase=function(t,e,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=e)r++;r--,i=i/e|0;for(var o=t.length-n,a=o%r,u=Math.min(o,o-a)+n,c=0,f=n;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(t,e,n){n.negative=e.negative^t.negative;var r=t.length+e.length|0;n.length=r,r=r-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,u=67108863&a,s=a/67108864|0;n.words[0]=u;for(var c=1;c>>26,l=67108863&s,d=Math.min(c,e.length-1),h=Math.max(0,c-t.length+1);h<=d;h++){var p=c-h|0;f+=(a=(i=0|t.words[p])*(o=0|e.words[h])+l)/67108864|0,l=67108863&a}n.words[c]=0|l,s=0|f}return 0!==s?n.words[c]=0|s:n.length--,n.strip()}o.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?c[6-s.length]+s+n:s+n,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(n=o.toString(16)+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var d=f[t],h=l[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(h).toString(t);n=(p=p.idivn(h)).isZero()?g+n:c[d-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(t,e){return r("undefined"!==typeof a),this.toArrayLike(a,t,e)},o.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},o.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var a,u,s="le"===e,c=new t(o),f=this.clone();if(s){for(u=0;!f.isZero();u++)a=f.andln(255),f.iushrn(8),c[u]=a;for(;u=4096&&(n+=13,e>>>=13),e>=64&&(n+=7,e>>>=7),e>=8&&(n+=4,e>>>=4),e>=2&&(n+=2,e>>>=2),n+e},o.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,n=0;return 0===(8191&e)&&(n+=13,e>>>=13),0===(127&e)&&(n+=7,e>>>=7),0===(15&e)&&(n+=4,e>>>=4),0===(3&e)&&(n+=2,e>>>=2),0===(1&e)&&n++,n},o.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},o.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},o.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},o.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},o.prototype.iuxor=function(t){var e,n;this.length>t.length?(e=this,n=t):(e=t,n=this);for(var r=0;rt.length?this.clone().ixor(t):t.clone().ixor(this)},o.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},o.prototype.inotn=function(t){r("number"===typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(t){return this.clone().inotn(t)},o.prototype.setn=function(t,e){r("number"===typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(n=this,r=t):(n=t,r=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},o.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n,r,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=t):(n=t,r=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,h=0|a[1],p=8191&h,g=h>>>13,m=0|a[2],b=8191&m,v=m>>>13,y=0|a[3],_=8191&y,w=y>>>13,S=0|a[4],O=8191&S,x=S>>>13,E=0|a[5],M=8191&E,T=E>>>13,$=0|a[6],A=8191&$,k=$>>>13,C=0|a[7],I=8191&C,P=C>>>13,N=0|a[8],R=8191&N,j=N>>>13,D=0|a[9],L=8191&D,F=D>>>13,B=0|u[0],U=8191&B,z=B>>>13,H=0|u[1],V=8191&H,q=H>>>13,W=0|u[2],G=8191&W,K=W>>>13,Y=0|u[3],Z=8191&Y,Q=Y>>>13,X=0|u[4],J=8191&X,tt=X>>>13,et=0|u[5],nt=8191&et,rt=et>>>13,it=0|u[6],ot=8191&it,at=it>>>13,ut=0|u[7],st=8191&ut,ct=ut>>>13,ft=0|u[8],lt=8191&ft,dt=ft>>>13,ht=0|u[9],pt=8191&ht,gt=ht>>>13;n.negative=t.negative^e.negative,n.length=19;var mt=(c+(r=Math.imul(l,U))|0)+((8191&(i=(i=Math.imul(l,z))+Math.imul(d,U)|0))<<13)|0;c=((o=Math.imul(d,z))+(i>>>13)|0)+(mt>>>26)|0,mt&=67108863,r=Math.imul(p,U),i=(i=Math.imul(p,z))+Math.imul(g,U)|0,o=Math.imul(g,z);var bt=(c+(r=r+Math.imul(l,V)|0)|0)+((8191&(i=(i=i+Math.imul(l,q)|0)+Math.imul(d,V)|0))<<13)|0;c=((o=o+Math.imul(d,q)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,r=Math.imul(b,U),i=(i=Math.imul(b,z))+Math.imul(v,U)|0,o=Math.imul(v,z),r=r+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(g,V)|0,o=o+Math.imul(g,q)|0;var vt=(c+(r=r+Math.imul(l,G)|0)|0)+((8191&(i=(i=i+Math.imul(l,K)|0)+Math.imul(d,G)|0))<<13)|0;c=((o=o+Math.imul(d,K)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,r=Math.imul(_,U),i=(i=Math.imul(_,z))+Math.imul(w,U)|0,o=Math.imul(w,z),r=r+Math.imul(b,V)|0,i=(i=i+Math.imul(b,q)|0)+Math.imul(v,V)|0,o=o+Math.imul(v,q)|0,r=r+Math.imul(p,G)|0,i=(i=i+Math.imul(p,K)|0)+Math.imul(g,G)|0,o=o+Math.imul(g,K)|0;var yt=(c+(r=r+Math.imul(l,Z)|0)|0)+((8191&(i=(i=i+Math.imul(l,Q)|0)+Math.imul(d,Z)|0))<<13)|0;c=((o=o+Math.imul(d,Q)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,r=Math.imul(O,U),i=(i=Math.imul(O,z))+Math.imul(x,U)|0,o=Math.imul(x,z),r=r+Math.imul(_,V)|0,i=(i=i+Math.imul(_,q)|0)+Math.imul(w,V)|0,o=o+Math.imul(w,q)|0,r=r+Math.imul(b,G)|0,i=(i=i+Math.imul(b,K)|0)+Math.imul(v,G)|0,o=o+Math.imul(v,K)|0,r=r+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,Q)|0)+Math.imul(g,Z)|0,o=o+Math.imul(g,Q)|0;var _t=(c+(r=r+Math.imul(l,J)|0)|0)+((8191&(i=(i=i+Math.imul(l,tt)|0)+Math.imul(d,J)|0))<<13)|0;c=((o=o+Math.imul(d,tt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,r=Math.imul(M,U),i=(i=Math.imul(M,z))+Math.imul(T,U)|0,o=Math.imul(T,z),r=r+Math.imul(O,V)|0,i=(i=i+Math.imul(O,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,r=r+Math.imul(_,G)|0,i=(i=i+Math.imul(_,K)|0)+Math.imul(w,G)|0,o=o+Math.imul(w,K)|0,r=r+Math.imul(b,Z)|0,i=(i=i+Math.imul(b,Q)|0)+Math.imul(v,Z)|0,o=o+Math.imul(v,Q)|0,r=r+Math.imul(p,J)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(g,J)|0,o=o+Math.imul(g,tt)|0;var wt=(c+(r=r+Math.imul(l,nt)|0)|0)+((8191&(i=(i=i+Math.imul(l,rt)|0)+Math.imul(d,nt)|0))<<13)|0;c=((o=o+Math.imul(d,rt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,r=Math.imul(A,U),i=(i=Math.imul(A,z))+Math.imul(k,U)|0,o=Math.imul(k,z),r=r+Math.imul(M,V)|0,i=(i=i+Math.imul(M,q)|0)+Math.imul(T,V)|0,o=o+Math.imul(T,q)|0,r=r+Math.imul(O,G)|0,i=(i=i+Math.imul(O,K)|0)+Math.imul(x,G)|0,o=o+Math.imul(x,K)|0,r=r+Math.imul(_,Z)|0,i=(i=i+Math.imul(_,Q)|0)+Math.imul(w,Z)|0,o=o+Math.imul(w,Q)|0,r=r+Math.imul(b,J)|0,i=(i=i+Math.imul(b,tt)|0)+Math.imul(v,J)|0,o=o+Math.imul(v,tt)|0,r=r+Math.imul(p,nt)|0,i=(i=i+Math.imul(p,rt)|0)+Math.imul(g,nt)|0,o=o+Math.imul(g,rt)|0;var St=(c+(r=r+Math.imul(l,ot)|0)|0)+((8191&(i=(i=i+Math.imul(l,at)|0)+Math.imul(d,ot)|0))<<13)|0;c=((o=o+Math.imul(d,at)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,r=Math.imul(I,U),i=(i=Math.imul(I,z))+Math.imul(P,U)|0,o=Math.imul(P,z),r=r+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,r=r+Math.imul(M,G)|0,i=(i=i+Math.imul(M,K)|0)+Math.imul(T,G)|0,o=o+Math.imul(T,K)|0,r=r+Math.imul(O,Z)|0,i=(i=i+Math.imul(O,Q)|0)+Math.imul(x,Z)|0,o=o+Math.imul(x,Q)|0,r=r+Math.imul(_,J)|0,i=(i=i+Math.imul(_,tt)|0)+Math.imul(w,J)|0,o=o+Math.imul(w,tt)|0,r=r+Math.imul(b,nt)|0,i=(i=i+Math.imul(b,rt)|0)+Math.imul(v,nt)|0,o=o+Math.imul(v,rt)|0,r=r+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(g,ot)|0,o=o+Math.imul(g,at)|0;var Ot=(c+(r=r+Math.imul(l,st)|0)|0)+((8191&(i=(i=i+Math.imul(l,ct)|0)+Math.imul(d,st)|0))<<13)|0;c=((o=o+Math.imul(d,ct)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,r=Math.imul(R,U),i=(i=Math.imul(R,z))+Math.imul(j,U)|0,o=Math.imul(j,z),r=r+Math.imul(I,V)|0,i=(i=i+Math.imul(I,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,r=r+Math.imul(A,G)|0,i=(i=i+Math.imul(A,K)|0)+Math.imul(k,G)|0,o=o+Math.imul(k,K)|0,r=r+Math.imul(M,Z)|0,i=(i=i+Math.imul(M,Q)|0)+Math.imul(T,Z)|0,o=o+Math.imul(T,Q)|0,r=r+Math.imul(O,J)|0,i=(i=i+Math.imul(O,tt)|0)+Math.imul(x,J)|0,o=o+Math.imul(x,tt)|0,r=r+Math.imul(_,nt)|0,i=(i=i+Math.imul(_,rt)|0)+Math.imul(w,nt)|0,o=o+Math.imul(w,rt)|0,r=r+Math.imul(b,ot)|0,i=(i=i+Math.imul(b,at)|0)+Math.imul(v,ot)|0,o=o+Math.imul(v,at)|0,r=r+Math.imul(p,st)|0,i=(i=i+Math.imul(p,ct)|0)+Math.imul(g,st)|0,o=o+Math.imul(g,ct)|0;var xt=(c+(r=r+Math.imul(l,lt)|0)|0)+((8191&(i=(i=i+Math.imul(l,dt)|0)+Math.imul(d,lt)|0))<<13)|0;c=((o=o+Math.imul(d,dt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,r=Math.imul(L,U),i=(i=Math.imul(L,z))+Math.imul(F,U)|0,o=Math.imul(F,z),r=r+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(j,V)|0,o=o+Math.imul(j,q)|0,r=r+Math.imul(I,G)|0,i=(i=i+Math.imul(I,K)|0)+Math.imul(P,G)|0,o=o+Math.imul(P,K)|0,r=r+Math.imul(A,Z)|0,i=(i=i+Math.imul(A,Q)|0)+Math.imul(k,Z)|0,o=o+Math.imul(k,Q)|0,r=r+Math.imul(M,J)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(T,J)|0,o=o+Math.imul(T,tt)|0,r=r+Math.imul(O,nt)|0,i=(i=i+Math.imul(O,rt)|0)+Math.imul(x,nt)|0,o=o+Math.imul(x,rt)|0,r=r+Math.imul(_,ot)|0,i=(i=i+Math.imul(_,at)|0)+Math.imul(w,ot)|0,o=o+Math.imul(w,at)|0,r=r+Math.imul(b,st)|0,i=(i=i+Math.imul(b,ct)|0)+Math.imul(v,st)|0,o=o+Math.imul(v,ct)|0,r=r+Math.imul(p,lt)|0,i=(i=i+Math.imul(p,dt)|0)+Math.imul(g,lt)|0,o=o+Math.imul(g,dt)|0;var Et=(c+(r=r+Math.imul(l,pt)|0)|0)+((8191&(i=(i=i+Math.imul(l,gt)|0)+Math.imul(d,pt)|0))<<13)|0;c=((o=o+Math.imul(d,gt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,r=Math.imul(L,V),i=(i=Math.imul(L,q))+Math.imul(F,V)|0,o=Math.imul(F,q),r=r+Math.imul(R,G)|0,i=(i=i+Math.imul(R,K)|0)+Math.imul(j,G)|0,o=o+Math.imul(j,K)|0,r=r+Math.imul(I,Z)|0,i=(i=i+Math.imul(I,Q)|0)+Math.imul(P,Z)|0,o=o+Math.imul(P,Q)|0,r=r+Math.imul(A,J)|0,i=(i=i+Math.imul(A,tt)|0)+Math.imul(k,J)|0,o=o+Math.imul(k,tt)|0,r=r+Math.imul(M,nt)|0,i=(i=i+Math.imul(M,rt)|0)+Math.imul(T,nt)|0,o=o+Math.imul(T,rt)|0,r=r+Math.imul(O,ot)|0,i=(i=i+Math.imul(O,at)|0)+Math.imul(x,ot)|0,o=o+Math.imul(x,at)|0,r=r+Math.imul(_,st)|0,i=(i=i+Math.imul(_,ct)|0)+Math.imul(w,st)|0,o=o+Math.imul(w,ct)|0,r=r+Math.imul(b,lt)|0,i=(i=i+Math.imul(b,dt)|0)+Math.imul(v,lt)|0,o=o+Math.imul(v,dt)|0;var Mt=(c+(r=r+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,gt)|0)+Math.imul(g,pt)|0))<<13)|0;c=((o=o+Math.imul(g,gt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,r=Math.imul(L,G),i=(i=Math.imul(L,K))+Math.imul(F,G)|0,o=Math.imul(F,K),r=r+Math.imul(R,Z)|0,i=(i=i+Math.imul(R,Q)|0)+Math.imul(j,Z)|0,o=o+Math.imul(j,Q)|0,r=r+Math.imul(I,J)|0,i=(i=i+Math.imul(I,tt)|0)+Math.imul(P,J)|0,o=o+Math.imul(P,tt)|0,r=r+Math.imul(A,nt)|0,i=(i=i+Math.imul(A,rt)|0)+Math.imul(k,nt)|0,o=o+Math.imul(k,rt)|0,r=r+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(T,ot)|0,o=o+Math.imul(T,at)|0,r=r+Math.imul(O,st)|0,i=(i=i+Math.imul(O,ct)|0)+Math.imul(x,st)|0,o=o+Math.imul(x,ct)|0,r=r+Math.imul(_,lt)|0,i=(i=i+Math.imul(_,dt)|0)+Math.imul(w,lt)|0,o=o+Math.imul(w,dt)|0;var Tt=(c+(r=r+Math.imul(b,pt)|0)|0)+((8191&(i=(i=i+Math.imul(b,gt)|0)+Math.imul(v,pt)|0))<<13)|0;c=((o=o+Math.imul(v,gt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,r=Math.imul(L,Z),i=(i=Math.imul(L,Q))+Math.imul(F,Z)|0,o=Math.imul(F,Q),r=r+Math.imul(R,J)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(j,J)|0,o=o+Math.imul(j,tt)|0,r=r+Math.imul(I,nt)|0,i=(i=i+Math.imul(I,rt)|0)+Math.imul(P,nt)|0,o=o+Math.imul(P,rt)|0,r=r+Math.imul(A,ot)|0,i=(i=i+Math.imul(A,at)|0)+Math.imul(k,ot)|0,o=o+Math.imul(k,at)|0,r=r+Math.imul(M,st)|0,i=(i=i+Math.imul(M,ct)|0)+Math.imul(T,st)|0,o=o+Math.imul(T,ct)|0,r=r+Math.imul(O,lt)|0,i=(i=i+Math.imul(O,dt)|0)+Math.imul(x,lt)|0,o=o+Math.imul(x,dt)|0;var $t=(c+(r=r+Math.imul(_,pt)|0)|0)+((8191&(i=(i=i+Math.imul(_,gt)|0)+Math.imul(w,pt)|0))<<13)|0;c=((o=o+Math.imul(w,gt)|0)+(i>>>13)|0)+($t>>>26)|0,$t&=67108863,r=Math.imul(L,J),i=(i=Math.imul(L,tt))+Math.imul(F,J)|0,o=Math.imul(F,tt),r=r+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,rt)|0)+Math.imul(j,nt)|0,o=o+Math.imul(j,rt)|0,r=r+Math.imul(I,ot)|0,i=(i=i+Math.imul(I,at)|0)+Math.imul(P,ot)|0,o=o+Math.imul(P,at)|0,r=r+Math.imul(A,st)|0,i=(i=i+Math.imul(A,ct)|0)+Math.imul(k,st)|0,o=o+Math.imul(k,ct)|0,r=r+Math.imul(M,lt)|0,i=(i=i+Math.imul(M,dt)|0)+Math.imul(T,lt)|0,o=o+Math.imul(T,dt)|0;var At=(c+(r=r+Math.imul(O,pt)|0)|0)+((8191&(i=(i=i+Math.imul(O,gt)|0)+Math.imul(x,pt)|0))<<13)|0;c=((o=o+Math.imul(x,gt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,r=Math.imul(L,nt),i=(i=Math.imul(L,rt))+Math.imul(F,nt)|0,o=Math.imul(F,rt),r=r+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,r=r+Math.imul(I,st)|0,i=(i=i+Math.imul(I,ct)|0)+Math.imul(P,st)|0,o=o+Math.imul(P,ct)|0,r=r+Math.imul(A,lt)|0,i=(i=i+Math.imul(A,dt)|0)+Math.imul(k,lt)|0,o=o+Math.imul(k,dt)|0;var kt=(c+(r=r+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,gt)|0)+Math.imul(T,pt)|0))<<13)|0;c=((o=o+Math.imul(T,gt)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,r=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),r=r+Math.imul(R,st)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(j,st)|0,o=o+Math.imul(j,ct)|0,r=r+Math.imul(I,lt)|0,i=(i=i+Math.imul(I,dt)|0)+Math.imul(P,lt)|0,o=o+Math.imul(P,dt)|0;var Ct=(c+(r=r+Math.imul(A,pt)|0)|0)+((8191&(i=(i=i+Math.imul(A,gt)|0)+Math.imul(k,pt)|0))<<13)|0;c=((o=o+Math.imul(k,gt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,r=Math.imul(L,st),i=(i=Math.imul(L,ct))+Math.imul(F,st)|0,o=Math.imul(F,ct),r=r+Math.imul(R,lt)|0,i=(i=i+Math.imul(R,dt)|0)+Math.imul(j,lt)|0,o=o+Math.imul(j,dt)|0;var It=(c+(r=r+Math.imul(I,pt)|0)|0)+((8191&(i=(i=i+Math.imul(I,gt)|0)+Math.imul(P,pt)|0))<<13)|0;c=((o=o+Math.imul(P,gt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863,r=Math.imul(L,lt),i=(i=Math.imul(L,dt))+Math.imul(F,lt)|0,o=Math.imul(F,dt);var Pt=(c+(r=r+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,gt)|0)+Math.imul(j,pt)|0))<<13)|0;c=((o=o+Math.imul(j,gt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863;var Nt=(c+(r=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,gt))+Math.imul(F,pt)|0))<<13)|0;return c=((o=Math.imul(F,gt))+(i>>>13)|0)+(Nt>>>26)|0,Nt&=67108863,s[0]=mt,s[1]=bt,s[2]=vt,s[3]=yt,s[4]=_t,s[5]=wt,s[6]=St,s[7]=Ot,s[8]=xt,s[9]=Et,s[10]=Mt,s[11]=Tt,s[12]=$t,s[13]=At,s[14]=kt,s[15]=Ct,s[16]=It,s[17]=Pt,s[18]=Nt,0!==c&&(s[19]=c,n.length++),n};function p(t,e,n){return(new g).mulp(t,e,n)}function g(t,e){this.x=t,this.y=e}Math.imul||(h=d),o.prototype.mulTo=function(t,e){var n=this.length+t.length;return 10===this.length&&10===t.length?h(this,t,e):n<63?d(this,t,e):n<1024?function(t,e,n){n.negative=e.negative^t.negative,n.length=t.length+e.length;for(var r=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}n.words[o]=u,r=a,a=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,t,e):p(this,t,e)},g.prototype.makeRBT=function(t){for(var e=new Array(t),n=o.prototype._countBits(t)-1,r=0;r>=1;return r},g.prototype.permute=function(t,e,n,r,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,n[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=i/67108864|0,e+=o>>>26,this.words[n]=67108863&o}return 0!==e&&(this.words[n]=e,this.length++),this},o.prototype.muln=function(t){return this.clone().imuln(t)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),n=0;n>>i}return e}(t);if(0===e.length)return new o(1);for(var n=this,r=0;r=0);var e,n=t%26,i=(t-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var a=0;for(e=0;e>>26-n}a&&(this.words[e]=a,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),u=67108863^67108863>>>o<a)for(this.length-=a,c=0;c=0&&(0!==f||c>=i);c--){var l=0|this.words[c];this.words[c]=f<<26-o|l>>>o,f=l&u}return s&&0!==f&&(s.words[s.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},o.prototype.shln=function(t){return this.clone().ishln(t)},o.prototype.ushln=function(t){return this.clone().iushln(t)},o.prototype.shrn=function(t){return this.clone().ishrn(t)},o.prototype.ushrn=function(t){return this.clone().iushrn(t)},o.prototype.testn=function(t){r("number"===typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},o.prototype.isubn=function(t){if(r("number"===typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(s/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===u)return this.strip();for(r(-1===u),u=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(t,e){var n=(this.length,t.length),r=this.clone(),i=t,a=0|i.words[i.length-1];0!==(n=26-this._countBits(a))&&(i=i.ushln(n),r.iushln(n),a=0|i.words[i.length-1]);var u,s=r.length-i.length;if("mod"!==e){(u=new o(null)).length=s+1,u.words=new Array(u.length);for(var c=0;c=0;l--){var d=67108864*(0|r.words[i.length+l])+(0|r.words[i.length+l-1]);for(d=Math.min(d/a|0,67108863),r._ishlnsubmul(i,d,l);0!==r.negative;)d--,r.negative=0,r._ishlnsubmul(i,1,l),r.isZero()||(r.negative^=1);u&&(u.words[l]=d)}return u&&u.strip(),r.strip(),"div"!==e&&0!==n&&r.iushrn(n),{div:u||null,mod:r}},o.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===t.negative?(u=this.neg().divmod(t,e),"mod"!==e&&(i=u.div.neg()),"div"!==e&&(a=u.mod.neg(),n&&0!==a.negative&&a.iadd(t)),{div:i,mod:a}):0===this.negative&&0!==t.negative?(u=this.divmod(t.neg(),e),"mod"!==e&&(i=u.div.neg()),{div:i,mod:u.mod}):0!==(this.negative&t.negative)?(u=this.neg().divmod(t.neg(),e),"div"!==e&&(a=u.mod.neg(),n&&0!==a.negative&&a.isub(t)),{div:u.div,mod:a}):t.length>this.length||this.cmp(t)<0?{div:new o(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new o(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new o(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,a,u},o.prototype.div=function(t){return this.divmod(t,"div",!1).div},o.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},o.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},o.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var n=0!==e.div.negative?e.mod.isub(t):e.mod,r=t.ushrn(1),i=t.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},o.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},o.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},o.prototype.divn=function(t){return this.clone().idivn(t)},o.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new o(1),a=new o(0),u=new o(0),s=new o(1),c=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++c;for(var f=n.clone(),l=e.clone();!e.isZero();){for(var d=0,h=1;0===(e.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(e.iushrn(d);d-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(f),a.isub(l)),i.iushrn(1),a.iushrn(1);for(var p=0,g=1;0===(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(u.isOdd()||s.isOdd())&&(u.iadd(f),s.isub(l)),u.iushrn(1),s.iushrn(1);e.cmp(n)>=0?(e.isub(n),i.isub(u),a.isub(s)):(n.isub(e),u.isub(i),s.isub(a))}return{a:u,b:s,gcd:n.iushln(c)}},o.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,a=new o(1),u=new o(0),s=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,f=1;0===(e.words[0]&f)&&c<26;++c,f<<=1);if(c>0)for(e.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(s),a.iushrn(1);for(var l=0,d=1;0===(n.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(n.iushrn(l);l-- >0;)u.isOdd()&&u.iadd(s),u.iushrn(1);e.cmp(n)>=0?(e.isub(n),a.isub(u)):(n.isub(e),u.isub(a))}return(i=0===e.cmpn(1)?a:u).cmpn(0)<0&&i.iadd(t),i},o.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),n=t.clone();e.negative=0,n.negative=0;for(var r=0;e.isEven()&&n.isEven();r++)e.iushrn(1),n.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=e.cmp(n);if(i<0){var o=e;e=n,n=o}else if(0===i||0===n.cmpn(1))break;e.isub(n)}return n.iushln(r)},o.prototype.invm=function(t){return this.egcd(t).a.umod(t)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(t){return this.words[0]&t},o.prototype.bincn=function(t){r("number"===typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,u&=67108863,this.words[a]=u}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|t.words[n];if(r!==i){ri&&(e=1);break}}return e},o.prototype.gtn=function(t){return 1===this.cmpn(t)},o.prototype.gt=function(t){return 1===this.cmp(t)},o.prototype.gten=function(t){return this.cmpn(t)>=0},o.prototype.gte=function(t){return this.cmp(t)>=0},o.prototype.ltn=function(t){return-1===this.cmpn(t)},o.prototype.lt=function(t){return-1===this.cmp(t)},o.prototype.lten=function(t){return this.cmpn(t)<=0},o.prototype.lte=function(t){return this.cmp(t)<=0},o.prototype.eqn=function(t){return 0===this.cmpn(t)},o.prototype.eq=function(t){return 0===this.cmp(t)},o.red=function(t){return new S(t)},o.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(t){return this.red=t,this},o.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},o.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},o.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},o.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},o.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},o.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},o.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},o.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};function b(t,e){this.name=t,this.p=new o(e,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function v(){b.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function y(){b.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function _(){b.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){b.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(t){if("string"===typeof t){var e=o._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function O(t){S.call(this,t),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}b.prototype._tmp=function(){var t=new o(null);return t.words=new Array(Math.ceil(this.n/13)),t},b.prototype.ireduce=function(t){var e,n=t;do{this.split(n,this.tmp),e=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(e>this.n);var r=e0?n.isub(this.p):n.strip(),n},b.prototype.split=function(t,e){t.iushrn(this.n,0,e)},b.prototype.imulK=function(t){return t.imul(this.k)},i(v,b),v.prototype.split=function(t,e){for(var n=4194303,r=Math.min(t.length,9),i=0;i>>22,o=a}o>>>=22,t.words[i-10]=o,0===o&&t.length>10?t.length-=10:t.length-=9},v.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,n=0;n>>=26,t.words[n]=i,e=r}return 0!==e&&(t.words[t.length++]=e),t},o._prime=function(t){if(m[t])return m[t];var e;if("k256"===t)e=new v;else if("p224"===t)e=new y;else if("p192"===t)e=new _;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new w}return m[t]=e,e},S.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},S.prototype._verify2=function(t,e){r(0===(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},S.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},S.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},S.prototype.add=function(t,e){this._verify2(t,e);var n=t.add(e);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},S.prototype.iadd=function(t,e){this._verify2(t,e);var n=t.iadd(e);return n.cmp(this.m)>=0&&n.isub(this.m),n},S.prototype.sub=function(t,e){this._verify2(t,e);var n=t.sub(e);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},S.prototype.isub=function(t,e){this._verify2(t,e);var n=t.isub(e);return n.cmpn(0)<0&&n.iadd(this.m),n},S.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},S.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},S.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},S.prototype.isqr=function(t){return this.imul(t,t.clone())},S.prototype.sqr=function(t){return this.mul(t,t)},S.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2===1),3===e){var n=this.m.add(new o(1)).iushrn(2);return this.pow(t,n)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);r(!i.isZero());var u=new o(1).toRed(this),s=u.redNeg(),c=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new o(2*f*f).toRed(this);0!==this.pow(f,c).cmp(s);)f.redIAdd(s);for(var l=this.pow(f,i),d=this.pow(t,i.addn(1).iushrn(1)),h=this.pow(t,i),p=a;0!==h.cmp(u);){for(var g=h,m=0;0!==g.cmp(u);m++)g=g.redSqr();r(m=0;r--){for(var c=e.words[r],f=s-1;f>=0;f--){var l=c>>f&1;i!==n[0]&&(i=this.sqr(i)),0!==l||0!==a?(a<<=1,a|=l,(4===++u||0===r&&0===f)&&(i=this.mul(i,n[a]),u=0,a=0)):u=0}s=26}return i},S.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},S.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},o.mont=function(t){return new O(t)},i(O,S),O.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},O.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},O.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new o(0)._forceRed(this);var n=t.mul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},O.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,this)}).call(this,n(94)(t))},function(t,e,n){"use strict";var r=e,i=n(149),o=n(95),a=n(261);r.assert=o,r.toArray=a.toArray,r.zero2=a.zero2,r.toHex=a.toHex,r.encode=a.encode,r.getNAF=function(t,e,n){var r=new Array(Math.max(t.bitLength(),n)+1);r.fill(0);for(var i=1<(i>>1)-1?(i>>1)-s:s,o.isubn(u)):u=0,r[a]=u,o.iushrn(1)}return r},r.getJSF=function(t,e){var n=[[],[]];t=t.clone(),e=e.clone();for(var r,i=0,o=0;t.cmpn(-i)>0||e.cmpn(-o)>0;){var a,u,s=t.andln(3)+i&3,c=e.andln(3)+o&3;3===s&&(s=-1),3===c&&(c=-1),a=0===(1&s)?0:3!==(r=t.andln(7)+i&7)&&5!==r||2!==c?s:-s,n[0].push(a),u=0===(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[1].push(u),2*i===a+1&&(i=1-i),2*o===u+1&&(o=1-o),t.iushrn(1),e.iushrn(1)}return n},r.cachedProperty=function(t,e,n){var r="_"+e;t.prototype[e]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(t){return"string"===typeof t?r.toArray(t,"hex"):t},r.intFromLE=function(t){return new i(t,"hex","le")}},function(t,e,n){"use strict";var r=n(49);function i(t,e){return t.replace("{0}",e[0]).replace("{1}",e[1]).replace("{2}",e[2])}var o=function(t,e){var n=function(){if(r.isString(e.message))this.message=i(e.message,arguments);else{if(!r.isFunction(e.message))throw new Error("Invalid error definition for "+e.name);this.message=e.message.apply(null,arguments)}this.stack=this.message+"\n"+(new Error).stack};return(n.prototype=Object.create(t.prototype)).name=t.prototype.name+e.name,t[e.name]=n,e.errors&&a(n,e.errors),n},a=function(t,e){r.each(e,(function(e){o(t,e)}))},u={Error:function(){this.message="Internal error",this.stack=this.message+"\n"+(new Error).stack}};u.Error.prototype=Object.create(Error.prototype),u.Error.prototype.name="bitcore.Error";var s,c=n(872);s=u.Error,a(s,c),t.exports=u.Error,t.exports.extend=function(t){return o(u.Error,t)}},function(t,e,n){"use strict";var r=e,i=n(150),o=n(95),a=n(261);r.assert=o,r.toArray=a.toArray,r.zero2=a.zero2,r.toHex=a.toHex,r.encode=a.encode,r.getNAF=function(t,e,n){var r=new Array(Math.max(t.bitLength(),n)+1);r.fill(0);for(var i=1<(i>>1)-1?(i>>1)-s:s,o.isubn(u)):u=0,r[a]=u,o.iushrn(1)}return r},r.getJSF=function(t,e){var n=[[],[]];t=t.clone(),e=e.clone();for(var r,i=0,o=0;t.cmpn(-i)>0||e.cmpn(-o)>0;){var a,u,s=t.andln(3)+i&3,c=e.andln(3)+o&3;3===s&&(s=-1),3===c&&(c=-1),a=0===(1&s)?0:3!==(r=t.andln(7)+i&7)&&5!==r||2!==c?s:-s,n[0].push(a),u=0===(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[1].push(u),2*i===a+1&&(i=1-i),2*o===u+1&&(o=1-o),t.iushrn(1),e.iushrn(1)}return n},r.cachedProperty=function(t,e,n){var r="_"+e;t.prototype[e]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(t){return"string"===typeof t?r.toArray(t,"hex"):t},r.intFromLE=function(t){return new i(t,"hex","le")}},function(t,e,n){"use strict";var r=e,i=n(151),o=n(95),a=n(261);r.assert=o,r.toArray=a.toArray,r.zero2=a.zero2,r.toHex=a.toHex,r.encode=a.encode,r.getNAF=function(t,e,n){var r=new Array(Math.max(t.bitLength(),n)+1);r.fill(0);for(var i=1<(i>>1)-1?(i>>1)-s:s,o.isubn(u)):u=0,r[a]=u,o.iushrn(1)}return r},r.getJSF=function(t,e){var n=[[],[]];t=t.clone(),e=e.clone();for(var r,i=0,o=0;t.cmpn(-i)>0||e.cmpn(-o)>0;){var a,u,s=t.andln(3)+i&3,c=e.andln(3)+o&3;3===s&&(s=-1),3===c&&(c=-1),a=0===(1&s)?0:3!==(r=t.andln(7)+i&7)&&5!==r||2!==c?s:-s,n[0].push(a),u=0===(1&c)?0:3!==(r=e.andln(7)+o&7)&&5!==r||2!==s?c:-c,n[1].push(u),2*i===a+1&&(i=1-i),2*o===u+1&&(o=1-o),t.iushrn(1),e.iushrn(1)}return n},r.cachedProperty=function(t,e,n){var r="_"+e;t.prototype[e]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(t){return"string"===typeof t?r.toArray(t,"hex"):t},r.intFromLE=function(t){return new i(t,"hex","le")}},function(t,e,n){t.exports=n(512),t.exports.Interpreter=n(514)},function(t,e,n){"use strict";function r(t){var e=t.props,n=t.states,r=t.muiFormControl;return n.reduce((function(t,n){return t[n]=e[n],r&&"undefined"===typeof e[n]&&(t[n]=r[n]),t}),{})}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";var r=n(16);function i(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}var o=n(225);var a=n(61);var u="function"===typeof Object.is?Object.is:function(t,e){return t===e?0!==t||1/t===1/e:t!==t&&e!==e},s=n(98),c=n(247);function f(t,e,n,r){var a=i(t),u=i(e);function s(t,e){return l(t,e,n.slice(),r.slice())}return!Object(o.a)((function(t,e){return!Object(o.a)(s,e,t)}),u,a)}function l(t,e,n,r){if(u(t,e))return!0;var i=Object(c.a)(t);if(i!==Object(c.a)(e))return!1;if(null==t||null==e)return!1;if("function"===typeof t["fantasy-land/equals"]||"function"===typeof e["fantasy-land/equals"])return"function"===typeof t["fantasy-land/equals"]&&t["fantasy-land/equals"](e)&&"function"===typeof e["fantasy-land/equals"]&&e["fantasy-land/equals"](t);if("function"===typeof t.equals||"function"===typeof e.equals)return"function"===typeof t.equals&&t.equals(e)&&"function"===typeof e.equals&&e.equals(t);switch(i){case"Arguments":case"Array":case"Object":if("function"===typeof t.constructor&&"Promise"===function(t){var e=String(t).match(/^function (\w*)/);return null==e?"":e[1]}(t.constructor))return t===e;break;case"Boolean":case"Number":case"String":if(typeof t!==typeof e||!u(t.valueOf(),e.valueOf()))return!1;break;case"Date":if(!u(t.valueOf(),e.valueOf()))return!1;break;case"Error":return t.name===e.name&&t.message===e.message;case"RegExp":if(t.source!==e.source||t.global!==e.global||t.ignoreCase!==e.ignoreCase||t.multiline!==e.multiline||t.sticky!==e.sticky||t.unicode!==e.unicode)return!1}for(var o=n.length-1;o>=0;){if(n[o]===t)return r[o]===e;o-=1}switch(i){case"Map":return t.size===e.size&&f(t.entries(),e.entries(),n.concat([t]),r.concat([e]));case"Set":return t.size===e.size&&f(t.values(),e.values(),n.concat([t]),r.concat([e]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var d=Object(s.a)(t);if(d.length!==Object(s.a)(e).length)return!1;var h=n.concat([t]),p=r.concat([e]);for(o=d.length-1;o>=0;){var g=d[o];if(!Object(a.a)(g,e)||!l(e[g],t[g],h,p))return!1;o-=1}return!0}var d=Object(r.a)((function(t,e){return l(t,e,[],[])}));e.a=d},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n(1),i="undefined"!==typeof window?r.useLayoutEffect:r.useEffect;function o(t){var e=r.useRef(t);return i((function(){e.current=t})),r.useCallback((function(){return e.current.apply(void 0,arguments)}),[])}},function(t,e,n){"use strict";n.d(e,"b",(function(){return r})),n.d(e,"a",(function(){return i}));var r=function(t){return t.scrollTop};function i(t,e){var n=t.timeout,r=t.style,i=void 0===r?{}:r;return{duration:i.transitionDuration||"number"===typeof n?n:n[e.mode]||0,delay:i.transitionDelay}}},function(t,e,n){"use strict";n.d(e,"a",(function(){return O})),n.d(e,"b",(function(){return A})),n.d(e,"d",(function(){return C})),n.d(e,"c",(function(){return g})),n.d(e,"f",(function(){return m})),n.d(e,"e",(function(){return p}));var r=n(4);function i(t){return"/"===t.charAt(0)}function o(t,e){for(var n=e,r=n+1,i=t.length;r=0;d--){var h=a[d];"."===h?o(a,d):".."===h?(o(a,d),l++):l&&(o(a,d),l--)}if(!c)for(;l--;l)a.unshift("..");!c||""===a[0]||a[0]&&i(a[0])||a.unshift("");var p=a.join("/");return n&&"/"!==p.substr(-1)&&(p+="/"),p};function u(t){return t.valueOf?t.valueOf():Object.prototype.valueOf.call(t)}var s=function t(e,n){if(e===n)return!0;if(null==e||null==n)return!1;if(Array.isArray(e))return Array.isArray(n)&&e.length===n.length&&e.every((function(e,r){return t(e,n[r])}));if("object"===typeof e||"object"===typeof n){var r=u(e),i=u(n);return r!==e||i!==n?t(r,i):Object.keys(Object.assign({},e,n)).every((function(r){return t(e[r],n[r])}))}return!1},c=n(111);function f(t){return"/"===t.charAt(0)?t:"/"+t}function l(t){return"/"===t.charAt(0)?t.substr(1):t}function d(t,e){return function(t,e){return 0===t.toLowerCase().indexOf(e.toLowerCase())&&-1!=="/?#".indexOf(t.charAt(e.length))}(t,e)?t.substr(e.length):t}function h(t){return"/"===t.charAt(t.length-1)?t.slice(0,-1):t}function p(t){var e=t.pathname,n=t.search,r=t.hash,i=e||"/";return n&&"?"!==n&&(i+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(i+="#"===r.charAt(0)?r:"#"+r),i}function g(t,e,n,i){var o;"string"===typeof t?(o=function(t){var e=t||"/",n="",r="",i=e.indexOf("#");-1!==i&&(r=e.substr(i),e=e.substr(0,i));var o=e.indexOf("?");return-1!==o&&(n=e.substr(o),e=e.substr(0,o)),{pathname:e,search:"?"===n?"":n,hash:"#"===r?"":r}}(t)).state=e:(void 0===(o=Object(r.a)({},t)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==e&&void 0===o.state&&(o.state=e));try{o.pathname=decodeURI(o.pathname)}catch(u){throw u instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):u}return n&&(o.key=n),i?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=a(o.pathname,i.pathname)):o.pathname=i.pathname:o.pathname||(o.pathname="/"),o}function m(t,e){return t.pathname===e.pathname&&t.search===e.search&&t.hash===e.hash&&t.key===e.key&&s(t.state,e.state)}function b(){var t=null;var e=[];return{setPrompt:function(e){return t=e,function(){t===e&&(t=null)}},confirmTransitionTo:function(e,n,r,i){if(null!=t){var o="function"===typeof t?t(e,n):t;"string"===typeof o?"function"===typeof r?r(o,i):i(!0):i(!1!==o)}else i(!0)},appendListener:function(t){var n=!0;function r(){n&&t.apply(void 0,arguments)}return e.push(r),function(){n=!1,e=e.filter((function(t){return t!==r}))}},notifyListeners:function(){for(var t=arguments.length,n=new Array(t),r=0;re?n.splice(e,n.length-e,i):n.push(i),l({action:r,location:i,index:e,entries:n})}}))},replace:function(t,e){var r="REPLACE",i=g(t,e,d(),_.location);f.confirmTransitionTo(i,r,n,(function(t){t&&(_.entries[_.index]=i,l({action:r,location:i}))}))},go:y,goBack:function(){y(-1)},goForward:function(){y(1)},canGo:function(t){var e=_.index+t;return e>=0&&e<_.entries.length},block:function(t){return void 0===t&&(t=!1),f.setPrompt(t)},listen:function(t){return f.appendListener(t)}};return _}},function(t,e){t.exports={bitcoin:{messagePrefix:"\x18Bitcoin Signed Message:\n",bech32:"bc",bip32:{public:76067358,private:76066276},pubKeyHash:0,scriptHash:5,wif:128},regtest:{messagePrefix:"\x18Bitcoin Signed Message:\n",bech32:"bcrt",bip32:{public:70617039,private:70615956},pubKeyHash:111,scriptHash:196,wif:239},testnet:{messagePrefix:"\x18Bitcoin Signed Message:\n",bech32:"tb",bip32:{public:70617039,private:70615956},pubKeyHash:111,scriptHash:196,wif:239}}},function(t,e,n){"use strict";function r(t){return"[object String]"===Object.prototype.toString.call(t)}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";var r=n(103),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},a={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},u={};function s(t){return r.isMemo(t)?a:u[t.$$typeof]||i}u[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},u[r.Memo]=a;var c=Object.defineProperty,f=Object.getOwnPropertyNames,l=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,h=Object.getPrototypeOf,p=Object.prototype;t.exports=function t(e,n,r){if("string"!==typeof n){if(p){var i=h(n);i&&i!==p&&t(e,i,r)}var a=f(n);l&&(a=a.concat(l(n)));for(var u=s(e),g=s(n),m=0;m=0&&c<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var f=Object(i.a)(t),l=f.getUTCDay(),d=(l=0)return"";switch(Object.prototype.toString.call(i)){case"[object Boolean]":return"object"===typeof i?"new Boolean ("+r(i.valueOf())+")":i.toString();case"[object Number]":return"object"===typeof i?"new Number ("+r(i.valueOf())+")":1/i===-1/0?"-0":i.toString(10);case"[object String]":return"object"===typeof i?"new String ("+r(i.valueOf())+")":JSON.stringify(i);case"[object Date]":return"new Date ("+r(isNaN(i.valueOf())?NaN:i.toISOString())+")";case"[object Error]":return"new "+i.name+" ("+r(i.message)+")";case"[object Arguments]":return"function () { return arguments; } ("+Array.prototype.map.call(i,r).join(", ")+")";case"[object Array]":e.push(i);try{return"["+i.map(r).concat(Object.keys(i).sort().filter((function(t){return!/^\d+$/.test(t)})).map(n(i))).join(", ")+"]"}finally{e.pop()}case"[object Object]":e.push(i);try{return!(t in i)||null!=i.constructor&&i.constructor.prototype===i?"{"+Object.keys(i).sort().map(n(i)).join(", ")+"}":i[t]()}finally{e.pop()}default:return String(i)}}return r}))},function(t,e,n){var r,i,o;!function(a){"use strict";"object"===typeof t.exports?t.exports=a(n(198)):null!=n(148)?(i=[n(198)],void 0===(o="function"===typeof(r=a)?r.apply(e,i):r)||(t.exports=o)):self.sanctuaryTypeClasses=a(self.sanctuaryTypeIdentifiers)}((function(t){"use strict";if("undefined"!==typeof __doctest){__doctest.require("sanctuary-identity");var e=__doctest.require("./test/List"),n=__doctest.require("sanctuary-maybe");__doctest.require("sanctuary-pair"),__doctest.require("./test/Sum"),e.Nil,e.Cons,n.Nothing,n.Just}function r(t){return function(e){return t.concat(e)}}function i(t){return function(e){return t}}function o(t,e){Object.keys(t).forEach(e,t)}function a(t,e){return Object.prototype.hasOwnProperty.call(e,t)}function u(t){return t}function s(t){return function(e){return[t,e]}}function c(e,n){return typeof e===typeof n&&t(e)===t(n)}function f(t){return Object.keys(t).sort()}function l(t){return function(e){return t(e)}}function d(t){return{value:t,done:!1}}function h(t){return{value:t,done:!0}}function p(t,e,n,r){if(!(this instanceof p))return new p(t,e,n,r);this.name=t,this.url=e,this.test=function(t){return n.every((function(e){return e.test(t)}))&&r(t)}}p["@@type"]="sanctuary-type-classes/TypeClass@1";var g="Constructor",m="Value";function b(t,e,n){for(var r=n,i=0;ii)return!1;if(!X(this[r],t[r]))return tt(this[r],t[r])}},"fantasy-land/concat":Z,"fantasy-land/filter":function(t){var e={};return o(this,(function(n){t(this[n])&&(e[n]=this[n])})),e},"fantasy-land/map":function(t){var e={};return o(this,(function(n){e[n]=t(this[n])})),e},"fantasy-land/ap":function(t){var e={};return o(this,(function(n){a(n,t)&&(e[n]=t[n](this[n]))})),e},"fantasy-land/alt":Z,"fantasy-land/reduce":function(t,e){var n=this;return f(this).reduce((function(e,r){return t(e,n[r])}),e)},"fantasy-land/traverse":function(t,e){var n=this;return Object.keys(this).reduce((function(t,r){return ct((function(t){return function(e){var n={};return n[r]=e,Z.call(t,n)}}),t,e(n[r]))}),ft(t,{}))}}},Function:{"fantasy-land/id":function(){return u},"fantasy-land/of":function(t){return function(e){return t}},"fantasy-land/chainRec":function(t,e){return function(n){for(var r=d(e);!r.done;)r=t(d,h,r.value)(n);return r.value}},prototype:{"fantasy-land/equals":function(t){return t===this},"fantasy-land/compose":function(t){var e=this;return function(n){return t(e(n))}},"fantasy-land/map":function(t){var e=this;return function(n){return t(e(n))}},"fantasy-land/promap":function(t,e){var n=this;return function(r){return e(n(t(r)))}},"fantasy-land/ap":function(t){var e=this;return function(n){return t(n)(e(n))}},"fantasy-land/chain":function(t){var e=this;return function(n){return t(e(n))(n)}},"fantasy-land/extend":function(t){var e=this;return function(n){return t((function(t){return e(rt(n,t))}))}},"fantasy-land/contramap":function(t){var e=this;return function(n){return e(t(n))}}}}},X=function(){var t=[];return function(e,n){if(!c(e,n))return!1;if(t.some((function(t){return t[0]===e&&t[1]===n})))return!0;t.push([e,n]);try{return S.test(e)&&S.test(n)&&S.methods.equals(e)(n)}finally{t.pop()}}}();function J(t,e){return c(t,e)&&!tt(e,t)}var tt=function(){var t=[];return function(e,n){if(!c(e,n))return!1;if(t.some((function(t){return t[0]===e&&t[1]===n})))return X(e,n);t.push([e,n]);try{return O.test(e)&&O.test(n)&&O.methods.lte(e)(n)}finally{t.pop()}}}();function et(t,e){return tt(t,e)?t:e}function nt(t,e){return tt(t,e)?e:t}function rt(t,e){return M.methods.concat(t)(e)}function it(t){return T.methods.empty(t)()}function ot(t,e){return A.methods.filter(e)(t)}function at(t,e){return k.methods.map(e)(t)}function ut(t,e,n){return C.methods.bimap(n)(t,e)}function st(t,e){return P.methods.ap(e)(t)}function ct(t,e,n){return st(at(t,e),n)}function ft(t,e){return N.methods.of(t)(e)}function lt(t,e){return R.methods.chain(e)(t)}function dt(t,e,n){return U.methods.reduce(n)(t,e)}function ht(t,e){return Array.isArray(e)?e.some(l(t)):dt((function(e,n){return e||t(n)}),!1,e)}function pt(t,e){var n=dt((function(e,n){return e.push({idx:e.length,x:n,fx:t(n)}),e}),[],e),r=function(t){switch(typeof(t&&t.fx)){case"number":return function(t,e){return t<=e||t!==t};case"string":return function(t,e){return t<=e};default:return tt}}(n[0]);if(n.sort((function(t,e){return r(t.fx,e.fx)?r(e.fx,t.fx)?t.idx-e.idx:-1:1})),Array.isArray(e)){for(var i=0;i=t.length)&&56320===(64512&t.charCodeAt(e+1)))}function a(t){return(t>>>24|t>>>8&65280|t<<8&16711680|(255&t)<<24)>>>0}function u(t){return 1===t.length?"0"+t:t}function s(t){return 7===t.length?"0"+t:6===t.length?"00"+t:5===t.length?"000"+t:4===t.length?"0000"+t:3===t.length?"00000"+t:2===t.length?"000000"+t:1===t.length?"0000000"+t:t}e.inherits=i,e.toArray=function(t,e){if(Array.isArray(t))return t.slice();if(!t)return[];var n=[];if("string"===typeof t)if(e){if("hex"===e)for((t=t.replace(/[^a-z0-9]+/gi,"")).length%2!==0&&(t="0"+t),i=0;i>6|192,n[r++]=63&a|128):o(t,i)?(a=65536+((1023&a)<<10)+(1023&t.charCodeAt(++i)),n[r++]=a>>18|240,n[r++]=a>>12&63|128,n[r++]=a>>6&63|128,n[r++]=63&a|128):(n[r++]=a>>12|224,n[r++]=a>>6&63|128,n[r++]=63&a|128)}else for(i=0;i>>0}return a},e.split32=function(t,e){for(var n=new Array(4*t.length),r=0,i=0;r>>24,n[i+1]=o>>>16&255,n[i+2]=o>>>8&255,n[i+3]=255&o):(n[i+3]=o>>>24,n[i+2]=o>>>16&255,n[i+1]=o>>>8&255,n[i]=255&o)}return n},e.rotr32=function(t,e){return t>>>e|t<<32-e},e.rotl32=function(t,e){return t<>>32-e},e.sum32=function(t,e){return t+e>>>0},e.sum32_3=function(t,e,n){return t+e+n>>>0},e.sum32_4=function(t,e,n,r){return t+e+n+r>>>0},e.sum32_5=function(t,e,n,r,i){return t+e+n+r+i>>>0},e.sum64=function(t,e,n,r){var i=t[e],o=r+t[e+1]>>>0,a=(o>>0,t[e+1]=o},e.sum64_hi=function(t,e,n,r){return(e+r>>>0>>0},e.sum64_lo=function(t,e,n,r){return e+r>>>0},e.sum64_4_hi=function(t,e,n,r,i,o,a,u){var s=0,c=e;return s+=(c=c+r>>>0)>>0)>>0)>>0},e.sum64_4_lo=function(t,e,n,r,i,o,a,u){return e+r+o+u>>>0},e.sum64_5_hi=function(t,e,n,r,i,o,a,u,s,c){var f=0,l=e;return f+=(l=l+r>>>0)>>0)>>0)>>0)>>0},e.sum64_5_lo=function(t,e,n,r,i,o,a,u,s,c){return e+r+o+u+c>>>0},e.rotr64_hi=function(t,e,n){return(e<<32-n|t>>>n)>>>0},e.rotr64_lo=function(t,e,n){return(t<<32-n|e>>>n)>>>0},e.shr64_hi=function(t,e,n){return t>>>n},e.shr64_lo=function(t,e,n){return(t<<32-n|e>>>n)>>>0}},function(t,e,n){var r=n(77),i=Math.pow(2,31)-1;function o(t){return r.String(t)&&t.match(/^(m\/)?(\d+'?\/)*\d+'?$/)}o.toJSON=function(){return"BIP32 derivation path"};var a=r.quacksLike("Point"),u=r.compile({messagePrefix:r.oneOf(r.Buffer,r.String),bip32:{public:r.UInt32,private:r.UInt32},pubKeyHash:r.UInt8,scriptHash:r.UInt8,wif:r.UInt8}),s={BIP32Path:o,Buffer256bit:r.BufferN(32),ECPoint:a,Hash160bit:r.BufferN(20),Hash256bit:r.BufferN(32),Network:u,Satoshi:function(t){return r.UInt53(t)&&t<=21e14},UInt31:function(t){return r.UInt32(t)&&t<=i}};for(var c in r)s[c]=r[c];t.exports=s},function(t,e,n){(function(e){var r=n(102),i=n(202),o=n(815),a=o.bech32,u=o.bech32m,s=n(816),c=n(829);function f(t,e){for(var n=0;n16)return console.log("Unsupported witness version for bech32m"),!1;var o=u.fromWords(r.words.slice(1));if(o.length<2||o.length>40)return console.log("Invalid bech32m address length: ".concat(o.length)),!1;return"main"===t&&r.prefix===n.mainNetPrefix||"test"===t&&r.prefix===n.testNetPrefix},bech32Validator:l,isBech32Address:function(t,e){return l("main",t,e)||l("test",t,e)},zecBech32Validator:function(t,e,n){var r;try{r=a.decode(e)}catch(o){return console.log("Failed to decode bech32 address"),!1}var i=a.fromWords(r.words);if(43!==i.length)return console.log("Invalid bech32 address length: ".concat(i.length)),!1;return"main"===t&&r.prefix===n.mainNetPrefix||"test"===t&&r.prefix===n.testNetPrefix},xmrValidator:function(t,n,i){try{var o=c.decode(n),a=o.slice(-8),u=(d=function(t){if(t.length%2!==0)return null;for(var e=new Uint8Array(t.length/2),n=0;n>18&63)+f.charAt(i>>12&63)+f.charAt(i>>6&63)+f.charAt(63&i);return 2==o?(e=t.charCodeAt(u)<<8,n=t.charCodeAt(++u),a+=f.charAt((i=e+n)>>10)+f.charAt(i>>4&63)+f.charAt(i<<2&63)+"="):1==o&&(i=t.charCodeAt(u),a+=f.charAt(i>>2)+f.charAt(i<<4&63)+"=="),a},decode:function(t){var e=(t=String(t).replace(l,"")).length;e%4==0&&(e=(t=t.replace(/==?$/,"")).length),(e%4==1||/[^+a-zA-Z0-9/]/.test(t))&&c("Invalid character: the string to be decoded is not correctly encoded.");for(var n,r,i=0,o="",a=-1;++a>(-2*i&6)));return o},version:"1.0.0"};void 0===(i=function(){return d}.call(e,n,e,t))||(t.exports=i)}()}).call(this,n(94)(t),n(59))},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n(25),i=n(22);function o(t){Object(i.a)(1,arguments);var e=1,n=Object(r.a)(t),o=n.getUTCDay(),a=(o=0&&s===u&&c())}var M=n(196),T=n.n(M),$=(n(13),function(){function t(e){var n=e.cellCount,r=e.cellSizeGetter,o=e.estimatedCellSize;i()(this,t),m()(this,"_cellSizeAndPositionData",{}),m()(this,"_lastMeasuredIndex",-1),m()(this,"_lastBatchedIndex",-1),m()(this,"_cellCount",void 0),m()(this,"_cellSizeGetter",void 0),m()(this,"_estimatedCellSize",void 0),this._cellSizeGetter=r,this._cellCount=n,this._estimatedCellSize=o}return a()(t,[{key:"areOffsetsAdjusted",value:function(){return!1}},{key:"configure",value:function(t){var e=t.cellCount,n=t.estimatedCellSize,r=t.cellSizeGetter;this._cellCount=e,this._estimatedCellSize=n,this._cellSizeGetter=r}},{key:"getCellCount",value:function(){return this._cellCount}},{key:"getEstimatedCellSize",value:function(){return this._estimatedCellSize}},{key:"getLastMeasuredIndex",value:function(){return this._lastMeasuredIndex}},{key:"getOffsetAdjustment",value:function(){return 0}},{key:"getSizeAndPositionOfCell",value:function(t){if(t<0||t>=this._cellCount)throw Error("Requested index ".concat(t," is outside of range 0..").concat(this._cellCount));if(t>this._lastMeasuredIndex)for(var e=this.getSizeAndPositionOfLastMeasuredCell(),n=e.offset+e.size,r=this._lastMeasuredIndex+1;r<=t;r++){var i=this._cellSizeGetter({index:r});if(void 0===i||isNaN(i))throw Error("Invalid size returned for cell ".concat(r," of value ").concat(i));null===i?(this._cellSizeAndPositionData[r]={offset:n,size:0},this._lastBatchedIndex=t):(this._cellSizeAndPositionData[r]={offset:n,size:i},n+=i,this._lastMeasuredIndex=t)}return this._cellSizeAndPositionData[t]}},{key:"getSizeAndPositionOfLastMeasuredCell",value:function(){return this._lastMeasuredIndex>=0?this._cellSizeAndPositionData[this._lastMeasuredIndex]:{offset:0,size:0}}},{key:"getTotalSize",value:function(){var t=this.getSizeAndPositionOfLastMeasuredCell();return t.offset+t.size+(this._cellCount-this._lastMeasuredIndex-1)*this._estimatedCellSize}},{key:"getUpdatedOffsetForIndex",value:function(t){var e=t.align,n=void 0===e?"auto":e,r=t.containerSize,i=t.currentOffset,o=t.targetIndex;if(r<=0)return 0;var a,u=this.getSizeAndPositionOfCell(o),s=u.offset,c=s-r+u.size;switch(n){case"start":a=s;break;case"end":a=c;break;case"center":a=s-(r-u.size)/2;break;default:a=Math.max(c,Math.min(s,i))}var f=this.getTotalSize();return Math.max(0,Math.min(f-r,a))}},{key:"getVisibleCellRange",value:function(t){var e=t.containerSize,n=t.offset;if(0===this.getTotalSize())return{};var r=n+e,i=this._findNearestCell(n),o=this.getSizeAndPositionOfCell(i);n=o.offset+o.size;for(var a=i;nn&&(t=r-1)}return e>0?e-1:0}},{key:"_exponentialSearch",value:function(t,e){for(var n=1;t=t?this._binarySearch(n,0,t):this._exponentialSearch(n,t)}}]),t}()),A=function(){return"undefined"!==typeof window&&window.chrome?16777100:15e5},k=function(){function t(e){var n=e.maxScrollSize,r=void 0===n?A():n,o=T()(e,["maxScrollSize"]);i()(this,t),m()(this,"_cellSizeAndPositionManager",void 0),m()(this,"_maxScrollSize",void 0),this._cellSizeAndPositionManager=new $(o),this._maxScrollSize=r}return a()(t,[{key:"areOffsetsAdjusted",value:function(){return this._cellSizeAndPositionManager.getTotalSize()>this._maxScrollSize}},{key:"configure",value:function(t){this._cellSizeAndPositionManager.configure(t)}},{key:"getCellCount",value:function(){return this._cellSizeAndPositionManager.getCellCount()}},{key:"getEstimatedCellSize",value:function(){return this._cellSizeAndPositionManager.getEstimatedCellSize()}},{key:"getLastMeasuredIndex",value:function(){return this._cellSizeAndPositionManager.getLastMeasuredIndex()}},{key:"getOffsetAdjustment",value:function(t){var e=t.containerSize,n=t.offset,r=this._cellSizeAndPositionManager.getTotalSize(),i=this.getTotalSize(),o=this._getOffsetPercentage({containerSize:e,offset:n,totalSize:i});return Math.round(o*(i-r))}},{key:"getSizeAndPositionOfCell",value:function(t){return this._cellSizeAndPositionManager.getSizeAndPositionOfCell(t)}},{key:"getSizeAndPositionOfLastMeasuredCell",value:function(){return this._cellSizeAndPositionManager.getSizeAndPositionOfLastMeasuredCell()}},{key:"getTotalSize",value:function(){return Math.min(this._maxScrollSize,this._cellSizeAndPositionManager.getTotalSize())}},{key:"getUpdatedOffsetForIndex",value:function(t){var e=t.align,n=void 0===e?"auto":e,r=t.containerSize,i=t.currentOffset,o=t.targetIndex;i=this._safeOffsetToOffset({containerSize:r,offset:i});var a=this._cellSizeAndPositionManager.getUpdatedOffsetForIndex({align:n,containerSize:r,currentOffset:i,targetIndex:o});return this._offsetToSafeOffset({containerSize:r,offset:a})}},{key:"getVisibleCellRange",value:function(t){var e=t.containerSize,n=t.offset;return n=this._safeOffsetToOffset({containerSize:e,offset:n}),this._cellSizeAndPositionManager.getVisibleCellRange({containerSize:e,offset:n})}},{key:"resetCell",value:function(t){this._cellSizeAndPositionManager.resetCell(t)}},{key:"_getOffsetPercentage",value:function(t){var e=t.containerSize,n=t.offset,r=t.totalSize;return r<=e?0:n/(r-e)}},{key:"_offsetToSafeOffset",value:function(t){var e=t.containerSize,n=t.offset,r=this._cellSizeAndPositionManager.getTotalSize(),i=this.getTotalSize();if(r===i)return n;var o=this._getOffsetPercentage({containerSize:e,offset:n,totalSize:r});return Math.round(o*(i-e))}},{key:"_safeOffsetToOffset",value:function(t){var e=t.containerSize,n=t.offset,r=this._cellSizeAndPositionManager.getTotalSize(),i=this.getTotalSize();if(r===i)return n;var o=this._getOffsetPercentage({containerSize:e,offset:n,totalSize:i});return Math.round(o*(r-e))}}]),t}();function C(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],e={};return function(n){var r=n.callback,i=n.indices,o=Object.keys(i),a=!t||o.every((function(t){var e=i[t];return Array.isArray(e)?e.length>0:e>=0})),u=o.length!==Object.keys(e).length||o.some((function(t){var n=e[t],r=i[t];return Array.isArray(r)?n.join(",")!==r.join(","):n!==r}));e=i,a&&u&&r(i)}}function I(t){var e=t.cellSize,n=t.cellSizeAndPositionManager,r=t.previousCellsCount,i=t.previousCellSize,o=t.previousScrollToAlignment,a=t.previousScrollToIndex,u=t.previousSize,s=t.scrollOffset,c=t.scrollToAlignment,f=t.scrollToIndex,l=t.size,d=t.sizeJustIncreasedFromZero,h=t.updateScrollIndexCallback,p=n.getCellCount(),g=f>=0&&f0&&(ln.getTotalSize()-l&&h(p-1)}var P,N,R=!("undefined"===typeof window||!window.document||!window.document.createElement);function j(t){if((!P&&0!==P||t)&&R){var e=document.createElement("div");e.style.position="absolute",e.style.top="-9999px",e.style.width="50px",e.style.height="50px",e.style.overflow="scroll",document.body.appendChild(e),P=e.offsetWidth-e.clientWidth,document.body.removeChild(e)}return P}var D,L,F=(N="undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).requestAnimationFrame||N.webkitRequestAnimationFrame||N.mozRequestAnimationFrame||N.oRequestAnimationFrame||N.msRequestAnimationFrame||function(t){return N.setTimeout(t,1e3/60)},B=N.cancelAnimationFrame||N.webkitCancelAnimationFrame||N.mozCancelAnimationFrame||N.oCancelAnimationFrame||N.msCancelAnimationFrame||function(t){N.clearTimeout(t)},U=F,z=B,H=function(t){return z(t.id)},V=function(t,e){var n;Promise.resolve().then((function(){n=Date.now()}));var r={id:U((function i(){Date.now()-n>=e?t.call():r.id=U(i)}))};return r};function q(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function W(t){for(var e=1;e0&&(n._initialScrollTop=n._getCalculatedScrollTop(t,n.state)),t.scrollToColumn>0&&(n._initialScrollLeft=n._getCalculatedScrollLeft(t,n.state)),n}return p()(e,t),a()(e,[{key:"getOffsetForCell",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.alignment,n=void 0===e?this.props.scrollToAlignment:e,r=t.columnIndex,i=void 0===r?this.props.scrollToColumn:r,o=t.rowIndex,a=void 0===o?this.props.scrollToRow:o,u=W({},this.props,{scrollToAlignment:n,scrollToColumn:i,scrollToRow:a});return{scrollLeft:this._getCalculatedScrollLeft(u),scrollTop:this._getCalculatedScrollTop(u)}}},{key:"getTotalRowsHeight",value:function(){return this.state.instanceProps.rowSizeAndPositionManager.getTotalSize()}},{key:"getTotalColumnsWidth",value:function(){return this.state.instanceProps.columnSizeAndPositionManager.getTotalSize()}},{key:"handleScrollEvent",value:function(t){var e=t.scrollLeft,n=void 0===e?0:e,r=t.scrollTop,i=void 0===r?0:r;if(!(i<0)){this._debounceScrollEnded();var o=this.props,a=o.autoHeight,u=o.autoWidth,s=o.height,c=o.width,f=this.state.instanceProps,l=f.scrollbarSize,d=f.rowSizeAndPositionManager.getTotalSize(),h=f.columnSizeAndPositionManager.getTotalSize(),p=Math.min(Math.max(0,h-c+l),n),g=Math.min(Math.max(0,d-s+l),i);if(this.state.scrollLeft!==p||this.state.scrollTop!==g){var m={isScrolling:!0,scrollDirectionHorizontal:p!==this.state.scrollLeft?p>this.state.scrollLeft?1:-1:this.state.scrollDirectionHorizontal,scrollDirectionVertical:g!==this.state.scrollTop?g>this.state.scrollTop?1:-1:this.state.scrollDirectionVertical,scrollPositionChangeReason:G};a||(m.scrollTop=g),u||(m.scrollLeft=p),m.needToResetStyleCache=!1,this.setState(m)}this._invokeOnScrollMemoizer({scrollLeft:p,scrollTop:g,totalColumnsWidth:h,totalRowsHeight:d})}}},{key:"invalidateCellSizeAfterRender",value:function(t){var e=t.columnIndex,n=t.rowIndex;this._deferredInvalidateColumnIndex="number"===typeof this._deferredInvalidateColumnIndex?Math.min(this._deferredInvalidateColumnIndex,e):e,this._deferredInvalidateRowIndex="number"===typeof this._deferredInvalidateRowIndex?Math.min(this._deferredInvalidateRowIndex,n):n}},{key:"measureAllCells",value:function(){var t=this.props,e=t.columnCount,n=t.rowCount,r=this.state.instanceProps;r.columnSizeAndPositionManager.getSizeAndPositionOfCell(e-1),r.rowSizeAndPositionManager.getSizeAndPositionOfCell(n-1)}},{key:"recomputeGridSize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.columnIndex,n=void 0===e?0:e,r=t.rowIndex,i=void 0===r?0:r,o=this.props,a=o.scrollToColumn,u=o.scrollToRow,s=this.state.instanceProps;s.columnSizeAndPositionManager.resetCell(n),s.rowSizeAndPositionManager.resetCell(i),this._recomputeScrollLeftFlag=a>=0&&(1===this.state.scrollDirectionHorizontal?n<=a:n>=a),this._recomputeScrollTopFlag=u>=0&&(1===this.state.scrollDirectionVertical?i<=u:i>=u),this._styleCache={},this._cellCache={},this.forceUpdate()}},{key:"scrollToCell",value:function(t){var e=t.columnIndex,n=t.rowIndex,r=this.props.columnCount,i=this.props;r>1&&void 0!==e&&this._updateScrollLeftForScrollToColumn(W({},i,{scrollToColumn:e})),void 0!==n&&this._updateScrollTopForScrollToRow(W({},i,{scrollToRow:n}))}},{key:"componentDidMount",value:function(){var t=this.props,n=t.getScrollbarSize,r=t.height,i=t.scrollLeft,o=t.scrollToColumn,a=t.scrollTop,u=t.scrollToRow,s=t.width,c=this.state.instanceProps;if(this._initialScrollTop=0,this._initialScrollLeft=0,this._handleInvalidatedGridSize(),c.scrollbarSizeMeasured||this.setState((function(t){var e=W({},t,{needToResetStyleCache:!1});return e.instanceProps.scrollbarSize=n(),e.instanceProps.scrollbarSizeMeasured=!0,e})),"number"===typeof i&&i>=0||"number"===typeof a&&a>=0){var f=e._getScrollToPositionStateUpdate({prevState:this.state,scrollLeft:i,scrollTop:a});f&&(f.needToResetStyleCache=!1,this.setState(f))}this._scrollingContainer&&(this._scrollingContainer.scrollLeft!==this.state.scrollLeft&&(this._scrollingContainer.scrollLeft=this.state.scrollLeft),this._scrollingContainer.scrollTop!==this.state.scrollTop&&(this._scrollingContainer.scrollTop=this.state.scrollTop));var l=r>0&&s>0;o>=0&&l&&this._updateScrollLeftForScrollToColumn(),u>=0&&l&&this._updateScrollTopForScrollToRow(),this._invokeOnGridRenderedHelper(),this._invokeOnScrollMemoizer({scrollLeft:i||0,scrollTop:a||0,totalColumnsWidth:c.columnSizeAndPositionManager.getTotalSize(),totalRowsHeight:c.rowSizeAndPositionManager.getTotalSize()}),this._maybeCallOnScrollbarPresenceChange()}},{key:"componentDidUpdate",value:function(t,e){var n=this,r=this.props,i=r.autoHeight,o=r.autoWidth,a=r.columnCount,u=r.height,s=r.rowCount,c=r.scrollToAlignment,f=r.scrollToColumn,l=r.scrollToRow,d=r.width,h=this.state,p=h.scrollLeft,g=h.scrollPositionChangeReason,m=h.scrollTop,b=h.instanceProps;this._handleInvalidatedGridSize();var v=a>0&&0===t.columnCount||s>0&&0===t.rowCount;g===K&&(!o&&p>=0&&(p!==this._scrollingContainer.scrollLeft||v)&&(this._scrollingContainer.scrollLeft=p),!i&&m>=0&&(m!==this._scrollingContainer.scrollTop||v)&&(this._scrollingContainer.scrollTop=m));var y=(0===t.width||0===t.height)&&u>0&&d>0;if(this._recomputeScrollLeftFlag?(this._recomputeScrollLeftFlag=!1,this._updateScrollLeftForScrollToColumn(this.props)):I({cellSizeAndPositionManager:b.columnSizeAndPositionManager,previousCellsCount:t.columnCount,previousCellSize:t.columnWidth,previousScrollToAlignment:t.scrollToAlignment,previousScrollToIndex:t.scrollToColumn,previousSize:t.width,scrollOffset:p,scrollToAlignment:c,scrollToIndex:f,size:d,sizeJustIncreasedFromZero:y,updateScrollIndexCallback:function(){return n._updateScrollLeftForScrollToColumn(n.props)}}),this._recomputeScrollTopFlag?(this._recomputeScrollTopFlag=!1,this._updateScrollTopForScrollToRow(this.props)):I({cellSizeAndPositionManager:b.rowSizeAndPositionManager,previousCellsCount:t.rowCount,previousCellSize:t.rowHeight,previousScrollToAlignment:t.scrollToAlignment,previousScrollToIndex:t.scrollToRow,previousSize:t.height,scrollOffset:m,scrollToAlignment:c,scrollToIndex:l,size:u,sizeJustIncreasedFromZero:y,updateScrollIndexCallback:function(){return n._updateScrollTopForScrollToRow(n.props)}}),this._invokeOnGridRenderedHelper(),p!==e.scrollLeft||m!==e.scrollTop){var _=b.rowSizeAndPositionManager.getTotalSize(),w=b.columnSizeAndPositionManager.getTotalSize();this._invokeOnScrollMemoizer({scrollLeft:p,scrollTop:m,totalColumnsWidth:w,totalRowsHeight:_})}this._maybeCallOnScrollbarPresenceChange()}},{key:"componentWillUnmount",value:function(){this._disablePointerEventsTimeoutId&&H(this._disablePointerEventsTimeoutId)}},{key:"render",value:function(){var t=this.props,e=t.autoContainerWidth,n=t.autoHeight,r=t.autoWidth,i=t.className,o=t.containerProps,a=t.containerRole,u=t.containerStyle,s=t.height,c=t.id,f=t.noContentRenderer,l=t.role,d=t.style,h=t.tabIndex,p=t.width,g=this.state,m=g.instanceProps,v=g.needToResetStyleCache,y=this._isScrolling(),_={boxSizing:"border-box",direction:"ltr",height:n?"auto":s,position:"relative",width:r?"auto":p,WebkitOverflowScrolling:"touch",willChange:"transform"};v&&(this._styleCache={}),this.state.isScrolling||this._resetStyleCache(),this._calculateChildrenToRender(this.props,this.state);var w=m.columnSizeAndPositionManager.getTotalSize(),S=m.rowSizeAndPositionManager.getTotalSize(),E=S>s?m.scrollbarSize:0,M=w>p?m.scrollbarSize:0;M===this._horizontalScrollBarSize&&E===this._verticalScrollBarSize||(this._horizontalScrollBarSize=M,this._verticalScrollBarSize=E,this._scrollbarPresenceChanged=!0),_.overflowX=w+E<=p?"hidden":"auto",_.overflowY=S+M<=s?"hidden":"auto";var T=this._childrenToDisplay,$=0===T.length&&s>0&&p>0;return b.createElement("div",O()({ref:this._setScrollingContainerRef},o,{"aria-label":this.props["aria-label"],"aria-readonly":this.props["aria-readonly"],className:Object(x.a)("ReactVirtualized__Grid",i),id:c,onScroll:this._onScroll,role:l,style:W({},_,{},d),tabIndex:h}),T.length>0&&b.createElement("div",{className:"ReactVirtualized__Grid__innerScrollContainer",role:a,style:W({width:e?"auto":w,height:S,maxWidth:w,maxHeight:S,overflow:"hidden",pointerEvents:y?"none":"",position:"relative"},u)},T),$&&f())}},{key:"_calculateChildrenToRender",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,n=t.cellRenderer,r=t.cellRangeRenderer,i=t.columnCount,o=t.deferredMeasurementCache,a=t.height,u=t.overscanColumnCount,s=t.overscanIndicesGetter,c=t.overscanRowCount,f=t.rowCount,l=t.width,d=t.isScrollingOptOut,h=e.scrollDirectionHorizontal,p=e.scrollDirectionVertical,g=e.instanceProps,m=this._initialScrollTop>0?this._initialScrollTop:e.scrollTop,b=this._initialScrollLeft>0?this._initialScrollLeft:e.scrollLeft,v=this._isScrolling(t,e);if(this._childrenToDisplay=[],a>0&&l>0){var y=g.columnSizeAndPositionManager.getVisibleCellRange({containerSize:l,offset:b}),_=g.rowSizeAndPositionManager.getVisibleCellRange({containerSize:a,offset:m}),w=g.columnSizeAndPositionManager.getOffsetAdjustment({containerSize:l,offset:b}),S=g.rowSizeAndPositionManager.getOffsetAdjustment({containerSize:a,offset:m});this._renderedColumnStartIndex=y.start,this._renderedColumnStopIndex=y.stop,this._renderedRowStartIndex=_.start,this._renderedRowStopIndex=_.stop;var O=s({direction:"horizontal",cellCount:i,overscanCellsCount:u,scrollDirection:h,startIndex:"number"===typeof y.start?y.start:0,stopIndex:"number"===typeof y.stop?y.stop:-1}),x=s({direction:"vertical",cellCount:f,overscanCellsCount:c,scrollDirection:p,startIndex:"number"===typeof _.start?_.start:0,stopIndex:"number"===typeof _.stop?_.stop:-1}),E=O.overscanStartIndex,M=O.overscanStopIndex,T=x.overscanStartIndex,$=x.overscanStopIndex;if(o){if(!o.hasFixedHeight())for(var A=T;A<=$;A++)if(!o.has(A,0)){E=0,M=i-1;break}if(!o.hasFixedWidth())for(var k=E;k<=M;k++)if(!o.has(0,k)){T=0,$=f-1;break}}this._childrenToDisplay=r({cellCache:this._cellCache,cellRenderer:n,columnSizeAndPositionManager:g.columnSizeAndPositionManager,columnStartIndex:E,columnStopIndex:M,deferredMeasurementCache:o,horizontalOffsetAdjustment:w,isScrolling:v,isScrollingOptOut:d,parent:this,rowSizeAndPositionManager:g.rowSizeAndPositionManager,rowStartIndex:T,rowStopIndex:$,scrollLeft:b,scrollTop:m,styleCache:this._styleCache,verticalOffsetAdjustment:S,visibleColumnIndices:y,visibleRowIndices:_}),this._columnStartIndex=E,this._columnStopIndex=M,this._rowStartIndex=T,this._rowStopIndex=$}}},{key:"_debounceScrollEnded",value:function(){var t=this.props.scrollingResetTimeInterval;this._disablePointerEventsTimeoutId&&H(this._disablePointerEventsTimeoutId),this._disablePointerEventsTimeoutId=V(this._debounceScrollEndedCallback,t)}},{key:"_handleInvalidatedGridSize",value:function(){if("number"===typeof this._deferredInvalidateColumnIndex&&"number"===typeof this._deferredInvalidateRowIndex){var t=this._deferredInvalidateColumnIndex,e=this._deferredInvalidateRowIndex;this._deferredInvalidateColumnIndex=null,this._deferredInvalidateRowIndex=null,this.recomputeGridSize({columnIndex:t,rowIndex:e})}}},{key:"_invokeOnScrollMemoizer",value:function(t){var e=this,n=t.scrollLeft,r=t.scrollTop,i=t.totalColumnsWidth,o=t.totalRowsHeight;this._onScrollMemoizer({callback:function(t){var n=t.scrollLeft,r=t.scrollTop,a=e.props,u=a.height;(0,a.onScroll)({clientHeight:u,clientWidth:a.width,scrollHeight:o,scrollLeft:n,scrollTop:r,scrollWidth:i})},indices:{scrollLeft:n,scrollTop:r}})}},{key:"_isScrolling",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return Object.hasOwnProperty.call(t,"isScrolling")?Boolean(t.isScrolling):Boolean(e.isScrolling)}},{key:"_maybeCallOnScrollbarPresenceChange",value:function(){if(this._scrollbarPresenceChanged){var t=this.props.onScrollbarPresenceChange;this._scrollbarPresenceChanged=!1,t({horizontal:this._horizontalScrollBarSize>0,size:this.state.instanceProps.scrollbarSize,vertical:this._verticalScrollBarSize>0})}}},{key:"scrollToPosition",value:function(t){var n=t.scrollLeft,r=t.scrollTop,i=e._getScrollToPositionStateUpdate({prevState:this.state,scrollLeft:n,scrollTop:r});i&&(i.needToResetStyleCache=!1,this.setState(i))}},{key:"_getCalculatedScrollLeft",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return e._getCalculatedScrollLeft(t,n)}},{key:"_updateScrollLeftForScrollToColumn",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,r=e._getScrollLeftForScrollToColumnStateUpdate(t,n);r&&(r.needToResetStyleCache=!1,this.setState(r))}},{key:"_getCalculatedScrollTop",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return e._getCalculatedScrollTop(t,n)}},{key:"_resetStyleCache",value:function(){var t=this._styleCache,e=this._cellCache,n=this.props.isScrollingOptOut;this._cellCache={},this._styleCache={};for(var r=this._rowStartIndex;r<=this._rowStopIndex;r++)for(var i=this._columnStartIndex;i<=this._columnStopIndex;i++){var o="".concat(r,"-").concat(i);this._styleCache[o]=t[o],n&&(this._cellCache[o]=e[o])}}},{key:"_updateScrollTopForScrollToRow",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,r=e._getScrollTopForScrollToRowStateUpdate(t,n);r&&(r.needToResetStyleCache=!1,this.setState(r))}}],[{key:"getDerivedStateFromProps",value:function(t,n){var r={};0===t.columnCount&&0!==n.scrollLeft||0===t.rowCount&&0!==n.scrollTop?(r.scrollLeft=0,r.scrollTop=0):(t.scrollLeft!==n.scrollLeft&&t.scrollToColumn<0||t.scrollTop!==n.scrollTop&&t.scrollToRow<0)&&Object.assign(r,e._getScrollToPositionStateUpdate({prevState:n,scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}));var i,o,a=n.instanceProps;return r.needToResetStyleCache=!1,t.columnWidth===a.prevColumnWidth&&t.rowHeight===a.prevRowHeight||(r.needToResetStyleCache=!0),a.columnSizeAndPositionManager.configure({cellCount:t.columnCount,estimatedCellSize:e._getEstimatedColumnSize(t),cellSizeGetter:e._wrapSizeGetter(t.columnWidth)}),a.rowSizeAndPositionManager.configure({cellCount:t.rowCount,estimatedCellSize:e._getEstimatedRowSize(t),cellSizeGetter:e._wrapSizeGetter(t.rowHeight)}),0!==a.prevColumnCount&&0!==a.prevRowCount||(a.prevColumnCount=0,a.prevRowCount=0),t.autoHeight&&!1===t.isScrolling&&!0===a.prevIsScrolling&&Object.assign(r,{isScrolling:!1}),E({cellCount:a.prevColumnCount,cellSize:"number"===typeof a.prevColumnWidth?a.prevColumnWidth:null,computeMetadataCallback:function(){return a.columnSizeAndPositionManager.resetCell(0)},computeMetadataCallbackProps:t,nextCellsCount:t.columnCount,nextCellSize:"number"===typeof t.columnWidth?t.columnWidth:null,nextScrollToIndex:t.scrollToColumn,scrollToIndex:a.prevScrollToColumn,updateScrollOffsetForScrollToIndex:function(){i=e._getScrollLeftForScrollToColumnStateUpdate(t,n)}}),E({cellCount:a.prevRowCount,cellSize:"number"===typeof a.prevRowHeight?a.prevRowHeight:null,computeMetadataCallback:function(){return a.rowSizeAndPositionManager.resetCell(0)},computeMetadataCallbackProps:t,nextCellsCount:t.rowCount,nextCellSize:"number"===typeof t.rowHeight?t.rowHeight:null,nextScrollToIndex:t.scrollToRow,scrollToIndex:a.prevScrollToRow,updateScrollOffsetForScrollToIndex:function(){o=e._getScrollTopForScrollToRowStateUpdate(t,n)}}),a.prevColumnCount=t.columnCount,a.prevColumnWidth=t.columnWidth,a.prevIsScrolling=!0===t.isScrolling,a.prevRowCount=t.rowCount,a.prevRowHeight=t.rowHeight,a.prevScrollToColumn=t.scrollToColumn,a.prevScrollToRow=t.scrollToRow,a.scrollbarSize=t.getScrollbarSize(),void 0===a.scrollbarSize?(a.scrollbarSizeMeasured=!1,a.scrollbarSize=0):a.scrollbarSizeMeasured=!0,r.instanceProps=a,W({},r,{},i,{},o)}},{key:"_getEstimatedColumnSize",value:function(t){return"number"===typeof t.columnWidth?t.columnWidth:t.estimatedColumnSize}},{key:"_getEstimatedRowSize",value:function(t){return"number"===typeof t.rowHeight?t.rowHeight:t.estimatedRowSize}},{key:"_getScrollToPositionStateUpdate",value:function(t){var e=t.prevState,n=t.scrollLeft,r=t.scrollTop,i={scrollPositionChangeReason:K};return"number"===typeof n&&n>=0&&(i.scrollDirectionHorizontal=n>e.scrollLeft?1:-1,i.scrollLeft=n),"number"===typeof r&&r>=0&&(i.scrollDirectionVertical=r>e.scrollTop?1:-1,i.scrollTop=r),"number"===typeof n&&n>=0&&n!==e.scrollLeft||"number"===typeof r&&r>=0&&r!==e.scrollTop?i:{}}},{key:"_wrapSizeGetter",value:function(t){return"function"===typeof t?t:function(){return t}}},{key:"_getCalculatedScrollLeft",value:function(t,e){var n=t.columnCount,r=t.height,i=t.scrollToAlignment,o=t.scrollToColumn,a=t.width,u=e.scrollLeft,s=e.instanceProps;if(n>0){var c=n-1,f=o<0?c:Math.min(c,o),l=s.rowSizeAndPositionManager.getTotalSize(),d=s.scrollbarSizeMeasured&&l>r?s.scrollbarSize:0;return s.columnSizeAndPositionManager.getUpdatedOffsetForIndex({align:i,containerSize:a-d,currentOffset:u,targetIndex:f})}return 0}},{key:"_getScrollLeftForScrollToColumnStateUpdate",value:function(t,n){var r=n.scrollLeft,i=e._getCalculatedScrollLeft(t,n);return"number"===typeof i&&i>=0&&r!==i?e._getScrollToPositionStateUpdate({prevState:n,scrollLeft:i,scrollTop:-1}):{}}},{key:"_getCalculatedScrollTop",value:function(t,e){var n=t.height,r=t.rowCount,i=t.scrollToAlignment,o=t.scrollToRow,a=t.width,u=e.scrollTop,s=e.instanceProps;if(r>0){var c=r-1,f=o<0?c:Math.min(c,o),l=s.columnSizeAndPositionManager.getTotalSize(),d=s.scrollbarSizeMeasured&&l>a?s.scrollbarSize:0;return s.rowSizeAndPositionManager.getUpdatedOffsetForIndex({align:i,containerSize:n-d,currentOffset:u,targetIndex:f})}return 0}},{key:"_getScrollTopForScrollToRowStateUpdate",value:function(t,n){var r=n.scrollTop,i=e._getCalculatedScrollTop(t,n);return"number"===typeof i&&i>=0&&r!==i?e._getScrollToPositionStateUpdate({prevState:n,scrollLeft:-1,scrollTop:i}):{}}}]),e}(b.PureComponent),m()(D,"propTypes",null),L);m()(Y,"defaultProps",{"aria-label":"grid","aria-readonly":!0,autoContainerWidth:!1,autoHeight:!1,autoWidth:!1,cellRangeRenderer:function(t){for(var e=t.cellCache,n=t.cellRenderer,r=t.columnSizeAndPositionManager,i=t.columnStartIndex,o=t.columnStopIndex,a=t.deferredMeasurementCache,u=t.horizontalOffsetAdjustment,s=t.isScrolling,c=t.isScrollingOptOut,f=t.parent,l=t.rowSizeAndPositionManager,d=t.rowStartIndex,h=t.rowStopIndex,p=t.styleCache,g=t.verticalOffsetAdjustment,m=t.visibleColumnIndices,b=t.visibleRowIndices,v=[],y=r.areOffsetsAdjusted()||l.areOffsetsAdjusted(),_=!s&&!y,w=d;w<=h;w++)for(var S=l.getSizeAndPositionOfCell(w),O=i;O<=o;O++){var x=r.getSizeAndPositionOfCell(O),E=O>=m.start&&O<=m.stop&&w>=b.start&&w<=b.stop,M="".concat(w,"-").concat(O),T=void 0;_&&p[M]?T=p[M]:a&&!a.has(w,O)?T={height:"auto",left:0,position:"absolute",top:0,width:"auto"}:(T={height:S.size,left:x.offset+u,position:"absolute",top:S.offset+g,width:x.size},p[M]=T);var $={columnIndex:O,isScrolling:s,isVisible:E,key:M,parent:f,rowIndex:w,style:T},A=void 0;!c&&!s||u||g?A=n($):(e[M]||(e[M]=n($)),A=e[M]),null!=A&&!1!==A&&v.push(A)}return v},containerRole:"rowgroup",containerStyle:{},estimatedColumnSize:100,estimatedRowSize:30,getScrollbarSize:j,noContentRenderer:function(){return null},onScroll:function(){},onScrollbarPresenceChange:function(){},onSectionRendered:function(){},overscanColumnCount:0,overscanIndicesGetter:function(t){var e=t.cellCount,n=t.overscanCellsCount,r=t.scrollDirection,i=t.startIndex,o=t.stopIndex;return 1===r?{overscanStartIndex:Math.max(0,i),overscanStopIndex:Math.min(e-1,o+n)}:{overscanStartIndex:Math.max(0,i-n),overscanStopIndex:Math.min(e-1,o)}},overscanRowCount:10,role:"grid",scrollingResetTimeInterval:150,scrollToAlignment:"auto",scrollToColumn:-1,scrollToRow:-1,style:{},tabIndex:0,isScrollingOptOut:!1}),w(Y);var Z=Y;function Q(t){var e=t.cellCount,n=t.overscanCellsCount,r=t.scrollDirection,i=t.startIndex,o=t.stopIndex;return n=Math.max(1,n),1===r?{overscanStartIndex:Math.max(0,i-1),overscanStopIndex:Math.min(e-1,o+n)}:{overscanStartIndex:Math.max(0,i-n),overscanStopIndex:Math.min(e-1,o+1)}}var X,J;function tt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}var et=(J=X=function(t){function e(){var t,n;i()(this,e);for(var r=arguments.length,o=new Array(r),a=0;a0&&void 0!==arguments[0]?arguments[0]:{};i()(this,t),m()(this,"_cellHeightCache",{}),m()(this,"_cellWidthCache",{}),m()(this,"_columnWidthCache",{}),m()(this,"_rowHeightCache",{}),m()(this,"_defaultHeight",void 0),m()(this,"_defaultWidth",void 0),m()(this,"_minHeight",void 0),m()(this,"_minWidth",void 0),m()(this,"_keyMapper",void 0),m()(this,"_hasFixedHeight",void 0),m()(this,"_hasFixedWidth",void 0),m()(this,"_columnCount",0),m()(this,"_rowCount",0),m()(this,"columnWidth",(function(t){var n=t.index,r=e._keyMapper(0,n);return void 0!==e._columnWidthCache[r]?e._columnWidthCache[r]:e._defaultWidth})),m()(this,"rowHeight",(function(t){var n=t.index,r=e._keyMapper(n,0);return void 0!==e._rowHeightCache[r]?e._rowHeightCache[r]:e._defaultHeight}));var r=n.defaultHeight,o=n.defaultWidth,a=n.fixedHeight,u=n.fixedWidth,s=n.keyMapper,c=n.minHeight,f=n.minWidth;this._hasFixedHeight=!0===a,this._hasFixedWidth=!0===u,this._minHeight=c||0,this._minWidth=f||0,this._keyMapper=s||ht,this._defaultHeight=Math.max(this._minHeight,"number"===typeof r?r:30),this._defaultWidth=Math.max(this._minWidth,"number"===typeof o?o:100)}return a()(t,[{key:"clear",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this._keyMapper(t,e);delete this._cellHeightCache[n],delete this._cellWidthCache[n],this._updateCachedColumnAndRowSizes(t,e)}},{key:"clearAll",value:function(){this._cellHeightCache={},this._cellWidthCache={},this._columnWidthCache={},this._rowHeightCache={},this._rowCount=0,this._columnCount=0}},{key:"hasFixedHeight",value:function(){return this._hasFixedHeight}},{key:"hasFixedWidth",value:function(){return this._hasFixedWidth}},{key:"getHeight",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(this._hasFixedHeight)return this._defaultHeight;var n=this._keyMapper(t,e);return void 0!==this._cellHeightCache[n]?Math.max(this._minHeight,this._cellHeightCache[n]):this._defaultHeight}},{key:"getWidth",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(this._hasFixedWidth)return this._defaultWidth;var n=this._keyMapper(t,e);return void 0!==this._cellWidthCache[n]?Math.max(this._minWidth,this._cellWidthCache[n]):this._defaultWidth}},{key:"has",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this._keyMapper(t,e);return void 0!==this._cellHeightCache[n]}},{key:"set",value:function(t,e,n,r){var i=this._keyMapper(t,e);e>=this._columnCount&&(this._columnCount=e+1),t>=this._rowCount&&(this._rowCount=t+1),this._cellHeightCache[i]=r,this._cellWidthCache[i]=n,this._updateCachedColumnAndRowSizes(t,e)}},{key:"_updateCachedColumnAndRowSizes",value:function(t,e){if(!this._hasFixedWidth){for(var n=0,r=0;r=0){var f=e.getScrollPositionForCell({align:i,cellIndex:o,height:r,scrollLeft:s,scrollTop:c,width:a});f.scrollLeft===s&&f.scrollTop===c||n._setScrollPosition(f)}})),m()(d()(n),"_onScroll",(function(t){if(t.target===n._scrollingContainer){n._enablePointerEventsAfterDelay();var e=n.props,r=e.cellLayoutManager,i=e.height,o=e.isScrollingChange,a=e.width,u=n._scrollbarSize,s=r.getTotalSize(),c=s.height,f=s.width,l=Math.max(0,Math.min(f-a+u,t.target.scrollLeft)),d=Math.max(0,Math.min(c-i+u,t.target.scrollTop));if(n.state.scrollLeft!==l||n.state.scrollTop!==d){var h=t.cancelable?mt:bt;n.state.isScrolling||o(!0),n.setState({isScrolling:!0,scrollLeft:l,scrollPositionChangeReason:h,scrollTop:d})}n._invokeOnScrollMemoizer({scrollLeft:l,scrollTop:d,totalWidth:f,totalHeight:c})}})),n._scrollbarSize=j(),void 0===n._scrollbarSize?(n._scrollbarSizeMeasured=!1,n._scrollbarSize=0):n._scrollbarSizeMeasured=!0,n}return p()(e,t),a()(e,[{key:"recomputeCellSizesAndPositions",value:function(){this._calculateSizeAndPositionDataOnNextUpdate=!0,this.forceUpdate()}},{key:"componentDidMount",value:function(){var t=this.props,e=t.cellLayoutManager,n=t.scrollLeft,r=t.scrollToCell,i=t.scrollTop;this._scrollbarSizeMeasured||(this._scrollbarSize=j(),this._scrollbarSizeMeasured=!0,this.setState({})),r>=0?this._updateScrollPositionForScrollToCell():(n>=0||i>=0)&&this._setScrollPosition({scrollLeft:n,scrollTop:i}),this._invokeOnSectionRenderedHelper();var o=e.getTotalSize(),a=o.height,u=o.width;this._invokeOnScrollMemoizer({scrollLeft:n||0,scrollTop:i||0,totalHeight:a,totalWidth:u})}},{key:"componentDidUpdate",value:function(t,e){var n=this.props,r=n.height,i=n.scrollToAlignment,o=n.scrollToCell,a=n.width,u=this.state,s=u.scrollLeft,c=u.scrollPositionChangeReason,f=u.scrollTop;c===bt&&(s>=0&&s!==e.scrollLeft&&s!==this._scrollingContainer.scrollLeft&&(this._scrollingContainer.scrollLeft=s),f>=0&&f!==e.scrollTop&&f!==this._scrollingContainer.scrollTop&&(this._scrollingContainer.scrollTop=f)),r===t.height&&i===t.scrollToAlignment&&o===t.scrollToCell&&a===t.width||this._updateScrollPositionForScrollToCell(),this._invokeOnSectionRenderedHelper()}},{key:"componentWillUnmount",value:function(){this._disablePointerEventsTimeoutId&&clearTimeout(this._disablePointerEventsTimeoutId)}},{key:"render",value:function(){var t=this.props,e=t.autoHeight,n=t.cellCount,r=t.cellLayoutManager,i=t.className,o=t.height,a=t.horizontalOverscanSize,u=t.id,s=t.noContentRenderer,c=t.style,f=t.verticalOverscanSize,l=t.width,d=this.state,h=d.isScrolling,p=d.scrollLeft,g=d.scrollTop;(this._lastRenderedCellCount!==n||this._lastRenderedCellLayoutManager!==r||this._calculateSizeAndPositionDataOnNextUpdate)&&(this._lastRenderedCellCount=n,this._lastRenderedCellLayoutManager=r,this._calculateSizeAndPositionDataOnNextUpdate=!1,r.calculateSizeAndPositionData());var m=r.getTotalSize(),v=m.height,y=m.width,_=Math.max(0,p-a),w=Math.max(0,g-f),S=Math.min(y,p+l+a),O=Math.min(v,g+o+f),E=o>0&&l>0?r.cellRenderers({height:O-w,isScrolling:h,width:S-_,x:_,y:w}):[],M={boxSizing:"border-box",direction:"ltr",height:e?"auto":o,position:"relative",WebkitOverflowScrolling:"touch",width:l,willChange:"transform"},T=v>o?this._scrollbarSize:0,$=y>l?this._scrollbarSize:0;return M.overflowX=y+T<=l?"hidden":"auto",M.overflowY=v+$<=o?"hidden":"auto",b.createElement("div",{ref:this._setScrollingContainerRef,"aria-label":this.props["aria-label"],className:Object(x.a)("ReactVirtualized__Collection",i),id:u,onScroll:this._onScroll,role:"grid",style:gt({},M,{},c),tabIndex:0},n>0&&b.createElement("div",{className:"ReactVirtualized__Collection__innerScrollContainer",style:{height:v,maxHeight:v,maxWidth:y,overflow:"hidden",pointerEvents:h?"none":"",width:y}},E),0===n&&s())}},{key:"_enablePointerEventsAfterDelay",value:function(){var t=this;this._disablePointerEventsTimeoutId&&clearTimeout(this._disablePointerEventsTimeoutId),this._disablePointerEventsTimeoutId=setTimeout((function(){(0,t.props.isScrollingChange)(!1),t._disablePointerEventsTimeoutId=null,t.setState({isScrolling:!1})}),150)}},{key:"_invokeOnScrollMemoizer",value:function(t){var e=this,n=t.scrollLeft,r=t.scrollTop,i=t.totalHeight,o=t.totalWidth;this._onScrollMemoizer({callback:function(t){var n=t.scrollLeft,r=t.scrollTop,a=e.props,u=a.height;(0,a.onScroll)({clientHeight:u,clientWidth:a.width,scrollHeight:i,scrollLeft:n,scrollTop:r,scrollWidth:o})},indices:{scrollLeft:n,scrollTop:r}})}},{key:"_setScrollPosition",value:function(t){var e=t.scrollLeft,n=t.scrollTop,r={scrollPositionChangeReason:bt};e>=0&&(r.scrollLeft=e),n>=0&&(r.scrollTop=n),(e>=0&&e!==this.state.scrollLeft||n>=0&&n!==this.state.scrollTop)&&this.setState(r)}}],[{key:"getDerivedStateFromProps",value:function(t,e){return 0!==t.cellCount||0===e.scrollLeft&&0===e.scrollTop?t.scrollLeft!==e.scrollLeft||t.scrollTop!==e.scrollTop?{scrollLeft:null!=t.scrollLeft?t.scrollLeft:e.scrollLeft,scrollTop:null!=t.scrollTop?t.scrollTop:e.scrollTop,scrollPositionChangeReason:bt}:null:{scrollLeft:0,scrollTop:0,scrollPositionChangeReason:bt}}}]),e}(b.PureComponent);m()(vt,"defaultProps",{"aria-label":"grid",horizontalOverscanSize:0,noContentRenderer:function(){return null},onScroll:function(){return null},onSectionRendered:function(){return null},scrollToAlignment:"auto",scrollToCell:-1,style:{},verticalOverscanSize:0}),vt.propTypes={},w(vt);var yt=vt,_t=function(){function t(e){var n=e.height,r=e.width,o=e.x,a=e.y;i()(this,t),this.height=n,this.width=r,this.x=o,this.y=a,this._indexMap={},this._indices=[]}return a()(t,[{key:"addCellIndex",value:function(t){var e=t.index;this._indexMap[e]||(this._indexMap[e]=!0,this._indices.push(e))}},{key:"getCellIndices",value:function(){return this._indices}},{key:"toString",value:function(){return"".concat(this.x,",").concat(this.y," ").concat(this.width,"x").concat(this.height)}}]),t}(),wt=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;i()(this,t),this._sectionSize=e,this._cellMetadata=[],this._sections={}}return a()(t,[{key:"getCellIndices",value:function(t){var e=t.height,n=t.width,r=t.x,i=t.y,o={};return this.getSections({height:e,width:n,x:r,y:i}).forEach((function(t){return t.getCellIndices().forEach((function(t){o[t]=t}))})),Object.keys(o).map((function(t){return o[t]}))}},{key:"getCellMetadata",value:function(t){var e=t.index;return this._cellMetadata[e]}},{key:"getSections",value:function(t){for(var e=t.height,n=t.width,r=t.x,i=t.y,o=Math.floor(r/this._sectionSize),a=Math.floor((r+n-1)/this._sectionSize),u=Math.floor(i/this._sectionSize),s=Math.floor((i+e-1)/this._sectionSize),c=[],f=o;f<=a;f++)for(var l=u;l<=s;l++){var d="".concat(f,".").concat(l);this._sections[d]||(this._sections[d]=new _t({height:this._sectionSize,width:this._sectionSize,x:f*this._sectionSize,y:l*this._sectionSize})),c.push(this._sections[d])}return c}},{key:"getTotalSectionCount",value:function(){return Object.keys(this._sections).length}},{key:"toString",value:function(){var t=this;return Object.keys(this._sections).map((function(e){return t._sections[e].toString()}))}},{key:"registerCell",value:function(t){var e=t.cellMetadatum,n=t.index;this._cellMetadata[n]=e,this.getSections(e).forEach((function(t){return t.addCellIndex({index:n})}))}}]),t}();function St(t){var e=t.align,n=void 0===e?"auto":e,r=t.cellOffset,i=t.cellSize,o=t.containerSize,a=t.currentOffset,u=r,s=u-o+i;switch(n){case"start":return u;case"end":return s;case"center":return u-(o-i)/2;default:return Math.max(s,Math.min(u,a))}}var Ot=function(t){function e(t,n){var r;return i()(this,e),(r=s()(this,f()(e).call(this,t,n)))._cellMetadata=[],r._lastRenderedCellIndices=[],r._cellCache=[],r._isScrollingChange=r._isScrollingChange.bind(d()(r)),r._setCollectionViewRef=r._setCollectionViewRef.bind(d()(r)),r}return p()(e,t),a()(e,[{key:"forceUpdate",value:function(){void 0!==this._collectionView&&this._collectionView.forceUpdate()}},{key:"recomputeCellSizesAndPositions",value:function(){this._cellCache=[],this._collectionView.recomputeCellSizesAndPositions()}},{key:"render",value:function(){var t=O()({},this.props);return b.createElement(yt,O()({cellLayoutManager:this,isScrollingChange:this._isScrollingChange,ref:this._setCollectionViewRef},t))}},{key:"calculateSizeAndPositionData",value:function(){var t=this.props,e=function(t){for(var e=t.cellCount,n=t.cellSizeAndPositionGetter,r=t.sectionSize,i=[],o=new wt(r),a=0,u=0,s=0;s=0&&nn||i1&&void 0!==arguments[1]?arguments[1]:0,n="function"===typeof t.recomputeGridSize?t.recomputeGridSize:t.recomputeRowHeights;n?n.call(t,e):t.forceUpdate()}(e._registeredChild,e._lastRenderedStartIndex)}))}))}},{key:"_onRowsRendered",value:function(t){var e=t.startIndex,n=t.stopIndex;this._lastRenderedStartIndex=e,this._lastRenderedStopIndex=n,this._doStuff(e,n)}},{key:"_doStuff",value:function(t,e){var n,r=this,i=this.props,o=i.isRowLoaded,a=i.minimumBatchSize,u=i.rowCount,s=i.threshold,c=function(t){for(var e=t.isRowLoaded,n=t.minimumBatchSize,r=t.rowCount,i=t.startIndex,o=t.stopIndex,a=[],u=null,s=null,c=i;c<=o;c++){e({index:c})?null!==s&&(a.push({startIndex:u,stopIndex:s}),u=s=null):(s=c,null===u&&(u=c))}if(null!==s){for(var f=Math.min(Math.max(s,u+n-1),r-1),l=s+1;l<=f&&!e({index:l});l++)s=l;a.push({startIndex:u,stopIndex:s})}if(a.length)for(var d=a[0];d.stopIndex-d.startIndex+10;){var h=d.startIndex-1;if(e({index:h}))break;d.startIndex=h}return a}({isRowLoaded:o,minimumBatchSize:a,rowCount:u,startIndex:Math.max(0,t-s),stopIndex:Math.min(u-1,e+s)}),f=(n=[]).concat.apply(n,Mt()(c.map((function(t){return[t.startIndex,t.stopIndex]}))));this._loadMoreRowsMemoizer({callback:function(){r._loadUnloadedRanges(c)},indices:{squashedUnloadedRanges:f}})}},{key:"_registerChild",value:function(t){this._registeredChild=t}}]),e}(b.PureComponent);m()(Tt,"defaultProps",{minimumBatchSize:10,rowCount:0,threshold:15}),Tt.propTypes={};var $t,At,kt=(At=$t=function(t){function e(){var t,n;i()(this,e);for(var r=arguments.length,o=new Array(r),a=0;a0&&void 0!==arguments[0]?arguments[0]:{},e=t.columnIndex,n=void 0===e?0:e,r=t.rowIndex,i=void 0===r?0:r;this.Grid&&this.Grid.recomputeGridSize({rowIndex:i,columnIndex:n})}},{key:"recomputeRowHeights",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.recomputeGridSize({rowIndex:t,columnIndex:0})}},{key:"scrollToPosition",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToPosition({scrollTop:t})}},{key:"scrollToRow",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToCell({columnIndex:0,rowIndex:t})}},{key:"render",value:function(){var t=this.props,e=t.className,n=t.noRowsRenderer,r=t.scrollToIndex,i=t.width,o=Object(x.a)("ReactVirtualized__List",e);return b.createElement(Z,O()({},this.props,{autoContainerWidth:!0,cellRenderer:this._cellRenderer,className:o,columnWidth:i,columnCount:1,noContentRenderer:n,onScroll:this._onScroll,onSectionRendered:this._onSectionRendered,ref:this._setRef,scrollToRow:r}))}}]),e}(b.PureComponent),m()($t,"propTypes",null),At);m()(kt,"defaultProps",{autoHeight:!1,estimatedRowSize:30,onScroll:function(){},noRowsRenderer:function(){return null},onRowsRendered:function(){},overscanIndicesGetter:Q,overscanRowCount:10,scrollToAlignment:"auto",scrollToIndex:-1,style:{}});var Ct=n(561),It=n.n(Ct);var Pt={ge:function(t,e,n,r,i){return"function"===typeof n?function(t,e,n,r,i){for(var o=n+1;e<=n;){var a=e+n>>>1;i(t[a],r)>=0?(o=a,n=a-1):e=a+1}return o}(t,void 0===r?0:0|r,void 0===i?t.length-1:0|i,e,n):function(t,e,n,r){for(var i=n+1;e<=n;){var o=e+n>>>1;t[o]>=r?(i=o,n=o-1):e=o+1}return i}(t,void 0===n?0:0|n,void 0===r?t.length-1:0|r,e)},gt:function(t,e,n,r,i){return"function"===typeof n?function(t,e,n,r,i){for(var o=n+1;e<=n;){var a=e+n>>>1;i(t[a],r)>0?(o=a,n=a-1):e=a+1}return o}(t,void 0===r?0:0|r,void 0===i?t.length-1:0|i,e,n):function(t,e,n,r){for(var i=n+1;e<=n;){var o=e+n>>>1;t[o]>r?(i=o,n=o-1):e=o+1}return i}(t,void 0===n?0:0|n,void 0===r?t.length-1:0|r,e)},lt:function(t,e,n,r,i){return"function"===typeof n?function(t,e,n,r,i){for(var o=e-1;e<=n;){var a=e+n>>>1;i(t[a],r)<0?(o=a,e=a+1):n=a-1}return o}(t,void 0===r?0:0|r,void 0===i?t.length-1:0|i,e,n):function(t,e,n,r){for(var i=e-1;e<=n;){var o=e+n>>>1;t[o]>>1;i(t[a],r)<=0?(o=a,e=a+1):n=a-1}return o}(t,void 0===r?0:0|r,void 0===i?t.length-1:0|i,e,n):function(t,e,n,r){for(var i=e-1;e<=n;){var o=e+n>>>1;t[o]<=r?(i=o,e=o+1):n=o-1}return i}(t,void 0===n?0:0|n,void 0===r?t.length-1:0|r,e)},eq:function(t,e,n,r,i){return"function"===typeof n?function(t,e,n,r,i){for(;e<=n;){var o=e+n>>>1,a=i(t[o],r);if(0===a)return o;a<=0?e=o+1:n=o-1}return-1}(t,void 0===r?0:0|r,void 0===i?t.length-1:0|i,e,n):function(t,e,n,r){for(;e<=n;){var i=e+n>>>1,o=t[i];if(o===r)return i;o<=r?e=i+1:n=i-1}return-1}(t,void 0===n?0:0|n,void 0===r?t.length-1:0|r,e)}};function Nt(t,e,n,r,i){this.mid=t,this.left=e,this.right=n,this.leftPoints=r,this.rightPoints=i,this.count=(e?e.count:0)+(n?n.count:0)+r.length}var Rt=Nt.prototype;function jt(t,e){t.mid=e.mid,t.left=e.left,t.right=e.right,t.leftPoints=e.leftPoints,t.rightPoints=e.rightPoints,t.count=e.count}function Dt(t,e){var n=Wt(e);t.mid=n.mid,t.left=n.left,t.right=n.right,t.leftPoints=n.leftPoints,t.rightPoints=n.rightPoints,t.count=n.count}function Lt(t,e){var n=t.intervals([]);n.push(e),Dt(t,n)}function Ft(t,e){var n=t.intervals([]),r=n.indexOf(e);return r<0?0:(n.splice(r,1),Dt(t,n),1)}function Bt(t,e,n){for(var r=0;r=0&&t[r][1]>=e;--r){var i=n(t[r]);if(i)return i}}function zt(t,e){for(var n=0;n>1],i=[],o=[],a=[];for(n=0;n3*(e+1)?Lt(this,t):this.left.insert(t):this.left=Wt([t]);else if(t[0]>this.mid)this.right?4*(this.right.count+1)>3*(e+1)?Lt(this,t):this.right.insert(t):this.right=Wt([t]);else{var n=Pt.ge(this.leftPoints,t,Vt),r=Pt.ge(this.rightPoints,t,qt);this.leftPoints.splice(n,0,t),this.rightPoints.splice(r,0,t)}},Rt.remove=function(t){var e=this.count-this.leftPoints;if(t[1]3*(e-1)?Ft(this,t):2===(o=this.left.remove(t))?(this.left=null,this.count-=1,1):(1===o&&(this.count-=1),o):0;if(t[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(e-1)?Ft(this,t):2===(o=this.right.remove(t))?(this.right=null,this.count-=1,1):(1===o&&(this.count-=1),o):0;if(1===this.count)return this.leftPoints[0]===t?2:0;if(1===this.leftPoints.length&&this.leftPoints[0]===t){if(this.left&&this.right){for(var n=this,r=this.left;r.right;)n=r,r=r.right;if(n===this)r.right=this.right;else{var i=this.left,o=this.right;n.count-=r.count,n.right=r.left,r.left=i,r.right=o}jt(this,r),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?jt(this,this.left):jt(this,this.right);return 1}for(i=Pt.ge(this.leftPoints,t,Vt);ithis.mid){var n;if(this.right)if(n=this.right.queryPoint(t,e))return n;return Ut(this.rightPoints,t,e)}return zt(this.leftPoints,e)},Rt.queryInterval=function(t,e,n){var r;if(tthis.mid&&this.right&&(r=this.right.queryInterval(t,e,n)))return r;return ethis.mid?Ut(this.rightPoints,t,n):zt(this.leftPoints,n)};var Kt=Gt.prototype;Kt.insert=function(t){this.root?this.root.insert(t):this.root=new Nt(t[0],null,null,[t],[t])},Kt.remove=function(t){if(this.root){var e=this.root.remove(t);return 2===e&&(this.root=null),0!==e}return!1},Kt.queryPoint=function(t,e){if(this.root)return this.root.queryPoint(t,e)},Kt.queryInterval=function(t,e,n){if(t<=e&&this.root)return this.root.queryInterval(t,e,n)},Object.defineProperty(Kt,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(Kt,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});var Yt,Zt,Qt=function(){function t(){var e;i()(this,t),m()(this,"_columnSizeMap",{}),m()(this,"_intervalTree",e&&0!==e.length?new Gt(Wt(e)):new Gt(null)),m()(this,"_leftMap",{})}return a()(t,[{key:"estimateTotalHeight",value:function(t,e,n){var r=t-this.count;return this.tallestColumnSize+Math.ceil(r/e)*n}},{key:"range",value:function(t,e,n){var r=this;this._intervalTree.queryInterval(t,t+e,(function(t){var e=It()(t,3),i=e[0],o=(e[1],e[2]);return n(o,r._leftMap[o],i)}))}},{key:"setPosition",value:function(t,e,n,r){this._intervalTree.insert([n,n+r,t]),this._leftMap[t]=e;var i=this._columnSizeMap,o=i[e];i[e]=void 0===o?n+r:Math.max(o,n+r)}},{key:"count",get:function(){return this._intervalTree.count}},{key:"shortestColumnSize",get:function(){var t=this._columnSizeMap,e=0;for(var n in t){var r=t[n];e=0===e?r:Math.min(e,r)}return e}},{key:"tallestColumnSize",get:function(){var t=this._columnSizeMap,e=0;for(var n in t){var r=t[n];e=Math.max(e,r)}return e}}]),t}();function Xt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Jt(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{};i()(this,t),m()(this,"_cellMeasurerCache",void 0),m()(this,"_columnIndexOffset",void 0),m()(this,"_rowIndexOffset",void 0),m()(this,"columnWidth",(function(t){var n=t.index;e._cellMeasurerCache.columnWidth({index:n+e._columnIndexOffset})})),m()(this,"rowHeight",(function(t){var n=t.index;e._cellMeasurerCache.rowHeight({index:n+e._rowIndexOffset})}));var r=n.cellMeasurerCache,o=n.columnIndexOffset,a=void 0===o?0:o,u=n.rowIndexOffset,s=void 0===u?0:u;this._cellMeasurerCache=r,this._columnIndexOffset=a,this._rowIndexOffset=s}return a()(t,[{key:"clear",value:function(t,e){this._cellMeasurerCache.clear(t+this._rowIndexOffset,e+this._columnIndexOffset)}},{key:"clearAll",value:function(){this._cellMeasurerCache.clearAll()}},{key:"hasFixedHeight",value:function(){return this._cellMeasurerCache.hasFixedHeight()}},{key:"hasFixedWidth",value:function(){return this._cellMeasurerCache.hasFixedWidth()}},{key:"getHeight",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.getHeight(t+this._rowIndexOffset,e+this._columnIndexOffset)}},{key:"getWidth",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.getWidth(t+this._rowIndexOffset,e+this._columnIndexOffset)}},{key:"has",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.has(t+this._rowIndexOffset,e+this._columnIndexOffset)}},{key:"set",value:function(t,e,n,r){this._cellMeasurerCache.set(t+this._rowIndexOffset,e+this._columnIndexOffset,n,r)}},{key:"defaultHeight",get:function(){return this._cellMeasurerCache.defaultHeight}},{key:"defaultWidth",get:function(){return this._cellMeasurerCache.defaultWidth}}]),t}();function re(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ie(t){for(var e=1;e0?new ne({cellMeasurerCache:o,columnIndexOffset:0,rowIndexOffset:u}):o,r._deferredMeasurementCacheBottomRightGrid=a>0||u>0?new ne({cellMeasurerCache:o,columnIndexOffset:a,rowIndexOffset:u}):o,r._deferredMeasurementCacheTopRightGrid=a>0?new ne({cellMeasurerCache:o,columnIndexOffset:a,rowIndexOffset:0}):o),r}return p()(e,t),a()(e,[{key:"forceUpdateGrids",value:function(){this._bottomLeftGrid&&this._bottomLeftGrid.forceUpdate(),this._bottomRightGrid&&this._bottomRightGrid.forceUpdate(),this._topLeftGrid&&this._topLeftGrid.forceUpdate(),this._topRightGrid&&this._topRightGrid.forceUpdate()}},{key:"invalidateCellSizeAfterRender",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.columnIndex,n=void 0===e?0:e,r=t.rowIndex,i=void 0===r?0:r;this._deferredInvalidateColumnIndex="number"===typeof this._deferredInvalidateColumnIndex?Math.min(this._deferredInvalidateColumnIndex,n):n,this._deferredInvalidateRowIndex="number"===typeof this._deferredInvalidateRowIndex?Math.min(this._deferredInvalidateRowIndex,i):i}},{key:"measureAllCells",value:function(){this._bottomLeftGrid&&this._bottomLeftGrid.measureAllCells(),this._bottomRightGrid&&this._bottomRightGrid.measureAllCells(),this._topLeftGrid&&this._topLeftGrid.measureAllCells(),this._topRightGrid&&this._topRightGrid.measureAllCells()}},{key:"recomputeGridSize",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.columnIndex,n=void 0===e?0:e,r=t.rowIndex,i=void 0===r?0:r,o=this.props,a=o.fixedColumnCount,u=o.fixedRowCount,s=Math.max(0,n-a),c=Math.max(0,i-u);this._bottomLeftGrid&&this._bottomLeftGrid.recomputeGridSize({columnIndex:n,rowIndex:c}),this._bottomRightGrid&&this._bottomRightGrid.recomputeGridSize({columnIndex:s,rowIndex:c}),this._topLeftGrid&&this._topLeftGrid.recomputeGridSize({columnIndex:n,rowIndex:i}),this._topRightGrid&&this._topRightGrid.recomputeGridSize({columnIndex:s,rowIndex:i}),this._leftGridWidth=null,this._topGridHeight=null,this._maybeCalculateCachedStyles(!0)}},{key:"componentDidMount",value:function(){var t=this.props,e=t.scrollLeft,n=t.scrollTop;if(e>0||n>0){var r={};e>0&&(r.scrollLeft=e),n>0&&(r.scrollTop=n),this.setState(r)}this._handleInvalidatedGridSize()}},{key:"componentDidUpdate",value:function(){this._handleInvalidatedGridSize()}},{key:"render",value:function(){var t=this.props,e=t.onScroll,n=t.onSectionRendered,r=(t.onScrollbarPresenceChange,t.scrollLeft,t.scrollToColumn),i=(t.scrollTop,t.scrollToRow),o=T()(t,["onScroll","onSectionRendered","onScrollbarPresenceChange","scrollLeft","scrollToColumn","scrollTop","scrollToRow"]);if(this._prepareForRender(),0===this.props.width||0===this.props.height)return null;var a=this.state,u=a.scrollLeft,s=a.scrollTop;return b.createElement("div",{style:this._containerOuterStyle},b.createElement("div",{style:this._containerTopStyle},this._renderTopLeftGrid(o),this._renderTopRightGrid(ie({},o,{onScroll:e,scrollLeft:u}))),b.createElement("div",{style:this._containerBottomStyle},this._renderBottomLeftGrid(ie({},o,{onScroll:e,scrollTop:s})),this._renderBottomRightGrid(ie({},o,{onScroll:e,onSectionRendered:n,scrollLeft:u,scrollToColumn:r,scrollToRow:i,scrollTop:s}))))}},{key:"_getBottomGridHeight",value:function(t){return t.height-this._getTopGridHeight(t)}},{key:"_getLeftGridWidth",value:function(t){var e=t.fixedColumnCount,n=t.columnWidth;if(null==this._leftGridWidth)if("function"===typeof n){for(var r=0,i=0;i=0?t.scrollLeft:e.scrollLeft,scrollTop:null!=t.scrollTop&&t.scrollTop>=0?t.scrollTop:e.scrollTop}:null}}]),e}(b.PureComponent);m()(oe,"defaultProps",{classNameBottomLeftGrid:"",classNameBottomRightGrid:"",classNameTopLeftGrid:"",classNameTopRightGrid:"",enableFixedColumnScroll:!1,enableFixedRowScroll:!1,fixedColumnCount:0,fixedRowCount:0,scrollToColumn:-1,scrollToRow:-1,style:{},styleBottomLeftGrid:{},styleBottomRightGrid:{},styleTopLeftGrid:{},styleTopRightGrid:{},hideTopRightGridScrollbar:!1,hideBottomLeftGridScrollbar:!1}),oe.propTypes={},w(oe);var ae=function(t){function e(t,n){var r;return i()(this,e),(r=s()(this,f()(e).call(this,t,n))).state={clientHeight:0,clientWidth:0,scrollHeight:0,scrollLeft:0,scrollTop:0,scrollWidth:0},r._onScroll=r._onScroll.bind(d()(r)),r}return p()(e,t),a()(e,[{key:"render",value:function(){var t=this.props.children,e=this.state,n=e.clientHeight,r=e.clientWidth,i=e.scrollHeight,o=e.scrollLeft,a=e.scrollTop,u=e.scrollWidth;return t({clientHeight:n,clientWidth:r,onScroll:this._onScroll,scrollHeight:i,scrollLeft:o,scrollTop:a,scrollWidth:u})}},{key:"_onScroll",value:function(t){var e=t.clientHeight,n=t.clientWidth,r=t.scrollHeight,i=t.scrollLeft,o=t.scrollTop,a=t.scrollWidth;this.setState({clientHeight:e,clientWidth:n,scrollHeight:r,scrollLeft:i,scrollTop:o,scrollWidth:a})}}]),e}(b.PureComponent);ae.propTypes={};function ue(t){var e=t.className,n=t.columns,r=t.style;return b.createElement("div",{className:e,role:"row",style:r},n)}ue.propTypes=null;var se={ASC:"ASC",DESC:"DESC"};function ce(t){var e=t.sortDirection,n=Object(x.a)("ReactVirtualized__Table__sortableHeaderIcon",{"ReactVirtualized__Table__sortableHeaderIcon--ASC":e===se.ASC,"ReactVirtualized__Table__sortableHeaderIcon--DESC":e===se.DESC});return b.createElement("svg",{className:n,width:18,height:18,viewBox:"0 0 24 24"},e===se.ASC?b.createElement("path",{d:"M7 14l5-5 5 5z"}):b.createElement("path",{d:"M7 10l5 5 5-5z"}),b.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}))}function fe(t){var e=t.dataKey,n=t.label,r=t.sortBy,i=t.sortDirection,o=r===e,a=[b.createElement("span",{className:"ReactVirtualized__Table__headerTruncatedText",key:"label",title:"string"===typeof n?n:null},n)];return o&&a.push(b.createElement(ce,{key:"SortIndicator",sortDirection:i})),a}function le(t){var e=t.className,n=t.columns,r=t.index,i=t.key,o=t.onRowClick,a=t.onRowDoubleClick,u=t.onRowMouseOut,s=t.onRowMouseOver,c=t.onRowRightClick,f=t.rowData,l=t.style,d={"aria-rowindex":r+1};return(o||a||u||s||c)&&(d["aria-label"]="row",d.tabIndex=0,o&&(d.onClick=function(t){return o({event:t,index:r,rowData:f})}),a&&(d.onDoubleClick=function(t){return a({event:t,index:r,rowData:f})}),u&&(d.onMouseOut=function(t){return u({event:t,index:r,rowData:f})}),s&&(d.onMouseOver=function(t){return s({event:t,index:r,rowData:f})}),c&&(d.onContextMenu=function(t){return c({event:t,index:r,rowData:f})})),b.createElement("div",O()({},d,{className:e,key:i,role:"row",style:l}),n)}ce.propTypes={},fe.propTypes=null,le.propTypes=null;var de=function(t){function e(){return i()(this,e),s()(this,f()(e).apply(this,arguments))}return p()(e,t),e}(b.Component);function he(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function pe(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{},e=t.columnIndex,n=void 0===e?0:e,r=t.rowIndex,i=void 0===r?0:r;this.Grid&&this.Grid.recomputeGridSize({rowIndex:i,columnIndex:n})}},{key:"recomputeRowHeights",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.recomputeGridSize({rowIndex:t})}},{key:"scrollToPosition",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToPosition({scrollTop:t})}},{key:"scrollToRow",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToCell({columnIndex:0,rowIndex:t})}},{key:"getScrollbarWidth",value:function(){if(this.Grid){var t=Object(ft.findDOMNode)(this.Grid),e=t.clientWidth||0;return(t.offsetWidth||0)-e}return 0}},{key:"componentDidMount",value:function(){this._setScrollbarWidth()}},{key:"componentDidUpdate",value:function(){this._setScrollbarWidth()}},{key:"render",value:function(){var t=this,e=this.props,n=e.children,r=e.className,i=e.disableHeader,o=e.gridClassName,a=e.gridStyle,u=e.headerHeight,s=e.headerRowRenderer,c=e.height,f=e.id,l=e.noRowsRenderer,d=e.rowClassName,h=e.rowStyle,p=e.scrollToIndex,g=e.style,m=e.width,v=this.state.scrollbarWidth,y=i?c:c-u,_="function"===typeof d?d({index:-1}):d,w="function"===typeof h?h({index:-1}):h;return this._cachedColumnStyles=[],b.Children.toArray(n).forEach((function(e,n){var r=t._getFlexStyleForColumn(e,e.props.style);t._cachedColumnStyles[n]=pe({overflow:"hidden"},r)})),b.createElement("div",{"aria-label":this.props["aria-label"],"aria-labelledby":this.props["aria-labelledby"],"aria-colcount":b.Children.toArray(n).length,"aria-rowcount":this.props.rowCount,className:Object(x.a)("ReactVirtualized__Table",r),id:f,role:"grid",style:g},!i&&s({className:Object(x.a)("ReactVirtualized__Table__headerRow",_),columns:this._getHeaderColumns(),style:pe({height:u,overflow:"hidden",paddingRight:v,width:m},w)}),b.createElement(Z,O()({},this.props,{"aria-readonly":null,autoContainerWidth:!0,className:Object(x.a)("ReactVirtualized__Table__Grid",o),cellRenderer:this._createRow,columnWidth:m,columnCount:1,height:y,id:void 0,noContentRenderer:l,onScroll:this._onScroll,onSectionRendered:this._onSectionRendered,ref:this._setRef,role:"rowgroup",scrollbarWidth:v,scrollToRow:p,style:pe({},a,{overflowX:"hidden"})})))}},{key:"_createColumn",value:function(t){var e=t.column,n=t.columnIndex,r=t.isScrolling,i=t.parent,o=t.rowData,a=t.rowIndex,u=this.props.onColumnClick,s=e.props,c=s.cellDataGetter,f=s.cellRenderer,l=s.className,d=s.columnData,h=s.dataKey,p=s.id,g=f({cellData:c({columnData:d,dataKey:h,rowData:o}),columnData:d,columnIndex:n,dataKey:h,isScrolling:r,parent:i,rowData:o,rowIndex:a}),m=this._cachedColumnStyles[n],v="string"===typeof g?g:null;return b.createElement("div",{"aria-colindex":n+1,"aria-describedby":p,className:Object(x.a)("ReactVirtualized__Table__rowColumn",l),key:"Row"+a+"-Col"+n,onClick:function(t){u&&u({columnData:d,dataKey:h,event:t})},role:"gridcell",style:m,title:v},g)}},{key:"_createHeader",value:function(t){var e,n,r,i,o,a=t.column,u=t.index,s=this.props,c=s.headerClassName,f=s.headerStyle,l=s.onHeaderClick,d=s.sort,h=s.sortBy,p=s.sortDirection,g=a.props,m=g.columnData,v=g.dataKey,y=g.defaultSortDirection,_=g.disableSort,w=g.headerRenderer,S=g.id,O=g.label,E=!_&&d,M=Object(x.a)("ReactVirtualized__Table__headerColumn",c,a.props.headerClassName,{ReactVirtualized__Table__sortableHeaderColumn:E}),T=this._getFlexStyleForColumn(a,pe({},f,{},a.props.headerStyle)),$=w({columnData:m,dataKey:v,disableSort:_,label:O,sortBy:h,sortDirection:p});if(E||l){var A=h!==v?y:p===se.DESC?se.ASC:se.DESC,k=function(t){E&&d({defaultSortDirection:y,event:t,sortBy:v,sortDirection:A}),l&&l({columnData:m,dataKey:v,event:t})};o=a.props["aria-label"]||O||v,i="none",r=0,e=k,n=function(t){"Enter"!==t.key&&" "!==t.key||k(t)}}return h===v&&(i=p===se.ASC?"ascending":"descending"),b.createElement("div",{"aria-label":o,"aria-sort":i,className:M,id:S,key:"Header-Col"+u,onClick:e,onKeyDown:n,role:"columnheader",style:T,tabIndex:r},$)}},{key:"_createRow",value:function(t){var e=this,n=t.rowIndex,r=t.isScrolling,i=t.key,o=t.parent,a=t.style,u=this.props,s=u.children,c=u.onRowClick,f=u.onRowDoubleClick,l=u.onRowRightClick,d=u.onRowMouseOver,h=u.onRowMouseOut,p=u.rowClassName,g=u.rowGetter,m=u.rowRenderer,v=u.rowStyle,y=this.state.scrollbarWidth,_="function"===typeof p?p({index:n}):p,w="function"===typeof v?v({index:n}):v,S=g({index:n}),O=b.Children.toArray(s).map((function(t,i){return e._createColumn({column:t,columnIndex:i,isScrolling:r,parent:o,rowData:S,rowIndex:n,scrollbarWidth:y})})),E=Object(x.a)("ReactVirtualized__Table__row",_),M=pe({},a,{height:this._getRowHeight(n),overflow:"hidden",paddingRight:y},w);return m({className:E,columns:O,index:n,isScrolling:r,key:i,onRowClick:c,onRowDoubleClick:f,onRowRightClick:l,onRowMouseOver:d,onRowMouseOut:h,rowData:S,style:M})}},{key:"_getFlexStyleForColumn",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n="".concat(t.props.flexGrow," ").concat(t.props.flexShrink," ").concat(t.props.width,"px"),r=pe({},e,{flex:n,msFlex:n,WebkitFlex:n});return t.props.maxWidth&&(r.maxWidth=t.props.maxWidth),t.props.minWidth&&(r.minWidth=t.props.minWidth),r}},{key:"_getHeaderColumns",value:function(){var t=this,e=this.props,n=e.children;return(e.disableHeader?[]:b.Children.toArray(n)).map((function(e,n){return t._createHeader({column:e,index:n})}))}},{key:"_getRowHeight",value:function(t){var e=this.props.rowHeight;return"function"===typeof e?e({index:t}):e}},{key:"_onScroll",value:function(t){var e=t.clientHeight,n=t.scrollHeight,r=t.scrollTop;(0,this.props.onScroll)({clientHeight:e,scrollHeight:n,scrollTop:r})}},{key:"_onSectionRendered",value:function(t){var e=t.rowOverscanStartIndex,n=t.rowOverscanStopIndex,r=t.rowStartIndex,i=t.rowStopIndex;(0,this.props.onRowsRendered)({overscanStartIndex:e,overscanStopIndex:n,startIndex:r,stopIndex:i})}},{key:"_setRef",value:function(t){this.Grid=t}},{key:"_setScrollbarWidth",value:function(){var t=this.getScrollbarWidth();this.setState({scrollbarWidth:t})}}]),e}(b.PureComponent);m()(ge,"defaultProps",{disableHeader:!1,estimatedRowSize:30,headerHeight:0,headerStyle:{},noRowsRenderer:function(){return null},onRowsRendered:function(){return null},onScroll:function(){return null},overscanIndicesGetter:Q,overscanRowCount:10,rowRenderer:le,headerRowRenderer:ue,rowStyle:{},scrollToAlignment:"auto",scrollToIndex:-1,style:{}}),ge.propTypes={};var me=[],be=null,ve=null;function ye(){ve&&(ve=null,document.body&&null!=be&&(document.body.style.pointerEvents=be),be=null)}function _e(){ye(),me.forEach((function(t){return t.__resetIsScrolling()}))}function we(t){t.currentTarget===window&&null==be&&document.body&&(be=document.body.style.pointerEvents,document.body.style.pointerEvents="none"),function(){ve&&H(ve);var t=0;me.forEach((function(e){t=Math.max(t,e.props.scrollingResetTimeInterval)})),ve=V(_e,t)}(),me.forEach((function(e){e.props.scrollElement===t.currentTarget&&e.__handleWindowScrollEvent()}))}function Se(t,e){me.some((function(t){return t.props.scrollElement===e}))||e.addEventListener("scroll",we),me.push(t)}function Oe(t,e){(me=me.filter((function(e){return e!==t}))).length||(e.removeEventListener("scroll",we),ve&&(H(ve),ye()))}var xe,Ee,Me=function(t){return t===window},Te=function(t){return t.getBoundingClientRect()};function $e(t,e){if(t){if(Me(t)){var n=window,r=n.innerHeight,i=n.innerWidth;return{height:"number"===typeof r?r:0,width:"number"===typeof i?i:0}}return Te(t)}return{height:e.serverHeight,width:e.serverWidth}}function Ae(t,e){if(Me(e)&&document.documentElement){var n=document.documentElement,r=Te(t),i=Te(n);return{top:r.top-i.top,left:r.left-i.left}}var o=ke(e),a=Te(t),u=Te(e);return{top:a.top+o.top-u.top,left:a.left+o.left-u.left}}function ke(t){return Me(t)&&document.documentElement?{top:"scrollY"in window?window.scrollY:document.documentElement.scrollTop,left:"scrollX"in window?window.scrollX:document.documentElement.scrollLeft}:{top:t.scrollTop,left:t.scrollLeft}}function Ce(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Ie(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:this.props.scrollElement,e=this.props.onResize,n=this.state,r=n.height,i=n.width,o=this._child||ft.findDOMNode(this);if(o instanceof Element&&t){var a=Ae(o,t);this._positionFromTop=a.top,this._positionFromLeft=a.left}var u=$e(t,this.props);r===u.height&&i===u.width||(this.setState({height:u.height,width:u.width}),e({height:u.height,width:u.width}))}},{key:"componentDidMount",value:function(){var t=this.props.scrollElement;this._detectElementResize=Object(it.a)(),this.updatePosition(t),t&&(Se(this,t),this._registerResizeListener(t)),this._isMounted=!0}},{key:"componentDidUpdate",value:function(t,e){var n=this.props.scrollElement,r=t.scrollElement;r!==n&&null!=r&&null!=n&&(this.updatePosition(n),Oe(this,r),Se(this,n),this._unregisterResizeListener(r),this._registerResizeListener(n))}},{key:"componentWillUnmount",value:function(){var t=this.props.scrollElement;t&&(Oe(this,t),this._unregisterResizeListener(t)),this._isMounted=!1}},{key:"render",value:function(){var t=this.props.children,e=this.state,n=e.isScrolling,r=e.scrollTop,i=e.scrollLeft,o=e.height,a=e.width;return t({onChildScroll:this._onChildScroll,registerChild:this._registerChild,height:o,isScrolling:n,scrollLeft:i,scrollTop:r,width:a})}}]),e}(b.PureComponent),m()(xe,"propTypes",null),Ee);m()(Ne,"defaultProps",{onResize:function(){},onScroll:function(){},scrollingResetTimeInterval:150,scrollElement:Pe(),serverHeight:0,serverWidth:0})},function(t,e,n){"use strict";var r=Array.isArray,i=Object.keys,o=Object.prototype.hasOwnProperty,a="undefined"!==typeof Element;function u(t,e){if(t===e)return!0;if(t&&e&&"object"==typeof t&&"object"==typeof e){var n,s,c,f=r(t),l=r(e);if(f&&l){if((s=t.length)!=e.length)return!1;for(n=s;0!==n--;)if(!u(t[n],e[n]))return!1;return!0}if(f!=l)return!1;var d=t instanceof Date,h=e instanceof Date;if(d!=h)return!1;if(d&&h)return t.getTime()==e.getTime();var p=t instanceof RegExp,g=e instanceof RegExp;if(p!=g)return!1;if(p&&g)return t.toString()==e.toString();var m=i(t);if((s=m.length)!==i(e).length)return!1;for(n=s;0!==n--;)if(!o.call(e,m[n]))return!1;if(a&&t instanceof Element&&e instanceof Element)return t===e;for(n=s;0!==n--;)if(("_owner"!==(c=m[n])||!t.$$typeof)&&!u(t[c],e[c]))return!1;return!0}return t!==t&&e!==e}t.exports=function(t,e){try{return u(t,e)}catch(n){if(n.message&&n.message.match(/stack|recursion/i)||-2146828260===n.number)return console.warn("Warning: react-fast-compare does not handle circular references.",n.name,n.message),!1;throw n}}},,function(t,e,n){var r=n(414),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();t.exports=o},function(t,e){(function(e){t.exports=e}).call(this,{})},function(t,e,n){(function(t){!function(t,e){"use strict";function r(t,e){if(!t)throw new Error(e||"Assertion failed")}function i(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}function o(t,e,n){if(o.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(n=e,e=10),this._init(t||0,e||10,n||"be"))}var a;"object"===typeof t?t.exports=o:e.BN=o,o.BN=o,o.wordSize=26;try{a="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:n(738).Buffer}catch(E){}function u(t,e){var n=t.charCodeAt(e);return n>=65&&n<=70?n-55:n>=97&&n<=102?n-87:n-48&15}function s(t,e,n){var r=u(t,n);return n-1>=e&&(r|=u(t,n-1)<<4),r}function c(t,e,n,r){for(var i=0,o=Math.min(t.length,n),a=e;a=49?u-49+10:u>=17?u-17+10:u}return i}o.isBN=function(t){return t instanceof o||null!==t&&"object"===typeof t&&t.constructor.wordSize===o.wordSize&&Array.isArray(t.words)},o.max=function(t,e){return t.cmp(e)>0?t:e},o.min=function(t,e){return t.cmp(e)<0?t:e},o.prototype._init=function(t,e,n){if("number"===typeof t)return this._initNumber(t,e,n);if("object"===typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[o]|=a<>>26-u&67108863,(u+=24)>=26&&(u-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-u&67108863,(u+=24)>=26&&(u-=26,o++);return this.strip()},o.prototype._parseHex=function(t,e,n){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=2)i=s(t,e,r)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(r=(t.length-e)%2===0?e+1:e;r=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this.strip()},o.prototype._parseBase=function(t,e,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=e)r++;r--,i=i/e|0;for(var o=t.length-n,a=o%r,u=Math.min(o,o-a)+n,s=0,f=n;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var f=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],d=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function h(t,e,n){n.negative=e.negative^t.negative;var r=t.length+e.length|0;n.length=r,r=r-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,u=67108863&a,s=a/67108864|0;n.words[0]=u;for(var c=1;c>>26,l=67108863&s,d=Math.min(c,e.length-1),h=Math.max(0,c-t.length+1);h<=d;h++){var p=c-h|0;f+=(a=(i=0|t.words[p])*(o=0|e.words[h])+l)/67108864|0,l=67108863&a}n.words[c]=0|l,s=0|f}return 0!==s?n.words[c]=0|s:n.length--,n.strip()}o.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?f[6-s.length]+s+n:s+n,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(n=o.toString(16)+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var c=l[t],h=d[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(h).toString(t);n=(p=p.idivn(h)).isZero()?g+n:f[c-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(t,e){return r("undefined"!==typeof a),this.toArrayLike(a,t,e)},o.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},o.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var a,u,s="le"===e,c=new t(o),f=this.clone();if(s){for(u=0;!f.isZero();u++)a=f.andln(255),f.iushrn(8),c[u]=a;for(;u=4096&&(n+=13,e>>>=13),e>=64&&(n+=7,e>>>=7),e>=8&&(n+=4,e>>>=4),e>=2&&(n+=2,e>>>=2),n+e},o.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,n=0;return 0===(8191&e)&&(n+=13,e>>>=13),0===(127&e)&&(n+=7,e>>>=7),0===(15&e)&&(n+=4,e>>>=4),0===(3&e)&&(n+=2,e>>>=2),0===(1&e)&&n++,n},o.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},o.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},o.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},o.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},o.prototype.iuxor=function(t){var e,n;this.length>t.length?(e=this,n=t):(e=t,n=this);for(var r=0;rt.length?this.clone().ixor(t):t.clone().ixor(this)},o.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},o.prototype.inotn=function(t){r("number"===typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(t){return this.clone().inotn(t)},o.prototype.setn=function(t,e){r("number"===typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(n=this,r=t):(n=t,r=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},o.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n,r,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=t):(n=t,r=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,h=0|a[1],p=8191&h,g=h>>>13,m=0|a[2],b=8191&m,v=m>>>13,y=0|a[3],_=8191&y,w=y>>>13,S=0|a[4],O=8191&S,x=S>>>13,E=0|a[5],M=8191&E,T=E>>>13,$=0|a[6],A=8191&$,k=$>>>13,C=0|a[7],I=8191&C,P=C>>>13,N=0|a[8],R=8191&N,j=N>>>13,D=0|a[9],L=8191&D,F=D>>>13,B=0|u[0],U=8191&B,z=B>>>13,H=0|u[1],V=8191&H,q=H>>>13,W=0|u[2],G=8191&W,K=W>>>13,Y=0|u[3],Z=8191&Y,Q=Y>>>13,X=0|u[4],J=8191&X,tt=X>>>13,et=0|u[5],nt=8191&et,rt=et>>>13,it=0|u[6],ot=8191&it,at=it>>>13,ut=0|u[7],st=8191&ut,ct=ut>>>13,ft=0|u[8],lt=8191&ft,dt=ft>>>13,ht=0|u[9],pt=8191&ht,gt=ht>>>13;n.negative=t.negative^e.negative,n.length=19;var mt=(c+(r=Math.imul(l,U))|0)+((8191&(i=(i=Math.imul(l,z))+Math.imul(d,U)|0))<<13)|0;c=((o=Math.imul(d,z))+(i>>>13)|0)+(mt>>>26)|0,mt&=67108863,r=Math.imul(p,U),i=(i=Math.imul(p,z))+Math.imul(g,U)|0,o=Math.imul(g,z);var bt=(c+(r=r+Math.imul(l,V)|0)|0)+((8191&(i=(i=i+Math.imul(l,q)|0)+Math.imul(d,V)|0))<<13)|0;c=((o=o+Math.imul(d,q)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,r=Math.imul(b,U),i=(i=Math.imul(b,z))+Math.imul(v,U)|0,o=Math.imul(v,z),r=r+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(g,V)|0,o=o+Math.imul(g,q)|0;var vt=(c+(r=r+Math.imul(l,G)|0)|0)+((8191&(i=(i=i+Math.imul(l,K)|0)+Math.imul(d,G)|0))<<13)|0;c=((o=o+Math.imul(d,K)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,r=Math.imul(_,U),i=(i=Math.imul(_,z))+Math.imul(w,U)|0,o=Math.imul(w,z),r=r+Math.imul(b,V)|0,i=(i=i+Math.imul(b,q)|0)+Math.imul(v,V)|0,o=o+Math.imul(v,q)|0,r=r+Math.imul(p,G)|0,i=(i=i+Math.imul(p,K)|0)+Math.imul(g,G)|0,o=o+Math.imul(g,K)|0;var yt=(c+(r=r+Math.imul(l,Z)|0)|0)+((8191&(i=(i=i+Math.imul(l,Q)|0)+Math.imul(d,Z)|0))<<13)|0;c=((o=o+Math.imul(d,Q)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,r=Math.imul(O,U),i=(i=Math.imul(O,z))+Math.imul(x,U)|0,o=Math.imul(x,z),r=r+Math.imul(_,V)|0,i=(i=i+Math.imul(_,q)|0)+Math.imul(w,V)|0,o=o+Math.imul(w,q)|0,r=r+Math.imul(b,G)|0,i=(i=i+Math.imul(b,K)|0)+Math.imul(v,G)|0,o=o+Math.imul(v,K)|0,r=r+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,Q)|0)+Math.imul(g,Z)|0,o=o+Math.imul(g,Q)|0;var _t=(c+(r=r+Math.imul(l,J)|0)|0)+((8191&(i=(i=i+Math.imul(l,tt)|0)+Math.imul(d,J)|0))<<13)|0;c=((o=o+Math.imul(d,tt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,r=Math.imul(M,U),i=(i=Math.imul(M,z))+Math.imul(T,U)|0,o=Math.imul(T,z),r=r+Math.imul(O,V)|0,i=(i=i+Math.imul(O,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,r=r+Math.imul(_,G)|0,i=(i=i+Math.imul(_,K)|0)+Math.imul(w,G)|0,o=o+Math.imul(w,K)|0,r=r+Math.imul(b,Z)|0,i=(i=i+Math.imul(b,Q)|0)+Math.imul(v,Z)|0,o=o+Math.imul(v,Q)|0,r=r+Math.imul(p,J)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(g,J)|0,o=o+Math.imul(g,tt)|0;var wt=(c+(r=r+Math.imul(l,nt)|0)|0)+((8191&(i=(i=i+Math.imul(l,rt)|0)+Math.imul(d,nt)|0))<<13)|0;c=((o=o+Math.imul(d,rt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,r=Math.imul(A,U),i=(i=Math.imul(A,z))+Math.imul(k,U)|0,o=Math.imul(k,z),r=r+Math.imul(M,V)|0,i=(i=i+Math.imul(M,q)|0)+Math.imul(T,V)|0,o=o+Math.imul(T,q)|0,r=r+Math.imul(O,G)|0,i=(i=i+Math.imul(O,K)|0)+Math.imul(x,G)|0,o=o+Math.imul(x,K)|0,r=r+Math.imul(_,Z)|0,i=(i=i+Math.imul(_,Q)|0)+Math.imul(w,Z)|0,o=o+Math.imul(w,Q)|0,r=r+Math.imul(b,J)|0,i=(i=i+Math.imul(b,tt)|0)+Math.imul(v,J)|0,o=o+Math.imul(v,tt)|0,r=r+Math.imul(p,nt)|0,i=(i=i+Math.imul(p,rt)|0)+Math.imul(g,nt)|0,o=o+Math.imul(g,rt)|0;var St=(c+(r=r+Math.imul(l,ot)|0)|0)+((8191&(i=(i=i+Math.imul(l,at)|0)+Math.imul(d,ot)|0))<<13)|0;c=((o=o+Math.imul(d,at)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,r=Math.imul(I,U),i=(i=Math.imul(I,z))+Math.imul(P,U)|0,o=Math.imul(P,z),r=r+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,r=r+Math.imul(M,G)|0,i=(i=i+Math.imul(M,K)|0)+Math.imul(T,G)|0,o=o+Math.imul(T,K)|0,r=r+Math.imul(O,Z)|0,i=(i=i+Math.imul(O,Q)|0)+Math.imul(x,Z)|0,o=o+Math.imul(x,Q)|0,r=r+Math.imul(_,J)|0,i=(i=i+Math.imul(_,tt)|0)+Math.imul(w,J)|0,o=o+Math.imul(w,tt)|0,r=r+Math.imul(b,nt)|0,i=(i=i+Math.imul(b,rt)|0)+Math.imul(v,nt)|0,o=o+Math.imul(v,rt)|0,r=r+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(g,ot)|0,o=o+Math.imul(g,at)|0;var Ot=(c+(r=r+Math.imul(l,st)|0)|0)+((8191&(i=(i=i+Math.imul(l,ct)|0)+Math.imul(d,st)|0))<<13)|0;c=((o=o+Math.imul(d,ct)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,r=Math.imul(R,U),i=(i=Math.imul(R,z))+Math.imul(j,U)|0,o=Math.imul(j,z),r=r+Math.imul(I,V)|0,i=(i=i+Math.imul(I,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,r=r+Math.imul(A,G)|0,i=(i=i+Math.imul(A,K)|0)+Math.imul(k,G)|0,o=o+Math.imul(k,K)|0,r=r+Math.imul(M,Z)|0,i=(i=i+Math.imul(M,Q)|0)+Math.imul(T,Z)|0,o=o+Math.imul(T,Q)|0,r=r+Math.imul(O,J)|0,i=(i=i+Math.imul(O,tt)|0)+Math.imul(x,J)|0,o=o+Math.imul(x,tt)|0,r=r+Math.imul(_,nt)|0,i=(i=i+Math.imul(_,rt)|0)+Math.imul(w,nt)|0,o=o+Math.imul(w,rt)|0,r=r+Math.imul(b,ot)|0,i=(i=i+Math.imul(b,at)|0)+Math.imul(v,ot)|0,o=o+Math.imul(v,at)|0,r=r+Math.imul(p,st)|0,i=(i=i+Math.imul(p,ct)|0)+Math.imul(g,st)|0,o=o+Math.imul(g,ct)|0;var xt=(c+(r=r+Math.imul(l,lt)|0)|0)+((8191&(i=(i=i+Math.imul(l,dt)|0)+Math.imul(d,lt)|0))<<13)|0;c=((o=o+Math.imul(d,dt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,r=Math.imul(L,U),i=(i=Math.imul(L,z))+Math.imul(F,U)|0,o=Math.imul(F,z),r=r+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(j,V)|0,o=o+Math.imul(j,q)|0,r=r+Math.imul(I,G)|0,i=(i=i+Math.imul(I,K)|0)+Math.imul(P,G)|0,o=o+Math.imul(P,K)|0,r=r+Math.imul(A,Z)|0,i=(i=i+Math.imul(A,Q)|0)+Math.imul(k,Z)|0,o=o+Math.imul(k,Q)|0,r=r+Math.imul(M,J)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(T,J)|0,o=o+Math.imul(T,tt)|0,r=r+Math.imul(O,nt)|0,i=(i=i+Math.imul(O,rt)|0)+Math.imul(x,nt)|0,o=o+Math.imul(x,rt)|0,r=r+Math.imul(_,ot)|0,i=(i=i+Math.imul(_,at)|0)+Math.imul(w,ot)|0,o=o+Math.imul(w,at)|0,r=r+Math.imul(b,st)|0,i=(i=i+Math.imul(b,ct)|0)+Math.imul(v,st)|0,o=o+Math.imul(v,ct)|0,r=r+Math.imul(p,lt)|0,i=(i=i+Math.imul(p,dt)|0)+Math.imul(g,lt)|0,o=o+Math.imul(g,dt)|0;var Et=(c+(r=r+Math.imul(l,pt)|0)|0)+((8191&(i=(i=i+Math.imul(l,gt)|0)+Math.imul(d,pt)|0))<<13)|0;c=((o=o+Math.imul(d,gt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,r=Math.imul(L,V),i=(i=Math.imul(L,q))+Math.imul(F,V)|0,o=Math.imul(F,q),r=r+Math.imul(R,G)|0,i=(i=i+Math.imul(R,K)|0)+Math.imul(j,G)|0,o=o+Math.imul(j,K)|0,r=r+Math.imul(I,Z)|0,i=(i=i+Math.imul(I,Q)|0)+Math.imul(P,Z)|0,o=o+Math.imul(P,Q)|0,r=r+Math.imul(A,J)|0,i=(i=i+Math.imul(A,tt)|0)+Math.imul(k,J)|0,o=o+Math.imul(k,tt)|0,r=r+Math.imul(M,nt)|0,i=(i=i+Math.imul(M,rt)|0)+Math.imul(T,nt)|0,o=o+Math.imul(T,rt)|0,r=r+Math.imul(O,ot)|0,i=(i=i+Math.imul(O,at)|0)+Math.imul(x,ot)|0,o=o+Math.imul(x,at)|0,r=r+Math.imul(_,st)|0,i=(i=i+Math.imul(_,ct)|0)+Math.imul(w,st)|0,o=o+Math.imul(w,ct)|0,r=r+Math.imul(b,lt)|0,i=(i=i+Math.imul(b,dt)|0)+Math.imul(v,lt)|0,o=o+Math.imul(v,dt)|0;var Mt=(c+(r=r+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,gt)|0)+Math.imul(g,pt)|0))<<13)|0;c=((o=o+Math.imul(g,gt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,r=Math.imul(L,G),i=(i=Math.imul(L,K))+Math.imul(F,G)|0,o=Math.imul(F,K),r=r+Math.imul(R,Z)|0,i=(i=i+Math.imul(R,Q)|0)+Math.imul(j,Z)|0,o=o+Math.imul(j,Q)|0,r=r+Math.imul(I,J)|0,i=(i=i+Math.imul(I,tt)|0)+Math.imul(P,J)|0,o=o+Math.imul(P,tt)|0,r=r+Math.imul(A,nt)|0,i=(i=i+Math.imul(A,rt)|0)+Math.imul(k,nt)|0,o=o+Math.imul(k,rt)|0,r=r+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(T,ot)|0,o=o+Math.imul(T,at)|0,r=r+Math.imul(O,st)|0,i=(i=i+Math.imul(O,ct)|0)+Math.imul(x,st)|0,o=o+Math.imul(x,ct)|0,r=r+Math.imul(_,lt)|0,i=(i=i+Math.imul(_,dt)|0)+Math.imul(w,lt)|0,o=o+Math.imul(w,dt)|0;var Tt=(c+(r=r+Math.imul(b,pt)|0)|0)+((8191&(i=(i=i+Math.imul(b,gt)|0)+Math.imul(v,pt)|0))<<13)|0;c=((o=o+Math.imul(v,gt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,r=Math.imul(L,Z),i=(i=Math.imul(L,Q))+Math.imul(F,Z)|0,o=Math.imul(F,Q),r=r+Math.imul(R,J)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(j,J)|0,o=o+Math.imul(j,tt)|0,r=r+Math.imul(I,nt)|0,i=(i=i+Math.imul(I,rt)|0)+Math.imul(P,nt)|0,o=o+Math.imul(P,rt)|0,r=r+Math.imul(A,ot)|0,i=(i=i+Math.imul(A,at)|0)+Math.imul(k,ot)|0,o=o+Math.imul(k,at)|0,r=r+Math.imul(M,st)|0,i=(i=i+Math.imul(M,ct)|0)+Math.imul(T,st)|0,o=o+Math.imul(T,ct)|0,r=r+Math.imul(O,lt)|0,i=(i=i+Math.imul(O,dt)|0)+Math.imul(x,lt)|0,o=o+Math.imul(x,dt)|0;var $t=(c+(r=r+Math.imul(_,pt)|0)|0)+((8191&(i=(i=i+Math.imul(_,gt)|0)+Math.imul(w,pt)|0))<<13)|0;c=((o=o+Math.imul(w,gt)|0)+(i>>>13)|0)+($t>>>26)|0,$t&=67108863,r=Math.imul(L,J),i=(i=Math.imul(L,tt))+Math.imul(F,J)|0,o=Math.imul(F,tt),r=r+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,rt)|0)+Math.imul(j,nt)|0,o=o+Math.imul(j,rt)|0,r=r+Math.imul(I,ot)|0,i=(i=i+Math.imul(I,at)|0)+Math.imul(P,ot)|0,o=o+Math.imul(P,at)|0,r=r+Math.imul(A,st)|0,i=(i=i+Math.imul(A,ct)|0)+Math.imul(k,st)|0,o=o+Math.imul(k,ct)|0,r=r+Math.imul(M,lt)|0,i=(i=i+Math.imul(M,dt)|0)+Math.imul(T,lt)|0,o=o+Math.imul(T,dt)|0;var At=(c+(r=r+Math.imul(O,pt)|0)|0)+((8191&(i=(i=i+Math.imul(O,gt)|0)+Math.imul(x,pt)|0))<<13)|0;c=((o=o+Math.imul(x,gt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,r=Math.imul(L,nt),i=(i=Math.imul(L,rt))+Math.imul(F,nt)|0,o=Math.imul(F,rt),r=r+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,r=r+Math.imul(I,st)|0,i=(i=i+Math.imul(I,ct)|0)+Math.imul(P,st)|0,o=o+Math.imul(P,ct)|0,r=r+Math.imul(A,lt)|0,i=(i=i+Math.imul(A,dt)|0)+Math.imul(k,lt)|0,o=o+Math.imul(k,dt)|0;var kt=(c+(r=r+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,gt)|0)+Math.imul(T,pt)|0))<<13)|0;c=((o=o+Math.imul(T,gt)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,r=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),r=r+Math.imul(R,st)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(j,st)|0,o=o+Math.imul(j,ct)|0,r=r+Math.imul(I,lt)|0,i=(i=i+Math.imul(I,dt)|0)+Math.imul(P,lt)|0,o=o+Math.imul(P,dt)|0;var Ct=(c+(r=r+Math.imul(A,pt)|0)|0)+((8191&(i=(i=i+Math.imul(A,gt)|0)+Math.imul(k,pt)|0))<<13)|0;c=((o=o+Math.imul(k,gt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,r=Math.imul(L,st),i=(i=Math.imul(L,ct))+Math.imul(F,st)|0,o=Math.imul(F,ct),r=r+Math.imul(R,lt)|0,i=(i=i+Math.imul(R,dt)|0)+Math.imul(j,lt)|0,o=o+Math.imul(j,dt)|0;var It=(c+(r=r+Math.imul(I,pt)|0)|0)+((8191&(i=(i=i+Math.imul(I,gt)|0)+Math.imul(P,pt)|0))<<13)|0;c=((o=o+Math.imul(P,gt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863,r=Math.imul(L,lt),i=(i=Math.imul(L,dt))+Math.imul(F,lt)|0,o=Math.imul(F,dt);var Pt=(c+(r=r+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,gt)|0)+Math.imul(j,pt)|0))<<13)|0;c=((o=o+Math.imul(j,gt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863;var Nt=(c+(r=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,gt))+Math.imul(F,pt)|0))<<13)|0;return c=((o=Math.imul(F,gt))+(i>>>13)|0)+(Nt>>>26)|0,Nt&=67108863,s[0]=mt,s[1]=bt,s[2]=vt,s[3]=yt,s[4]=_t,s[5]=wt,s[6]=St,s[7]=Ot,s[8]=xt,s[9]=Et,s[10]=Mt,s[11]=Tt,s[12]=$t,s[13]=At,s[14]=kt,s[15]=Ct,s[16]=It,s[17]=Pt,s[18]=Nt,0!==c&&(s[19]=c,n.length++),n};function g(t,e,n){return(new m).mulp(t,e,n)}function m(t,e){this.x=t,this.y=e}Math.imul||(p=h),o.prototype.mulTo=function(t,e){var n=this.length+t.length;return 10===this.length&&10===t.length?p(this,t,e):n<63?h(this,t,e):n<1024?function(t,e,n){n.negative=e.negative^t.negative,n.length=t.length+e.length;for(var r=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}n.words[o]=u,r=a,a=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,t,e):g(this,t,e)},m.prototype.makeRBT=function(t){for(var e=new Array(t),n=o.prototype._countBits(t)-1,r=0;r>=1;return r},m.prototype.permute=function(t,e,n,r,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,n[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=i/67108864|0,e+=o>>>26,this.words[n]=67108863&o}return 0!==e&&(this.words[n]=e,this.length++),this},o.prototype.muln=function(t){return this.clone().imuln(t)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),n=0;n>>i}return e}(t);if(0===e.length)return new o(1);for(var n=this,r=0;r=0);var e,n=t%26,i=(t-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var a=0;for(e=0;e>>26-n}a&&(this.words[e]=a,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),u=67108863^67108863>>>o<a)for(this.length-=a,c=0;c=0&&(0!==f||c>=i);c--){var l=0|this.words[c];this.words[c]=f<<26-o|l>>>o,f=l&u}return s&&0!==f&&(s.words[s.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},o.prototype.shln=function(t){return this.clone().ishln(t)},o.prototype.ushln=function(t){return this.clone().iushln(t)},o.prototype.shrn=function(t){return this.clone().ishrn(t)},o.prototype.ushrn=function(t){return this.clone().iushrn(t)},o.prototype.testn=function(t){r("number"===typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},o.prototype.isubn=function(t){if(r("number"===typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(s/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===u)return this.strip();for(r(-1===u),u=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(t,e){var n=(this.length,t.length),r=this.clone(),i=t,a=0|i.words[i.length-1];0!==(n=26-this._countBits(a))&&(i=i.ushln(n),r.iushln(n),a=0|i.words[i.length-1]);var u,s=r.length-i.length;if("mod"!==e){(u=new o(null)).length=s+1,u.words=new Array(u.length);for(var c=0;c=0;l--){var d=67108864*(0|r.words[i.length+l])+(0|r.words[i.length+l-1]);for(d=Math.min(d/a|0,67108863),r._ishlnsubmul(i,d,l);0!==r.negative;)d--,r.negative=0,r._ishlnsubmul(i,1,l),r.isZero()||(r.negative^=1);u&&(u.words[l]=d)}return u&&u.strip(),r.strip(),"div"!==e&&0!==n&&r.iushrn(n),{div:u||null,mod:r}},o.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===t.negative?(u=this.neg().divmod(t,e),"mod"!==e&&(i=u.div.neg()),"div"!==e&&(a=u.mod.neg(),n&&0!==a.negative&&a.iadd(t)),{div:i,mod:a}):0===this.negative&&0!==t.negative?(u=this.divmod(t.neg(),e),"mod"!==e&&(i=u.div.neg()),{div:i,mod:u.mod}):0!==(this.negative&t.negative)?(u=this.neg().divmod(t.neg(),e),"div"!==e&&(a=u.mod.neg(),n&&0!==a.negative&&a.isub(t)),{div:u.div,mod:a}):t.length>this.length||this.cmp(t)<0?{div:new o(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new o(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new o(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,a,u},o.prototype.div=function(t){return this.divmod(t,"div",!1).div},o.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},o.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},o.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var n=0!==e.div.negative?e.mod.isub(t):e.mod,r=t.ushrn(1),i=t.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},o.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},o.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},o.prototype.divn=function(t){return this.clone().idivn(t)},o.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new o(1),a=new o(0),u=new o(0),s=new o(1),c=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++c;for(var f=n.clone(),l=e.clone();!e.isZero();){for(var d=0,h=1;0===(e.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(e.iushrn(d);d-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(f),a.isub(l)),i.iushrn(1),a.iushrn(1);for(var p=0,g=1;0===(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(u.isOdd()||s.isOdd())&&(u.iadd(f),s.isub(l)),u.iushrn(1),s.iushrn(1);e.cmp(n)>=0?(e.isub(n),i.isub(u),a.isub(s)):(n.isub(e),u.isub(i),s.isub(a))}return{a:u,b:s,gcd:n.iushln(c)}},o.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,a=new o(1),u=new o(0),s=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,f=1;0===(e.words[0]&f)&&c<26;++c,f<<=1);if(c>0)for(e.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(s),a.iushrn(1);for(var l=0,d=1;0===(n.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(n.iushrn(l);l-- >0;)u.isOdd()&&u.iadd(s),u.iushrn(1);e.cmp(n)>=0?(e.isub(n),a.isub(u)):(n.isub(e),u.isub(a))}return(i=0===e.cmpn(1)?a:u).cmpn(0)<0&&i.iadd(t),i},o.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),n=t.clone();e.negative=0,n.negative=0;for(var r=0;e.isEven()&&n.isEven();r++)e.iushrn(1),n.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=e.cmp(n);if(i<0){var o=e;e=n,n=o}else if(0===i||0===n.cmpn(1))break;e.isub(n)}return n.iushln(r)},o.prototype.invm=function(t){return this.egcd(t).a.umod(t)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(t){return this.words[0]&t},o.prototype.bincn=function(t){r("number"===typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,u&=67108863,this.words[a]=u}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|t.words[n];if(r!==i){ri&&(e=1);break}}return e},o.prototype.gtn=function(t){return 1===this.cmpn(t)},o.prototype.gt=function(t){return 1===this.cmp(t)},o.prototype.gten=function(t){return this.cmpn(t)>=0},o.prototype.gte=function(t){return this.cmp(t)>=0},o.prototype.ltn=function(t){return-1===this.cmpn(t)},o.prototype.lt=function(t){return-1===this.cmp(t)},o.prototype.lten=function(t){return this.cmpn(t)<=0},o.prototype.lte=function(t){return this.cmp(t)<=0},o.prototype.eqn=function(t){return 0===this.cmpn(t)},o.prototype.eq=function(t){return 0===this.cmp(t)},o.red=function(t){return new O(t)},o.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(t){return this.red=t,this},o.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},o.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},o.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},o.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},o.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},o.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},o.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},o.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var b={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new o(e,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){v.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function _(){v.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){v.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function S(){v.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function O(t){if("string"===typeof t){var e=o._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function x(t){O.call(this,t),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}v.prototype._tmp=function(){var t=new o(null);return t.words=new Array(Math.ceil(this.n/13)),t},v.prototype.ireduce=function(t){var e,n=t;do{this.split(n,this.tmp),e=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(e>this.n);var r=e0?n.isub(this.p):void 0!==n.strip?n.strip():n._strip(),n},v.prototype.split=function(t,e){t.iushrn(this.n,0,e)},v.prototype.imulK=function(t){return t.imul(this.k)},i(y,v),y.prototype.split=function(t,e){for(var n=4194303,r=Math.min(t.length,9),i=0;i>>22,o=a}o>>>=22,t.words[i-10]=o,0===o&&t.length>10?t.length-=10:t.length-=9},y.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,n=0;n>>=26,t.words[n]=i,e=r}return 0!==e&&(t.words[t.length++]=e),t},o._prime=function(t){if(b[t])return b[t];var e;if("k256"===t)e=new y;else if("p224"===t)e=new _;else if("p192"===t)e=new w;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new S}return b[t]=e,e},O.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},O.prototype._verify2=function(t,e){r(0===(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},O.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},O.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},O.prototype.add=function(t,e){this._verify2(t,e);var n=t.add(e);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},O.prototype.iadd=function(t,e){this._verify2(t,e);var n=t.iadd(e);return n.cmp(this.m)>=0&&n.isub(this.m),n},O.prototype.sub=function(t,e){this._verify2(t,e);var n=t.sub(e);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},O.prototype.isub=function(t,e){this._verify2(t,e);var n=t.isub(e);return n.cmpn(0)<0&&n.iadd(this.m),n},O.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},O.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},O.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},O.prototype.isqr=function(t){return this.imul(t,t.clone())},O.prototype.sqr=function(t){return this.mul(t,t)},O.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2===1),3===e){var n=this.m.add(new o(1)).iushrn(2);return this.pow(t,n)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);r(!i.isZero());var u=new o(1).toRed(this),s=u.redNeg(),c=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new o(2*f*f).toRed(this);0!==this.pow(f,c).cmp(s);)f.redIAdd(s);for(var l=this.pow(f,i),d=this.pow(t,i.addn(1).iushrn(1)),h=this.pow(t,i),p=a;0!==h.cmp(u);){for(var g=h,m=0;0!==g.cmp(u);m++)g=g.redSqr();r(m=0;r--){for(var c=e.words[r],f=s-1;f>=0;f--){var l=c>>f&1;i!==n[0]&&(i=this.sqr(i)),0!==l||0!==a?(a<<=1,a|=l,(4===++u||0===r&&0===f)&&(i=this.mul(i,n[a]),u=0,a=0)):u=0}s=26}return i},O.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},O.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},o.mont=function(t){return new x(t)},i(x,O),x.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},x.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},x.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},x.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new o(0)._forceRed(this);var n=t.mul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},x.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,this)}).call(this,n(94)(t))},function(t,e,n){(function(t){!function(t,e){"use strict";function r(t,e){if(!t)throw new Error(e||"Assertion failed")}function i(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}function o(t,e,n){if(o.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(n=e,e=10),this._init(t||0,e||10,n||"be"))}var a;"object"===typeof t?t.exports=o:e.BN=o,o.BN=o,o.wordSize=26;try{a=n(898).Buffer}catch(x){}function u(t,e,n){for(var r=0,i=Math.min(t.length,n),o=e;o=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return r}function s(t,e,n,r){for(var i=0,o=Math.min(t.length,n),a=e;a=49?u-49+10:u>=17?u-17+10:u}return i}o.isBN=function(t){return t instanceof o||null!==t&&"object"===typeof t&&t.constructor.wordSize===o.wordSize&&Array.isArray(t.words)},o.max=function(t,e){return t.cmp(e)>0?t:e},o.min=function(t,e){return t.cmp(e)<0?t:e},o.prototype._init=function(t,e,n){if("number"===typeof t)return this._initNumber(t,e,n);if("object"===typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&i++,16===e?this._parseHex(t,i):this._parseBase(t,e,i),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initNumber=function(t,e,n){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(r(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initArray=function(t,e,n){if(r("number"===typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)a=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[o]|=a<>>26-u&67108863,(u+=24)>=26&&(u-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-u&67108863,(u+=24)>=26&&(u-=26,o++);return this.strip()},o.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=6)i=u(t,n,n+6),this.words[r]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,r++);n+6!==e&&(i=u(t,e,n+6),this.words[r]|=i<>>26-o&4194303),this.strip()},o.prototype._parseBase=function(t,e,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=e)r++;r--,i=i/e|0;for(var o=t.length-n,a=o%r,u=Math.min(o,o-a)+n,c=0,f=n;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(t,e,n){n.negative=e.negative^t.negative;var r=t.length+e.length|0;n.length=r,r=r-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,u=67108863&a,s=a/67108864|0;n.words[0]=u;for(var c=1;c>>26,l=67108863&s,d=Math.min(c,e.length-1),h=Math.max(0,c-t.length+1);h<=d;h++){var p=c-h|0;f+=(a=(i=0|t.words[p])*(o=0|e.words[h])+l)/67108864|0,l=67108863&a}n.words[c]=0|l,s=0|f}return 0!==s?n.words[c]=0|s:n.length--,n.strip()}o.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?c[6-s.length]+s+n:s+n,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(n=o.toString(16)+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var d=f[t],h=l[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(h).toString(t);n=(p=p.idivn(h)).isZero()?g+n:c[d-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(t,e){return r("undefined"!==typeof a),this.toArrayLike(a,t,e)},o.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},o.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var a,u,s="le"===e,c=new t(o),f=this.clone();if(s){for(u=0;!f.isZero();u++)a=f.andln(255),f.iushrn(8),c[u]=a;for(;u=4096&&(n+=13,e>>>=13),e>=64&&(n+=7,e>>>=7),e>=8&&(n+=4,e>>>=4),e>=2&&(n+=2,e>>>=2),n+e},o.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,n=0;return 0===(8191&e)&&(n+=13,e>>>=13),0===(127&e)&&(n+=7,e>>>=7),0===(15&e)&&(n+=4,e>>>=4),0===(3&e)&&(n+=2,e>>>=2),0===(1&e)&&n++,n},o.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},o.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},o.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},o.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},o.prototype.iuxor=function(t){var e,n;this.length>t.length?(e=this,n=t):(e=t,n=this);for(var r=0;rt.length?this.clone().ixor(t):t.clone().ixor(this)},o.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},o.prototype.inotn=function(t){r("number"===typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(t){return this.clone().inotn(t)},o.prototype.setn=function(t,e){r("number"===typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(n=this,r=t):(n=t,r=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},o.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n,r,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=t):(n=t,r=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,h=0|a[1],p=8191&h,g=h>>>13,m=0|a[2],b=8191&m,v=m>>>13,y=0|a[3],_=8191&y,w=y>>>13,S=0|a[4],O=8191&S,x=S>>>13,E=0|a[5],M=8191&E,T=E>>>13,$=0|a[6],A=8191&$,k=$>>>13,C=0|a[7],I=8191&C,P=C>>>13,N=0|a[8],R=8191&N,j=N>>>13,D=0|a[9],L=8191&D,F=D>>>13,B=0|u[0],U=8191&B,z=B>>>13,H=0|u[1],V=8191&H,q=H>>>13,W=0|u[2],G=8191&W,K=W>>>13,Y=0|u[3],Z=8191&Y,Q=Y>>>13,X=0|u[4],J=8191&X,tt=X>>>13,et=0|u[5],nt=8191&et,rt=et>>>13,it=0|u[6],ot=8191&it,at=it>>>13,ut=0|u[7],st=8191&ut,ct=ut>>>13,ft=0|u[8],lt=8191&ft,dt=ft>>>13,ht=0|u[9],pt=8191&ht,gt=ht>>>13;n.negative=t.negative^e.negative,n.length=19;var mt=(c+(r=Math.imul(l,U))|0)+((8191&(i=(i=Math.imul(l,z))+Math.imul(d,U)|0))<<13)|0;c=((o=Math.imul(d,z))+(i>>>13)|0)+(mt>>>26)|0,mt&=67108863,r=Math.imul(p,U),i=(i=Math.imul(p,z))+Math.imul(g,U)|0,o=Math.imul(g,z);var bt=(c+(r=r+Math.imul(l,V)|0)|0)+((8191&(i=(i=i+Math.imul(l,q)|0)+Math.imul(d,V)|0))<<13)|0;c=((o=o+Math.imul(d,q)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,r=Math.imul(b,U),i=(i=Math.imul(b,z))+Math.imul(v,U)|0,o=Math.imul(v,z),r=r+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(g,V)|0,o=o+Math.imul(g,q)|0;var vt=(c+(r=r+Math.imul(l,G)|0)|0)+((8191&(i=(i=i+Math.imul(l,K)|0)+Math.imul(d,G)|0))<<13)|0;c=((o=o+Math.imul(d,K)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,r=Math.imul(_,U),i=(i=Math.imul(_,z))+Math.imul(w,U)|0,o=Math.imul(w,z),r=r+Math.imul(b,V)|0,i=(i=i+Math.imul(b,q)|0)+Math.imul(v,V)|0,o=o+Math.imul(v,q)|0,r=r+Math.imul(p,G)|0,i=(i=i+Math.imul(p,K)|0)+Math.imul(g,G)|0,o=o+Math.imul(g,K)|0;var yt=(c+(r=r+Math.imul(l,Z)|0)|0)+((8191&(i=(i=i+Math.imul(l,Q)|0)+Math.imul(d,Z)|0))<<13)|0;c=((o=o+Math.imul(d,Q)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,r=Math.imul(O,U),i=(i=Math.imul(O,z))+Math.imul(x,U)|0,o=Math.imul(x,z),r=r+Math.imul(_,V)|0,i=(i=i+Math.imul(_,q)|0)+Math.imul(w,V)|0,o=o+Math.imul(w,q)|0,r=r+Math.imul(b,G)|0,i=(i=i+Math.imul(b,K)|0)+Math.imul(v,G)|0,o=o+Math.imul(v,K)|0,r=r+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,Q)|0)+Math.imul(g,Z)|0,o=o+Math.imul(g,Q)|0;var _t=(c+(r=r+Math.imul(l,J)|0)|0)+((8191&(i=(i=i+Math.imul(l,tt)|0)+Math.imul(d,J)|0))<<13)|0;c=((o=o+Math.imul(d,tt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,r=Math.imul(M,U),i=(i=Math.imul(M,z))+Math.imul(T,U)|0,o=Math.imul(T,z),r=r+Math.imul(O,V)|0,i=(i=i+Math.imul(O,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,r=r+Math.imul(_,G)|0,i=(i=i+Math.imul(_,K)|0)+Math.imul(w,G)|0,o=o+Math.imul(w,K)|0,r=r+Math.imul(b,Z)|0,i=(i=i+Math.imul(b,Q)|0)+Math.imul(v,Z)|0,o=o+Math.imul(v,Q)|0,r=r+Math.imul(p,J)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(g,J)|0,o=o+Math.imul(g,tt)|0;var wt=(c+(r=r+Math.imul(l,nt)|0)|0)+((8191&(i=(i=i+Math.imul(l,rt)|0)+Math.imul(d,nt)|0))<<13)|0;c=((o=o+Math.imul(d,rt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,r=Math.imul(A,U),i=(i=Math.imul(A,z))+Math.imul(k,U)|0,o=Math.imul(k,z),r=r+Math.imul(M,V)|0,i=(i=i+Math.imul(M,q)|0)+Math.imul(T,V)|0,o=o+Math.imul(T,q)|0,r=r+Math.imul(O,G)|0,i=(i=i+Math.imul(O,K)|0)+Math.imul(x,G)|0,o=o+Math.imul(x,K)|0,r=r+Math.imul(_,Z)|0,i=(i=i+Math.imul(_,Q)|0)+Math.imul(w,Z)|0,o=o+Math.imul(w,Q)|0,r=r+Math.imul(b,J)|0,i=(i=i+Math.imul(b,tt)|0)+Math.imul(v,J)|0,o=o+Math.imul(v,tt)|0,r=r+Math.imul(p,nt)|0,i=(i=i+Math.imul(p,rt)|0)+Math.imul(g,nt)|0,o=o+Math.imul(g,rt)|0;var St=(c+(r=r+Math.imul(l,ot)|0)|0)+((8191&(i=(i=i+Math.imul(l,at)|0)+Math.imul(d,ot)|0))<<13)|0;c=((o=o+Math.imul(d,at)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,r=Math.imul(I,U),i=(i=Math.imul(I,z))+Math.imul(P,U)|0,o=Math.imul(P,z),r=r+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,r=r+Math.imul(M,G)|0,i=(i=i+Math.imul(M,K)|0)+Math.imul(T,G)|0,o=o+Math.imul(T,K)|0,r=r+Math.imul(O,Z)|0,i=(i=i+Math.imul(O,Q)|0)+Math.imul(x,Z)|0,o=o+Math.imul(x,Q)|0,r=r+Math.imul(_,J)|0,i=(i=i+Math.imul(_,tt)|0)+Math.imul(w,J)|0,o=o+Math.imul(w,tt)|0,r=r+Math.imul(b,nt)|0,i=(i=i+Math.imul(b,rt)|0)+Math.imul(v,nt)|0,o=o+Math.imul(v,rt)|0,r=r+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(g,ot)|0,o=o+Math.imul(g,at)|0;var Ot=(c+(r=r+Math.imul(l,st)|0)|0)+((8191&(i=(i=i+Math.imul(l,ct)|0)+Math.imul(d,st)|0))<<13)|0;c=((o=o+Math.imul(d,ct)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,r=Math.imul(R,U),i=(i=Math.imul(R,z))+Math.imul(j,U)|0,o=Math.imul(j,z),r=r+Math.imul(I,V)|0,i=(i=i+Math.imul(I,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,r=r+Math.imul(A,G)|0,i=(i=i+Math.imul(A,K)|0)+Math.imul(k,G)|0,o=o+Math.imul(k,K)|0,r=r+Math.imul(M,Z)|0,i=(i=i+Math.imul(M,Q)|0)+Math.imul(T,Z)|0,o=o+Math.imul(T,Q)|0,r=r+Math.imul(O,J)|0,i=(i=i+Math.imul(O,tt)|0)+Math.imul(x,J)|0,o=o+Math.imul(x,tt)|0,r=r+Math.imul(_,nt)|0,i=(i=i+Math.imul(_,rt)|0)+Math.imul(w,nt)|0,o=o+Math.imul(w,rt)|0,r=r+Math.imul(b,ot)|0,i=(i=i+Math.imul(b,at)|0)+Math.imul(v,ot)|0,o=o+Math.imul(v,at)|0,r=r+Math.imul(p,st)|0,i=(i=i+Math.imul(p,ct)|0)+Math.imul(g,st)|0,o=o+Math.imul(g,ct)|0;var xt=(c+(r=r+Math.imul(l,lt)|0)|0)+((8191&(i=(i=i+Math.imul(l,dt)|0)+Math.imul(d,lt)|0))<<13)|0;c=((o=o+Math.imul(d,dt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,r=Math.imul(L,U),i=(i=Math.imul(L,z))+Math.imul(F,U)|0,o=Math.imul(F,z),r=r+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(j,V)|0,o=o+Math.imul(j,q)|0,r=r+Math.imul(I,G)|0,i=(i=i+Math.imul(I,K)|0)+Math.imul(P,G)|0,o=o+Math.imul(P,K)|0,r=r+Math.imul(A,Z)|0,i=(i=i+Math.imul(A,Q)|0)+Math.imul(k,Z)|0,o=o+Math.imul(k,Q)|0,r=r+Math.imul(M,J)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(T,J)|0,o=o+Math.imul(T,tt)|0,r=r+Math.imul(O,nt)|0,i=(i=i+Math.imul(O,rt)|0)+Math.imul(x,nt)|0,o=o+Math.imul(x,rt)|0,r=r+Math.imul(_,ot)|0,i=(i=i+Math.imul(_,at)|0)+Math.imul(w,ot)|0,o=o+Math.imul(w,at)|0,r=r+Math.imul(b,st)|0,i=(i=i+Math.imul(b,ct)|0)+Math.imul(v,st)|0,o=o+Math.imul(v,ct)|0,r=r+Math.imul(p,lt)|0,i=(i=i+Math.imul(p,dt)|0)+Math.imul(g,lt)|0,o=o+Math.imul(g,dt)|0;var Et=(c+(r=r+Math.imul(l,pt)|0)|0)+((8191&(i=(i=i+Math.imul(l,gt)|0)+Math.imul(d,pt)|0))<<13)|0;c=((o=o+Math.imul(d,gt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,r=Math.imul(L,V),i=(i=Math.imul(L,q))+Math.imul(F,V)|0,o=Math.imul(F,q),r=r+Math.imul(R,G)|0,i=(i=i+Math.imul(R,K)|0)+Math.imul(j,G)|0,o=o+Math.imul(j,K)|0,r=r+Math.imul(I,Z)|0,i=(i=i+Math.imul(I,Q)|0)+Math.imul(P,Z)|0,o=o+Math.imul(P,Q)|0,r=r+Math.imul(A,J)|0,i=(i=i+Math.imul(A,tt)|0)+Math.imul(k,J)|0,o=o+Math.imul(k,tt)|0,r=r+Math.imul(M,nt)|0,i=(i=i+Math.imul(M,rt)|0)+Math.imul(T,nt)|0,o=o+Math.imul(T,rt)|0,r=r+Math.imul(O,ot)|0,i=(i=i+Math.imul(O,at)|0)+Math.imul(x,ot)|0,o=o+Math.imul(x,at)|0,r=r+Math.imul(_,st)|0,i=(i=i+Math.imul(_,ct)|0)+Math.imul(w,st)|0,o=o+Math.imul(w,ct)|0,r=r+Math.imul(b,lt)|0,i=(i=i+Math.imul(b,dt)|0)+Math.imul(v,lt)|0,o=o+Math.imul(v,dt)|0;var Mt=(c+(r=r+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,gt)|0)+Math.imul(g,pt)|0))<<13)|0;c=((o=o+Math.imul(g,gt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,r=Math.imul(L,G),i=(i=Math.imul(L,K))+Math.imul(F,G)|0,o=Math.imul(F,K),r=r+Math.imul(R,Z)|0,i=(i=i+Math.imul(R,Q)|0)+Math.imul(j,Z)|0,o=o+Math.imul(j,Q)|0,r=r+Math.imul(I,J)|0,i=(i=i+Math.imul(I,tt)|0)+Math.imul(P,J)|0,o=o+Math.imul(P,tt)|0,r=r+Math.imul(A,nt)|0,i=(i=i+Math.imul(A,rt)|0)+Math.imul(k,nt)|0,o=o+Math.imul(k,rt)|0,r=r+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(T,ot)|0,o=o+Math.imul(T,at)|0,r=r+Math.imul(O,st)|0,i=(i=i+Math.imul(O,ct)|0)+Math.imul(x,st)|0,o=o+Math.imul(x,ct)|0,r=r+Math.imul(_,lt)|0,i=(i=i+Math.imul(_,dt)|0)+Math.imul(w,lt)|0,o=o+Math.imul(w,dt)|0;var Tt=(c+(r=r+Math.imul(b,pt)|0)|0)+((8191&(i=(i=i+Math.imul(b,gt)|0)+Math.imul(v,pt)|0))<<13)|0;c=((o=o+Math.imul(v,gt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,r=Math.imul(L,Z),i=(i=Math.imul(L,Q))+Math.imul(F,Z)|0,o=Math.imul(F,Q),r=r+Math.imul(R,J)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(j,J)|0,o=o+Math.imul(j,tt)|0,r=r+Math.imul(I,nt)|0,i=(i=i+Math.imul(I,rt)|0)+Math.imul(P,nt)|0,o=o+Math.imul(P,rt)|0,r=r+Math.imul(A,ot)|0,i=(i=i+Math.imul(A,at)|0)+Math.imul(k,ot)|0,o=o+Math.imul(k,at)|0,r=r+Math.imul(M,st)|0,i=(i=i+Math.imul(M,ct)|0)+Math.imul(T,st)|0,o=o+Math.imul(T,ct)|0,r=r+Math.imul(O,lt)|0,i=(i=i+Math.imul(O,dt)|0)+Math.imul(x,lt)|0,o=o+Math.imul(x,dt)|0;var $t=(c+(r=r+Math.imul(_,pt)|0)|0)+((8191&(i=(i=i+Math.imul(_,gt)|0)+Math.imul(w,pt)|0))<<13)|0;c=((o=o+Math.imul(w,gt)|0)+(i>>>13)|0)+($t>>>26)|0,$t&=67108863,r=Math.imul(L,J),i=(i=Math.imul(L,tt))+Math.imul(F,J)|0,o=Math.imul(F,tt),r=r+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,rt)|0)+Math.imul(j,nt)|0,o=o+Math.imul(j,rt)|0,r=r+Math.imul(I,ot)|0,i=(i=i+Math.imul(I,at)|0)+Math.imul(P,ot)|0,o=o+Math.imul(P,at)|0,r=r+Math.imul(A,st)|0,i=(i=i+Math.imul(A,ct)|0)+Math.imul(k,st)|0,o=o+Math.imul(k,ct)|0,r=r+Math.imul(M,lt)|0,i=(i=i+Math.imul(M,dt)|0)+Math.imul(T,lt)|0,o=o+Math.imul(T,dt)|0;var At=(c+(r=r+Math.imul(O,pt)|0)|0)+((8191&(i=(i=i+Math.imul(O,gt)|0)+Math.imul(x,pt)|0))<<13)|0;c=((o=o+Math.imul(x,gt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,r=Math.imul(L,nt),i=(i=Math.imul(L,rt))+Math.imul(F,nt)|0,o=Math.imul(F,rt),r=r+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,r=r+Math.imul(I,st)|0,i=(i=i+Math.imul(I,ct)|0)+Math.imul(P,st)|0,o=o+Math.imul(P,ct)|0,r=r+Math.imul(A,lt)|0,i=(i=i+Math.imul(A,dt)|0)+Math.imul(k,lt)|0,o=o+Math.imul(k,dt)|0;var kt=(c+(r=r+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,gt)|0)+Math.imul(T,pt)|0))<<13)|0;c=((o=o+Math.imul(T,gt)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,r=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),r=r+Math.imul(R,st)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(j,st)|0,o=o+Math.imul(j,ct)|0,r=r+Math.imul(I,lt)|0,i=(i=i+Math.imul(I,dt)|0)+Math.imul(P,lt)|0,o=o+Math.imul(P,dt)|0;var Ct=(c+(r=r+Math.imul(A,pt)|0)|0)+((8191&(i=(i=i+Math.imul(A,gt)|0)+Math.imul(k,pt)|0))<<13)|0;c=((o=o+Math.imul(k,gt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,r=Math.imul(L,st),i=(i=Math.imul(L,ct))+Math.imul(F,st)|0,o=Math.imul(F,ct),r=r+Math.imul(R,lt)|0,i=(i=i+Math.imul(R,dt)|0)+Math.imul(j,lt)|0,o=o+Math.imul(j,dt)|0;var It=(c+(r=r+Math.imul(I,pt)|0)|0)+((8191&(i=(i=i+Math.imul(I,gt)|0)+Math.imul(P,pt)|0))<<13)|0;c=((o=o+Math.imul(P,gt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863,r=Math.imul(L,lt),i=(i=Math.imul(L,dt))+Math.imul(F,lt)|0,o=Math.imul(F,dt);var Pt=(c+(r=r+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,gt)|0)+Math.imul(j,pt)|0))<<13)|0;c=((o=o+Math.imul(j,gt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863;var Nt=(c+(r=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,gt))+Math.imul(F,pt)|0))<<13)|0;return c=((o=Math.imul(F,gt))+(i>>>13)|0)+(Nt>>>26)|0,Nt&=67108863,s[0]=mt,s[1]=bt,s[2]=vt,s[3]=yt,s[4]=_t,s[5]=wt,s[6]=St,s[7]=Ot,s[8]=xt,s[9]=Et,s[10]=Mt,s[11]=Tt,s[12]=$t,s[13]=At,s[14]=kt,s[15]=Ct,s[16]=It,s[17]=Pt,s[18]=Nt,0!==c&&(s[19]=c,n.length++),n};function p(t,e,n){return(new g).mulp(t,e,n)}function g(t,e){this.x=t,this.y=e}Math.imul||(h=d),o.prototype.mulTo=function(t,e){var n=this.length+t.length;return 10===this.length&&10===t.length?h(this,t,e):n<63?d(this,t,e):n<1024?function(t,e,n){n.negative=e.negative^t.negative,n.length=t.length+e.length;for(var r=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}n.words[o]=u,r=a,a=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,t,e):p(this,t,e)},g.prototype.makeRBT=function(t){for(var e=new Array(t),n=o.prototype._countBits(t)-1,r=0;r>=1;return r},g.prototype.permute=function(t,e,n,r,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,n[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=i/67108864|0,e+=o>>>26,this.words[n]=67108863&o}return 0!==e&&(this.words[n]=e,this.length++),this},o.prototype.muln=function(t){return this.clone().imuln(t)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),n=0;n>>i}return e}(t);if(0===e.length)return new o(1);for(var n=this,r=0;r=0);var e,n=t%26,i=(t-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var a=0;for(e=0;e>>26-n}a&&(this.words[e]=a,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),u=67108863^67108863>>>o<a)for(this.length-=a,c=0;c=0&&(0!==f||c>=i);c--){var l=0|this.words[c];this.words[c]=f<<26-o|l>>>o,f=l&u}return s&&0!==f&&(s.words[s.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},o.prototype.shln=function(t){return this.clone().ishln(t)},o.prototype.ushln=function(t){return this.clone().iushln(t)},o.prototype.shrn=function(t){return this.clone().ishrn(t)},o.prototype.ushrn=function(t){return this.clone().iushrn(t)},o.prototype.testn=function(t){r("number"===typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},o.prototype.isubn=function(t){if(r("number"===typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(s/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===u)return this.strip();for(r(-1===u),u=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(t,e){var n=(this.length,t.length),r=this.clone(),i=t,a=0|i.words[i.length-1];0!==(n=26-this._countBits(a))&&(i=i.ushln(n),r.iushln(n),a=0|i.words[i.length-1]);var u,s=r.length-i.length;if("mod"!==e){(u=new o(null)).length=s+1,u.words=new Array(u.length);for(var c=0;c=0;l--){var d=67108864*(0|r.words[i.length+l])+(0|r.words[i.length+l-1]);for(d=Math.min(d/a|0,67108863),r._ishlnsubmul(i,d,l);0!==r.negative;)d--,r.negative=0,r._ishlnsubmul(i,1,l),r.isZero()||(r.negative^=1);u&&(u.words[l]=d)}return u&&u.strip(),r.strip(),"div"!==e&&0!==n&&r.iushrn(n),{div:u||null,mod:r}},o.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===t.negative?(u=this.neg().divmod(t,e),"mod"!==e&&(i=u.div.neg()),"div"!==e&&(a=u.mod.neg(),n&&0!==a.negative&&a.iadd(t)),{div:i,mod:a}):0===this.negative&&0!==t.negative?(u=this.divmod(t.neg(),e),"mod"!==e&&(i=u.div.neg()),{div:i,mod:u.mod}):0!==(this.negative&t.negative)?(u=this.neg().divmod(t.neg(),e),"div"!==e&&(a=u.mod.neg(),n&&0!==a.negative&&a.isub(t)),{div:u.div,mod:a}):t.length>this.length||this.cmp(t)<0?{div:new o(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new o(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new o(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,a,u},o.prototype.div=function(t){return this.divmod(t,"div",!1).div},o.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},o.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},o.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var n=0!==e.div.negative?e.mod.isub(t):e.mod,r=t.ushrn(1),i=t.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},o.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},o.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},o.prototype.divn=function(t){return this.clone().idivn(t)},o.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new o(1),a=new o(0),u=new o(0),s=new o(1),c=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++c;for(var f=n.clone(),l=e.clone();!e.isZero();){for(var d=0,h=1;0===(e.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(e.iushrn(d);d-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(f),a.isub(l)),i.iushrn(1),a.iushrn(1);for(var p=0,g=1;0===(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(u.isOdd()||s.isOdd())&&(u.iadd(f),s.isub(l)),u.iushrn(1),s.iushrn(1);e.cmp(n)>=0?(e.isub(n),i.isub(u),a.isub(s)):(n.isub(e),u.isub(i),s.isub(a))}return{a:u,b:s,gcd:n.iushln(c)}},o.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,a=new o(1),u=new o(0),s=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,f=1;0===(e.words[0]&f)&&c<26;++c,f<<=1);if(c>0)for(e.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(s),a.iushrn(1);for(var l=0,d=1;0===(n.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(n.iushrn(l);l-- >0;)u.isOdd()&&u.iadd(s),u.iushrn(1);e.cmp(n)>=0?(e.isub(n),a.isub(u)):(n.isub(e),u.isub(a))}return(i=0===e.cmpn(1)?a:u).cmpn(0)<0&&i.iadd(t),i},o.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),n=t.clone();e.negative=0,n.negative=0;for(var r=0;e.isEven()&&n.isEven();r++)e.iushrn(1),n.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=e.cmp(n);if(i<0){var o=e;e=n,n=o}else if(0===i||0===n.cmpn(1))break;e.isub(n)}return n.iushln(r)},o.prototype.invm=function(t){return this.egcd(t).a.umod(t)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(t){return this.words[0]&t},o.prototype.bincn=function(t){r("number"===typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,u&=67108863,this.words[a]=u}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|t.words[n];if(r!==i){ri&&(e=1);break}}return e},o.prototype.gtn=function(t){return 1===this.cmpn(t)},o.prototype.gt=function(t){return 1===this.cmp(t)},o.prototype.gten=function(t){return this.cmpn(t)>=0},o.prototype.gte=function(t){return this.cmp(t)>=0},o.prototype.ltn=function(t){return-1===this.cmpn(t)},o.prototype.lt=function(t){return-1===this.cmp(t)},o.prototype.lten=function(t){return this.cmpn(t)<=0},o.prototype.lte=function(t){return this.cmp(t)<=0},o.prototype.eqn=function(t){return 0===this.cmpn(t)},o.prototype.eq=function(t){return 0===this.cmp(t)},o.red=function(t){return new S(t)},o.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(t){return this.red=t,this},o.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},o.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},o.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},o.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},o.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},o.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},o.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},o.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};function b(t,e){this.name=t,this.p=new o(e,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function v(){b.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function y(){b.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function _(){b.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){b.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(t){if("string"===typeof t){var e=o._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function O(t){S.call(this,t),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}b.prototype._tmp=function(){var t=new o(null);return t.words=new Array(Math.ceil(this.n/13)),t},b.prototype.ireduce=function(t){var e,n=t;do{this.split(n,this.tmp),e=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(e>this.n);var r=e0?n.isub(this.p):void 0!==n.strip?n.strip():n._strip(),n},b.prototype.split=function(t,e){t.iushrn(this.n,0,e)},b.prototype.imulK=function(t){return t.imul(this.k)},i(v,b),v.prototype.split=function(t,e){for(var n=4194303,r=Math.min(t.length,9),i=0;i>>22,o=a}o>>>=22,t.words[i-10]=o,0===o&&t.length>10?t.length-=10:t.length-=9},v.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,n=0;n>>=26,t.words[n]=i,e=r}return 0!==e&&(t.words[t.length++]=e),t},o._prime=function(t){if(m[t])return m[t];var e;if("k256"===t)e=new v;else if("p224"===t)e=new y;else if("p192"===t)e=new _;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new w}return m[t]=e,e},S.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},S.prototype._verify2=function(t,e){r(0===(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},S.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},S.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},S.prototype.add=function(t,e){this._verify2(t,e);var n=t.add(e);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},S.prototype.iadd=function(t,e){this._verify2(t,e);var n=t.iadd(e);return n.cmp(this.m)>=0&&n.isub(this.m),n},S.prototype.sub=function(t,e){this._verify2(t,e);var n=t.sub(e);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},S.prototype.isub=function(t,e){this._verify2(t,e);var n=t.isub(e);return n.cmpn(0)<0&&n.iadd(this.m),n},S.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},S.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},S.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},S.prototype.isqr=function(t){return this.imul(t,t.clone())},S.prototype.sqr=function(t){return this.mul(t,t)},S.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2===1),3===e){var n=this.m.add(new o(1)).iushrn(2);return this.pow(t,n)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);r(!i.isZero());var u=new o(1).toRed(this),s=u.redNeg(),c=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new o(2*f*f).toRed(this);0!==this.pow(f,c).cmp(s);)f.redIAdd(s);for(var l=this.pow(f,i),d=this.pow(t,i.addn(1).iushrn(1)),h=this.pow(t,i),p=a;0!==h.cmp(u);){for(var g=h,m=0;0!==g.cmp(u);m++)g=g.redSqr();r(m=0;r--){for(var c=e.words[r],f=s-1;f>=0;f--){var l=c>>f&1;i!==n[0]&&(i=this.sqr(i)),0!==l||0!==a?(a<<=1,a|=l,(4===++u||0===r&&0===f)&&(i=this.mul(i,n[a]),u=0,a=0)):u=0}s=26}return i},S.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},S.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},o.mont=function(t){return new O(t)},i(O,S),O.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},O.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},O.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new o(0)._forceRed(this);var n=t.mul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},O.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,this)}).call(this,n(94)(t))},function(t,e,n){(function(t){!function(t,e){"use strict";function r(t,e){if(!t)throw new Error(e||"Assertion failed")}function i(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}function o(t,e,n){if(o.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&("le"!==e&&"be"!==e||(n=e,e=10),this._init(t||0,e||10,n||"be"))}var a;"object"===typeof t?t.exports=o:e.BN=o,o.BN=o,o.wordSize=26;try{a=n(923).Buffer}catch(x){}function u(t,e,n){for(var r=0,i=Math.min(t.length,n),o=e;o=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return r}function s(t,e,n,r){for(var i=0,o=Math.min(t.length,n),a=e;a=49?u-49+10:u>=17?u-17+10:u}return i}o.isBN=function(t){return t instanceof o||null!==t&&"object"===typeof t&&t.constructor.wordSize===o.wordSize&&Array.isArray(t.words)},o.max=function(t,e){return t.cmp(e)>0?t:e},o.min=function(t,e){return t.cmp(e)<0?t:e},o.prototype._init=function(t,e,n){if("number"===typeof t)return this._initNumber(t,e,n);if("object"===typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&i++,16===e?this._parseHex(t,i):this._parseBase(t,e,i),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initNumber=function(t,e,n){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(r(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initArray=function(t,e,n){if(r("number"===typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)a=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[o]|=a<>>26-u&67108863,(u+=24)>=26&&(u-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-u&67108863,(u+=24)>=26&&(u-=26,o++);return this.strip()},o.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=6)i=u(t,n,n+6),this.words[r]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,r++);n+6!==e&&(i=u(t,e,n+6),this.words[r]|=i<>>26-o&4194303),this.strip()},o.prototype._parseBase=function(t,e,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=e)r++;r--,i=i/e|0;for(var o=t.length-n,a=o%r,u=Math.min(o,o-a)+n,c=0,f=n;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],l=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(t,e,n){n.negative=e.negative^t.negative;var r=t.length+e.length|0;n.length=r,r=r-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,u=67108863&a,s=a/67108864|0;n.words[0]=u;for(var c=1;c>>26,l=67108863&s,d=Math.min(c,e.length-1),h=Math.max(0,c-t.length+1);h<=d;h++){var p=c-h|0;f+=(a=(i=0|t.words[p])*(o=0|e.words[h])+l)/67108864|0,l=67108863&a}n.words[c]=0|l,s=0|f}return 0!==s?n.words[c]=0|s:n.length--,n.strip()}o.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?c[6-s.length]+s+n:s+n,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(n=o.toString(16)+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var d=f[t],h=l[t];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(h).toString(t);n=(p=p.idivn(h)).isZero()?g+n:c[d-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(t,e){return r("undefined"!==typeof a),this.toArrayLike(a,t,e)},o.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},o.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var a,u,s="le"===e,c=new t(o),f=this.clone();if(s){for(u=0;!f.isZero();u++)a=f.andln(255),f.iushrn(8),c[u]=a;for(;u=4096&&(n+=13,e>>>=13),e>=64&&(n+=7,e>>>=7),e>=8&&(n+=4,e>>>=4),e>=2&&(n+=2,e>>>=2),n+e},o.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,n=0;return 0===(8191&e)&&(n+=13,e>>>=13),0===(127&e)&&(n+=7,e>>>=7),0===(15&e)&&(n+=4,e>>>=4),0===(3&e)&&(n+=2,e>>>=2),0===(1&e)&&n++,n},o.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},o.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},o.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},o.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},o.prototype.iuxor=function(t){var e,n;this.length>t.length?(e=this,n=t):(e=t,n=this);for(var r=0;rt.length?this.clone().ixor(t):t.clone().ixor(this)},o.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},o.prototype.inotn=function(t){r("number"===typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(t){return this.clone().inotn(t)},o.prototype.setn=function(t,e){r("number"===typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(n=this,r=t):(n=t,r=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},o.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n,r,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=t):(n=t,r=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,h=0|a[1],p=8191&h,g=h>>>13,m=0|a[2],b=8191&m,v=m>>>13,y=0|a[3],_=8191&y,w=y>>>13,S=0|a[4],O=8191&S,x=S>>>13,E=0|a[5],M=8191&E,T=E>>>13,$=0|a[6],A=8191&$,k=$>>>13,C=0|a[7],I=8191&C,P=C>>>13,N=0|a[8],R=8191&N,j=N>>>13,D=0|a[9],L=8191&D,F=D>>>13,B=0|u[0],U=8191&B,z=B>>>13,H=0|u[1],V=8191&H,q=H>>>13,W=0|u[2],G=8191&W,K=W>>>13,Y=0|u[3],Z=8191&Y,Q=Y>>>13,X=0|u[4],J=8191&X,tt=X>>>13,et=0|u[5],nt=8191&et,rt=et>>>13,it=0|u[6],ot=8191&it,at=it>>>13,ut=0|u[7],st=8191&ut,ct=ut>>>13,ft=0|u[8],lt=8191&ft,dt=ft>>>13,ht=0|u[9],pt=8191&ht,gt=ht>>>13;n.negative=t.negative^e.negative,n.length=19;var mt=(c+(r=Math.imul(l,U))|0)+((8191&(i=(i=Math.imul(l,z))+Math.imul(d,U)|0))<<13)|0;c=((o=Math.imul(d,z))+(i>>>13)|0)+(mt>>>26)|0,mt&=67108863,r=Math.imul(p,U),i=(i=Math.imul(p,z))+Math.imul(g,U)|0,o=Math.imul(g,z);var bt=(c+(r=r+Math.imul(l,V)|0)|0)+((8191&(i=(i=i+Math.imul(l,q)|0)+Math.imul(d,V)|0))<<13)|0;c=((o=o+Math.imul(d,q)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,r=Math.imul(b,U),i=(i=Math.imul(b,z))+Math.imul(v,U)|0,o=Math.imul(v,z),r=r+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(g,V)|0,o=o+Math.imul(g,q)|0;var vt=(c+(r=r+Math.imul(l,G)|0)|0)+((8191&(i=(i=i+Math.imul(l,K)|0)+Math.imul(d,G)|0))<<13)|0;c=((o=o+Math.imul(d,K)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,r=Math.imul(_,U),i=(i=Math.imul(_,z))+Math.imul(w,U)|0,o=Math.imul(w,z),r=r+Math.imul(b,V)|0,i=(i=i+Math.imul(b,q)|0)+Math.imul(v,V)|0,o=o+Math.imul(v,q)|0,r=r+Math.imul(p,G)|0,i=(i=i+Math.imul(p,K)|0)+Math.imul(g,G)|0,o=o+Math.imul(g,K)|0;var yt=(c+(r=r+Math.imul(l,Z)|0)|0)+((8191&(i=(i=i+Math.imul(l,Q)|0)+Math.imul(d,Z)|0))<<13)|0;c=((o=o+Math.imul(d,Q)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,r=Math.imul(O,U),i=(i=Math.imul(O,z))+Math.imul(x,U)|0,o=Math.imul(x,z),r=r+Math.imul(_,V)|0,i=(i=i+Math.imul(_,q)|0)+Math.imul(w,V)|0,o=o+Math.imul(w,q)|0,r=r+Math.imul(b,G)|0,i=(i=i+Math.imul(b,K)|0)+Math.imul(v,G)|0,o=o+Math.imul(v,K)|0,r=r+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,Q)|0)+Math.imul(g,Z)|0,o=o+Math.imul(g,Q)|0;var _t=(c+(r=r+Math.imul(l,J)|0)|0)+((8191&(i=(i=i+Math.imul(l,tt)|0)+Math.imul(d,J)|0))<<13)|0;c=((o=o+Math.imul(d,tt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,r=Math.imul(M,U),i=(i=Math.imul(M,z))+Math.imul(T,U)|0,o=Math.imul(T,z),r=r+Math.imul(O,V)|0,i=(i=i+Math.imul(O,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,r=r+Math.imul(_,G)|0,i=(i=i+Math.imul(_,K)|0)+Math.imul(w,G)|0,o=o+Math.imul(w,K)|0,r=r+Math.imul(b,Z)|0,i=(i=i+Math.imul(b,Q)|0)+Math.imul(v,Z)|0,o=o+Math.imul(v,Q)|0,r=r+Math.imul(p,J)|0,i=(i=i+Math.imul(p,tt)|0)+Math.imul(g,J)|0,o=o+Math.imul(g,tt)|0;var wt=(c+(r=r+Math.imul(l,nt)|0)|0)+((8191&(i=(i=i+Math.imul(l,rt)|0)+Math.imul(d,nt)|0))<<13)|0;c=((o=o+Math.imul(d,rt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,r=Math.imul(A,U),i=(i=Math.imul(A,z))+Math.imul(k,U)|0,o=Math.imul(k,z),r=r+Math.imul(M,V)|0,i=(i=i+Math.imul(M,q)|0)+Math.imul(T,V)|0,o=o+Math.imul(T,q)|0,r=r+Math.imul(O,G)|0,i=(i=i+Math.imul(O,K)|0)+Math.imul(x,G)|0,o=o+Math.imul(x,K)|0,r=r+Math.imul(_,Z)|0,i=(i=i+Math.imul(_,Q)|0)+Math.imul(w,Z)|0,o=o+Math.imul(w,Q)|0,r=r+Math.imul(b,J)|0,i=(i=i+Math.imul(b,tt)|0)+Math.imul(v,J)|0,o=o+Math.imul(v,tt)|0,r=r+Math.imul(p,nt)|0,i=(i=i+Math.imul(p,rt)|0)+Math.imul(g,nt)|0,o=o+Math.imul(g,rt)|0;var St=(c+(r=r+Math.imul(l,ot)|0)|0)+((8191&(i=(i=i+Math.imul(l,at)|0)+Math.imul(d,ot)|0))<<13)|0;c=((o=o+Math.imul(d,at)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,r=Math.imul(I,U),i=(i=Math.imul(I,z))+Math.imul(P,U)|0,o=Math.imul(P,z),r=r+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,r=r+Math.imul(M,G)|0,i=(i=i+Math.imul(M,K)|0)+Math.imul(T,G)|0,o=o+Math.imul(T,K)|0,r=r+Math.imul(O,Z)|0,i=(i=i+Math.imul(O,Q)|0)+Math.imul(x,Z)|0,o=o+Math.imul(x,Q)|0,r=r+Math.imul(_,J)|0,i=(i=i+Math.imul(_,tt)|0)+Math.imul(w,J)|0,o=o+Math.imul(w,tt)|0,r=r+Math.imul(b,nt)|0,i=(i=i+Math.imul(b,rt)|0)+Math.imul(v,nt)|0,o=o+Math.imul(v,rt)|0,r=r+Math.imul(p,ot)|0,i=(i=i+Math.imul(p,at)|0)+Math.imul(g,ot)|0,o=o+Math.imul(g,at)|0;var Ot=(c+(r=r+Math.imul(l,st)|0)|0)+((8191&(i=(i=i+Math.imul(l,ct)|0)+Math.imul(d,st)|0))<<13)|0;c=((o=o+Math.imul(d,ct)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,r=Math.imul(R,U),i=(i=Math.imul(R,z))+Math.imul(j,U)|0,o=Math.imul(j,z),r=r+Math.imul(I,V)|0,i=(i=i+Math.imul(I,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,r=r+Math.imul(A,G)|0,i=(i=i+Math.imul(A,K)|0)+Math.imul(k,G)|0,o=o+Math.imul(k,K)|0,r=r+Math.imul(M,Z)|0,i=(i=i+Math.imul(M,Q)|0)+Math.imul(T,Z)|0,o=o+Math.imul(T,Q)|0,r=r+Math.imul(O,J)|0,i=(i=i+Math.imul(O,tt)|0)+Math.imul(x,J)|0,o=o+Math.imul(x,tt)|0,r=r+Math.imul(_,nt)|0,i=(i=i+Math.imul(_,rt)|0)+Math.imul(w,nt)|0,o=o+Math.imul(w,rt)|0,r=r+Math.imul(b,ot)|0,i=(i=i+Math.imul(b,at)|0)+Math.imul(v,ot)|0,o=o+Math.imul(v,at)|0,r=r+Math.imul(p,st)|0,i=(i=i+Math.imul(p,ct)|0)+Math.imul(g,st)|0,o=o+Math.imul(g,ct)|0;var xt=(c+(r=r+Math.imul(l,lt)|0)|0)+((8191&(i=(i=i+Math.imul(l,dt)|0)+Math.imul(d,lt)|0))<<13)|0;c=((o=o+Math.imul(d,dt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,r=Math.imul(L,U),i=(i=Math.imul(L,z))+Math.imul(F,U)|0,o=Math.imul(F,z),r=r+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(j,V)|0,o=o+Math.imul(j,q)|0,r=r+Math.imul(I,G)|0,i=(i=i+Math.imul(I,K)|0)+Math.imul(P,G)|0,o=o+Math.imul(P,K)|0,r=r+Math.imul(A,Z)|0,i=(i=i+Math.imul(A,Q)|0)+Math.imul(k,Z)|0,o=o+Math.imul(k,Q)|0,r=r+Math.imul(M,J)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(T,J)|0,o=o+Math.imul(T,tt)|0,r=r+Math.imul(O,nt)|0,i=(i=i+Math.imul(O,rt)|0)+Math.imul(x,nt)|0,o=o+Math.imul(x,rt)|0,r=r+Math.imul(_,ot)|0,i=(i=i+Math.imul(_,at)|0)+Math.imul(w,ot)|0,o=o+Math.imul(w,at)|0,r=r+Math.imul(b,st)|0,i=(i=i+Math.imul(b,ct)|0)+Math.imul(v,st)|0,o=o+Math.imul(v,ct)|0,r=r+Math.imul(p,lt)|0,i=(i=i+Math.imul(p,dt)|0)+Math.imul(g,lt)|0,o=o+Math.imul(g,dt)|0;var Et=(c+(r=r+Math.imul(l,pt)|0)|0)+((8191&(i=(i=i+Math.imul(l,gt)|0)+Math.imul(d,pt)|0))<<13)|0;c=((o=o+Math.imul(d,gt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,r=Math.imul(L,V),i=(i=Math.imul(L,q))+Math.imul(F,V)|0,o=Math.imul(F,q),r=r+Math.imul(R,G)|0,i=(i=i+Math.imul(R,K)|0)+Math.imul(j,G)|0,o=o+Math.imul(j,K)|0,r=r+Math.imul(I,Z)|0,i=(i=i+Math.imul(I,Q)|0)+Math.imul(P,Z)|0,o=o+Math.imul(P,Q)|0,r=r+Math.imul(A,J)|0,i=(i=i+Math.imul(A,tt)|0)+Math.imul(k,J)|0,o=o+Math.imul(k,tt)|0,r=r+Math.imul(M,nt)|0,i=(i=i+Math.imul(M,rt)|0)+Math.imul(T,nt)|0,o=o+Math.imul(T,rt)|0,r=r+Math.imul(O,ot)|0,i=(i=i+Math.imul(O,at)|0)+Math.imul(x,ot)|0,o=o+Math.imul(x,at)|0,r=r+Math.imul(_,st)|0,i=(i=i+Math.imul(_,ct)|0)+Math.imul(w,st)|0,o=o+Math.imul(w,ct)|0,r=r+Math.imul(b,lt)|0,i=(i=i+Math.imul(b,dt)|0)+Math.imul(v,lt)|0,o=o+Math.imul(v,dt)|0;var Mt=(c+(r=r+Math.imul(p,pt)|0)|0)+((8191&(i=(i=i+Math.imul(p,gt)|0)+Math.imul(g,pt)|0))<<13)|0;c=((o=o+Math.imul(g,gt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,r=Math.imul(L,G),i=(i=Math.imul(L,K))+Math.imul(F,G)|0,o=Math.imul(F,K),r=r+Math.imul(R,Z)|0,i=(i=i+Math.imul(R,Q)|0)+Math.imul(j,Z)|0,o=o+Math.imul(j,Q)|0,r=r+Math.imul(I,J)|0,i=(i=i+Math.imul(I,tt)|0)+Math.imul(P,J)|0,o=o+Math.imul(P,tt)|0,r=r+Math.imul(A,nt)|0,i=(i=i+Math.imul(A,rt)|0)+Math.imul(k,nt)|0,o=o+Math.imul(k,rt)|0,r=r+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(T,ot)|0,o=o+Math.imul(T,at)|0,r=r+Math.imul(O,st)|0,i=(i=i+Math.imul(O,ct)|0)+Math.imul(x,st)|0,o=o+Math.imul(x,ct)|0,r=r+Math.imul(_,lt)|0,i=(i=i+Math.imul(_,dt)|0)+Math.imul(w,lt)|0,o=o+Math.imul(w,dt)|0;var Tt=(c+(r=r+Math.imul(b,pt)|0)|0)+((8191&(i=(i=i+Math.imul(b,gt)|0)+Math.imul(v,pt)|0))<<13)|0;c=((o=o+Math.imul(v,gt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,r=Math.imul(L,Z),i=(i=Math.imul(L,Q))+Math.imul(F,Z)|0,o=Math.imul(F,Q),r=r+Math.imul(R,J)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(j,J)|0,o=o+Math.imul(j,tt)|0,r=r+Math.imul(I,nt)|0,i=(i=i+Math.imul(I,rt)|0)+Math.imul(P,nt)|0,o=o+Math.imul(P,rt)|0,r=r+Math.imul(A,ot)|0,i=(i=i+Math.imul(A,at)|0)+Math.imul(k,ot)|0,o=o+Math.imul(k,at)|0,r=r+Math.imul(M,st)|0,i=(i=i+Math.imul(M,ct)|0)+Math.imul(T,st)|0,o=o+Math.imul(T,ct)|0,r=r+Math.imul(O,lt)|0,i=(i=i+Math.imul(O,dt)|0)+Math.imul(x,lt)|0,o=o+Math.imul(x,dt)|0;var $t=(c+(r=r+Math.imul(_,pt)|0)|0)+((8191&(i=(i=i+Math.imul(_,gt)|0)+Math.imul(w,pt)|0))<<13)|0;c=((o=o+Math.imul(w,gt)|0)+(i>>>13)|0)+($t>>>26)|0,$t&=67108863,r=Math.imul(L,J),i=(i=Math.imul(L,tt))+Math.imul(F,J)|0,o=Math.imul(F,tt),r=r+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,rt)|0)+Math.imul(j,nt)|0,o=o+Math.imul(j,rt)|0,r=r+Math.imul(I,ot)|0,i=(i=i+Math.imul(I,at)|0)+Math.imul(P,ot)|0,o=o+Math.imul(P,at)|0,r=r+Math.imul(A,st)|0,i=(i=i+Math.imul(A,ct)|0)+Math.imul(k,st)|0,o=o+Math.imul(k,ct)|0,r=r+Math.imul(M,lt)|0,i=(i=i+Math.imul(M,dt)|0)+Math.imul(T,lt)|0,o=o+Math.imul(T,dt)|0;var At=(c+(r=r+Math.imul(O,pt)|0)|0)+((8191&(i=(i=i+Math.imul(O,gt)|0)+Math.imul(x,pt)|0))<<13)|0;c=((o=o+Math.imul(x,gt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,r=Math.imul(L,nt),i=(i=Math.imul(L,rt))+Math.imul(F,nt)|0,o=Math.imul(F,rt),r=r+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(j,ot)|0,o=o+Math.imul(j,at)|0,r=r+Math.imul(I,st)|0,i=(i=i+Math.imul(I,ct)|0)+Math.imul(P,st)|0,o=o+Math.imul(P,ct)|0,r=r+Math.imul(A,lt)|0,i=(i=i+Math.imul(A,dt)|0)+Math.imul(k,lt)|0,o=o+Math.imul(k,dt)|0;var kt=(c+(r=r+Math.imul(M,pt)|0)|0)+((8191&(i=(i=i+Math.imul(M,gt)|0)+Math.imul(T,pt)|0))<<13)|0;c=((o=o+Math.imul(T,gt)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,r=Math.imul(L,ot),i=(i=Math.imul(L,at))+Math.imul(F,ot)|0,o=Math.imul(F,at),r=r+Math.imul(R,st)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(j,st)|0,o=o+Math.imul(j,ct)|0,r=r+Math.imul(I,lt)|0,i=(i=i+Math.imul(I,dt)|0)+Math.imul(P,lt)|0,o=o+Math.imul(P,dt)|0;var Ct=(c+(r=r+Math.imul(A,pt)|0)|0)+((8191&(i=(i=i+Math.imul(A,gt)|0)+Math.imul(k,pt)|0))<<13)|0;c=((o=o+Math.imul(k,gt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,r=Math.imul(L,st),i=(i=Math.imul(L,ct))+Math.imul(F,st)|0,o=Math.imul(F,ct),r=r+Math.imul(R,lt)|0,i=(i=i+Math.imul(R,dt)|0)+Math.imul(j,lt)|0,o=o+Math.imul(j,dt)|0;var It=(c+(r=r+Math.imul(I,pt)|0)|0)+((8191&(i=(i=i+Math.imul(I,gt)|0)+Math.imul(P,pt)|0))<<13)|0;c=((o=o+Math.imul(P,gt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863,r=Math.imul(L,lt),i=(i=Math.imul(L,dt))+Math.imul(F,lt)|0,o=Math.imul(F,dt);var Pt=(c+(r=r+Math.imul(R,pt)|0)|0)+((8191&(i=(i=i+Math.imul(R,gt)|0)+Math.imul(j,pt)|0))<<13)|0;c=((o=o+Math.imul(j,gt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863;var Nt=(c+(r=Math.imul(L,pt))|0)+((8191&(i=(i=Math.imul(L,gt))+Math.imul(F,pt)|0))<<13)|0;return c=((o=Math.imul(F,gt))+(i>>>13)|0)+(Nt>>>26)|0,Nt&=67108863,s[0]=mt,s[1]=bt,s[2]=vt,s[3]=yt,s[4]=_t,s[5]=wt,s[6]=St,s[7]=Ot,s[8]=xt,s[9]=Et,s[10]=Mt,s[11]=Tt,s[12]=$t,s[13]=At,s[14]=kt,s[15]=Ct,s[16]=It,s[17]=Pt,s[18]=Nt,0!==c&&(s[19]=c,n.length++),n};function p(t,e,n){return(new g).mulp(t,e,n)}function g(t,e){this.x=t,this.y=e}Math.imul||(h=d),o.prototype.mulTo=function(t,e){var n=this.length+t.length;return 10===this.length&&10===t.length?h(this,t,e):n<63?d(this,t,e):n<1024?function(t,e,n){n.negative=e.negative^t.negative,n.length=t.length+e.length;for(var r=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}n.words[o]=u,r=a,a=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,t,e):p(this,t,e)},g.prototype.makeRBT=function(t){for(var e=new Array(t),n=o.prototype._countBits(t)-1,r=0;r>=1;return r},g.prototype.permute=function(t,e,n,r,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,n[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=i/67108864|0,e+=o>>>26,this.words[n]=67108863&o}return 0!==e&&(this.words[n]=e,this.length++),this},o.prototype.muln=function(t){return this.clone().imuln(t)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),n=0;n>>i}return e}(t);if(0===e.length)return new o(1);for(var n=this,r=0;r=0);var e,n=t%26,i=(t-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var a=0;for(e=0;e>>26-n}a&&(this.words[e]=a,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),u=67108863^67108863>>>o<a)for(this.length-=a,c=0;c=0&&(0!==f||c>=i);c--){var l=0|this.words[c];this.words[c]=f<<26-o|l>>>o,f=l&u}return s&&0!==f&&(s.words[s.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},o.prototype.shln=function(t){return this.clone().ishln(t)},o.prototype.ushln=function(t){return this.clone().iushln(t)},o.prototype.shrn=function(t){return this.clone().ishrn(t)},o.prototype.ushrn=function(t){return this.clone().iushrn(t)},o.prototype.testn=function(t){r("number"===typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},o.prototype.isubn=function(t){if(r("number"===typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(s/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===u)return this.strip();for(r(-1===u),u=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(t,e){var n=(this.length,t.length),r=this.clone(),i=t,a=0|i.words[i.length-1];0!==(n=26-this._countBits(a))&&(i=i.ushln(n),r.iushln(n),a=0|i.words[i.length-1]);var u,s=r.length-i.length;if("mod"!==e){(u=new o(null)).length=s+1,u.words=new Array(u.length);for(var c=0;c=0;l--){var d=67108864*(0|r.words[i.length+l])+(0|r.words[i.length+l-1]);for(d=Math.min(d/a|0,67108863),r._ishlnsubmul(i,d,l);0!==r.negative;)d--,r.negative=0,r._ishlnsubmul(i,1,l),r.isZero()||(r.negative^=1);u&&(u.words[l]=d)}return u&&u.strip(),r.strip(),"div"!==e&&0!==n&&r.iushrn(n),{div:u||null,mod:r}},o.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===t.negative?(u=this.neg().divmod(t,e),"mod"!==e&&(i=u.div.neg()),"div"!==e&&(a=u.mod.neg(),n&&0!==a.negative&&a.iadd(t)),{div:i,mod:a}):0===this.negative&&0!==t.negative?(u=this.divmod(t.neg(),e),"mod"!==e&&(i=u.div.neg()),{div:i,mod:u.mod}):0!==(this.negative&t.negative)?(u=this.neg().divmod(t.neg(),e),"div"!==e&&(a=u.mod.neg(),n&&0!==a.negative&&a.isub(t)),{div:u.div,mod:a}):t.length>this.length||this.cmp(t)<0?{div:new o(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new o(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new o(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,a,u},o.prototype.div=function(t){return this.divmod(t,"div",!1).div},o.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},o.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},o.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var n=0!==e.div.negative?e.mod.isub(t):e.mod,r=t.ushrn(1),i=t.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},o.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},o.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},o.prototype.divn=function(t){return this.clone().idivn(t)},o.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new o(1),a=new o(0),u=new o(0),s=new o(1),c=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++c;for(var f=n.clone(),l=e.clone();!e.isZero();){for(var d=0,h=1;0===(e.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(e.iushrn(d);d-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(f),a.isub(l)),i.iushrn(1),a.iushrn(1);for(var p=0,g=1;0===(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(u.isOdd()||s.isOdd())&&(u.iadd(f),s.isub(l)),u.iushrn(1),s.iushrn(1);e.cmp(n)>=0?(e.isub(n),i.isub(u),a.isub(s)):(n.isub(e),u.isub(i),s.isub(a))}return{a:u,b:s,gcd:n.iushln(c)}},o.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,a=new o(1),u=new o(0),s=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,f=1;0===(e.words[0]&f)&&c<26;++c,f<<=1);if(c>0)for(e.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(s),a.iushrn(1);for(var l=0,d=1;0===(n.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(n.iushrn(l);l-- >0;)u.isOdd()&&u.iadd(s),u.iushrn(1);e.cmp(n)>=0?(e.isub(n),a.isub(u)):(n.isub(e),u.isub(a))}return(i=0===e.cmpn(1)?a:u).cmpn(0)<0&&i.iadd(t),i},o.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),n=t.clone();e.negative=0,n.negative=0;for(var r=0;e.isEven()&&n.isEven();r++)e.iushrn(1),n.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=e.cmp(n);if(i<0){var o=e;e=n,n=o}else if(0===i||0===n.cmpn(1))break;e.isub(n)}return n.iushln(r)},o.prototype.invm=function(t){return this.egcd(t).a.umod(t)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(t){return this.words[0]&t},o.prototype.bincn=function(t){r("number"===typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,u&=67108863,this.words[a]=u}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|t.words[n];if(r!==i){ri&&(e=1);break}}return e},o.prototype.gtn=function(t){return 1===this.cmpn(t)},o.prototype.gt=function(t){return 1===this.cmp(t)},o.prototype.gten=function(t){return this.cmpn(t)>=0},o.prototype.gte=function(t){return this.cmp(t)>=0},o.prototype.ltn=function(t){return-1===this.cmpn(t)},o.prototype.lt=function(t){return-1===this.cmp(t)},o.prototype.lten=function(t){return this.cmpn(t)<=0},o.prototype.lte=function(t){return this.cmp(t)<=0},o.prototype.eqn=function(t){return 0===this.cmpn(t)},o.prototype.eq=function(t){return 0===this.cmp(t)},o.red=function(t){return new S(t)},o.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(t){return this.red=t,this},o.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},o.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},o.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},o.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},o.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},o.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},o.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},o.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};function b(t,e){this.name=t,this.p=new o(e,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function v(){b.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function y(){b.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function _(){b.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){b.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(t){if("string"===typeof t){var e=o._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function O(t){S.call(this,t),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}b.prototype._tmp=function(){var t=new o(null);return t.words=new Array(Math.ceil(this.n/13)),t},b.prototype.ireduce=function(t){var e,n=t;do{this.split(n,this.tmp),e=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(e>this.n);var r=e0?n.isub(this.p):void 0!==n.strip?n.strip():n._strip(),n},b.prototype.split=function(t,e){t.iushrn(this.n,0,e)},b.prototype.imulK=function(t){return t.imul(this.k)},i(v,b),v.prototype.split=function(t,e){for(var n=4194303,r=Math.min(t.length,9),i=0;i>>22,o=a}o>>>=22,t.words[i-10]=o,0===o&&t.length>10?t.length-=10:t.length-=9},v.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,n=0;n>>=26,t.words[n]=i,e=r}return 0!==e&&(t.words[t.length++]=e),t},o._prime=function(t){if(m[t])return m[t];var e;if("k256"===t)e=new v;else if("p224"===t)e=new y;else if("p192"===t)e=new _;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new w}return m[t]=e,e},S.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},S.prototype._verify2=function(t,e){r(0===(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},S.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},S.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},S.prototype.add=function(t,e){this._verify2(t,e);var n=t.add(e);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},S.prototype.iadd=function(t,e){this._verify2(t,e);var n=t.iadd(e);return n.cmp(this.m)>=0&&n.isub(this.m),n},S.prototype.sub=function(t,e){this._verify2(t,e);var n=t.sub(e);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},S.prototype.isub=function(t,e){this._verify2(t,e);var n=t.isub(e);return n.cmpn(0)<0&&n.iadd(this.m),n},S.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},S.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},S.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},S.prototype.isqr=function(t){return this.imul(t,t.clone())},S.prototype.sqr=function(t){return this.mul(t,t)},S.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2===1),3===e){var n=this.m.add(new o(1)).iushrn(2);return this.pow(t,n)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);r(!i.isZero());var u=new o(1).toRed(this),s=u.redNeg(),c=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new o(2*f*f).toRed(this);0!==this.pow(f,c).cmp(s);)f.redIAdd(s);for(var l=this.pow(f,i),d=this.pow(t,i.addn(1).iushrn(1)),h=this.pow(t,i),p=a;0!==h.cmp(u);){for(var g=h,m=0;0!==g.cmp(u);m++)g=g.redSqr();r(m=0;r--){for(var c=e.words[r],f=s-1;f>=0;f--){var l=c>>f&1;i!==n[0]&&(i=this.sqr(i)),0!==l||0!==a?(a<<=1,a|=l,(4===++u||0===r&&0===f)&&(i=this.mul(i,n[a]),u=0,a=0)):u=0}s=26}return i},S.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},S.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},o.mont=function(t){return new O(t)},i(O,S),O.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},O.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},O.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},O.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new o(0)._forceRed(this);var n=t.mul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},O.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,this)}).call(this,n(94)(t))},function(t,e,n){"use strict";(function(e){n(29);var r=n(100),i=n(118),o=n(153),a=n(160),u=n(134),s=n(78),c=n(84),f=n(375),l=n(386),d=n(52),h=n(63),p=n(514),g=n(49),m=p.SCRIPT_ENABLE_SIGHASH_FORKID,b=function(t,f,l,b,v,y){var _=n(387),w=n(388);g.isUndefined(y)&&(y=m);var S,O=_.shallowCopy(t);(b=new i(b),y&p.SCRIPT_ENABLE_REPLAY_PROTECTION)&&(f=(16711680|57005^f>>8)<<8|255&f);if(f&r.SIGHASH_FORKID&&y&p.SCRIPT_ENABLE_SIGHASH_FORKID)return function(t,e,n,i,o){var f=t.inputs[n];function l(t,e){var n=new u;g.isUndefined(e)?g.each(t.outputs,(function(t){t.toBufferWriter(n)})):t.outputs[e].toBufferWriter(n);var r=n.toBuffer();return c.sha256sha256(r)}d.checkArgument(o instanceof s,"For ForkId=0 signatures, satoshis or complete input must be provided");var p=h.emptyBuffer(32),m=h.emptyBuffer(32),b=h.emptyBuffer(32);e&r.SIGHASH_ANYONECANPAY||(p=function(t){var e=new u;g.each(t.inputs,(function(t){e.writeReverse(t.prevTxId),e.writeUInt32LE(t.outputIndex)}));var n=e.toBuffer();return c.sha256sha256(n)}(t)),e&r.SIGHASH_ANYONECANPAY||(31&e)==r.SIGHASH_SINGLE||(31&e)==r.SIGHASH_NONE||(m=function(t){var e=new u;g.each(t.inputs,(function(t){e.writeUInt32LE(t.sequenceNumber)}));var n=e.toBuffer();return c.sha256sha256(n)}(t)),(31&e)!=r.SIGHASH_SINGLE&&(31&e)!=r.SIGHASH_NONE?b=l(t):(31&e)==r.SIGHASH_SINGLE&&n>>0);var _=v.toBuffer(),w=c.sha256sha256(_);return new a(w).readReverse()}(O,f,l,b,v);for(b.removeCodeseparators(),S=0;S=O.outputs.length)return e.from("0000000000000000000000000000000000000000000000000000000000000001","hex");for(O.outputs.length=l+1,S=0;S9007199254740991?"transaction txout satoshis greater than max safe integer":this._satoshis!==this._satoshisBN.toNumber()?"transaction txout satoshis has corrupted value":this._satoshis<0&&"transaction txout negative"},Object.defineProperty(l.prototype,"satoshisBN",{configurable:!1,enumerable:!0,get:function(){return this._satoshisBN},set:function(t){this._satoshisBN=t,this._satoshis=t.toNumber(),c.checkState(a.isNaturalNumber(this._satoshis),"Output satoshis is not a natural number")}}),l.prototype.toObject=l.prototype.toJSON=function(){var t={satoshis:this.satoshis};return t.script=this._scriptBuffer.toString("hex"),t},l.fromObject=function(t){return new l(t)},l.prototype.setScriptFromBuffer=function(t){this._scriptBuffer=t;try{this._script=s.fromBuffer(this._scriptBuffer),this._script._isOutput=!0}catch(e){if(!(e instanceof f.Script.InvalidBuffer))throw e;this._script=null}},l.prototype.setScript=function(t){if(t instanceof s)this._scriptBuffer=t.toBuffer(),this._script=t,this._script._isOutput=!0;else if(r.isString(t))this._script=s.fromString(t),this._scriptBuffer=this._script.toBuffer(),this._script._isOutput=!0;else{if(!o.isBuffer(t))throw new TypeError("Invalid argument type: script");this.setScriptFromBuffer(t)}return this},l.prototype.inspect=function(){var t;return t=this.script?this.script.inspect():this._scriptBuffer.toString("hex"),""},l.fromBufferReader=function(t){var n={};n.satoshis=t.readUInt64LEBN();var r=t.readVarintNum();return n.script=0!==r?t.read(r):e.from([]),new l(n)},l.prototype.toBufferWriter=function(t){t||(t=new u),t.writeUInt64LEBN(this._satoshisBN);var e=this._scriptBuffer;return t.writeVarintNum(e.length),t.write(e),t},t.exports=l}).call(this,n(29).Buffer)},function(t,e,n){"use strict";(function(t){var r=n(291),i="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=i&&"object"==typeof t&&t&&!t.nodeType&&t,a=o&&o.exports===i&&r.a.process,u=function(){try{var t=o&&o.require&&o.require("util").types;return t||a&&a.binding&&a.binding("util")}catch(e){}}();e.a=u}).call(this,n(253)(t))},function(t,e){var n=Array.isArray;t.exports=n},function(t,e,n){var r=n(37).Buffer,i=n(758).Transform,o=n(238).StringDecoder;function a(t){i.call(this),this.hashMode="string"===typeof t,this.hashMode?this[t]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}n(38)(a,i),a.prototype.update=function(t,e,n){"string"===typeof t&&(t=r.from(t,e));var i=this._update(t);return this.hashMode?this:(n&&(i=this._toString(i,n)),i)},a.prototype.setAutoPadding=function(){},a.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},a.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},a.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},a.prototype._transform=function(t,e,n){var r;try{this.hashMode?this._update(t):this.push(this._update(t))}catch(i){r=i}finally{n(r)}},a.prototype._flush=function(t){var e;try{this.push(this.__final())}catch(n){e=n}t(e)},a.prototype._finalOrDigest=function(t){var e=this.__final()||r.alloc(0);return t&&(e=this._toString(e,t,!0)),e},a.prototype._toString=function(t,e,n){if(this._decoder||(this._decoder=new o(e),this._encoding=e),this._encoding!==e)throw new Error("can't switch encodings");var r=this._decoder.write(t);return n&&(r+=this._decoder.end()),r},t.exports=a},function(t,e,n){var r=n(158);function i(t){return r("rmd160").update(t).digest()}function o(t){return r("sha256").update(t).digest()}t.exports={hash160:function(t){return i(o(t))},hash256:function(t){return o(o(t))},ripemd160:i,sha1:function(t){return r("sha1").update(t).digest()},sha256:o}},function(t,e,n){"use strict";var r=n(38),i=n(358),o=n(360),a=n(361),u=n(156);function s(t){u.call(this,"digest"),this._hash=t}r(s,u),s.prototype._update=function(t){this._hash.update(t)},s.prototype._final=function(){return this._hash.digest()},t.exports=function(t){return"md5"===(t=t.toLowerCase())?new i:"rmd160"===t||"ripemd160"===t?new o:new s(a(t))}},function(t,e,n){"use strict";var r=n(49),i=n(63),o=n(79),a=[],u={};function s(){}function c(t,e){if(~a.indexOf(t))return t;if(!e)return u[t];r.isArray(e)||(e=[e]);for(var n=0;n=this.buf.length},u.prototype.finished=u.prototype.eof,u.prototype.read=function(t){i.checkArgument(!r.isUndefined(t),"Must specify a length");var e=this.buf.slice(this.pos,this.pos+t);return this.pos=this.pos+t,e},u.prototype.readAll=function(){var t=this.buf.slice(this.pos,this.buf.length);return this.pos=this.buf.length,t},u.prototype.readUInt8=function(){var t=this.buf.readUInt8(this.pos);return this.pos=this.pos+1,t},u.prototype.readUInt16BE=function(){var t=this.buf.readUInt16BE(this.pos);return this.pos=this.pos+2,t},u.prototype.readUInt16LE=function(){var t=this.buf.readUInt16LE(this.pos);return this.pos=this.pos+2,t},u.prototype.readUInt32BE=function(){var t=this.buf.readUInt32BE(this.pos);return this.pos=this.pos+4,t},u.prototype.readUInt32LE=function(){var t=this.buf.readUInt32LE(this.pos);return this.pos=this.pos+4,t},u.prototype.readInt32LE=function(){var t=this.buf.readInt32LE(this.pos);return this.pos=this.pos+4,t},u.prototype.readUInt64BEBN=function(){var t=this.buf.slice(this.pos,this.pos+8),e=a.fromBuffer(t);return this.pos=this.pos+8,e},u.prototype.readUInt64LEBN=function(){var t,e=this.buf.readUInt32LE(this.pos),n=4294967296*this.buf.readUInt32LE(this.pos+4)+e;if(n<=9007199254740991)t=new a(n);else{var r=Array.prototype.slice.call(this.buf,this.pos,this.pos+8);t=new a(r,10,"le")}return this.pos=this.pos+8,t},u.prototype.readVarintNum=function(){var t=this.readUInt8();switch(t){case 253:return this.readUInt16LE();case 254:return this.readUInt32LE();case 255:var e=this.readUInt64LEBN().toNumber();if(e<=Math.pow(2,53))return e;throw new Error("number too large to retain precision - use readVarintBN");default:return t}},u.prototype.readVarLengthBuffer=function(){var t=this.readVarintNum(),e=this.read(t);return i.checkState(e.length===t,"Invalid length while reading varlength buffer. Expected to read: "+t+" and read "+e.length),e},u.prototype.readVarintBuf=function(){switch(this.buf.readUInt8(this.pos)){case 253:return this.read(3);case 254:return this.read(5);case 255:return this.read(9);default:return this.read(1)}},u.prototype.readVarintBN=function(){var t=this.readUInt8();switch(t){case 253:return new a(this.readUInt16LE());case 254:return new a(this.readUInt32LE());case 255:return this.readUInt64LEBN();default:return new a(t)}},u.prototype.reverse=function(){for(var t=e.alloc(this.buf.length),n=0;n=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}function u(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){for(var n=0;n>6),e+=String.fromCharCode(128|63&r)):r<55296||r>=57344?(e+=String.fromCharCode(224|r>>12),e+=String.fromCharCode(128|r>>6&63),e+=String.fromCharCode(128|63&r)):(n++,r=65536+((1023&r)<<10|1023&t.charCodeAt(n)),e+=String.fromCharCode(240|r>>18),e+=String.fromCharCode(128|r>>12&63),e+=String.fromCharCode(128|r>>6&63),e+=String.fromCharCode(128|63&r))}return e}var w={size:128,level:"L",bgColor:"#FFFFFF",fgColor:"#000000",includeMargin:!1},S={value:b.string.isRequired,size:b.number,level:b.oneOf(["L","M","Q","H"]),bgColor:b.string,fgColor:b.string,includeMargin:b.bool};function O(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=[];return t.forEach((function(t,r){var i=null;t.forEach((function(o,a){if(!o&&null!==i)return n.push("M".concat(i+e," ").concat(r+e,"h").concat(a-i,"v1H").concat(i+e,"z")),void(i=null);if(a!==t.length-1)o&&null===i&&(i=a);else{if(!o)return;null===i?n.push("M".concat(a+e,",").concat(r+e," h1v1H").concat(a+e,"z")):n.push("M".concat(i+e,",").concat(r+e," h").concat(a+1-i,"v1H").concat(i+e,"z"))}}))})),n.join("")}var x=function(){try{(new Path2D).addPath(new Path2D)}catch(t){return!1}return!0}(),E=function(t){function e(){var t,n;u(this,e);for(var r=arguments.length,i=new Array(r),o=0;o=this._maxSize&&this.clear(),t in this._values||this._size++,this._values[t]=e};var i=/[^.^\]^[]+|(?=\[\]|\.\.)/g,o=/^\d+$/,a=/^\d/,u=/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g,s=/^\s*(['"]?)(.*?)(\1)\s*$/,c=new r(512),f=new r(512),l=new r(512);function d(t){return c.get(t)||c.set(t,h(t).map((function(t){return t.replace(s,"$2")})))}function h(t){return t.match(i)}function p(t){return"string"===typeof t&&t&&-1!==["'",'"'].indexOf(t.charAt(0))}function g(t){return!p(t)&&(function(t){return t.match(a)&&!t.match(o)}(t)||function(t){return u.test(t)}(t))}t.exports={Cache:r,split:h,normalizePath:d,setter:function(t){var e=d(t);return f.get(t)||f.set(t,(function(t,n){for(var r=0,i=e.length,o=t;r0?"in "+i:i+" ago":i};function o(t){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.width?String(e.width):t.defaultWidth,r=t.formats[n]||t.formats[t.defaultWidth];return r}}var a={date:o({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:o({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:o({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},u={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function s(t){return function(e,n){var r,i=n||{};if("formatting"===(i.context?String(i.context):"standalone")&&t.formattingValues){var o=t.defaultFormattingWidth||t.defaultWidth,a=i.width?String(i.width):o;r=t.formattingValues[a]||t.formattingValues[o]}else{var u=t.defaultWidth,s=i.width?String(i.width):t.defaultWidth;r=t.values[s]||t.values[u]}return r[t.argumentCallback?t.argumentCallback(e):e]}}function c(t){return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.width,i=r&&t.matchPatterns[r]||t.matchPatterns[t.defaultMatchWidth],o=e.match(i);if(!o)return null;var a,u=o[0],s=r&&t.parsePatterns[r]||t.parsePatterns[t.defaultParseWidth],c=Array.isArray(s)?l(s,(function(t){return t.test(u)})):f(s,(function(t){return t.test(u)}));a=t.valueCallback?t.valueCallback(c):c,a=n.valueCallback?n.valueCallback(a):a;var d=e.slice(u.length);return{value:a,rest:d}}}function f(t,e){for(var n in t)if(t.hasOwnProperty(n)&&e(t[n]))return n}function l(t,e){for(var n=0;n20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:s({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:s({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(t){return t-1}}),month:s({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:s({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:s({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:(d={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:function(t){return parseInt(t,10)}},function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.match(d.matchPattern);if(!n)return null;var r=n[0],i=t.match(d.parsePattern);if(!i)return null;var o=d.valueCallback?d.valueCallback(i[0]):i[0];o=e.valueCallback?e.valueCallback(o):o;var a=t.slice(r.length);return{value:o,rest:a}}),era:c({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:c({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(t){return t+1}}),month:c({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:c({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:c({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};e.a=h},function(t,e,n){"use strict";function r(t,e){for(var n=0;n0}var g,m=function(t){function e(n){var r=n.graphQLErrors,i=n.networkError,o=n.errorMessage,a=n.extraInfo,u=t.call(this,o)||this;return u.graphQLErrors=r||[],u.networkError=i||null,u.message=o||function(t){var e="";return p(t.graphQLErrors)&&t.graphQLErrors.forEach((function(t){var n=t?t.message:"Error message not found.";e+="GraphQL error: "+n+"\n"})),t.networkError&&(e+="Network error: "+t.networkError.message+"\n"),e=e.replace(/\n$/,"")}(u),u.extraInfo=a,u.__proto__=e.prototype,u}return Object(i.c)(e,t),e}(Error);!function(t){t[t.normal=1]="normal",t[t.refetch=2]="refetch",t[t.poll=3]="poll"}(g||(g={}));var b=function(t){function e(e){var n=e.queryManager,r=e.options,i=e.shouldSubscribe,a=void 0===i||i,u=t.call(this,(function(t){return u.onSubscribe(t)}))||this;u.observers=new Set,u.subscriptions=new Set,u.isTornDown=!1,u.options=r,u.variables=r.variables||{},u.queryId=n.generateQueryId(),u.shouldSubscribe=a;var s=Object(o.m)(r.query);return u.queryName=s&&s.name&&s.name.value,u.queryManager=n,u}return Object(i.c)(e,t),e.prototype.result=function(){var t=this;return new Promise((function(e,n){var r={next:function(n){e(n),t.observers.delete(r),t.observers.size||t.queryManager.removeQuery(t.queryId),setTimeout((function(){i.unsubscribe()}),0)},error:n},i=t.subscribe(r)}))},e.prototype.currentResult=function(){var t=this.getCurrentResult();return void 0===t.data&&(t.data={}),t},e.prototype.getCurrentResult=function(){if(this.isTornDown){var t=this.lastResult;return{data:!this.lastError&&t&&t.data||void 0,error:this.lastError,loading:!1,networkStatus:r.error}}var e,n,o,a=this.queryManager.getCurrentQueryResult(this),u=a.data,s=a.partial,c=this.queryManager.queryStore.get(this.queryId),f=this.options.fetchPolicy,l="network-only"===f||"no-cache"===f;if(c){var h=c.networkStatus;if(n=c,void 0===(o=this.options.errorPolicy)&&(o="none"),n&&(n.networkError||"none"===o&&p(n.graphQLErrors)))return{data:void 0,loading:!1,networkStatus:h,error:new m({graphQLErrors:c.graphQLErrors,networkError:c.networkError})};c.variables&&(this.options.variables=Object(i.a)(Object(i.a)({},this.options.variables),c.variables),this.variables=this.options.variables),e={data:u,loading:d(h),networkStatus:h},c.graphQLErrors&&"all"===this.options.errorPolicy&&(e.errors=c.graphQLErrors)}else{var g=l||s&&"cache-only"!==f;e={data:u,loading:g,networkStatus:g?r.loading:r.ready}}return s||this.updateLastResult(Object(i.a)(Object(i.a)({},e),{stale:!1})),Object(i.a)(Object(i.a)({},e),{partial:s})},e.prototype.isDifferentFromLastResult=function(t){var e=this.lastResultSnapshot;return!(e&&t&&e.networkStatus===t.networkStatus&&e.stale===t.stale&&Object(a.a)(e.data,t.data))},e.prototype.getLastResult=function(){return this.lastResult},e.prototype.getLastError=function(){return this.lastError},e.prototype.resetLastResults=function(){delete this.lastResult,delete this.lastResultSnapshot,delete this.lastError,this.isTornDown=!1},e.prototype.resetQueryStoreErrors=function(){var t=this.queryManager.queryStore.get(this.queryId);t&&(t.networkError=null,t.graphQLErrors=[])},e.prototype.refetch=function(t){var e=this.options.fetchPolicy;return"cache-only"===e?Promise.reject(new f.a(1)):("no-cache"!==e&&"cache-and-network"!==e&&(e="network-only"),Object(a.a)(this.variables,t)||(this.variables=Object(i.a)(Object(i.a)({},this.variables),t)),Object(a.a)(this.options.variables,this.variables)||(this.options.variables=Object(i.a)(Object(i.a)({},this.options.variables),this.variables)),this.queryManager.fetchQuery(this.queryId,Object(i.a)(Object(i.a)({},this.options),{fetchPolicy:e}),g.refetch))},e.prototype.fetchMore=function(t){var e=this;Object(f.b)(t.updateQuery,2);var n=Object(i.a)(Object(i.a)({},t.query?t:Object(i.a)(Object(i.a)(Object(i.a)({},this.options),t),{variables:Object(i.a)(Object(i.a)({},this.variables),t.variables)})),{fetchPolicy:"network-only"}),r=this.queryManager.generateQueryId();return this.queryManager.fetchQuery(r,n,g.normal,this.queryId).then((function(i){return e.updateQuery((function(e){return t.updateQuery(e,{fetchMoreResult:i.data,variables:n.variables})})),e.queryManager.stopQuery(r),i}),(function(t){throw e.queryManager.stopQuery(r),t}))},e.prototype.subscribeToMore=function(t){var e=this,n=this.queryManager.startGraphQLSubscription({query:t.document,variables:t.variables}).subscribe({next:function(n){var r=t.updateQuery;r&&e.updateQuery((function(t,e){var i=e.variables;return r(t,{subscriptionData:n,variables:i})}))},error:function(e){t.onError&&t.onError(e)}});return this.subscriptions.add(n),function(){e.subscriptions.delete(n)&&n.unsubscribe()}},e.prototype.setOptions=function(t){var e=this.options.fetchPolicy;this.options=Object(i.a)(Object(i.a)({},this.options),t),t.pollInterval?this.startPolling(t.pollInterval):0===t.pollInterval&&this.stopPolling();var n=t.fetchPolicy;return this.setVariables(this.options.variables,e!==n&&("cache-only"===e||"standby"===e||"network-only"===n),t.fetchResults)},e.prototype.setVariables=function(t,e,n){return void 0===e&&(e=!1),void 0===n&&(n=!0),this.isTornDown=!1,t=t||this.variables,!e&&Object(a.a)(t,this.variables)?this.observers.size&&n?this.result():Promise.resolve():(this.variables=this.options.variables=t,this.observers.size?this.queryManager.fetchQuery(this.queryId,this.options):Promise.resolve())},e.prototype.updateQuery=function(t){var e=this.queryManager,n=e.getQueryWithPreviousResult(this.queryId),r=n.previousResult,i=n.variables,a=n.document,u=Object(o.I)((function(){return t(r,{variables:i})}));u&&(e.dataStore.markUpdateQueryResult(a,i,u),e.broadcastQueries())},e.prototype.stopPolling=function(){this.queryManager.stopPollingQuery(this.queryId),this.options.pollInterval=void 0},e.prototype.startPolling=function(t){_(this),this.options.pollInterval=t,this.queryManager.startPollingQuery(this.options,this.queryId)},e.prototype.updateLastResult=function(t){var e=this.lastResult;return this.lastResult=t,this.lastResultSnapshot=this.queryManager.assumeImmutableResults?t:Object(o.f)(t),e},e.prototype.onSubscribe=function(t){var e=this;try{var n=t._subscription._observer;n&&!n.error&&(n.error=v)}catch(i){}var r=!this.observers.size;return this.observers.add(t),t.next&&this.lastResult&&t.next(this.lastResult),t.error&&this.lastError&&t.error(this.lastError),r&&this.setUpQuery(),function(){e.observers.delete(t)&&!e.observers.size&&e.tearDownQuery()}},e.prototype.setUpQuery=function(){var t=this,e=this.queryManager,n=this.queryId;this.shouldSubscribe&&e.addObservableQuery(n,this),this.options.pollInterval&&(_(this),e.startPollingQuery(this.options,n));var o=function(e){t.updateLastResult(Object(i.a)(Object(i.a)({},t.lastResult),{errors:e.graphQLErrors,networkStatus:r.error,loading:!1})),y(t.observers,"error",t.lastError=e)};e.observeQuery(n,this.options,{next:function(n){if(t.lastError||t.isDifferentFromLastResult(n)){var r=t.updateLastResult(n),i=t.options,o=i.query,u=i.variables,s=i.fetchPolicy;e.transform(o).hasClientExports?e.getLocalState().addExportedVariables(o,u).then((function(i){var u=t.variables;t.variables=t.options.variables=i,!n.loading&&r&&"cache-only"!==s&&e.transform(o).serverQuery&&!Object(a.a)(u,i)?t.refetch():y(t.observers,"next",n)})):y(t.observers,"next",n)}},error:o}).catch(o)},e.prototype.tearDownQuery=function(){var t=this.queryManager;this.isTornDown=!0,t.stopPollingQuery(this.queryId),this.subscriptions.forEach((function(t){return t.unsubscribe()})),this.subscriptions.clear(),t.removeObservableQuery(this.queryId),t.stopQuery(this.queryId),this.observers.clear()},e}(h);function v(t){}function y(t,e,n){var r=[];t.forEach((function(t){return t[e]&&r.push(t)})),r.forEach((function(t){return t[e](n)}))}function _(t){var e=t.options.fetchPolicy;Object(f.b)("cache-first"!==e&&"cache-only"!==e,3)}var w=function(){function t(){this.store={}}return t.prototype.getStore=function(){return this.store},t.prototype.get=function(t){return this.store[t]},t.prototype.initMutation=function(t,e,n){this.store[t]={mutation:e,variables:n||{},loading:!0,error:null}},t.prototype.markMutationError=function(t,e){var n=this.store[t];n&&(n.loading=!1,n.error=e)},t.prototype.markMutationResult=function(t){var e=this.store[t];e&&(e.loading=!1,e.error=null)},t.prototype.reset=function(){this.store={}},t}(),S=function(){function t(){this.store={}}return t.prototype.getStore=function(){return this.store},t.prototype.get=function(t){return this.store[t]},t.prototype.initQuery=function(t){var e=this.store[t.queryId];Object(f.b)(!e||e.document===t.document||Object(a.a)(e.document,t.document),19);var n,i=!1,o=null;t.storePreviousVariables&&e&&e.networkStatus!==r.loading&&(Object(a.a)(e.variables,t.variables)||(i=!0,o=e.variables)),n=i?r.setVariables:t.isPoll?r.poll:t.isRefetch?r.refetch:r.loading;var u=[];e&&e.graphQLErrors&&(u=e.graphQLErrors),this.store[t.queryId]={document:t.document,variables:t.variables,previousVariables:o,networkError:null,graphQLErrors:u,networkStatus:n,metadata:t.metadata},"string"===typeof t.fetchMoreForQueryId&&this.store[t.fetchMoreForQueryId]&&(this.store[t.fetchMoreForQueryId].networkStatus=r.fetchMore)},t.prototype.markQueryResult=function(t,e,n){this.store&&this.store[t]&&(this.store[t].networkError=null,this.store[t].graphQLErrors=p(e.errors)?e.errors:[],this.store[t].previousVariables=null,this.store[t].networkStatus=r.ready,"string"===typeof n&&this.store[n]&&(this.store[n].networkStatus=r.ready))},t.prototype.markQueryError=function(t,e,n){this.store&&this.store[t]&&(this.store[t].networkError=e,this.store[t].networkStatus=r.error,"string"===typeof n&&this.markQueryResultClient(n,!0))},t.prototype.markQueryResultClient=function(t,e){var n=this.store&&this.store[t];n&&(n.networkError=null,n.previousVariables=null,e&&(n.networkStatus=r.ready))},t.prototype.stopQuery=function(t){delete this.store[t]},t.prototype.reset=function(t){var e=this;Object.keys(this.store).forEach((function(n){t.indexOf(n)<0?e.stopQuery(n):e.store[n].networkStatus=r.loading}))},t}();var O=function(){function t(t){var e=t.cache,n=t.client,r=t.resolvers,i=t.fragmentMatcher;this.cache=e,n&&(this.client=n),r&&this.addResolvers(r),i&&this.setFragmentMatcher(i)}return t.prototype.addResolvers=function(t){var e=this;this.resolvers=this.resolvers||{},Array.isArray(t)?t.forEach((function(t){e.resolvers=Object(o.A)(e.resolvers,t)})):this.resolvers=Object(o.A)(this.resolvers,t)},t.prototype.setResolvers=function(t){this.resolvers={},this.addResolvers(t)},t.prototype.getResolvers=function(){return this.resolvers||{}},t.prototype.runResolvers=function(t){var e=t.document,n=t.remoteResult,r=t.context,o=t.variables,a=t.onlyRunForcedResolvers,u=void 0!==a&&a;return Object(i.b)(this,void 0,void 0,(function(){return Object(i.d)(this,(function(t){return e?[2,this.resolveDocument(e,n.data,r,o,this.fragmentMatcher,u).then((function(t){return Object(i.a)(Object(i.a)({},n),{data:t.result})}))]:[2,n]}))}))},t.prototype.setFragmentMatcher=function(t){this.fragmentMatcher=t},t.prototype.getFragmentMatcher=function(){return this.fragmentMatcher},t.prototype.clientQuery=function(t){return Object(o.s)(["client"],t)&&this.resolvers?t:null},t.prototype.serverQuery=function(t){return this.resolvers?Object(o.C)(t):t},t.prototype.prepareContext=function(t){void 0===t&&(t={});var e=this.cache;return Object(i.a)(Object(i.a)({},t),{cache:e,getCacheKey:function(t){if(e.config)return e.config.dataIdFromObject(t);Object(f.b)(!1,6)}})},t.prototype.addExportedVariables=function(t,e,n){return void 0===e&&(e={}),void 0===n&&(n={}),Object(i.b)(this,void 0,void 0,(function(){return Object(i.d)(this,(function(r){return t?[2,this.resolveDocument(t,this.buildRootValueFromCache(t,e)||{},this.prepareContext(n),e).then((function(t){return Object(i.a)(Object(i.a)({},e),t.exportedVariables)}))]:[2,Object(i.a)({},e)]}))}))},t.prototype.shouldForceResolvers=function(t){var e=!1;return Object(l.b)(t,{Directive:{enter:function(t){if("client"===t.name.value&&t.arguments&&(e=t.arguments.some((function(t){return"always"===t.name.value&&"BooleanValue"===t.value.kind&&!0===t.value.value}))))return l.a}}}),e},t.prototype.buildRootValueFromCache=function(t,e){return this.cache.diff({query:Object(o.d)(t),variables:e,returnPartialData:!0,optimistic:!1}).result},t.prototype.resolveDocument=function(t,e,n,r,a,u){return void 0===n&&(n={}),void 0===r&&(r={}),void 0===a&&(a=function(){return!0}),void 0===u&&(u=!1),Object(i.b)(this,void 0,void 0,(function(){var s,c,f,l,d,h,p,g,m;return Object(i.d)(this,(function(b){var v;return s=Object(o.l)(t),c=Object(o.j)(t),f=Object(o.g)(c),l=s.operation,d=l?(v=l).charAt(0).toUpperCase()+v.slice(1):"Query",p=(h=this).cache,g=h.client,m={fragmentMap:f,context:Object(i.a)(Object(i.a)({},n),{cache:p,client:g}),variables:r,fragmentMatcher:a,defaultOperationType:d,exportedVariables:{},onlyRunForcedResolvers:u},[2,this.resolveSelectionSet(s.selectionSet,e,m).then((function(t){return{result:t,exportedVariables:m.exportedVariables}}))]}))}))},t.prototype.resolveSelectionSet=function(t,e,n){return Object(i.b)(this,void 0,void 0,(function(){var r,a,u,s,c,l=this;return Object(i.d)(this,(function(d){return r=n.fragmentMap,a=n.context,u=n.variables,s=[e],c=function(t){return Object(i.b)(l,void 0,void 0,(function(){var c,l;return Object(i.d)(this,(function(i){return Object(o.F)(t,u)?Object(o.t)(t)?[2,this.resolveField(t,e,n).then((function(e){var n;"undefined"!==typeof e&&s.push(((n={})[Object(o.E)(t)]=e,n))}))]:(Object(o.v)(t)?c=t:(c=r[t.name.value],Object(f.b)(c,7)),c&&c.typeCondition&&(l=c.typeCondition.name.value,n.fragmentMatcher(e,l,a))?[2,this.resolveSelectionSet(c.selectionSet,e,n).then((function(t){s.push(t)}))]:[2]):[2]}))}))},[2,Promise.all(t.selections.map(c)).then((function(){return Object(o.B)(s)}))]}))}))},t.prototype.resolveField=function(t,e,n){return Object(i.b)(this,void 0,void 0,(function(){var r,a,u,s,c,f,l,d,h,p=this;return Object(i.d)(this,(function(i){return r=n.variables,a=t.name.value,u=Object(o.E)(t),s=a!==u,c=e[u]||e[a],f=Promise.resolve(c),n.onlyRunForcedResolvers&&!this.shouldForceResolvers(t)||(l=e.__typename||n.defaultOperationType,(d=this.resolvers&&this.resolvers[l])&&(h=d[s?a:u])&&(f=Promise.resolve(h(e,Object(o.b)(t,r),n.context,{field:t,fragmentMap:n.fragmentMap})))),[2,f.then((function(e){return void 0===e&&(e=c),t.directives&&t.directives.forEach((function(t){"export"===t.name.value&&t.arguments&&t.arguments.forEach((function(t){"as"===t.name.value&&"StringValue"===t.value.kind&&(n.exportedVariables[t.value.value]=e)}))})),t.selectionSet?null==e?e:Array.isArray(e)?p.resolveSubSelectedArray(t,e,n):t.selectionSet?p.resolveSelectionSet(t.selectionSet,e,n):void 0:e}))]}))}))},t.prototype.resolveSubSelectedArray=function(t,e,n){var r=this;return Promise.all(e.map((function(e){return null===e?null:Array.isArray(e)?r.resolveSubSelectedArray(t,e,n):t.selectionSet?r.resolveSelectionSet(t.selectionSet,e,n):void 0})))},t}();function x(t){var e=new Set,n=null;return new h((function(r){return e.add(r),n=n||t.subscribe({next:function(t){e.forEach((function(e){return e.next&&e.next(t)}))},error:function(t){e.forEach((function(e){return e.error&&e.error(t)}))},complete:function(){e.forEach((function(t){return t.complete&&t.complete()}))}}),function(){e.delete(r)&&!e.size&&n&&(n.unsubscribe(),n=null)}}))}var E=Object.prototype.hasOwnProperty,M=function(){function t(t){var e=t.link,n=t.queryDeduplication,r=void 0!==n&&n,i=t.store,a=t.onBroadcast,u=void 0===a?function(){}:a,s=t.ssrMode,c=void 0!==s&&s,f=t.clientAwareness,l=void 0===f?{}:f,d=t.localState,h=t.assumeImmutableResults;this.mutationStore=new w,this.queryStore=new S,this.clientAwareness={},this.idCounter=1,this.queries=new Map,this.fetchQueryRejectFns=new Map,this.transformCache=new(o.e?WeakMap:Map),this.inFlightLinkObservables=new Map,this.pollingInfoByQueryId=new Map,this.link=e,this.queryDeduplication=r,this.dataStore=i,this.onBroadcast=u,this.clientAwareness=l,this.localState=d||new O({cache:i.getCache()}),this.ssrMode=c,this.assumeImmutableResults=!!h}return t.prototype.stop=function(){var t=this;this.queries.forEach((function(e,n){t.stopQueryNoBroadcast(n)})),this.fetchQueryRejectFns.forEach((function(t){t(new f.a(8))}))},t.prototype.mutate=function(t){var e=t.mutation,n=t.variables,r=t.optimisticResponse,a=t.updateQueries,u=t.refetchQueries,s=void 0===u?[]:u,c=t.awaitRefetchQueries,l=void 0!==c&&c,d=t.update,h=t.errorPolicy,g=void 0===h?"none":h,b=t.fetchPolicy,v=t.context,y=void 0===v?{}:v;return Object(i.b)(this,void 0,void 0,(function(){var t,u,c,h=this;return Object(i.d)(this,(function(v){switch(v.label){case 0:return Object(f.b)(e,9),Object(f.b)(!b||"no-cache"===b,10),t=this.generateQueryId(),e=this.transform(e).document,this.setQuery(t,(function(){return{document:e}})),n=this.getVariables(e,n),this.transform(e).hasClientExports?[4,this.localState.addExportedVariables(e,n,y)]:[3,2];case 1:n=v.sent(),v.label=2;case 2:return u=function(){var t={};return a&&h.queries.forEach((function(e,n){var r=e.observableQuery;if(r){var i=r.queryName;i&&E.call(a,i)&&(t[n]={updater:a[i],query:h.queryStore.get(n)})}})),t},this.mutationStore.initMutation(t,e,n),this.dataStore.markMutationInit({mutationId:t,document:e,variables:n,updateQueries:u(),update:d,optimisticResponse:r}),this.broadcastQueries(),c=this,[2,new Promise((function(a,f){var h,v;c.getObservableFromLink(e,Object(i.a)(Object(i.a)({},y),{optimisticResponse:r}),n,!1).subscribe({next:function(r){Object(o.q)(r)&&"none"===g?v=new m({graphQLErrors:r.errors}):(c.mutationStore.markMutationResult(t),"no-cache"!==b&&c.dataStore.markMutationResult({mutationId:t,result:r,document:e,variables:n,updateQueries:u(),update:d}),h=r)},error:function(e){c.mutationStore.markMutationError(t,e),c.dataStore.markMutationComplete({mutationId:t,optimisticResponse:r}),c.broadcastQueries(),c.setQuery(t,(function(){return{document:null}})),f(new m({networkError:e}))},complete:function(){if(v&&c.mutationStore.markMutationError(t,v),c.dataStore.markMutationComplete({mutationId:t,optimisticResponse:r}),c.broadcastQueries(),v)f(v);else{"function"===typeof s&&(s=s(h));var e=[];p(s)&&s.forEach((function(t){if("string"===typeof t)c.queries.forEach((function(n){var r=n.observableQuery;r&&r.queryName===t&&e.push(r.refetch())}));else{var n={query:t.query,variables:t.variables,fetchPolicy:"network-only"};t.context&&(n.context=t.context),e.push(c.query(n))}})),Promise.all(l?e:[]).then((function(){c.setQuery(t,(function(){return{document:null}})),"ignore"===g&&h&&Object(o.q)(h)&&delete h.errors,a(h)}))}}})}))]}}))}))},t.prototype.fetchQuery=function(t,e,n,r){return Object(i.b)(this,void 0,void 0,(function(){var a,u,s,c,f,l,d,h,p,b,v,y,_,w,S,O,x,E,M=this;return Object(i.d)(this,(function(T){switch(T.label){case 0:return a=e.metadata,u=void 0===a?null:a,s=e.fetchPolicy,c=void 0===s?"cache-first":s,f=e.context,l=void 0===f?{}:f,d=this.transform(e.query).document,h=this.getVariables(d,e.variables),this.transform(d).hasClientExports?[4,this.localState.addExportedVariables(d,h,l)]:[3,2];case 1:h=T.sent(),T.label=2;case 2:if(e=Object(i.a)(Object(i.a)({},e),{variables:h}),v=b="network-only"===c||"no-cache"===c,b||(y=this.dataStore.getCache().diff({query:d,variables:h,returnPartialData:!0,optimistic:!1}),_=y.complete,w=y.result,v=!_||"cache-and-network"===c,p=w),S=v&&"cache-only"!==c&&"standby"!==c,Object(o.s)(["live"],d)&&(S=!0),O=this.idCounter++,x="no-cache"!==c?this.updateQueryWatch(t,d,e):void 0,this.setQuery(t,(function(){return{document:d,lastRequestId:O,invalidated:!0,cancel:x}})),this.invalidate(r),this.queryStore.initQuery({queryId:t,document:d,storePreviousVariables:S,variables:h,isPoll:n===g.poll,isRefetch:n===g.refetch,metadata:u,fetchMoreForQueryId:r}),this.broadcastQueries(),S){if(E=this.fetchRequest({requestId:O,queryId:t,document:d,options:e,fetchMoreForQueryId:r}).catch((function(e){throw e.hasOwnProperty("graphQLErrors")?e:(O>=M.getQuery(t).lastRequestId&&(M.queryStore.markQueryError(t,e,r),M.invalidate(t),M.invalidate(r),M.broadcastQueries()),new m({networkError:e}))})),"cache-and-network"!==c)return[2,E];E.catch((function(){}))}return this.queryStore.markQueryResultClient(t,!S),this.invalidate(t),this.invalidate(r),this.transform(d).hasForcedResolvers?[2,this.localState.runResolvers({document:d,remoteResult:{data:p},context:l,variables:h,onlyRunForcedResolvers:!0}).then((function(n){return M.markQueryResult(t,n,e,r),M.broadcastQueries(),n}))]:(this.broadcastQueries(),[2,{data:p}])}}))}))},t.prototype.markQueryResult=function(t,e,n,r){var i=n.fetchPolicy,o=n.variables,a=n.errorPolicy;"no-cache"===i?this.setQuery(t,(function(){return{newData:{result:e.data,complete:!0}}})):this.dataStore.markQueryResult(e,this.getQuery(t).document,o,r,"ignore"===a||"all"===a)},t.prototype.queryListenerForObserver=function(t,e,n){var r=this;function i(t,e){if(n[t])try{n[t](e)}catch(r){}}return function(n,o){if(r.invalidate(t,!1),n){var a=r.getQuery(t),u=a.observableQuery,s=a.document,c=u?u.options.fetchPolicy:e.fetchPolicy;if("standby"!==c){var f=d(n.networkStatus),l=u&&u.getLastResult(),h=!(!l||l.networkStatus===n.networkStatus),g=e.returnPartialData||!o&&n.previousVariables||h&&e.notifyOnNetworkStatusChange||"cache-only"===c||"cache-and-network"===c;if(!f||g){var b=p(n.graphQLErrors),v=u&&u.options.errorPolicy||e.errorPolicy||"none";if("none"===v&&b||n.networkError)return i("error",new m({graphQLErrors:n.graphQLErrors,networkError:n.networkError}));try{var y=void 0,_=void 0;if(o)"no-cache"!==c&&"network-only"!==c&&r.setQuery(t,(function(){return{newData:null}})),y=o.result,_=!o.complete;else{var w=u&&u.getLastError(),S="none"!==v&&(w&&w.graphQLErrors)!==n.graphQLErrors;if(l&&l.data&&!S)y=l.data,_=!1;else{var O=r.dataStore.getCache().diff({query:s,variables:n.previousVariables||n.variables,returnPartialData:!0,optimistic:!0});y=O.result,_=!O.complete}}var x=_&&!(e.returnPartialData||"cache-only"===c),E={data:x?l&&l.data:y,loading:f,networkStatus:n.networkStatus,stale:x};"all"===v&&b&&(E.errors=n.graphQLErrors),i("next",E)}catch(M){i("error",new m({networkError:M}))}}}}}},t.prototype.transform=function(t){var e=this.transformCache;if(!e.has(t)){var n=this.dataStore.getCache(),r=n.transformDocument(t),i=Object(o.D)(n.transformForLink(r)),a=this.localState.clientQuery(r),u=this.localState.serverQuery(i),s={document:r,hasClientExports:Object(o.r)(r),hasForcedResolvers:this.localState.shouldForceResolvers(r),clientQuery:a,serverQuery:u,defaultVars:Object(o.h)(Object(o.m)(r))},c=function(t){t&&!e.has(t)&&e.set(t,s)};c(t),c(r),c(a),c(u)}return e.get(t)},t.prototype.getVariables=function(t,e){return Object(i.a)(Object(i.a)({},this.transform(t).defaultVars),e)},t.prototype.watchQuery=function(t,e){void 0===e&&(e=!0),Object(f.b)("standby"!==t.fetchPolicy,11),t.variables=this.getVariables(t.query,t.variables),"undefined"===typeof t.notifyOnNetworkStatusChange&&(t.notifyOnNetworkStatusChange=!1);var n=Object(i.a)({},t);return new b({queryManager:this,options:n,shouldSubscribe:e})},t.prototype.query=function(t){var e=this;return Object(f.b)(t.query,12),Object(f.b)("Document"===t.query.kind,13),Object(f.b)(!t.returnPartialData,14),Object(f.b)(!t.pollInterval,15),new Promise((function(n,r){var i=e.watchQuery(t,!1);e.fetchQueryRejectFns.set("query:"+i.queryId,r),i.result().then(n,r).then((function(){return e.fetchQueryRejectFns.delete("query:"+i.queryId)}))}))},t.prototype.generateQueryId=function(){return String(this.idCounter++)},t.prototype.stopQueryInStore=function(t){this.stopQueryInStoreNoBroadcast(t),this.broadcastQueries()},t.prototype.stopQueryInStoreNoBroadcast=function(t){this.stopPollingQuery(t),this.queryStore.stopQuery(t),this.invalidate(t)},t.prototype.addQueryListener=function(t,e){this.setQuery(t,(function(t){return t.listeners.add(e),{invalidated:!1}}))},t.prototype.updateQueryWatch=function(t,e,n){var r=this,i=this.getQuery(t).cancel;i&&i();return this.dataStore.getCache().watch({query:e,variables:n.variables,optimistic:!0,previousResult:function(){var e=null,n=r.getQuery(t).observableQuery;if(n){var i=n.getLastResult();i&&(e=i.data)}return e},callback:function(e){r.setQuery(t,(function(){return{invalidated:!0,newData:e}}))}})},t.prototype.addObservableQuery=function(t,e){this.setQuery(t,(function(){return{observableQuery:e}}))},t.prototype.removeObservableQuery=function(t){var e=this.getQuery(t).cancel;this.setQuery(t,(function(){return{observableQuery:null}})),e&&e()},t.prototype.clearStore=function(){this.fetchQueryRejectFns.forEach((function(t){t(new f.a(16))}));var t=[];return this.queries.forEach((function(e,n){e.observableQuery&&t.push(n)})),this.queryStore.reset(t),this.mutationStore.reset(),this.dataStore.reset()},t.prototype.resetStore=function(){var t=this;return this.clearStore().then((function(){return t.reFetchObservableQueries()}))},t.prototype.reFetchObservableQueries=function(t){var e=this;void 0===t&&(t=!1);var n=[];return this.queries.forEach((function(r,i){var o=r.observableQuery;if(o){var a=o.options.fetchPolicy;o.resetLastResults(),"cache-only"===a||!t&&"standby"===a||n.push(o.refetch()),e.setQuery(i,(function(){return{newData:null}})),e.invalidate(i)}})),this.broadcastQueries(),Promise.all(n)},t.prototype.observeQuery=function(t,e,n){return this.addQueryListener(t,this.queryListenerForObserver(t,e,n)),this.fetchQuery(t,e)},t.prototype.startQuery=function(t,e,n){return this.addQueryListener(t,n),this.fetchQuery(t,e).catch((function(){})),t},t.prototype.startGraphQLSubscription=function(t){var e=this,n=t.query,r=t.fetchPolicy,i=t.variables;n=this.transform(n).document,i=this.getVariables(n,i);var a=function(t){return e.getObservableFromLink(n,{},t,!1).map((function(i){if(r&&"no-cache"===r||(e.dataStore.markSubscriptionResult(i,n,t),e.broadcastQueries()),Object(o.q)(i))throw new m({graphQLErrors:i.errors});return i}))};if(this.transform(n).hasClientExports){var u=this.localState.addExportedVariables(n,i).then(a);return new h((function(t){var e=null;return u.then((function(n){return e=n.subscribe(t)}),t.error),function(){return e&&e.unsubscribe()}}))}return a(i)},t.prototype.stopQuery=function(t){this.stopQueryNoBroadcast(t),this.broadcastQueries()},t.prototype.stopQueryNoBroadcast=function(t){this.stopQueryInStoreNoBroadcast(t),this.removeQuery(t)},t.prototype.removeQuery=function(t){this.fetchQueryRejectFns.delete("query:"+t),this.fetchQueryRejectFns.delete("fetchRequest:"+t),this.getQuery(t).subscriptions.forEach((function(t){return t.unsubscribe()})),this.queries.delete(t)},t.prototype.getCurrentQueryResult=function(t,e){void 0===e&&(e=!0);var n=t.options,r=n.variables,i=n.query,o=n.fetchPolicy,a=n.returnPartialData,u=t.getLastResult(),s=this.getQuery(t.queryId).newData;if(s&&s.complete)return{data:s.result,partial:!1};if("no-cache"===o||"network-only"===o)return{data:void 0,partial:!1};var c=this.dataStore.getCache().diff({query:i,variables:r,previousResult:u?u.data:void 0,returnPartialData:!0,optimistic:e}),f=c.result,l=c.complete;return{data:l||a?f:void 0,partial:!l}},t.prototype.getQueryWithPreviousResult=function(t){var e;if("string"===typeof t){var n=this.getQuery(t).observableQuery;Object(f.b)(n,17),e=n}else e=t;var r=e.options,i=r.variables,o=r.query;return{previousResult:this.getCurrentQueryResult(e,!1).data,variables:i,document:o}},t.prototype.broadcastQueries=function(){var t=this;this.onBroadcast(),this.queries.forEach((function(e,n){e.invalidated&&e.listeners.forEach((function(r){r&&r(t.queryStore.get(n),e.newData)}))}))},t.prototype.getLocalState=function(){return this.localState},t.prototype.getObservableFromLink=function(t,e,n,r){var a,u=this;void 0===r&&(r=this.queryDeduplication);var c=this.transform(t).serverQuery;if(c){var f=this.inFlightLinkObservables,l=this.link,d={query:c,variables:n,operationName:Object(o.n)(c)||void 0,context:this.prepareContext(Object(i.a)(Object(i.a)({},e),{forceFetch:!r}))};if(e=d.context,r){var p=f.get(c)||new Map;f.set(c,p);var g=JSON.stringify(n);if(!(a=p.get(g))){p.set(g,a=x(Object(s.execute)(l,d)));var m=function(){p.delete(g),p.size||f.delete(c),b.unsubscribe()},b=a.subscribe({next:m,error:m,complete:m})}}else a=x(Object(s.execute)(l,d))}else a=h.of({data:{}}),e=this.prepareContext(e);var v=this.transform(t).clientQuery;return v&&(a=function(t,e){return new h((function(n){var r=n.next,i=n.error,o=n.complete,a=0,u=!1,s={next:function(t){++a,new Promise((function(n){n(e(t))})).then((function(t){--a,r&&r.call(n,t),u&&s.complete()}),(function(t){--a,i&&i.call(n,t)}))},error:function(t){i&&i.call(n,t)},complete:function(){u=!0,a||o&&o.call(n)}},c=t.subscribe(s);return function(){return c.unsubscribe()}}))}(a,(function(t){return u.localState.runResolvers({document:v,remoteResult:t,context:e,variables:n})}))),a},t.prototype.fetchRequest=function(t){var e,n,i=this,o=t.requestId,a=t.queryId,u=t.document,s=t.options,c=t.fetchMoreForQueryId,f=s.variables,l=s.errorPolicy,d=void 0===l?"none":l,h=s.fetchPolicy;return new Promise((function(t,l){var g=i.getObservableFromLink(u,s.context,f),b="fetchRequest:"+a;i.fetchQueryRejectFns.set(b,l);var v=function(){i.fetchQueryRejectFns.delete(b),i.setQuery(a,(function(t){t.subscriptions.delete(y)}))},y=g.map((function(t){if(o>=i.getQuery(a).lastRequestId&&(i.markQueryResult(a,t,s,c),i.queryStore.markQueryResult(a,t,c),i.invalidate(a),i.invalidate(c),i.broadcastQueries()),"none"===d&&p(t.errors))return l(new m({graphQLErrors:t.errors}));if("all"===d&&(n=t.errors),c||"no-cache"===h)e=t.data;else{var r=i.dataStore.getCache().diff({variables:f,query:u,optimistic:!1,returnPartialData:!0}),g=r.result;(r.complete||s.returnPartialData)&&(e=g)}})).subscribe({error:function(t){v(),l(t)},complete:function(){v(),t({data:e,errors:n,loading:!1,networkStatus:r.ready,stale:!1})}});i.setQuery(a,(function(t){t.subscriptions.add(y)}))}))},t.prototype.getQuery=function(t){return this.queries.get(t)||{listeners:new Set,invalidated:!1,document:null,newData:null,lastRequestId:1,observableQuery:null,subscriptions:new Set}},t.prototype.setQuery=function(t,e){var n=this.getQuery(t),r=Object(i.a)(Object(i.a)({},n),e(n));this.queries.set(t,r)},t.prototype.invalidate=function(t,e){void 0===e&&(e=!0),t&&this.setQuery(t,(function(){return{invalidated:e}}))},t.prototype.prepareContext=function(t){void 0===t&&(t={});var e=this.localState.prepareContext(t);return Object(i.a)(Object(i.a)({},e),{clientAwareness:this.clientAwareness})},t.prototype.checkInFlight=function(t){var e=this.queryStore.get(t);return e&&e.networkStatus!==r.ready&&e.networkStatus!==r.error},t.prototype.startPollingQuery=function(t,e,n){var r=this,o=t.pollInterval;if(Object(f.b)(o,18),!this.ssrMode){var a=this.pollingInfoByQueryId.get(e);a||this.pollingInfoByQueryId.set(e,a={}),a.interval=o,a.options=Object(i.a)(Object(i.a)({},t),{fetchPolicy:"network-only"});var u=function(){var t=r.pollingInfoByQueryId.get(e);t&&(r.checkInFlight(e)?s():r.fetchQuery(e,t.options,g.poll).then(s,s))},s=function(){var t=r.pollingInfoByQueryId.get(e);t&&(clearTimeout(t.timeout),t.timeout=setTimeout(u,t.interval))};n&&this.addQueryListener(e,n),s()}return e},t.prototype.stopPollingQuery=function(t){this.pollingInfoByQueryId.delete(t)},t}(),T=function(){function t(t){this.cache=t}return t.prototype.getCache=function(){return this.cache},t.prototype.markQueryResult=function(t,e,n,r,i){void 0===i&&(i=!1);var a=!Object(o.q)(t);i&&Object(o.q)(t)&&t.data&&(a=!0),!r&&a&&this.cache.write({result:t.data,dataId:"ROOT_QUERY",query:e,variables:n})},t.prototype.markSubscriptionResult=function(t,e,n){Object(o.q)(t)||this.cache.write({result:t.data,dataId:"ROOT_SUBSCRIPTION",query:e,variables:n})},t.prototype.markMutationInit=function(t){var e,n=this;t.optimisticResponse&&(e="function"===typeof t.optimisticResponse?t.optimisticResponse(t.variables):t.optimisticResponse,this.cache.recordOptimisticTransaction((function(r){var i=n.cache;n.cache=r;try{n.markMutationResult({mutationId:t.mutationId,result:{data:e},document:t.document,variables:t.variables,updateQueries:t.updateQueries,update:t.update})}finally{n.cache=i}}),t.mutationId))},t.prototype.markMutationResult=function(t){var e=this;if(!Object(o.q)(t.result)){var n=[{result:t.result.data,dataId:"ROOT_MUTATION",query:t.document,variables:t.variables}],r=t.updateQueries;r&&Object.keys(r).forEach((function(i){var a=r[i],u=a.query,s=a.updater,c=e.cache.diff({query:u.document,variables:u.variables,returnPartialData:!0,optimistic:!1}),f=c.result;if(c.complete){var l=Object(o.I)((function(){return s(f,{mutationResult:t.result,queryName:Object(o.n)(u.document)||void 0,queryVariables:u.variables})}));l&&n.push({result:l,dataId:"ROOT_QUERY",query:u.document,variables:u.variables})}})),this.cache.performTransaction((function(e){n.forEach((function(t){return e.write(t)}));var r=t.update;r&&Object(o.I)((function(){return r(e,t.result)}))}))}},t.prototype.markMutationComplete=function(t){var e=t.mutationId;t.optimisticResponse&&this.cache.removeOptimistic(e)},t.prototype.markUpdateQueryResult=function(t,e,n){this.cache.write({result:n,dataId:"ROOT_QUERY",variables:e,query:t})},t.prototype.reset=function(){return this.cache.reset()},t}(),$=function(){function t(t){var e=this;this.defaultOptions={},this.resetStoreCallbacks=[],this.clearStoreCallbacks=[];var n=t.cache,r=t.ssrMode,i=void 0!==r&&r,o=t.ssrForceFetchDelay,a=void 0===o?0:o,u=t.connectToDevTools,c=t.queryDeduplication,l=void 0===c||c,d=t.defaultOptions,h=t.assumeImmutableResults,p=void 0!==h&&h,g=t.resolvers,m=t.typeDefs,b=t.fragmentMatcher,v=t.name,y=t.version,_=t.link;if(!_&&g&&(_=s.ApolloLink.empty()),!_||!n)throw new f.a(4);this.link=_,this.cache=n,this.store=new T(n),this.disableNetworkFetches=i||a>0,this.queryDeduplication=l,this.defaultOptions=d||{},this.typeDefs=m,a&&setTimeout((function(){return e.disableNetworkFetches=!1}),a),this.watchQuery=this.watchQuery.bind(this),this.query=this.query.bind(this),this.mutate=this.mutate.bind(this),this.resetStore=this.resetStore.bind(this),this.reFetchObservableQueries=this.reFetchObservableQueries.bind(this);"undefined"!==typeof u&&(u&&"undefined"!==typeof window)&&(window.__APOLLO_CLIENT__=this),this.version="2.6.10",this.localState=new O({cache:n,client:this,resolvers:g,fragmentMatcher:b}),this.queryManager=new M({link:this.link,store:this.store,queryDeduplication:l,ssrMode:i,clientAwareness:{name:v,version:y},localState:this.localState,assumeImmutableResults:p,onBroadcast:function(){e.devToolsHookCb&&e.devToolsHookCb({action:{},state:{queries:e.queryManager.queryStore.getStore(),mutations:e.queryManager.mutationStore.getStore()},dataWithOptimisticResults:e.cache.extract(!0)})}})}return t.prototype.stop=function(){this.queryManager.stop()},t.prototype.watchQuery=function(t){return this.defaultOptions.watchQuery&&(t=Object(i.a)(Object(i.a)({},this.defaultOptions.watchQuery),t)),!this.disableNetworkFetches||"network-only"!==t.fetchPolicy&&"cache-and-network"!==t.fetchPolicy||(t=Object(i.a)(Object(i.a)({},t),{fetchPolicy:"cache-first"})),this.queryManager.watchQuery(t)},t.prototype.query=function(t){return this.defaultOptions.query&&(t=Object(i.a)(Object(i.a)({},this.defaultOptions.query),t)),Object(f.b)("cache-and-network"!==t.fetchPolicy,5),this.disableNetworkFetches&&"network-only"===t.fetchPolicy&&(t=Object(i.a)(Object(i.a)({},t),{fetchPolicy:"cache-first"})),this.queryManager.query(t)},t.prototype.mutate=function(t){return this.defaultOptions.mutate&&(t=Object(i.a)(Object(i.a)({},this.defaultOptions.mutate),t)),this.queryManager.mutate(t)},t.prototype.subscribe=function(t){return this.queryManager.startGraphQLSubscription(t)},t.prototype.readQuery=function(t,e){return void 0===e&&(e=!1),this.cache.readQuery(t,e)},t.prototype.readFragment=function(t,e){return void 0===e&&(e=!1),this.cache.readFragment(t,e)},t.prototype.writeQuery=function(t){var e=this.cache.writeQuery(t);return this.queryManager.broadcastQueries(),e},t.prototype.writeFragment=function(t){var e=this.cache.writeFragment(t);return this.queryManager.broadcastQueries(),e},t.prototype.writeData=function(t){var e=this.cache.writeData(t);return this.queryManager.broadcastQueries(),e},t.prototype.__actionHookForDevTools=function(t){this.devToolsHookCb=t},t.prototype.__requestRaw=function(t){return Object(s.execute)(this.link,t)},t.prototype.initQueryManager=function(){return this.queryManager},t.prototype.resetStore=function(){var t=this;return Promise.resolve().then((function(){return t.queryManager.clearStore()})).then((function(){return Promise.all(t.resetStoreCallbacks.map((function(t){return t()})))})).then((function(){return t.reFetchObservableQueries()}))},t.prototype.clearStore=function(){var t=this;return Promise.resolve().then((function(){return t.queryManager.clearStore()})).then((function(){return Promise.all(t.clearStoreCallbacks.map((function(t){return t()})))}))},t.prototype.onResetStore=function(t){var e=this;return this.resetStoreCallbacks.push(t),function(){e.resetStoreCallbacks=e.resetStoreCallbacks.filter((function(e){return e!==t}))}},t.prototype.onClearStore=function(t){var e=this;return this.clearStoreCallbacks.push(t),function(){e.clearStoreCallbacks=e.clearStoreCallbacks.filter((function(e){return e!==t}))}},t.prototype.reFetchObservableQueries=function(t){return this.queryManager.reFetchObservableQueries(t)},t.prototype.extract=function(t){return this.cache.extract(t)},t.prototype.restore=function(t){return this.cache.restore(t)},t.prototype.addResolvers=function(t){this.localState.addResolvers(t)},t.prototype.setResolvers=function(t){this.localState.setResolvers(t)},t.prototype.getResolvers=function(){return this.localState.getResolvers()},t.prototype.setLocalStateFragmentMatcher=function(t){this.localState.setFragmentMatcher(t)},t}()},function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n(306),i=n(30),o=n(305),a=n(22);function u(t,e){Object(a.a)(2,arguments);var n=Object(i.a)(e);return Object(o.a)(t,-n)}function s(t,e){if(Object(a.a)(2,arguments),!e||"object"!==typeof e)return new Date(NaN);var n=e.years?Object(i.a)(e.years):0,o=e.months?Object(i.a)(e.months):0,s=e.weeks?Object(i.a)(e.weeks):0,c=e.days?Object(i.a)(e.days):0,f=e.hours?Object(i.a)(e.hours):0,l=e.minutes?Object(i.a)(e.minutes):0,d=e.seconds?Object(i.a)(e.seconds):0,h=u(t,o+12*n),p=Object(r.a)(h,c+7*s),g=l+60*f,m=d+60*g,b=1e3*m,v=new Date(p.getTime()-b);return v}},function(t,e,n){var r=n(630),i=n(633);t.exports=function(t,e){var n=i(t,e);return r(n)?n:void 0}},function(t,e){t.exports=function(t){return t&&t.__esModule?t:{default:t}}},function(t,e,n){(function(e){var r=n(113),i=new(0,n(352).ec)("secp256k1"),o=n(756),a=e.alloc(32,0),u=e.from("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141","hex"),s=e.from("fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f","hex"),c=i.curve.n,f=c.shrn(1),l=i.curve.g,d="Expected Private",h="Expected Point",p="Expected Tweak",g="Expected Hash";function m(t){return e.isBuffer(t)&&32===t.length}function b(t){return!!m(t)&&t.compare(u)<0}function v(t){if(!e.isBuffer(t))return!1;if(t.length<33)return!1;var n=t[0],r=t.slice(1,33);if(0===r.compare(a))return!1;if(r.compare(s)>=0)return!1;if((2===n||3===n)&&33===t.length){try{x(t)}catch(o){return!1}return!0}var i=t.slice(33);return 0!==i.compare(a)&&(!(i.compare(s)>=0)&&(4===n&&65===t.length))}function y(t){return 4!==t[0]}function _(t){return!!m(t)&&(t.compare(a)>0&&t.compare(u)<0)}function w(t,e){return void 0===t&&void 0!==e?y(e):void 0===t||t}function S(t){return new r(t)}function O(t){return t.toArrayLike(e,"be",32)}function x(t){return i.curve.decodePoint(t)}function E(t,n){return e.from(t._encode(n))}function M(t,n,r){if(!m(t))throw new TypeError(g);if(!_(n))throw new TypeError(d);if(void 0!==r&&!m(r))throw new TypeError("Expected Extra Data (32 bytes)");var i,a,u=S(n),s=S(t);o(t,n,(function(t){var e=S(t),n=l.mul(e);return!n.isInfinity()&&(0!==(i=n.x.umod(c)).isZero()&&0!==(a=e.invm(c).mul(s.add(u.mul(i))).umod(c)).isZero())}),_,r),a.cmp(f)>0&&(a=c.sub(a));var h=e.allocUnsafe(64);return O(i).copy(h,0),O(a).copy(h,32),h}t.exports={isPoint:v,isPointCompressed:function(t){return!!v(t)&&y(t)},isPrivate:_,pointAdd:function(t,e,n){if(!v(t))throw new TypeError(h);if(!v(e))throw new TypeError(h);var r=x(t),i=x(e),o=r.add(i);return o.isInfinity()?null:E(o,w(n,t))},pointAddScalar:function(t,e,n){if(!v(t))throw new TypeError(h);if(!b(e))throw new TypeError(p);var r=w(n,t),i=x(t);if(0===e.compare(a))return E(i,r);var o=S(e),u=l.mul(o),s=i.add(u);return s.isInfinity()?null:E(s,r)},pointCompress:function(t,e){if(!v(t))throw new TypeError(h);var n=x(t);if(n.isInfinity())throw new TypeError(h);return E(n,w(e,t))},pointFromScalar:function(t,e){if(!_(t))throw new TypeError(d);var n=S(t),r=l.mul(n);return r.isInfinity()?null:E(r,w(e))},pointMultiply:function(t,e,n){if(!v(t))throw new TypeError(h);if(!b(e))throw new TypeError(p);var r=w(n,t),i=x(t),o=S(e),a=i.mul(o);return a.isInfinity()?null:E(a,r)},privateAdd:function(t,e){if(!_(t))throw new TypeError(d);if(!b(e))throw new TypeError(p);var n=S(t),r=S(e),i=O(n.add(r).umod(c));return _(i)?i:null},privateSub:function(t,e){if(!_(t))throw new TypeError(d);if(!b(e))throw new TypeError(p);var n=S(t),r=S(e),i=O(n.sub(r).umod(c));return _(i)?i:null},sign:function(t,e){return M(t,e)},signWithEntropy:function(t,e,n){return M(t,e,n)},verify:function(t,n,r,i){if(!m(t))throw new TypeError(g);if(!v(n))throw new TypeError(h);if(!function(t){var n=t.slice(0,32),r=t.slice(32,64);return e.isBuffer(t)&&64===t.length&&n.compare(u)<0&&r.compare(u)<0}(r))throw new TypeError("Expected Signature");var o=x(n),a=S(r.slice(0,32)),s=S(r.slice(32,64));if(i&&s.cmp(f)>0)return!1;if(a.gtn(0)<=0)return!1;if(s.gtn(0)<=0)return!1;var d=S(t),p=s.invm(c),b=d.mul(p).umod(c),y=a.mul(p).umod(c),_=l.mulAdd(b,o,y);return!_.isInfinity()&&_.x.umod(c).eq(a)}}}).call(this,n(29).Buffer)},function(t,e,n){var r;function i(t){this.rand=t}if(t.exports=function(t){return r||(r=new i(null)),r.generate(t)},t.exports.Rand=i,i.prototype.generate=function(t){return this._rand(t)},i.prototype._rand=function(t){if(this.rand.getBytes)return this.rand.getBytes(t);for(var e=new Uint8Array(t),n=0;no)throw new RangeError("requested too many random bytes");var n=a.allocUnsafe(t);if(t>0)if(t>i)for(var s=0;s100)throw new TypeError("address string is too long");t=t.trim();var r=u.get(e);if(e&&!r)throw new TypeError("Unknown network");if(t.length>35){var i=p(t);if(!i.network||r&&r.name!==i.network.name)throw new TypeError("Address has mismatched network type.");if(!i.type||n&&n!==i.type)throw new TypeError("Address has mismatched type.");return i}var o=a.decode(t);return h._transformBuffer(o,e,n)},h.fromPublicKey=function(t,e){var n=h._transformPublicKey(t);return e=e||u.defaultNetwork,new h(n.hashBuffer,e,n.type)},h.fromPublicKeyHash=function(t,e){var n=h._transformHash(t);return new h(n.hashBuffer,e,h.PayToPublicKeyHash)},h.fromScriptHash=function(t,e){i.checkArgument(t,"hash parameter is required");var n=h._transformHash(t);return new h(n.hashBuffer,e,h.PayToScriptHash)},h.payingTo=function(t,e){return i.checkArgument(t,"script is required"),i.checkArgument(t instanceof v,"script must be instance of Script"),h.fromScriptHash(s.sha256ripemd160(t.toBuffer()),e)},h.fromScript=function(t,e){i.checkArgument(t instanceof v,"script must be a Script instance");var n=h._transformScript(t,e);return new h(n.hashBuffer,e,n.type)},h.fromBuffer=function(t,e,n){var r=h._transformBuffer(t,e,n);return new h(r.hashBuffer,r.network,r.type)},h.fromString=function(t,e,n){var r=h._transformString(t,e,n);return new h(r.hashBuffer,r.network,r.type)},h.fromObject=function(t){return i.checkState(c.isHexa(t.hash),'Unexpected hash property, "'+t.hash+'", expected to be hex.'),new h(e.from(t.hash,"hex"),t.network,t.type)},h.getValidationError=function(t,e,n){var r;try{new h(t,e,n)}catch(i){r=i}return r},h.isValid=function(t,e,n){return!h.getValidationError(t,e,n)},h.prototype.isPayToPublicKeyHash=function(){return this.type===h.PayToPublicKeyHash},h.prototype.isPayToScriptHash=function(){return this.type===h.PayToScriptHash},h.prototype.toBuffer=function(){var t=e.from([this.network[this.type]]);return e.concat([t,this.hashBuffer])},h.prototype.toObject=h.prototype.toJSON=function(){return{hash:this.hashBuffer.toString("hex"),type:this.type,network:this.network.toString()}},h.prototype.inspect=function(){return""},h.prototype.toCashBuffer=function(){var t=e.from([this.network[this.type]]);return e.concat([t,this.hashBuffer])},h.prototype.toLegacyAddress=function(){return a.encode(this.toBuffer())},h.prototype.toCashAddress=function(t){var e=this.network.prefixArray.concat([0]),n=function(t){switch(t){case"pubkeyhash":return 0;case"scripthash":return 8;default:throw new Error("Invalid type:"+t)}}(this.type)+function(t){switch(8*t.length){case 160:return 0;case 192:return 1;case 224:return 2;case 256:return 3;case 320:return 4;case 384:return 5;case 448:return 6;case 512:return 7;default:throw new Error("Invalid hash size:"+t.length)}}(this.hashBuffer),r=Array.prototype.slice.call(this.hashBuffer,0),i=d([n].concat(r),8,5),o=e.concat(i).concat([0,0,0,0,0,0,0,0]),a=i.concat(function(t){for(var e=[],n=0;n<8;++n)e.push(31&t),t/=32;return e.reverse()}(b(o)));return!0===t?l.encode(a):this.network.prefix+":"+l.encode(a)},h.prototype.toString=h.prototype.toCashAddress;var g=[152,121,243,174,30],m=[4072443489,3077413346,1046459332,783016616,1329849456];function b(t){for(var e=0,n=1,r=0,i=0;i>>3,e&=7,e<<=5,e|=n>>>27,n&=134217727,n<<=5,n^=t[i];for(var o=0;o1&&void 0!==arguments[1]&&arguments[1];return t&&(r(t.value)&&""!==t.value||e&&r(t.defaultValue)&&""!==t.defaultValue)}function o(t){return t.startAdornment}n.d(e,"b",(function(){return i})),n.d(e,"a",(function(){return o}))},function(t,e,n){"use strict";function r(t){return"[object Function]"===Object.prototype.toString.call(t)}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(22);function i(t){return Object(r.a)(1,arguments),t instanceof Date||"object"===typeof t&&"[object Date]"===Object.prototype.toString.call(t)}var o=n(25);function a(t){if(Object(r.a)(1,arguments),!i(t)&&"number"!==typeof t)return!1;var e=Object(o.a)(t);return!isNaN(Number(e))}},function(t,e,n){"use strict";var r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i="object"===("undefined"===typeof window?"undefined":r(window))&&"object"===("undefined"===typeof document?"undefined":r(document))&&9===document.nodeType;e.a=i},function(t,e,n){var r=n(957);t.exports=function(t,e){if(null==t)return{};var n,i,o=r(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}},,function(t,e,n){var r,i,o;!function(a){"use strict";"object"===typeof t.exports?t.exports=a():null!=n(148)?(i=[],void 0===(o="function"===typeof(r=a)?r.apply(e,i):r)||(t.exports=o)):self.sanctuaryTypeIdentifiers=a()}((function(){"use strict";var t="@@type",e=new RegExp("^([\\s\\S]+)/([\\s\\S]+?)(?:@([0-9]+))?$");function n(e){return null!=e&&null!=e.constructor&&e.constructor.prototype!==e&&"string"===typeof e.constructor[t]?e.constructor[t]:Object.prototype.toString.call(e).slice("[object ".length,-"]".length)}return n.parse=function(t){var n=e.exec(t);return{namespace:null==n||null==n[1]?null:n[1],name:null==n?t:n[2],version:null==n||null==n[3]?0:Number(n[3])}},n}))},function(t,e,n){"use strict";var r={};function i(t,e,n){n||(n=Error);var i=function(t){var n,r;function i(n,r,i){return t.call(this,function(t,n,r){return"string"===typeof e?e:e(t,n,r)}(n,r,i))||this}return r=t,(n=i).prototype=Object.create(r.prototype),n.prototype.constructor=n,n.__proto__=r,i}(n);i.prototype.name=n.name,i.prototype.code=t,r[t]=i}function o(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map((function(t){return String(t)})),n>2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}i("ERR_INVALID_OPT_VALUE",(function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'}),TypeError),i("ERR_INVALID_ARG_TYPE",(function(t,e,n){var r,i,a,u;if("string"===typeof e&&(i="not ",e.substr(!a||a<0?0:+a,i.length)===i)?(r="must not be",e=e.replace(/^not /,"")):r="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))u="The ".concat(t," ").concat(r," ").concat(o(e,"type"));else{var s=function(t,e,n){return"number"!==typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";u='The "'.concat(t,'" ').concat(s," ").concat(r," ").concat(o(e,"type"))}return u+=". Received type ".concat(typeof n)}),TypeError),i("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),i("ERR_METHOD_NOT_IMPLEMENTED",(function(t){return"The "+t+" method is not implemented"})),i("ERR_STREAM_PREMATURE_CLOSE","Premature close"),i("ERR_STREAM_DESTROYED",(function(t){return"Cannot call "+t+" after a stream was destroyed"})),i("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),i("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),i("ERR_STREAM_WRITE_AFTER_END","write after end"),i("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),i("ERR_UNKNOWN_ENCODING",(function(t){return"Unknown encoding: "+t}),TypeError),i("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),t.exports.codes=r},function(t,e,n){"use strict";(function(e){var r=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};t.exports=c;var i=n(452),o=n(456);n(38)(c,i);for(var a=r(o.prototype),u=0;u=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,i=(n-r)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var o=this._hash();return t?o.toString(t):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},t.exports=i},function(t,e,n){"use strict";var r=n(158),i=n(787);t.exports=i((function(t){var e=r("sha256").update(t).digest();return r("sha256").update(e).digest()}))},function(t,e,n){!function(e,r){var i;t.exports=(i=n(50),function(){var t=i,e=t.lib.WordArray;function n(t,n,r){for(var i=[],o=0,a=0;a>>6-a%4*2;i[o>>>2]|=(u|s)<<24-o%4*8,o++}return e.create(i,o)}t.enc.Base64={stringify:function(t){var e=t.words,n=t.sigBytes,r=this._map;t.clamp();for(var i=[],o=0;o>>2]>>>24-o%4*8&255)<<16|(e[o+1>>>2]>>>24-(o+1)%4*8&255)<<8|e[o+2>>>2]>>>24-(o+2)%4*8&255,u=0;u<4&&o+.75*u>>6*(3-u)&63));var s=r.charAt(64);if(s)for(;i.length%4;)i.push(s);return i.join("")},parse:function(t){var e=t.length,r=this._map,i=this._reverseMap;if(!i){i=this._reverseMap=[];for(var o=0;o>>24)|4278255360&(i<<24|i>>>8)}var o=this._hash.words,a=t[e+0],s=t[e+1],h=t[e+2],p=t[e+3],g=t[e+4],m=t[e+5],b=t[e+6],v=t[e+7],y=t[e+8],_=t[e+9],w=t[e+10],S=t[e+11],O=t[e+12],x=t[e+13],E=t[e+14],M=t[e+15],T=o[0],$=o[1],A=o[2],k=o[3];T=c(T,$,A,k,a,7,u[0]),k=c(k,T,$,A,s,12,u[1]),A=c(A,k,T,$,h,17,u[2]),$=c($,A,k,T,p,22,u[3]),T=c(T,$,A,k,g,7,u[4]),k=c(k,T,$,A,m,12,u[5]),A=c(A,k,T,$,b,17,u[6]),$=c($,A,k,T,v,22,u[7]),T=c(T,$,A,k,y,7,u[8]),k=c(k,T,$,A,_,12,u[9]),A=c(A,k,T,$,w,17,u[10]),$=c($,A,k,T,S,22,u[11]),T=c(T,$,A,k,O,7,u[12]),k=c(k,T,$,A,x,12,u[13]),A=c(A,k,T,$,E,17,u[14]),T=f(T,$=c($,A,k,T,M,22,u[15]),A,k,s,5,u[16]),k=f(k,T,$,A,b,9,u[17]),A=f(A,k,T,$,S,14,u[18]),$=f($,A,k,T,a,20,u[19]),T=f(T,$,A,k,m,5,u[20]),k=f(k,T,$,A,w,9,u[21]),A=f(A,k,T,$,M,14,u[22]),$=f($,A,k,T,g,20,u[23]),T=f(T,$,A,k,_,5,u[24]),k=f(k,T,$,A,E,9,u[25]),A=f(A,k,T,$,p,14,u[26]),$=f($,A,k,T,y,20,u[27]),T=f(T,$,A,k,x,5,u[28]),k=f(k,T,$,A,h,9,u[29]),A=f(A,k,T,$,v,14,u[30]),T=l(T,$=f($,A,k,T,O,20,u[31]),A,k,m,4,u[32]),k=l(k,T,$,A,y,11,u[33]),A=l(A,k,T,$,S,16,u[34]),$=l($,A,k,T,E,23,u[35]),T=l(T,$,A,k,s,4,u[36]),k=l(k,T,$,A,g,11,u[37]),A=l(A,k,T,$,v,16,u[38]),$=l($,A,k,T,w,23,u[39]),T=l(T,$,A,k,x,4,u[40]),k=l(k,T,$,A,a,11,u[41]),A=l(A,k,T,$,p,16,u[42]),$=l($,A,k,T,b,23,u[43]),T=l(T,$,A,k,_,4,u[44]),k=l(k,T,$,A,O,11,u[45]),A=l(A,k,T,$,M,16,u[46]),T=d(T,$=l($,A,k,T,h,23,u[47]),A,k,a,6,u[48]),k=d(k,T,$,A,v,10,u[49]),A=d(A,k,T,$,E,15,u[50]),$=d($,A,k,T,m,21,u[51]),T=d(T,$,A,k,O,6,u[52]),k=d(k,T,$,A,p,10,u[53]),A=d(A,k,T,$,w,15,u[54]),$=d($,A,k,T,s,21,u[55]),T=d(T,$,A,k,y,6,u[56]),k=d(k,T,$,A,M,10,u[57]),A=d(A,k,T,$,b,15,u[58]),$=d($,A,k,T,x,21,u[59]),T=d(T,$,A,k,g,6,u[60]),k=d(k,T,$,A,S,10,u[61]),A=d(A,k,T,$,h,15,u[62]),$=d($,A,k,T,_,21,u[63]),o[0]=o[0]+T|0,o[1]=o[1]+$|0,o[2]=o[2]+A|0,o[3]=o[3]+k|0},_doFinalize:function(){var e=this._data,n=e.words,r=8*this._nDataBytes,i=8*e.sigBytes;n[i>>>5]|=128<<24-i%32;var o=t.floor(r/4294967296),a=r;n[15+(i+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),n[14+(i+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),e.sigBytes=4*(n.length+1),this._process();for(var u=this._hash,s=u.words,c=0;c<4;c++){var f=s[c];s[c]=16711935&(f<<8|f>>>24)|4278255360&(f<<24|f>>>8)}return u},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});function c(t,e,n,r,i,o,a){var u=t+(e&n|~e&r)+i+a;return(u<>>32-o)+e}function f(t,e,n,r,i,o,a){var u=t+(e&r|n&~r)+i+a;return(u<>>32-o)+e}function l(t,e,n,r,i,o,a){var u=t+(e^n^r)+i+a;return(u<>>32-o)+e}function d(t,e,n,r,i,o,a){var u=t+(n^(e|~r))+i+a;return(u<>>32-o)+e}e.MD5=o._createHelper(s),e.HmacMD5=o._createHmacHelper(s)}(Math),i.MD5)}()},function(t,e,n){"use strict";(function(e){var r=n(49),i=n(52),o=n(115),a=n(134),u=(n(29),n(63)),s=n(79),c=n(118),f=n(152),l=n(153),d=4294967295,h=d,p=Math.pow(2,31),g=Math.pow(2,22),m=65535,b=Math.pow(2,16)-1;function v(t){return this instanceof v?t?this._fromObject(t):void 0:new v(t)}v.MAXINT=d,v.DEFAULT_SEQNUMBER=h,v.DEFAULT_LOCKTIME_SEQNUMBER=4294967294,v.DEFAULT_RBF_SEQNUMBER=4294967293,v.SEQUENCE_LOCKTIME_TYPE_FLAG=g,Object.defineProperty(v.prototype,"script",{configurable:!1,enumerable:!0,get:function(){return this.isNull()?null:(this._script||(this._script=new c(this._scriptBuffer),this._script._isInput=!0),this._script)}}),v.fromObject=function(t){return i.checkArgument(r.isObject(t)),(new v)._fromObject(t)},v.prototype._fromObject=function(t){var n;if(n=r.isString(t.prevTxId)&&s.isHexa(t.prevTxId)?e.from(t.prevTxId,"hex"):t.prevTxId,this.output=t.output?t.output instanceof l?t.output:new l(t.output):void 0,this.prevTxId=n||t.txidbuf,this.outputIndex=r.isUndefined(t.outputIndex)?t.txoutnum:t.outputIndex,this.sequenceNumber=r.isUndefined(t.sequenceNumber)?r.isUndefined(t.seqnum)?h:t.seqnum:t.sequenceNumber,r.isUndefined(t.script)&&r.isUndefined(t.scriptBuffer))throw new o.Transaction.Input.MissingScript;return this.setScript(t.scriptBuffer||t.script),this},v.prototype.toObject=v.prototype.toJSON=function(){var t={prevTxId:this.prevTxId.toString("hex"),outputIndex:this.outputIndex,sequenceNumber:this.sequenceNumber,script:this._scriptBuffer.toString("hex")};return this.script&&(t.scriptString=this.script.toString()),this.output&&(t.output=this.output.toObject()),t},v.fromBufferReader=function(t){var e=new v;return e.prevTxId=t.readReverse(32),e.outputIndex=t.readUInt32LE(),e._scriptBuffer=t.readVarLengthBuffer(),e.sequenceNumber=t.readUInt32LE(),e},v.prototype.toBufferWriter=function(t){t||(t=new a),t.writeReverse(this.prevTxId),t.writeUInt32LE(this.outputIndex);var e=this._scriptBuffer;return t.writeVarintNum(e.length),t.write(e),t.writeUInt32LE(this.sequenceNumber),t},v.prototype.setScript=function(t){if(this._script=null,t instanceof c)this._script=t,this._script._isInput=!0,this._scriptBuffer=t.toBuffer();else if(null===t)this._script=c.empty(),this._script._isInput=!0,this._scriptBuffer=this._script.toBuffer();else if(s.isHexa(t))this._scriptBuffer=e.from(t,"hex");else if(r.isString(t))this._script=new c(t),this._script._isInput=!0,this._scriptBuffer=this._script.toBuffer();else{if(!u.isBuffer(t))throw new TypeError("Invalid argument type: script");this._scriptBuffer=e.from(t)}return this},v.prototype.getSignatures=function(){throw new o.AbstractMethodInvoked("Trying to sign unsupported output type (only P2PKH and P2SH multisig inputs are supported) for input: "+JSON.stringify(this))},v.prototype.isFullySigned=function(){throw new o.AbstractMethodInvoked("Input#isFullySigned")},v.prototype.isFinal=function(){return 4294967295!==this.sequenceNumber},v.prototype.addSignature=function(){throw new o.AbstractMethodInvoked("Input#addSignature")},v.prototype.clearSignatures=function(){throw new o.AbstractMethodInvoked("Input#clearSignatures")},v.prototype.isValidSignature=function(t,e,n){return e.signature.nhashtype=e.sigtype,f.verify(t,e.signature,e.publicKey,e.inputIndex,this.output.script,this.output.satoshisBN,void 0,n)},v.prototype.isNull=function(){return"0000000000000000000000000000000000000000000000000000000000000000"===this.prevTxId.toString("hex")&&4294967295===this.outputIndex},v.prototype._estimateSize=function(){return this.toBufferWriter().toBuffer().length},v.prototype.lockForSeconds=function(t){if(i.checkArgument(r.isNumber(t)),t<0||t>=33553920)throw new o.Transaction.Input.LockTimeRange;return t=parseInt(Math.floor(t/512)),this.sequenceNumber=t|g,this},v.prototype.lockUntilBlockHeight=function(t){if(i.checkArgument(r.isNumber(t)),t<0||t>=b)throw new o.Transaction.Input.BlockHeightOutOfRange;return this.sequenceNumber=t,this},v.prototype.getLockTime=function(){return this.sequenceNumber&p?null:this.sequenceNumber&g?512*(this.sequenceNumber&m):this.sequenceNumber&m},t.exports=v}).call(this,n(29).Buffer)},function(t,e){"function"===typeof Object.create?t.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}},function(t,e,n){"use strict";(function(e){var r=n(49),i=n(52),o=n(206),a=n(63),u=n(79),s=n(101),c=n(115),f=n(100);function l(t){if(!(this instanceof l))return new l(t);if(t instanceof l)return t;if(r.isObject(t))return this._fromObject(t);throw new c.InvalidArgument("TransactionSignatures must be instantiated from an object")}o(l,f),l.prototype._fromObject=function(t){return this._checkObjectArgs(t),this.publicKey=new s(t.publicKey),this.prevTxId=a.isBuffer(t.prevTxId)?t.prevTxId:e.from(t.prevTxId,"hex"),this.outputIndex=t.outputIndex,this.inputIndex=t.inputIndex,this.signature=t.signature instanceof f?t.signature:a.isBuffer(t.signature)?f.fromBuffer(t.signature):f.fromString(t.signature),this.sigtype=t.sigtype,this},l.prototype._checkObjectArgs=function(t){i.checkArgument(s(t.publicKey),"publicKey"),i.checkArgument(!r.isUndefined(t.inputIndex),"inputIndex"),i.checkArgument(!r.isUndefined(t.outputIndex),"outputIndex"),i.checkState(r.isNumber(t.inputIndex),"inputIndex must be a number"),i.checkState(r.isNumber(t.outputIndex),"outputIndex must be a number"),i.checkArgument(t.signature,"signature"),i.checkArgument(t.prevTxId,"prevTxId"),i.checkState(t.signature instanceof f||a.isBuffer(t.signature)||u.isHexa(t.signature),"signature must be a buffer or hexa value"),i.checkState(a.isBuffer(t.prevTxId)||u.isHexa(t.prevTxId),"prevTxId must be a buffer or hexa value"),i.checkArgument(t.sigtype,"sigtype"),i.checkState(r.isNumber(t.sigtype),"sigtype must be a number")},l.prototype.toObject=l.prototype.toJSON=function(){return{publicKey:this.publicKey.toString(),prevTxId:this.prevTxId.toString("hex"),outputIndex:this.outputIndex,inputIndex:this.inputIndex,signature:this.signature.toString(),sigtype:this.sigtype}},l.fromObject=function(t){return i.checkArgument(t),new l(t)},t.exports=l}).call(this,n(29).Buffer)},function(t,e,n){"use strict";var r=n(58),i=n(17),o=n(393),a=n(4),u=["xs","sm","md","lg","xl"];function s(t){var e=t.values,n=void 0===e?{xs:0,sm:600,md:960,lg:1280,xl:1920}:e,r=t.unit,o=void 0===r?"px":r,s=t.step,c=void 0===s?5:s,f=Object(i.a)(t,["values","unit","step"]);function l(t){var e="number"===typeof n[t]?n[t]:t;return"@media (min-width:".concat(e).concat(o,")")}function d(t,e){var r=u.indexOf(e);return r===u.length-1?l(t):"@media (min-width:".concat("number"===typeof n[t]?n[t]:t).concat(o,") and ")+"(max-width:".concat((-1!==r&&"number"===typeof n[u[r+1]]?n[u[r+1]]:e)-c/100).concat(o,")")}return Object(a.a)({keys:u,values:n,up:l,down:function(t){var e=u.indexOf(t)+1,r=n[u[e]];return e===u.length?l("xs"):"@media (max-width:".concat(("number"===typeof r&&e>0?r:t)-c/100).concat(o,")")},between:d,only:function(t){return d(t,t)},width:function(t){return n[t]}},f)}function c(t,e,n){var i;return Object(a.a)({gutters:function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object(a.a)({paddingLeft:e(2),paddingRight:e(2)},n,Object(r.a)({},t.up("sm"),Object(a.a)({paddingLeft:e(3),paddingRight:e(3)},n[t.up("sm")])))},toolbar:(i={minHeight:56},Object(r.a)(i,"".concat(t.up("xs")," and (orientation: landscape)"),{minHeight:48}),Object(r.a)(i,t.up("sm"),{minHeight:64}),i)},n)}var f=n(284),l={black:"#000",white:"#fff"},d={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#d5d5d5",A200:"#aaaaaa",A400:"#303030",A700:"#616161"},h={50:"#e8eaf6",100:"#c5cae9",200:"#9fa8da",300:"#7986cb",400:"#5c6bc0",500:"#3f51b5",600:"#3949ab",700:"#303f9f",800:"#283593",900:"#1a237e",A100:"#8c9eff",A200:"#536dfe",A400:"#3d5afe",A700:"#304ffe"},p={50:"#fce4ec",100:"#f8bbd0",200:"#f48fb1",300:"#f06292",400:"#ec407a",500:"#e91e63",600:"#d81b60",700:"#c2185b",800:"#ad1457",900:"#880e4f",A100:"#ff80ab",A200:"#ff4081",A400:"#f50057",A700:"#c51162"},g={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},m={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},b={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},v={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"},y=n(36),_={text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.54)",disabled:"rgba(0, 0, 0, 0.38)",hint:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:l.white,default:d[50]},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}},w={text:{primary:l.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",hint:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:d[800],default:"#303030"},action:{active:l.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}};function S(t,e,n,r){var i=r.light||r,o=r.dark||1.5*r;t[e]||(t.hasOwnProperty(n)?t[e]=t[n]:"light"===e?t.light=Object(y.i)(t.main,i):"dark"===e&&(t.dark=Object(y.a)(t.main,o)))}function O(t){var e=t.primary,n=void 0===e?{light:h[300],main:h[500],dark:h[700]}:e,r=t.secondary,u=void 0===r?{light:p.A200,main:p.A400,dark:p.A700}:r,s=t.error,c=void 0===s?{light:g[300],main:g[500],dark:g[700]}:s,O=t.warning,x=void 0===O?{light:m[300],main:m[500],dark:m[700]}:O,E=t.info,M=void 0===E?{light:b[300],main:b[500],dark:b[700]}:E,T=t.success,$=void 0===T?{light:v[300],main:v[500],dark:v[700]}:T,A=t.type,k=void 0===A?"light":A,C=t.contrastThreshold,I=void 0===C?3:C,P=t.tonalOffset,N=void 0===P?.2:P,R=Object(i.a)(t,["primary","secondary","error","warning","info","success","type","contrastThreshold","tonalOffset"]);function j(t){return Object(y.e)(t,w.text.primary)>=I?w.text.primary:_.text.primary}var D=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:300,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:700;if(!(t=Object(a.a)({},t)).main&&t[e]&&(t.main=t[e]),!t.main)throw new Error(Object(f.a)(4,e));if("string"!==typeof t.main)throw new Error(Object(f.a)(5,JSON.stringify(t.main)));return S(t,"light",n,N),S(t,"dark",r,N),t.contrastText||(t.contrastText=j(t.main)),t},L={dark:w,light:_};return Object(o.a)(Object(a.a)({common:l,type:k,primary:D(n),secondary:D(u,"A400","A200","A700"),error:D(c),warning:D(x),info:D(M),success:D($),grey:d,contrastThreshold:I,getContrastText:j,augmentColor:D,tonalOffset:N},L[k]),R)}function x(t){return Math.round(1e5*t)/1e5}var E={textTransform:"uppercase"},M='"Roboto", "Helvetica", "Arial", sans-serif';function T(t,e){var n="function"===typeof e?e(t):e,r=n.fontFamily,u=void 0===r?M:r,s=n.fontSize,c=void 0===s?14:s,f=n.fontWeightLight,l=void 0===f?300:f,d=n.fontWeightRegular,h=void 0===d?400:d,p=n.fontWeightMedium,g=void 0===p?500:p,m=n.fontWeightBold,b=void 0===m?700:m,v=n.htmlFontSize,y=void 0===v?16:v,_=n.allVariants,w=n.pxToRem,S=Object(i.a)(n,["fontFamily","fontSize","fontWeightLight","fontWeightRegular","fontWeightMedium","fontWeightBold","htmlFontSize","allVariants","pxToRem"]);var O=c/14,T=w||function(t){return"".concat(t/y*O,"rem")},$=function(t,e,n,r,i){return Object(a.a)({fontFamily:u,fontWeight:t,fontSize:T(e),lineHeight:n},u===M?{letterSpacing:"".concat(x(r/e),"em")}:{},i,_)},A={h1:$(l,96,1.167,-1.5),h2:$(l,60,1.2,-.5),h3:$(h,48,1.167,0),h4:$(h,34,1.235,.25),h5:$(h,24,1.334,0),h6:$(g,20,1.6,.15),subtitle1:$(h,16,1.75,.15),subtitle2:$(g,14,1.57,.1),body1:$(h,16,1.5,.15),body2:$(h,14,1.43,.15),button:$(g,14,1.75,.4,E),caption:$(h,12,1.66,.4),overline:$(h,12,2.66,1,E)};return Object(o.a)(Object(a.a)({htmlFontSize:y,pxToRem:T,round:x,fontFamily:u,fontSize:c,fontWeightLight:l,fontWeightRegular:h,fontWeightMedium:g,fontWeightBold:b},A),S,{clone:!1})}function $(){return["".concat(arguments.length<=0?void 0:arguments[0],"px ").concat(arguments.length<=1?void 0:arguments[1],"px ").concat(arguments.length<=2?void 0:arguments[2],"px ").concat(arguments.length<=3?void 0:arguments[3],"px rgba(0,0,0,").concat(.2,")"),"".concat(arguments.length<=4?void 0:arguments[4],"px ").concat(arguments.length<=5?void 0:arguments[5],"px ").concat(arguments.length<=6?void 0:arguments[6],"px ").concat(arguments.length<=7?void 0:arguments[7],"px rgba(0,0,0,").concat(.14,")"),"".concat(arguments.length<=8?void 0:arguments[8],"px ").concat(arguments.length<=9?void 0:arguments[9],"px ").concat(arguments.length<=10?void 0:arguments[10],"px ").concat(arguments.length<=11?void 0:arguments[11],"px rgba(0,0,0,").concat(.12,")")].join(",")}var A=["none",$(0,2,1,-1,0,1,1,0,0,1,3,0),$(0,3,1,-2,0,2,2,0,0,1,5,0),$(0,3,3,-2,0,3,4,0,0,1,8,0),$(0,2,4,-1,0,4,5,0,0,1,10,0),$(0,3,5,-1,0,5,8,0,0,1,14,0),$(0,3,5,-1,0,6,10,0,0,1,18,0),$(0,4,5,-2,0,7,10,1,0,2,16,1),$(0,5,5,-3,0,8,10,1,0,3,14,2),$(0,5,6,-3,0,9,12,1,0,3,16,2),$(0,6,6,-3,0,10,14,1,0,4,18,3),$(0,6,7,-4,0,11,15,1,0,4,20,3),$(0,7,8,-4,0,12,17,2,0,5,22,4),$(0,7,8,-4,0,13,19,2,0,5,24,4),$(0,7,9,-4,0,14,21,2,0,5,26,4),$(0,8,9,-5,0,15,22,2,0,6,28,5),$(0,8,10,-5,0,16,24,2,0,6,30,5),$(0,8,11,-5,0,17,26,2,0,6,32,5),$(0,9,11,-5,0,18,28,2,0,7,34,6),$(0,9,12,-6,0,19,29,2,0,7,36,6),$(0,10,13,-6,0,20,31,3,0,8,38,7),$(0,10,13,-6,0,21,33,3,0,8,40,7),$(0,10,14,-6,0,22,35,3,0,8,42,7),$(0,11,14,-7,0,23,36,3,0,9,44,8),$(0,11,15,-7,0,24,38,3,0,9,46,8)],k={borderRadius:4},C=n(1146);function I(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:8;if(t.mui)return t;var e=Object(C.a)({spacing:t}),n=function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&void 0!==arguments[0]?arguments[0]:{},e=t.breakpoints,n=void 0===e?{}:e,r=t.mixins,a=void 0===r?{}:r,u=t.palette,f=void 0===u?{}:u,l=t.spacing,d=t.typography,h=void 0===d?{}:d,p=Object(i.a)(t,["breakpoints","mixins","palette","spacing","typography"]),g=O(f),m=s(n),b=I(l),v=Object(o.a)({breakpoints:m,direction:"ltr",mixins:c(m,b,a),overrides:{},palette:g,props:{},shadows:A,typography:T(g,h),spacing:b,shape:k,transitions:P.a,zIndex:N.a},p),y=arguments.length,_=new Array(y>1?y-1:0),w=1;w0&&(t.hasOwnProperty(0)&&t.hasOwnProperty(t.length-1)))))}));e.a=a},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n(162),i=n(57);function o(t,e,n){return function(){for(var a=[],u=0,s=t,c=0;c=arguments.length)?f=e[c]:(f=arguments[u],u+=1),a[c]=f,Object(i.a)(f)||(s-=1),c+=1}return s<=0?n.apply(this,a):Object(r.a)(s,o(t,a,n))}}},function(t,e,n){"use strict";function r(t,e){return(r=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";var r=n(61);e.a="function"===typeof Object.assign?Object.assign:function(t){if(null==t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1,i=arguments.length;n1&&void 0!==arguments[1]?arguments[1]:166;function r(){for(var r=arguments.length,i=new Array(r),o=0;o=1&&d<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var h=new Date(0);h.setUTCFullYear(u+1,0,d),h.setUTCHours(0,0,0,0);var p=Object(o.a)(h,e),g=new Date(0);g.setUTCFullYear(u,0,d),g.setUTCHours(0,0,0,0);var m=Object(o.a)(g,e);return n.getTime()>=p.getTime()?u+1:n.getTime()>=m.getTime()?u:u-1}},function(t,e,n){"use strict";n.d(e,"a",(function(){return f}));var r=n(25),i=n(22);function o(t,e){Object(i.a)(2,arguments);var n=Object(r.a)(t),o=Object(r.a)(e),a=n.getFullYear()-o.getFullYear(),u=n.getMonth()-o.getMonth();return 12*a+u}var a=n(108),u=n(308);function s(t){Object(i.a)(1,arguments);var e=Object(r.a)(t),n=e.getMonth();return e.setFullYear(e.getFullYear(),n+1,0),e.setHours(23,59,59,999),e}function c(t){Object(i.a)(1,arguments);var e=Object(r.a)(t);return Object(u.a)(e).getTime()===s(e).getTime()}function f(t,e){Object(i.a)(2,arguments);var n,u=Object(r.a)(t),s=Object(r.a)(e),f=Object(a.a)(u,s),l=Math.abs(o(u,s));if(l<1)n=0;else{1===u.getMonth()&&u.getDate()>27&&u.setDate(30),u.setMonth(u.getMonth()-f*l);var d=Object(a.a)(u,s)===-f;c(Object(r.a)(t))&&1===l&&1===Object(a.a)(t,s)&&(d=!1),n=f*(l-Number(d))}return 0===n?0:n}},function(t,e,n){"use strict";var r=n(16),i=n(329),o=Object(r.a)((function(t,e){return Object(i.a)((n=t,function(){return!n.apply(this,arguments)}),e);var n}));e.a=o},function(t,e,n){"use strict";function r(t,e){var n=function(t){if(!o[t]){var e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:"America/New_York",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(new Date("2014-06-25T04:00:00.123Z")),n="06/25/2014, 00:00:00"===e||"\u200e06\u200e/\u200e25\u200e/\u200e2014\u200e \u200e00\u200e:\u200e00\u200e:\u200e00"===e;o[t]=n?new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}):new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})}return o[t]}(e);return n.formatToParts?function(t,e){for(var n=t.formatToParts(e),r=[],o=0;o=0&&(r[a]=parseInt(n[o].value,10))}return r}(n,t):function(t,e){var n=t.format(e).replace(/\u200E/g,""),r=/(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(n);return[r[3],r[1],r[2],r[4],r[5],r[6]]}(n,t)}n.d(e,"a",(function(){return s}));var i={year:0,month:1,day:2,hour:3,minute:4,second:5};var o={};var a=36e5,u={timezone:/([Z+-].*)$/,timezoneZ:/^(Z)$/,timezoneHH:/^([+-])(\d{2})$/,timezoneHHMM:/^([+-])(\d{2}):?(\d{2})$/};function s(t,e,n){var r,i,o;if(r=u.timezoneZ.exec(t))return 0;if(r=u.timezoneHH.exec(t))return f(o=parseInt(r[2],10))?(i=o*a,"+"===r[1]?-i:i):NaN;if(r=u.timezoneHHMM.exec(t)){o=parseInt(r[2],10);var s=parseInt(r[3],10);return f(o,s)?(i=o*a+6e4*s,"+"===r[1]?-i:i):NaN}if(function(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}(t)){e=new Date(e||Date.now());var l=c(n?e:function(t){return new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()))}(e),t);return-(n?l:function(t,e,n){var r=t.getTime()-e,i=c(new Date(r),n);if(e===i)return e;r-=i-e;var o=c(new Date(r),n);if(i===o)return i;return Math.max(i,o)}(e,l,t))}return 0}function c(t,e){var n=r(t,e),i=Date.UTC(n[0],n[1]-1,n[2],n[3]%24,n[4],n[5]),o=t.getTime(),a=o%1e3;return i-(o-=a>=0?a:1e3+a)}function f(t,e){return null==e||!(e<0||e>59)}},function(t,e,n){"use strict";function r(t,e,n){for(var r=0,i=n.length;r":l(n,r)},r=function(t,e){return Object(o.a)((function(e){return a(e)+": "+n(t[e])}),e.slice().sort())};switch(Object.prototype.toString.call(t)){case"[object Arguments]":return"(function() { return arguments; }("+Object(o.a)(n,t).join(", ")+"))";case"[object Array]":return"["+Object(o.a)(n,t).concat(r(t,Object(f.a)((function(t){return/^\d+$/.test(t)}),Object(c.a)(t)))).join(", ")+"]";case"[object Boolean]":return"object"===typeof t?"new Boolean("+n(t.valueOf())+")":t.toString();case"[object Date]":return"new Date("+(isNaN(t.valueOf())?n(NaN):a(s(t)))+")";case"[object Null]":return"null";case"[object Number]":return"object"===typeof t?"new Number("+n(t.valueOf())+")":1/t===-1/0?"-0":t.toString(10);case"[object String]":return"object"===typeof t?"new String("+n(t.valueOf())+")":a(t);case"[object Undefined]":return"undefined";default:if("function"===typeof t.toString){var u=t.toString();if("[object Object]"!==u)return u}return"{"+r(t,Object(c.a)(t)).join(", ")+"}"}}var d=Object(r.a)((function(t){return l(t,[])}));e.a=d},function(t,e,n){var r=n(254),i=n(622),o=n(623),a=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":a&&a in Object(t)?i(t):o(t)}},function(t,e){t.exports=function(t){return null!=t&&"object"==typeof t}},function(t,e,n){var r=n(648);t.exports=function(t){return null==t?"":r(t)}},function(t,e,n){"use strict";var r=n(178);Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t,e){var n=o.default.memo(o.default.forwardRef((function(e,n){return o.default.createElement(a.default,(0,i.default)({ref:n},e),t)})));0;return n.muiName=a.default.muiName,n};var i=r(n(80)),o=r(n(1)),a=r(n(433))},function(t,e,n){(function(t){var r=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),n={},r=0;r=o)return t;switch(t){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return t}})),s=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),p(n)?r.showHidden=n:n&&e._extend(r,n),v(r.showHidden)&&(r.showHidden=!1),v(r.depth)&&(r.depth=2),v(r.colors)&&(r.colors=!1),v(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=s),f(r,t,r.depth)}function s(t,e){var n=u.styles[e];return n?"\x1b["+u.colors[n][0]+"m"+t+"\x1b["+u.colors[n][1]+"m":t}function c(t,e){return t}function f(t,n,r){if(t.customInspect&&n&&O(n.inspect)&&n.inspect!==e.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,t);return b(i)||(i=f(t,i,r)),i}var o=function(t,e){if(v(e))return t.stylize("undefined","undefined");if(b(e)){var n="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(n,"string")}if(m(e))return t.stylize(""+e,"number");if(p(e))return t.stylize(""+e,"boolean");if(g(e))return t.stylize("null","null")}(t,n);if(o)return o;var a=Object.keys(n),u=function(t){var e={};return t.forEach((function(t,n){e[t]=!0})),e}(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(n)),S(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return l(n);if(0===a.length){if(O(n)){var s=n.name?": "+n.name:"";return t.stylize("[Function"+s+"]","special")}if(y(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(w(n))return t.stylize(Date.prototype.toString.call(n),"date");if(S(n))return l(n)}var c,_="",x=!1,E=["{","}"];(h(n)&&(x=!0,E=["[","]"]),O(n))&&(_=" [Function"+(n.name?": "+n.name:"")+"]");return y(n)&&(_=" "+RegExp.prototype.toString.call(n)),w(n)&&(_=" "+Date.prototype.toUTCString.call(n)),S(n)&&(_=" "+l(n)),0!==a.length||x&&0!=n.length?r<0?y(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special"):(t.seen.push(n),c=x?function(t,e,n,r,i){for(var o=[],a=0,u=e.length;a=0&&0,t+e.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+n[1];return n[0]+e+" "+t.join(", ")+" "+n[1]}(c,_,E)):E[0]+_+E[1]}function l(t){return"["+Error.prototype.toString.call(t)+"]"}function d(t,e,n,r,i,o){var a,u,s;if((s=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?u=s.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):s.set&&(u=t.stylize("[Setter]","special")),$(r,i)||(a="["+i+"]"),u||(t.seen.indexOf(s.value)<0?(u=g(n)?f(t,s.value,null):f(t,s.value,n-1)).indexOf("\n")>-1&&(u=o?u.split("\n").map((function(t){return" "+t})).join("\n").substr(2):"\n"+u.split("\n").map((function(t){return" "+t})).join("\n")):u=t.stylize("[Circular]","special")),v(a)){if(o&&i.match(/^\d+$/))return u;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+u}function h(t){return Array.isArray(t)}function p(t){return"boolean"===typeof t}function g(t){return null===t}function m(t){return"number"===typeof t}function b(t){return"string"===typeof t}function v(t){return void 0===t}function y(t){return _(t)&&"[object RegExp]"===x(t)}function _(t){return"object"===typeof t&&null!==t}function w(t){return _(t)&&"[object Date]"===x(t)}function S(t){return _(t)&&("[object Error]"===x(t)||t instanceof Error)}function O(t){return"function"===typeof t}function x(t){return Object.prototype.toString.call(t)}function E(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(n){if(v(o)&&(o=Object({NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_TYPE_CHECK_SANCTUARY:"false",REACT_APP_BUILD_TARGET:"LAMASSU"}).NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=t.pid;a[n]=function(){var t=e.format.apply(e,arguments);console.error("%s %d: %s",n,r,t)}}else a[n]=function(){};return a[n]},e.inspect=u,u.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},u.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.isArray=h,e.isBoolean=p,e.isNull=g,e.isNullOrUndefined=function(t){return null==t},e.isNumber=m,e.isString=b,e.isSymbol=function(t){return"symbol"===typeof t},e.isUndefined=v,e.isRegExp=y,e.isObject=_,e.isDate=w,e.isError=S,e.isFunction=O,e.isPrimitive=function(t){return null===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||"symbol"===typeof t||"undefined"===typeof t},e.isBuffer=n(721);var M=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function T(){var t=new Date,e=[E(t.getHours()),E(t.getMinutes()),E(t.getSeconds())].join(":");return[t.getDate(),M[t.getMonth()],e].join(" ")}function $(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){console.log("%s - %s",T(),e.format.apply(e,arguments))},e.inherits=n(722),e._extend=function(t,e){if(!e||!_(e))return t;for(var n=Object.keys(e),r=n.length;r--;)t[n[r]]=e[n[r]];return t};var A="undefined"!==typeof Symbol?Symbol("util.promisify.custom"):void 0;function k(t,e){if(!t){var n=new Error("Promise was rejected with a falsy value");n.reason=t,t=n}return e(t)}e.promisify=function(t){if("function"!==typeof t)throw new TypeError('The "original" argument must be of type Function');if(A&&t[A]){var e;if("function"!==typeof(e=t[A]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(e,A,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var e,n,r=new Promise((function(t,r){e=t,n=r})),i=[],o=0;o=this._delta8){var n=(t=this.pending).length%this._delta8;this.pending=t.slice(t.length-n,t.length),0===this.pending.length&&(this.pending=null),t=r.join32(t,0,t.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=t>>>16&255,r[i++]=t>>>8&255,r[i++]=255&t}else for(r[i++]=255&t,r[i++]=t>>>8&255,r[i++]=t>>>16&255,r[i++]=t>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;o0&&a.length>i&&!a.warned){a.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=t,s.type=e,s.count=a.length,u=s,console&&console.warn&&console.warn(u)}return t}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(t,e,n){var r={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},i=d.bind(r);return i.listener=n,r.wrapFn=i,i}function p(t,e,n){var r=t._events;if(void 0===r)return[];var i=r[e];return void 0===i?[]:"function"===typeof i?n?[i.listener||i]:[i]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(a=e[0]),a instanceof Error)throw a;var u=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw u.context=a,u}var s=i[t];if(void 0===s)return!1;if("function"===typeof s)o(s,this,e);else{var c=s.length,f=m(s,c);for(n=0;n=0;o--)if(n[o]===e||n[o].listener===e){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(t,e){for(;e+1=0;r--)this.removeListener(t,e[r]);return this},u.prototype.listeners=function(t){return p(this,t,!0)},u.prototype.rawListeners=function(t){return p(this,t,!1)},u.listenerCount=function(t,e){return"function"===typeof t.listenerCount?t.listenerCount(e):g.call(t,e)},u.prototype.listenerCount=g,u.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(t,e,n){(function(t){function n(t){return Object.prototype.toString.call(t)}e.isArray=function(t){return Array.isArray?Array.isArray(t):"[object Array]"===n(t)},e.isBoolean=function(t){return"boolean"===typeof t},e.isNull=function(t){return null===t},e.isNullOrUndefined=function(t){return null==t},e.isNumber=function(t){return"number"===typeof t},e.isString=function(t){return"string"===typeof t},e.isSymbol=function(t){return"symbol"===typeof t},e.isUndefined=function(t){return void 0===t},e.isRegExp=function(t){return"[object RegExp]"===n(t)},e.isObject=function(t){return"object"===typeof t&&null!==t},e.isDate=function(t){return"[object Date]"===n(t)},e.isError=function(t){return"[object Error]"===n(t)||t instanceof Error},e.isFunction=function(t){return"function"===typeof t},e.isPrimitive=function(t){return null===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||"symbol"===typeof t||"undefined"===typeof t},e.isBuffer=t.isBuffer}).call(this,n(29).Buffer)},function(t,e,n){"use strict";var r=n(37).Buffer,i=r.isEncoding||function(t){switch((t=""+t)&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!==typeof e&&(r.isEncoding===i||!i(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=s,this.end=c,e=4;break;case"utf8":this.fillLast=u,e=4;break;case"base64":this.text=f,this.end=l,e=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(e)}function a(t){return t<=127?0:t>>5===6?2:t>>4===14?3:t>>3===30?4:t>>6===2?-1:-2}function u(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!==(192&e[0]))return t.lastNeed=0,"\ufffd";if(t.lastNeed>1&&e.length>1){if(128!==(192&e[1]))return t.lastNeed=1,"\ufffd";if(t.lastNeed>2&&e.length>2&&128!==(192&e[2]))return t.lastNeed=2,"\ufffd"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function s(t,e){if((t.length-e)%2===0){var n=t.toString("utf16le",e);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,n)}return e}function f(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function l(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function d(t){return t.toString(this.encoding)}function h(t){return t&&t.length?this.write(t):""}e.StringDecoder=o,o.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(t.lastNeed=i-1),i;if(--r=0)return i>0&&(t.lastNeed=i-2),i;if(--r=0)return i>0&&(2===i?i=0:t.lastNeed=i-3),i;return 0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var r=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,r),t.toString("utf8",e,r)},o.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},function(t,e,n){(function(e){t.exports=function(t,n){for(var r=Math.min(t.length,n.length),i=new e(r),o=0;o>>=8)}return n},t.exports=i}).call(this,n(69),n(29).Buffer)},function(t,e,n){"use strict";var r=n(178);Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var i=r(n(1)),o=(0,r(n(233)).default)(i.default.createElement("path",{d:"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"NavigateNext");e.default=o},function(t,e,n){"use strict";function r(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);nt.length)&&(e=t.length);for(var n=0,r=new Array(e);n1&&void 0!==arguments[1]?arguments[1]:.15;return c(t)>.5?f(t,e):l(t,e)},e.fade=function(t,e){t=u(t),e=i(e),("rgb"===t.type||"hsl"===t.type)&&(t.type+="a");return t.values[3]=e,s(t)},e.darken=f,e.lighten=l;var r=n(40);function i(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.min(Math.max(e,t),n)}function o(t){t=t.substr(1);var e=new RegExp(".{1,".concat(t.length>=6?2:1,"}"),"g"),n=t.match(e);return n&&1===n[0].length&&(n=n.map((function(t){return t+t}))),n?"rgb".concat(4===n.length?"a":"","(").concat(n.map((function(t,e){return e<3?parseInt(t,16):Math.round(parseInt(t,16)/255*1e3)/1e3})).join(", "),")"):""}function a(t){var e=(t=u(t)).values,n=e[0],r=e[1]/100,i=e[2]/100,o=r*Math.min(i,1-i),a=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(t+n/30)%12;return i-o*Math.max(Math.min(e-3,9-e,1),-1)},c="rgb",f=[Math.round(255*a(0)),Math.round(255*a(8)),Math.round(255*a(4))];return"hsla"===t.type&&(c+="a",f.push(e[3])),s({type:c,values:f})}function u(t){if(t.type)return t;if("#"===t.charAt(0))return u(o(t));var e=t.indexOf("("),n=t.substring(0,e);if(-1===["rgb","rgba","hsl","hsla"].indexOf(n))throw new Error((0,r.formatMuiErrorMessage)(3,t));var i=t.substring(e+1,t.length-1).split(",");return{type:n,values:i=i.map((function(t){return parseFloat(t)}))}}function s(t){var e=t.type,n=t.values;return-1!==e.indexOf("rgb")?n=n.map((function(t,e){return e<3?parseInt(t,10):t})):-1!==e.indexOf("hsl")&&(n[1]="".concat(n[1],"%"),n[2]="".concat(n[2],"%")),"".concat(e,"(").concat(n.join(", "),")")}function c(t){var e="hsl"===(t=u(t)).type?u(a(t)).values:t.values;return e=e.map((function(t){return(t/=255)<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)})),Number((.2126*e[0]+.7152*e[1]+.0722*e[2]).toFixed(3))}function f(t,e){if(t=u(t),e=i(e),-1!==t.type.indexOf("hsl"))t.values[2]*=1-e;else if(-1!==t.type.indexOf("rgb"))for(var n=0;n<3;n+=1)t.values[n]*=1-e;return s(t)}function l(t,e){if(t=u(t),e=i(e),-1!==t.type.indexOf("hsl"))t.values[2]+=(100-t.values[2])*e;else if(-1!==t.type.indexOf("rgb"))for(var n=0;n<3;n+=1)t.values[n]+=(255-t.values[n])*e;return s(t)}},function(t,e,n){"use strict";function r(t){return"[object Number]"===Object.prototype.toString.call(t)}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var r=n(51),i=n(213);var o=n(293);function a(t,e,n){return(a=Object(o.a)()?Reflect.construct:function(t,e,n){var r=[null];r.push.apply(r,e);var o=new(Function.bind.apply(t,r));return n&&Object(i.a)(o,n.prototype),o}).apply(null,arguments)}function u(t){var e="function"===typeof Map?new Map:void 0;return(u=function(t){if(null===t||(n=t,-1===Function.toString.call(n).indexOf("[native code]")))return t;var n;if("function"!==typeof t)throw new TypeError("Super expression must either be null or a function");if("undefined"!==typeof e){if(e.has(t))return e.get(t);e.set(t,o)}function o(){return a(t,arguments,Object(r.a)(this).constructor)}return o.prototype=Object.create(t.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}),Object(i.a)(o,t)})(t)}},,,function(t,e){t.exports=function(t){if(!t.webpackPolyfill){var e=Object.create(t);e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),Object.defineProperty(e,"exports",{enumerable:!0}),e.webpackPolyfill=1}return e}},function(t,e,n){var r=n(147).Symbol;t.exports=r},function(t,e,n){var r=n(177)(Object,"create");t.exports=r},function(t,e,n){var r=n(638),i=n(639),o=n(640),a=n(641),u=n(642);function s(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e>8,a=255&i;o?n.push(o,a):n.push(a)}return n},r.zero2=i,r.toHex=o,r.encode=function(t,e){return"hex"===e?o(t):t}},function(t,e,n){"use strict";var r=n(149),i=n(114),o=i.getNAF,a=i.getJSF,u=i.assert;function s(t,e){this.type=t,this.p=new r(e.p,16),this.red=e.prime?r.red(e.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=e.n&&new r(e.n,16),this.g=e.g&&this.pointFromJSON(e.g,e.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function c(t,e){this.curve=t,this.type=e,this.precomputed=null}t.exports=s,s.prototype.point=function(){throw new Error("Not implemented")},s.prototype.validate=function(){throw new Error("Not implemented")},s.prototype._fixedNafMul=function(t,e){u(t.precomputed);var n=t._getDoubles(),r=o(e,1,this._bitLength),i=(1<=a;f--)s=(s<<1)+r[f];c.push(s)}for(var l=this.jpoint(null,null,null),d=this.jpoint(null,null,null),h=i;h>0;h--){for(a=0;a=0;c--){for(var f=0;c>=0&&0===a[c];c--)f++;if(c>=0&&f++,s=s.dblp(f),c<0)break;var l=a[c];u(0!==l),s="affine"===t.type?l>0?s.mixedAdd(i[l-1>>1]):s.mixedAdd(i[-l-1>>1].neg()):l>0?s.add(i[l-1>>1]):s.add(i[-l-1>>1].neg())}return"affine"===t.type?s.toP():s},s.prototype._wnafMulAdd=function(t,e,n,r,i){var u,s,c,f=this._wnafT1,l=this._wnafT2,d=this._wnafT3,h=0;for(u=0;u=1;u-=2){var g=u-1,m=u;if(1===f[g]&&1===f[m]){var b=[e[g],null,null,e[m]];0===e[g].y.cmp(e[m].y)?(b[1]=e[g].add(e[m]),b[2]=e[g].toJ().mixedAdd(e[m].neg())):0===e[g].y.cmp(e[m].y.redNeg())?(b[1]=e[g].toJ().mixedAdd(e[m]),b[2]=e[g].add(e[m].neg())):(b[1]=e[g].toJ().mixedAdd(e[m]),b[2]=e[g].toJ().mixedAdd(e[m].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],y=a(n[g],n[m]);for(h=Math.max(y[0].length,h),d[g]=new Array(h),d[m]=new Array(h),s=0;s=0;u--){for(var x=0;u>=0;){var E=!0;for(s=0;s=0&&x++,S=S.dblp(x),u<0)break;for(s=0;s0?c=l[s][M-1>>1]:M<0&&(c=l[s][-M-1>>1].neg()),S="affine"===c.type?S.mixedAdd(c):S.add(c))}}for(u=0;u=Math.ceil((t.bitLength()+1)/e.step)},c.prototype._getDoubles=function(t,e){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;in)?e=("rmd160"===t?new s:c(t)).update(e).digest():e.length=0;c--)if(f[c]!==l[c])return!1;for(c=f.length-1;c>=0;c--)if(!y(t[u=f[c]],e[u],n,r))return!1;return!0}(t,e,n,r))}return n?t===e:t==e}function _(t){return"[object Arguments]"==Object.prototype.toString.call(t)}function w(t,e){if(!t||!e)return!1;if("[object RegExp]"==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(n){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function S(t,e,n,r){var i;if("function"!==typeof e)throw new TypeError('"block" argument must be a function');"string"===typeof n&&(r=n,n=null),i=function(t){var e;try{t()}catch(n){e=n}return e}(e),r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),t&&!i&&b(i,n,"Missing expected exception"+r);var o="string"===typeof r,u=!t&&i&&!n;if((!t&&a.isError(i)&&o&&w(i,n)||u)&&b(i,n,"Got unwanted exception"+r),t&&i&&n&&!w(i,n)||!t&&i)throw i}d.AssertionError=function(t){this.name="AssertionError",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=function(t){return g(m(t.actual),128)+" "+t.operator+" "+g(m(t.expected),128)}(this),this.generatedMessage=!0);var e=t.stackStartFunction||b;if(Error.captureStackTrace)Error.captureStackTrace(this,e);else{var n=new Error;if(n.stack){var r=n.stack,i=p(e),o=r.indexOf("\n"+i);if(o>=0){var a=r.indexOf("\n",o+1);r=r.substring(a+1)}this.stack=r}}},a.inherits(d.AssertionError,Error),d.fail=b,d.ok=v,d.equal=function(t,e,n){t!=e&&b(t,e,n,"==",d.equal)},d.notEqual=function(t,e,n){t==e&&b(t,e,n,"!=",d.notEqual)},d.deepEqual=function(t,e,n){y(t,e,!1)||b(t,e,n,"deepEqual",d.deepEqual)},d.deepStrictEqual=function(t,e,n){y(t,e,!0)||b(t,e,n,"deepStrictEqual",d.deepStrictEqual)},d.notDeepEqual=function(t,e,n){y(t,e,!1)&&b(t,e,n,"notDeepEqual",d.notDeepEqual)},d.notDeepStrictEqual=function t(e,n,r){y(e,n,!0)&&b(e,n,r,"notDeepStrictEqual",t)},d.strictEqual=function(t,e,n){t!==e&&b(t,e,n,"===",d.strictEqual)},d.notStrictEqual=function(t,e,n){t===e&&b(t,e,n,"!==",d.notStrictEqual)},d.throws=function(t,e,n){S(!0,t,e,n)},d.doesNotThrow=function(t,e,n){S(!1,t,e,n)},d.ifError=function(t){if(t)throw t},d.strict=r((function t(e,n){e||b(e,!0,n,"==",t)}),d,{equal:d.strictEqual,deepEqual:d.deepStrictEqual,notEqual:d.notStrictEqual,notDeepEqual:d.notDeepStrictEqual}),d.strict.strict=d.strict;var O=Object.keys||function(t){var e=[];for(var n in t)u.call(t,n)&&e.push(n);return e}}).call(this,n(59))},function(t,e,n){var r=n(37).Buffer;function i(t){r.isBuffer(t)||(t=r.from(t));for(var e=t.length/4|0,n=new Array(e),i=0;i>>24]^f[p>>>16&255]^l[g>>>8&255]^d[255&m]^e[b++],a=c[p>>>24]^f[g>>>16&255]^l[m>>>8&255]^d[255&h]^e[b++],u=c[g>>>24]^f[m>>>16&255]^l[h>>>8&255]^d[255&p]^e[b++],s=c[m>>>24]^f[h>>>16&255]^l[p>>>8&255]^d[255&g]^e[b++],h=o,p=a,g=u,m=s;return o=(r[h>>>24]<<24|r[p>>>16&255]<<16|r[g>>>8&255]<<8|r[255&m])^e[b++],a=(r[p>>>24]<<24|r[g>>>16&255]<<16|r[m>>>8&255]<<8|r[255&h])^e[b++],u=(r[g>>>24]<<24|r[m>>>16&255]<<16|r[h>>>8&255]<<8|r[255&p])^e[b++],s=(r[m>>>24]<<24|r[h>>>16&255]<<16|r[p>>>8&255]<<8|r[255&g])^e[b++],[o>>>=0,a>>>=0,u>>>=0,s>>>=0]}var u=[0,1,2,4,8,16,32,64,128,27,54],s=function(){for(var t=new Array(256),e=0;e<256;e++)t[e]=e<128?e<<1:e<<1^283;for(var n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],a=0,u=0,s=0;s<256;++s){var c=u^u<<1^u<<2^u<<3^u<<4;c=c>>>8^255&c^99,n[a]=c,r[c]=a;var f=t[a],l=t[f],d=t[l],h=257*t[c]^16843008*c;i[0][a]=h<<24|h>>>8,i[1][a]=h<<16|h>>>16,i[2][a]=h<<8|h>>>24,i[3][a]=h,h=16843009*d^65537*l^257*f^16843008*a,o[0][c]=h<<24|h>>>8,o[1][c]=h<<16|h>>>16,o[2][c]=h<<8|h>>>24,o[3][c]=h,0===a?a=u=1:(a=f^t[t[t[d^f]]],u^=t[t[u]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function c(t){this._key=i(t),this._reset()}c.blockSize=16,c.keySize=32,c.prototype.blockSize=c.blockSize,c.prototype.keySize=c.keySize,c.prototype._reset=function(){for(var t=this._key,e=t.length,n=e+6,r=4*(n+1),i=[],o=0;o>>24,a=s.SBOX[a>>>24]<<24|s.SBOX[a>>>16&255]<<16|s.SBOX[a>>>8&255]<<8|s.SBOX[255&a],a^=u[o/e|0]<<24):e>6&&o%e===4&&(a=s.SBOX[a>>>24]<<24|s.SBOX[a>>>16&255]<<16|s.SBOX[a>>>8&255]<<8|s.SBOX[255&a]),i[o]=i[o-e]^a}for(var c=[],f=0;f>>24]]^s.INV_SUB_MIX[1][s.SBOX[d>>>16&255]]^s.INV_SUB_MIX[2][s.SBOX[d>>>8&255]]^s.INV_SUB_MIX[3][s.SBOX[255&d]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=c},c.prototype.encryptBlockRaw=function(t){return a(t=i(t),this._keySchedule,s.SUB_MIX,s.SBOX,this._nRounds)},c.prototype.encryptBlock=function(t){var e=this.encryptBlockRaw(t),n=r.allocUnsafe(16);return n.writeUInt32BE(e[0],0),n.writeUInt32BE(e[1],4),n.writeUInt32BE(e[2],8),n.writeUInt32BE(e[3],12),n},c.prototype.decryptBlock=function(t){var e=(t=i(t))[1];t[1]=t[3],t[3]=e;var n=a(t,this._invKeySchedule,s.INV_SUB_MIX,s.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},c.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},t.exports.AES=c},function(t,e,n){var r=n(37).Buffer,i=n(358);t.exports=function(t,e,n,o){if(r.isBuffer(t)||(t=r.from(t,"binary")),e&&(r.isBuffer(e)||(e=r.from(e,"binary")),8!==e.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var a=n/8,u=r.alloc(a),s=r.alloc(o||0),c=r.alloc(0);a>0||o>0;){var f=new i;f.update(c),f.update(t),e&&f.update(e),c=f.digest();var l=0;if(a>0){var d=u.length-a;l=Math.min(a,c.length),c.copy(u,d,0,l),a-=l}if(l0){var h=s.length-o,p=Math.min(o,c.length-l);c.copy(s,h,l,l+p),o-=p}}return c.fill(0),{key:u,iv:s}}},function(t,e,n){"use strict";var r=n(150),i=n(116),o=i.getNAF,a=i.getJSF,u=i.assert;function s(t,e){this.type=t,this.p=new r(e.p,16),this.red=e.prime?r.red(e.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=e.n&&new r(e.n,16),this.g=e.g&&this.pointFromJSON(e.g,e.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function c(t,e){this.curve=t,this.type=e,this.precomputed=null}t.exports=s,s.prototype.point=function(){throw new Error("Not implemented")},s.prototype.validate=function(){throw new Error("Not implemented")},s.prototype._fixedNafMul=function(t,e){u(t.precomputed);var n=t._getDoubles(),r=o(e,1,this._bitLength),i=(1<=a;f--)s=(s<<1)+r[f];c.push(s)}for(var l=this.jpoint(null,null,null),d=this.jpoint(null,null,null),h=i;h>0;h--){for(a=0;a=0;c--){for(var f=0;c>=0&&0===a[c];c--)f++;if(c>=0&&f++,s=s.dblp(f),c<0)break;var l=a[c];u(0!==l),s="affine"===t.type?l>0?s.mixedAdd(i[l-1>>1]):s.mixedAdd(i[-l-1>>1].neg()):l>0?s.add(i[l-1>>1]):s.add(i[-l-1>>1].neg())}return"affine"===t.type?s.toP():s},s.prototype._wnafMulAdd=function(t,e,n,r,i){var u,s,c,f=this._wnafT1,l=this._wnafT2,d=this._wnafT3,h=0;for(u=0;u=1;u-=2){var g=u-1,m=u;if(1===f[g]&&1===f[m]){var b=[e[g],null,null,e[m]];0===e[g].y.cmp(e[m].y)?(b[1]=e[g].add(e[m]),b[2]=e[g].toJ().mixedAdd(e[m].neg())):0===e[g].y.cmp(e[m].y.redNeg())?(b[1]=e[g].toJ().mixedAdd(e[m]),b[2]=e[g].add(e[m].neg())):(b[1]=e[g].toJ().mixedAdd(e[m]),b[2]=e[g].toJ().mixedAdd(e[m].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],y=a(n[g],n[m]);for(h=Math.max(y[0].length,h),d[g]=new Array(h),d[m]=new Array(h),s=0;s=0;u--){for(var x=0;u>=0;){var E=!0;for(s=0;s=0&&x++,S=S.dblp(x),u<0)break;for(s=0;s0?c=l[s][M-1>>1]:M<0&&(c=l[s][-M-1>>1].neg()),S="affine"===c.type?S.mixedAdd(c):S.add(c))}}for(u=0;u=Math.ceil((t.bitLength()+1)/e.step)},c.prototype._getDoubles=function(t,e){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function c(t,e){this.curve=t,this.type=e,this.precomputed=null}t.exports=s,s.prototype.point=function(){throw new Error("Not implemented")},s.prototype.validate=function(){throw new Error("Not implemented")},s.prototype._fixedNafMul=function(t,e){u(t.precomputed);var n=t._getDoubles(),r=o(e,1,this._bitLength),i=(1<=a;f--)s=(s<<1)+r[f];c.push(s)}for(var l=this.jpoint(null,null,null),d=this.jpoint(null,null,null),h=i;h>0;h--){for(a=0;a=0;c--){for(var f=0;c>=0&&0===a[c];c--)f++;if(c>=0&&f++,s=s.dblp(f),c<0)break;var l=a[c];u(0!==l),s="affine"===t.type?l>0?s.mixedAdd(i[l-1>>1]):s.mixedAdd(i[-l-1>>1].neg()):l>0?s.add(i[l-1>>1]):s.add(i[-l-1>>1].neg())}return"affine"===t.type?s.toP():s},s.prototype._wnafMulAdd=function(t,e,n,r,i){var u,s,c,f=this._wnafT1,l=this._wnafT2,d=this._wnafT3,h=0;for(u=0;u=1;u-=2){var g=u-1,m=u;if(1===f[g]&&1===f[m]){var b=[e[g],null,null,e[m]];0===e[g].y.cmp(e[m].y)?(b[1]=e[g].add(e[m]),b[2]=e[g].toJ().mixedAdd(e[m].neg())):0===e[g].y.cmp(e[m].y.redNeg())?(b[1]=e[g].toJ().mixedAdd(e[m]),b[2]=e[g].add(e[m].neg())):(b[1]=e[g].toJ().mixedAdd(e[m]),b[2]=e[g].toJ().mixedAdd(e[m].neg()));var v=[-3,-1,-5,-7,0,7,5,1,3],y=a(n[g],n[m]);for(h=Math.max(y[0].length,h),d[g]=new Array(h),d[m]=new Array(h),s=0;s=0;u--){for(var x=0;u>=0;){var E=!0;for(s=0;s=0&&x++,S=S.dblp(x),u<0)break;for(s=0;s0?c=l[s][M-1>>1]:M<0&&(c=l[s][-M-1>>1].neg()),S="affine"===c.type?S.mixedAdd(c):S.add(c))}}for(u=0;u=Math.ceil((t.bitLength()+1)/e.step)},c.prototype._getDoubles=function(t,e){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i"},t.exports=h}).call(this,n(29).Buffer)},function(t,e,n){"use strict";(function(e){var r=n(49),i=n(364),o=n(29),a="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz".split(""),u=function t(n){if(!(this instanceof t))return new t(n);if(e.isBuffer(n)){var r=n;this.fromBuffer(r)}else if("string"===typeof n){var i=n;this.fromString(i)}else n&&this.set(n)};u.validCharacters=function(t){return o.Buffer.isBuffer(t)&&(t=t.toString()),r.every(r.map(t,(function(t){return r.includes(a,t)})))},u.prototype.set=function(t){return this.buf=t.buf||this.buf||void 0,this},u.encode=function(t){if(!o.Buffer.isBuffer(t))throw new Error("Input should be a buffer");return i.encode(t)},u.decode=function(t){if("string"!==typeof t)throw new Error("Input should be a string");return e.from(i.decode(t))},u.prototype.fromBuffer=function(t){return this.buf=t,this},u.prototype.fromString=function(t){var e=u.decode(t);return this.buf=e,this},u.prototype.toBuffer=function(){return this.buf},u.prototype.toString=function(){return u.encode(this.buf)},t.exports=u}).call(this,n(29).Buffer)},function(t,e,n){"use strict";(function(e){var r=n(49),i=n(52),o=n(63),a=n(79);function u(t){if(!(this instanceof u))return new u(t);var e;if(r.isNumber(t))e=t;else{if(!r.isString(t))throw new TypeError('Unrecognized num type: "'+typeof t+'" for Opcode');e=u.map[t]}return a.defineImmutable(this,{num:e}),this}for(var s in u.fromBuffer=function(t){return i.checkArgument(o.isBuffer(t)),new u(Number("0x"+t.toString("hex")))},u.fromNumber=function(t){return i.checkArgument(r.isNumber(t)),new u(t)},u.fromString=function(t){i.checkArgument(r.isString(t));var e=u.map[t];if("undefined"===typeof e)throw new TypeError("Invalid opcodestr");return new u(e)},u.prototype.toHex=function(){return this.num.toString(16)},u.prototype.toBuffer=function(){return e.from(this.toHex(),"hex")},u.prototype.toNumber=function(){return this.num},u.prototype.toString=function(){var t=u.reverseMap[this.num];if("undefined"===typeof t)throw new Error("Opcode does not have a string representation");return t},u.smallInt=function(t){return i.checkArgument(r.isNumber(t),"Invalid Argument: n should be number"),i.checkArgument(t>=0&&t<=16,"Invalid Argument: n must be between 0 and 16"),0===t?u("OP_0"):new u(u.map.OP_1+t-1)},u.map={OP_FALSE:0,OP_0:0,OP_PUSHDATA1:76,OP_PUSHDATA2:77,OP_PUSHDATA4:78,OP_1NEGATE:79,OP_RESERVED:80,OP_TRUE:81,OP_1:81,OP_2:82,OP_3:83,OP_4:84,OP_5:85,OP_6:86,OP_7:87,OP_8:88,OP_9:89,OP_10:90,OP_11:91,OP_12:92,OP_13:93,OP_14:94,OP_15:95,OP_16:96,OP_NOP:97,OP_VER:98,OP_IF:99,OP_NOTIF:100,OP_VERIF:101,OP_VERNOTIF:102,OP_ELSE:103,OP_ENDIF:104,OP_VERIFY:105,OP_RETURN:106,OP_TOALTSTACK:107,OP_FROMALTSTACK:108,OP_2DROP:109,OP_2DUP:110,OP_3DUP:111,OP_2OVER:112,OP_2ROT:113,OP_2SWAP:114,OP_IFDUP:115,OP_DEPTH:116,OP_DROP:117,OP_DUP:118,OP_NIP:119,OP_OVER:120,OP_PICK:121,OP_ROLL:122,OP_ROT:123,OP_SWAP:124,OP_TUCK:125,OP_CAT:126,OP_SPLIT:127,OP_NUM2BIN:128,OP_BIN2NUM:129,OP_SIZE:130,OP_INVERT:131,OP_AND:132,OP_OR:133,OP_XOR:134,OP_EQUAL:135,OP_EQUALVERIFY:136,OP_RESERVED1:137,OP_RESERVED2:138,OP_1ADD:139,OP_1SUB:140,OP_2MUL:141,OP_2DIV:142,OP_NEGATE:143,OP_ABS:144,OP_NOT:145,OP_0NOTEQUAL:146,OP_ADD:147,OP_SUB:148,OP_MUL:149,OP_DIV:150,OP_MOD:151,OP_LSHIFT:152,OP_RSHIFT:153,OP_BOOLAND:154,OP_BOOLOR:155,OP_NUMEQUAL:156,OP_NUMEQUALVERIFY:157,OP_NUMNOTEQUAL:158,OP_LESSTHAN:159,OP_GREATERTHAN:160,OP_LESSTHANOREQUAL:161,OP_GREATERTHANOREQUAL:162,OP_MIN:163,OP_MAX:164,OP_WITHIN:165,OP_RIPEMD160:166,OP_SHA1:167,OP_SHA256:168,OP_HASH160:169,OP_HASH256:170,OP_CODESEPARATOR:171,OP_CHECKSIG:172,OP_CHECKSIGVERIFY:173,OP_CHECKMULTISIG:174,OP_CHECKMULTISIGVERIFY:175,OP_NOP2:177,OP_CHECKLOCKTIMEVERIFY:177,OP_NOP3:178,OP_CHECKSEQUENCEVERIFY:178,OP_NOP1:176,OP_NOP4:179,OP_NOP5:180,OP_NOP6:181,OP_NOP7:182,OP_NOP8:183,OP_NOP9:184,OP_NOP10:185,OP_CHECKDATASIG:186,OP_CHECKDATASIGVERIFY:187,OP_REVERSEBYTES:188,OP_PREFIX_BEGIN:240,OP_PREFIX_END:241,OP_SMALLINTEGER:250,OP_PUBKEYS:251,OP_PUBKEYHASH:253,OP_PUBKEY:254,OP_INVALIDOPCODE:255},u.reverseMap=[],u.map)u.reverseMap[u.map[s]]=s;r.extend(u,u.map),u.isSmallIntOp=function(t){return t instanceof u&&(t=t.toNumber()),t===u.map.OP_0||t>=u.map.OP_1&&t<=u.map.OP_16},u.prototype.inspect=function(){return""},t.exports=u}).call(this,n(29).Buffer)},function(t,e,n){t.exports=n(387),t.exports.Input=n(388),t.exports.Output=n(153),t.exports.UnspentOutput=n(516),t.exports.Signature=n(207),t.exports.Sighash=n(152)},function(t,e,n){"use strict";(function(e){var r=n(49),i=n(78),o=n(63),a=n(160),u=n(134),s=n(84),c=(n(79),n(52)),f=function t(e){if(!(this instanceof t))return new t(e);var n=t._from(e);return this.version=n.version,this.prevHash=n.prevHash,this.merkleRoot=n.merkleRoot,this.time=n.time,this.timestamp=n.time,this.bits=n.bits,this.nonce=n.nonce,n.hash&&c.checkState(this.hash===n.hash,"Argument object hash property does not match block hash."),this};f._from=function(t){var e={};if(o.isBuffer(t))e=f._fromBufferReader(a(t));else{if(!r.isObject(t))throw new TypeError("Unrecognized argument for BlockHeader");e=f._fromObject(t)}return e},f._fromObject=function(t){c.checkArgument(t,"data is required");var n=t.prevHash,i=t.merkleRoot;return r.isString(t.prevHash)&&(n=o.reverse(e.from(t.prevHash,"hex"))),r.isString(t.merkleRoot)&&(i=o.reverse(e.from(t.merkleRoot,"hex"))),{hash:t.hash,version:t.version,prevHash:n,merkleRoot:i,time:t.time,timestamp:t.time,bits:t.bits,nonce:t.nonce}},f.fromObject=function(t){var e=f._fromObject(t);return new f(e)},f.fromRawBlock=function(t){o.isBuffer(t)||(t=e.from(t,"binary"));var n=a(t);n.pos=f.Constants.START_OF_HEADER;var r=f._fromBufferReader(n);return new f(r)},f.fromBuffer=function(t){var e=f._fromBufferReader(a(t));return new f(e)},f.fromString=function(t){var n=e.from(t,"hex");return f.fromBuffer(n)},f._fromBufferReader=function(t){var e={};return e.version=t.readInt32LE(),e.prevHash=t.read(32),e.merkleRoot=t.read(32),e.time=t.readUInt32LE(),e.bits=t.readUInt32LE(),e.nonce=t.readUInt32LE(),e},f.fromBufferReader=function(t){var e=f._fromBufferReader(t);return new f(e)},f.prototype.toObject=f.prototype.toJSON=function(){return{hash:this.hash,version:this.version,prevHash:o.reverse(this.prevHash).toString("hex"),merkleRoot:o.reverse(this.merkleRoot).toString("hex"),time:this.time,bits:this.bits,nonce:this.nonce}},f.prototype.toBuffer=function(){return this.toBufferWriter().concat()},f.prototype.toString=function(){return this.toBuffer().toString("hex")},f.prototype.toBufferWriter=function(t){return t||(t=new u),t.writeInt32LE(this.version),t.write(this.prevHash),t.write(this.merkleRoot),t.writeUInt32LE(this.time),t.writeUInt32LE(this.bits),t.writeUInt32LE(this.nonce),t},f.prototype.getTargetDifficulty=function(t){t=t||this.bits;for(var e=new i(16777215&t),n=8*((t>>>24)-3);n-- >0;)e=e.mul(new i(2));return e},f.prototype.getDifficulty=function(){var t=this.getTargetDifficulty(486604799).mul(new i(Math.pow(10,8))),e=this.getTargetDifficulty(),n=t.div(e).toString(10),r=n.length-8;return n=n.slice(0,r)+"."+n.slice(r),parseFloat(n)},f.prototype._getHash=function(){var t=this.toBuffer();return s.sha256sha256(t)};var l={configurable:!1,enumerable:!0,get:function(){return this._id||(this._id=a(this._getHash()).readReverse().toString("hex")),this._id},set:r.noop};Object.defineProperty(f.prototype,"id",l),Object.defineProperty(f.prototype,"hash",l),f.prototype.validTimestamp=function(){var t=Math.round((new Date).getTime()/1e3);return!(this.time>t+f.Constants.MAX_TIME_OFFSET)},f.prototype.validProofOfWork=function(){var t=new i(this.id,"hex"),e=this.getTargetDifficulty();return!(t.cmp(e)>0)},f.prototype.inspect=function(){return""},f.Constants={START_OF_HEADER:8,MAX_TIME_OFFSET:7200,LARGEST_HASH:new i("10000000000000000000000000000000000000000000000000000000000000000","hex")},t.exports=f}).call(this,n(29).Buffer)},function(t,e,n){"use strict";n.r(e);var r=n(304);n.d(e,"default",(function(){return r.a}))},function(t,e,n){"use strict";n.r(e);var r=n(395);n.d(e,"default",(function(){return r.a}))},function(t,e,n){"use strict";var r=n(4),i=n(17),o=n(1),a=n.n(o),u=n(15),s=(n(13),n(126)),c=n.n(s),f=n(976);function l(t,e){var n={};return Object.keys(t).forEach((function(r){-1===e.indexOf(r)&&(n[r]=t[r])})),n}var d=n(136);e.a=function(t){var e=function(t){return function(e){var n,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=o.name,d=Object(i.a)(o,["name"]),h=s,p="function"===typeof e?function(t){return{root:function(n){return e(Object(r.a)({theme:t},n))}}}:{root:e},g=Object(f.a)(p,Object(r.a)({Component:t,name:s||t.displayName,classNamePrefix:h},d));e.filterProps&&(n=e.filterProps,delete e.filterProps),e.propTypes&&(e.propTypes,delete e.propTypes);var m=a.a.forwardRef((function(e,o){var s=e.children,c=e.className,f=e.clone,d=e.component,h=Object(i.a)(e,["children","className","clone","component"]),p=g(e),m=Object(u.a)(p.root,c),b=h;if(n&&(b=l(b,n)),f)return a.a.cloneElement(s,Object(r.a)({className:Object(u.a)(s.props.className,m)},b));if("function"===typeof s)return s(Object(r.a)({className:m},b));var v=d||t;return a.a.createElement(v,Object(r.a)({ref:o,className:m},b),s)}));return c()(m,t),m}}(t);return function(t,n){return e(t,Object(r.a)({defaultTheme:d.a},n))}}},function(t,e,n){"use strict";var r=n(1),i=n.n(r).a.createContext(null);e.a=i},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(245);function i(t,e){if(t){if("string"===typeof t)return Object(r.a)(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Object(r.a)(t,e):void 0}}},function(t,e,n){"use strict";var r="function"===typeof Symbol&&Symbol.for;e.a=r?Symbol.for("mui.nested"):"__THEME_NESTED__"},function(t,e,n){"use strict";function r(t){for(var e="https://material-ui.com/production-error/?code="+t,n=1;n2)return"[Array]";for(var n=Math.min(10,t.length),r=t.length-n,i=[],o=0;o1&&i.push("... ".concat(r," more items"));return"["+i.join(", ")+"]"}(t,n);return function(t,e){var n=Object.keys(t);if(0===n.length)return"{}";if(e.length>2)return"["+function(t){var e=Object.prototype.toString.call(t).replace(/^\[object /,"").replace(/]$/,"");if("Object"===e&&"function"===typeof t.constructor){var n=t.constructor.name;if("string"===typeof n&&""!==n)return n}return e}(t)+"]";return"{ "+n.map((function(n){return n+": "+a(t[n],e)})).join(", ")+" }"}(t,n)}(t,e);default:return String(t)}}},function(t,e,n){"use strict";function r(t){var e=t.split(/\r\n|[\n\r]/g),n=function(t){for(var e=null,n=1;n0&&o(e[0]);)e.shift();for(;e.length>0&&o(e[e.length-1]);)e.pop();return e.join("\n")}function i(t){for(var e=0;e1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=-1===t.indexOf("\n"),i=" "===t[0]||"\t"===t[0],o='"'===t[t.length-1],a=!r||o||n,u="";return!a||r&&i||(u+="\n"+e),u+=e?t.replace(/\n/g,"\n"+e):t,a&&(u+="\n"),'"""'+u.replace(/"""/g,'\\"""')+'"""'}n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return a}))},function(t,e,n){"use strict";var r=n(61),i=Object.prototype.toString,o=function(){return"[object Arguments]"===i.call(arguments)?function(t){return"[object Arguments]"===i.call(t)}:function(t){return Object(r.a)("callee",t)}}();e.a=o},function(t,e,n){"use strict";function r(t,e){for(var n=0,r=e.length,i=[];n=c?s:(n.setFullYear(s.getFullYear(),s.getMonth(),u),n)}},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(30),i=n(307),o=n(22);function a(t,e){Object(o.a)(2,arguments);var n=Object(r.a)(e);return Object(i.a)(t,-n)}},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(30),i=n(25),o=n(22);function a(t,e){Object(o.a)(2,arguments);var n=Object(i.a)(t),a=Object(r.a)(e);return isNaN(a)?new Date(NaN):a?(n.setDate(n.getDate()+a),n):n}},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n(25),i=n(22);function o(t){Object(i.a)(1,arguments);var e=Object(r.a)(t);return e.setHours(23,59,59,999),e}},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(219),i=n(22),o=n(220);function a(t,e,n){Object(i.a)(2,arguments);var a=Object(r.a)(t,e)/1e3;return Object(o.a)(null===n||void 0===n?void 0:n.roundingMethod)(a)}},function(t,e,n){"use strict";function r(t,e){switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});case"PPPP":default:return e.date({width:"full"})}}function i(t,e){switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});case"pppp":default:return e.time({width:"full"})}}var o={p:i,P:function(t,e){var n,o=t.match(/(P+)(p+)?/),a=o[1],u=o[2];if(!u)return r(t,e);switch(a){case"P":n=e.dateTime({width:"short"});break;case"PP":n=e.dateTime({width:"medium"});break;case"PPP":n=e.dateTime({width:"long"});break;case"PPPP":default:n=e.dateTime({width:"full"})}return n.replace("{{date}}",r(a,e)).replace("{{time}}",i(u,e))}};e.a=o},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(25),i=n(142),o=n(22);function a(t){Object(o.a)(1,arguments);var e=Object(r.a)(t),n=e.getUTCFullYear(),a=new Date(0);a.setUTCFullYear(n+1,0,4),a.setUTCHours(0,0,0,0);var u=Object(i.a)(a),s=new Date(0);s.setUTCFullYear(n,0,4),s.setUTCHours(0,0,0,0);var c=Object(i.a)(s);return e.getTime()>=u.getTime()?n+1:e.getTime()>=c.getTime()?n:n-1}},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(313);function i(t){return Object(r.a)({},t)}},function(t,e,n){"use strict";function r(t,e){if(null==t)throw new TypeError("assign requires that input parameter not be null or undefined");for(var n in e=e||{})Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n(30),i=n(109),o=n(224),a=36e5,u={dateTimeDelimeter:/[T ]/,plainTime:/:/,timeZoneDelimeter:/[Z ]/i,YY:/^(\d{2})$/,YYY:[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],YYYY:/^(\d{4})/,YYYYY:[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],MM:/^-(\d{2})$/,DDD:/^-?(\d{3})$/,MMDD:/^-?(\d{2})-?(\d{2})$/,Www:/^-?W(\d{2})$/,WwwD:/^-?W(\d{2})-?(\d{1})$/,HH:/^(\d{2}([.,]\d*)?)$/,HHMM:/^(\d{2}):?(\d{2}([.,]\d*)?)$/,HHMMSS:/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,timezone:/([Z+-].*| UTC|(?:[a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?))$/};function s(t,e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");if(null===t)return new Date(NaN);var n=e||{},a=null==n.additionalDigits?2:Object(r.a)(n.additionalDigits);if(2!==a&&1!==a&&0!==a)throw new RangeError("additionalDigits must be 0, 1 or 2");if(t instanceof Date||"object"===typeof t&&"[object Date]"===Object.prototype.toString.call(t))return new Date(t.getTime());if("number"===typeof t||"[object Number]"===Object.prototype.toString.call(t))return new Date(t);if("string"!==typeof t&&"[object String]"!==Object.prototype.toString.call(t))return new Date(NaN);var u=c(t),s=f(u.date,a),h=s.year,p=s.restDateString,g=l(p,h);if(isNaN(g))return new Date(NaN);if(g){var m,b=g.getTime(),v=0;if(u.time&&(v=d(u.time),isNaN(v)))return new Date(NaN);if(u.timezone||n.timeZone){if(m=Object(o.a)(u.timezone||n.timeZone,new Date(b+v)),isNaN(m))return new Date(NaN)}else m=Object(i.a)(new Date(b+v)),m=Object(i.a)(new Date(b+v+m));return new Date(b+v+m)}return new Date(NaN)}function c(t){var e,n={},r=t.split(u.dateTimeDelimeter);if(u.plainTime.test(r[0])?(n.date=null,e=r[0]):(n.date=r[0],e=r[1],n.timezone=r[2],u.timeZoneDelimeter.test(n.date)&&(n.date=t.split(u.timeZoneDelimeter)[0],e=t.substr(n.date.length,t.length))),e){var i=u.timezone.exec(e);i?(n.time=e.replace(i[1],""),n.timezone=i[1]):n.time=e}return n}function f(t,e){var n,r=u.YYY[e],i=u.YYYYY[e];if(n=u.YYYY.exec(t)||i.exec(t)){var o=n[1];return{year:parseInt(o,10),restDateString:t.slice(o.length)}}if(n=u.YY.exec(t)||r.exec(t)){var a=n[1];return{year:100*parseInt(a,10),restDateString:t.slice(a.length)}}return{year:null}}function l(t,e){if(null===e)return null;var n,r,i,o;if(0===t.length)return(r=new Date(0)).setUTCFullYear(e),r;if(n=u.MM.exec(t))return r=new Date(0),b(e,i=parseInt(n[1],10)-1)?(r.setUTCFullYear(e,i),r):new Date(NaN);if(n=u.DDD.exec(t)){r=new Date(0);var a=parseInt(n[1],10);return function(t,e){if(e<1)return!1;var n=m(t);if(n&&e>366)return!1;if(!n&&e>365)return!1;return!0}(e,a)?(r.setUTCFullYear(e,0,a),r):new Date(NaN)}if(n=u.MMDD.exec(t)){r=new Date(0),i=parseInt(n[1],10)-1;var s=parseInt(n[2],10);return b(e,i,s)?(r.setUTCFullYear(e,i,s),r):new Date(NaN)}if(n=u.Www.exec(t))return v(e,o=parseInt(n[1],10)-1)?h(e,o):new Date(NaN);if(n=u.WwwD.exec(t)){o=parseInt(n[1],10)-1;var c=parseInt(n[2],10)-1;return v(e,o,c)?h(e,o,c):new Date(NaN)}return null}function d(t){var e,n,r;if(e=u.HH.exec(t))return y(n=parseFloat(e[1].replace(",",".")))?n%24*a:NaN;if(e=u.HHMM.exec(t))return y(n=parseInt(e[1],10),r=parseFloat(e[2].replace(",",".")))?n%24*a+6e4*r:NaN;if(e=u.HHMMSS.exec(t)){n=parseInt(e[1],10),r=parseInt(e[2],10);var i=parseFloat(e[3].replace(",","."));return y(n,r,i)?n%24*a+6e4*r+1e3*i:NaN}return null}function h(t,e,n){e=e||0,n=n||0;var r=new Date(0);r.setUTCFullYear(t,0,4);var i=7*e+n+1-(r.getUTCDay()||7);return r.setUTCDate(r.getUTCDate()+i),r}var p=[31,28,31,30,31,30,31,31,30,31,30,31],g=[31,29,31,30,31,30,31,31,30,31,30,31];function m(t){return t%400===0||t%4===0&&t%100!==0}function b(t,e,n){if(e<0||e>11)return!1;if(null!=n){if(n<1)return!1;var r=m(t);if(r&&n>g[e])return!1;if(!r&&n>p[e])return!1}return!0}function v(t,e,n){return!(e<0||e>52)&&(null==n||!(n<0||n>6))}function y(t,e,n){return(null==t||!(t<0||t>=25))&&((null==e||!(e<0||e>=60))&&(null==n||!(n<0||n>=60)))}},function(t,e,n){"use strict";var r=n(16),i=Object(r.a)((function(t,e){return e>t?e:t}));e.a=i},function(t,e,n){"use strict";var r=n(16),i=n(97),o=n(536),a=Object(r.a)((function(t,e){return Object(i.a)(Object(o.a)(t),e)}));e.a=a},function(t,e,n){"use strict";var r=n(1),i=r.createContext();e.a=i},function(t,e,n){(function(r){var i,o,a;!function(r){"use strict";"object"===typeof t.exports?t.exports=r(n(434),n(260),n(435),n(436),n(129),n(130),n(198)):null!=n(148)?(o=[n(434),n(260),n(435),n(436),n(129),n(130),n(198)],void 0===(a="function"===typeof(i=r)?i.apply(e,o):i)||(t.exports=a)):self.sanctuary=r(self.sanctuaryDef,self.sanctuaryEither,self.sanctuaryMaybe,self.sanctuaryPair,self.sanctuaryShow,self.sanctuaryTypeClasses,self.sanctuaryTypeIdentifiers)}((function(t,e,i,o,a,u,s){"use strict";if("undefined"!==typeof __doctest){__doctest.require("sanctuary-descending"),__doctest.require("./test/internal/List").Nil,__doctest.require("./test/internal/List").Cons;var c=__doctest.require("./test/internal/Sum");(function(e){var n=e.create({checkTypes:!0,env:e.env.concat([__doctest.require("./test/internal/List").Type(t.Unknown),c.Type])});n.env=e.env})(n(318))}var f=e.Left,l=e.Right,d=i.Nothing,h=i.Just;function p(t){return function(e){return function(n){return t(e(n))}}}function g(t){return function(e){return function(n){return t(n)(e)}}}function m(t){return p((function(e){return t in e?h(e[t]):d}))(y)}function b(t){return function(e){return e[t]()}}function v(t){return function(e){return function(n){return n[t](e)}}}function y(t){return null==t?Object.create(null):Object(t)}var _=t.TypeVariable("a"),w=t.TypeVariable("b"),S=t.TypeVariable("c"),O=t.TypeVariable("d"),x=t.TypeVariable("e"),E=t.TypeVariable("g"),M=t.TypeVariable("r"),T=t.UnaryTypeVariable("f"),$=t.UnaryTypeVariable("m"),A=t.UnaryTypeVariable("t"),k=t.UnaryTypeVariable("w"),C=t.BinaryTypeVariable("p"),I=t.BinaryTypeVariable("s"),P=t.UnaryType("TypeRep")("https://github.com/fantasyland/fantasy-land#type-representatives")([])((function(e){return t.test([])(t.AnyFunction)(e)||null!=e&&t.test([])(t.String)(e["@@type"])}))(V([])),N=t.RecordType({checkTypes:t.Boolean,env:t.Array(t.Any)}),R={};function j(n){var r=t.create(n),o={env:n.env,is:r("is")({})([t.Type,t.Any,t.Boolean])(t.test(n.env)),Maybe:i,Nothing:d,Either:e};return Object.keys(R).forEach((function(t){o[t]=r(t)(R[t].consts)(R[t].types)(R[t].impl)})),o.unchecked=n.checkTypes?j({checkTypes:!1,env:n.env}):o,o}function D(t){return function(e){return u.equals(t,e)}}function L(t){return function(e){return u.gt(e,t)}}function F(t){return function(e){return u.filter(t,e)}}function B(t){return function(e){return u.reject(t,e)}}function U(t){return function(e){return u.map(t,e)}}function z(t){return function(e){return function(n){return u.reduce((function(e,n){return t(e)(n)}),e,n)}}}function H(t){return t}function V(t){return function(e){return t}}function q(t){return function(e){return e(t)}}function W(t){return function(e){return function(n){return t(e,n)}}}function G(t){return function(e){return function(n){return function(r){return t(e,n,r)}}}}function K(t){return function(e){return function(n){return function(r){return function(i){return t(e,n,r,i)}}}}}function Y(t){return function(e){return t(e.fst)(e.snd)}}function Z(t){return t.isJust}function Q(t){return function(e){return function(n){return n.isJust?e(n.value):t}}}function X(t){return function(e){return function(n){return n.isJust?e(n.value):t()}}}function J(t){return U(ht("value"))(F(Z)(t))}function tt(t){return t.isLeft}function et(t){return t.isRight}function nt(t){return function(e){return function(n){return(n.isLeft?t:e)(n.value)}}}function rt(t){return function(e){try{return l(t(e))}catch(n){return f(n)}}}function it(t){return t.isLeft?d:h(t.value)}function ot(t){return!t}function at(t){return function(e){return function(n){return function(r){return(t(r)?e:n)(r)}}}}function ut(t,e){return function(n){return function(r){if(n<0)return d;if(Array.isArray(r))return n<=r.length?h(t(n,r)):d;var i=u.reduce((function(t,n){return u.map((function(t){var r=t.fst,i=t.snd;return o(r-1)(e(r,i,n))}),t)}),h(o(n)(u.empty(r.constructor))),r);return u.map(o.snd,u.reject(p(L(0))(o.fst),i))}}}R.create={consts:{},types:[N,t.Object],impl:j},R.type={consts:{},types:[t.Any,t.RecordType({namespace:t.Maybe(t.String),name:t.String,version:t.NonNegativeInteger})],impl:function(t){var e=s.parse(s(t));return e.namespace=u.reject(D(null),h(e.namespace)),e}},R.show={consts:{},types:[t.Any,t.String],impl:a},R.equals={consts:{a:[u.Setoid]},types:[_,_,t.Boolean],impl:D},R.lt={consts:{a:[u.Ord]},types:[_,_,t.Boolean],impl:function(t){return function(e){return u.lt(e,t)}}},R.lte={consts:{a:[u.Ord]},types:[_,_,t.Boolean],impl:function(t){return function(e){return u.lte(e,t)}}},R.gt={consts:{a:[u.Ord]},types:[_,_,t.Boolean],impl:L},R.gte={consts:{a:[u.Ord]},types:[_,_,t.Boolean],impl:function(t){return function(e){return u.gte(e,t)}}},R.min={consts:{a:[u.Ord]},types:[_,_,_],impl:W(u.min)},R.max={consts:{a:[u.Ord]},types:[_,_,_],impl:W(u.max)},R.clamp={consts:{a:[u.Ord]},types:[_,_,_,_],impl:G(u.clamp)},R.id={consts:{c:[u.Category]},types:[P(S),S],impl:u.id},R.concat={consts:{a:[u.Semigroup]},types:[_,_,_],impl:W(u.concat)},R.empty={consts:{a:[u.Monoid]},types:[P(_),_],impl:u.empty},R.invert={consts:{g:[u.Group]},types:[E,E],impl:u.invert},R.filter={consts:{f:[u.Filterable]},types:[t.Predicate(_),T(_),T(_)],impl:F},R.reject={consts:{f:[u.Filterable]},types:[t.Predicate(_),T(_),T(_)],impl:B},R.map={consts:{f:[u.Functor]},types:[t.Fn(_)(w),T(_),T(w)],impl:U},R.flip={consts:{f:[u.Functor]},types:[T(t.Fn(_)(w)),_,T(w)],impl:W(u.flip)},R.bimap={consts:{p:[u.Bifunctor]},types:[t.Fn(_)(w),t.Fn(S)(O),C(_)(S),C(w)(O)],impl:G(u.bimap)},R.mapLeft={consts:{p:[u.Bifunctor]},types:[t.Fn(_)(w),C(_)(S),C(w)(S)],impl:W(u.mapLeft)},R.promap={consts:{p:[u.Profunctor]},types:[t.Fn(_)(w),t.Fn(S)(O),C(w)(S),C(_)(O)],impl:G(u.promap)},R.alt={consts:{f:[u.Alt]},types:[T(_),T(_),T(_)],impl:function(t){return function(e){return u.alt(e,t)}}},R.zero={consts:{f:[u.Plus]},types:[P(T(_)),T(_)],impl:u.zero},R.reduce={consts:{f:[u.Foldable]},types:[t.Fn(_)(t.Fn(w)(_)),_,T(w),_],impl:z},R.traverse={consts:{f:[u.Applicative],t:[u.Traversable]},types:[P(T(w)),t.Fn(_)(T(w)),A(_),T(A(w))],impl:G(u.traverse)},R.sequence={consts:{f:[u.Applicative],t:[u.Traversable]},types:[P(T(_)),A(T(_)),T(A(_))],impl:W(u.sequence)},R.ap={consts:{f:[u.Apply]},types:[T(t.Fn(_)(w)),T(_),T(w)],impl:W(u.ap)},R.lift2={consts:{f:[u.Apply]},types:[t.Fn(_)(t.Fn(w)(S)),T(_),T(w),T(S)],impl:G(u.lift2)},R.lift3={consts:{f:[u.Apply]},types:[t.Fn(_)(t.Fn(w)(t.Fn(S)(O))),T(_),T(w),T(S),T(O)],impl:K(u.lift3)},R.apFirst={consts:{f:[u.Apply]},types:[T(_),T(w),T(_)],impl:W(u.apFirst)},R.apSecond={consts:{f:[u.Apply]},types:[T(_),T(w),T(w)],impl:W(u.apSecond)},R.of={consts:{f:[u.Applicative]},types:[P(T(_)),_,T(_)],impl:function(t){return function(e){return u.of(t,e)}}},R.chain={consts:{m:[u.Chain]},types:[t.Fn(_)($(w)),$(_),$(w)],impl:W(u.chain)},R.join={consts:{m:[u.Chain]},types:[$($(_)),$(_)],impl:u.join},R.chainRec={consts:{m:[u.ChainRec]},types:[P($(w)),t.Fn(_)($(t.Either(_)(w))),_,$(w)],impl:function(t){return function(e){return function(e){return u.chainRec(t,n,e)};function n(t,n,r){return u.map(nt(t)(n),e(r))}}}},R.extend={consts:{w:[u.Extend]},types:[t.Fn(k(_))(w),k(_),k(w)],impl:W(u.extend)},R.duplicate={consts:{w:[u.Extend]},types:[k(_),k(k(_))],impl:u.duplicate},R.extract={consts:{w:[u.Comonad]},types:[k(_),_],impl:u.extract},R.contramap={consts:{f:[u.Contravariant]},types:[t.Fn(w)(_),T(_),T(w)],impl:W(u.contramap)},R.I={consts:{},types:[_,_],impl:H},R.K={consts:{},types:[_,w,_],impl:V},R.T={consts:{},types:[_,t.Fn(_)(w),w],impl:q},R.curry2={consts:{},types:[t.Function([_,w,S]),_,w,S],impl:W},R.curry3={consts:{},types:[t.Function([_,w,S,O]),_,w,S,O],impl:G},R.curry4={consts:{},types:[t.Function([_,w,S,O,x]),_,w,S,O,x],impl:K},R.curry5={consts:{},types:[t.Function([_,w,S,O,x,M]),_,w,S,O,x,M],impl:function(t){return function(e){return function(n){return function(r){return function(i){return function(o){return t(e,n,r,i,o)}}}}}}},R.compose={consts:{s:[u.Semigroupoid]},types:[I(w)(S),I(_)(w),I(_)(S)],impl:W(u.compose)},R.pipe={consts:{f:[u.Foldable]},types:[T(t.Fn(t.Any)(t.Any)),_,w],impl:function(t){return function(e){return z(q)(e)(t)}}},R.pipeK={consts:{f:[u.Foldable],m:[u.Chain]},types:[T(t.Fn(t.Any)($(t.Any))),$(_),$(w)],impl:function(t){return function(e){return u.reduce((function(t,e){return u.chain(e,t)}),e,t)}}},R.on={consts:{},types:[t.Fn(w)(t.Fn(w)(S)),t.Fn(_)(w),_,_,S],impl:function(t){return function(e){return function(n){return function(r){return t(e(n))(e(r))}}}}},R.Pair={consts:{},types:[_,w,t.Pair(_)(w)],impl:o},R.pair={consts:{},types:[t.Fn(_)(t.Fn(w)(S)),t.Pair(_)(w),S],impl:Y},R.fst={consts:{},types:[t.Pair(_)(w),_],impl:Y(V)},R.snd={consts:{},types:[t.Pair(_)(w),w],impl:Y(g(V))},R.swap={consts:{},types:[t.Pair(_)(w),t.Pair(w)(_)],impl:Y(g(o))},R.Just={consts:{},types:[_,t.Maybe(_)],impl:h},R.isNothing={consts:{},types:[t.Maybe(_),t.Boolean],impl:function(t){return t.isNothing}},R.isJust={consts:{},types:[t.Maybe(_),t.Boolean],impl:Z},R.fromMaybe={consts:{},types:[_,t.Maybe(_),_],impl:g(Q)(H)},R.fromMaybe_={consts:{},types:[t.Thunk(_),t.Maybe(_),_],impl:g(X)(H)},R.maybeToNullable={consts:{},types:[t.Maybe(_),t.Nullable(_)],impl:function(t){return t.isJust?t.value:null}},R.maybe={consts:{},types:[w,t.Fn(_)(w),t.Maybe(_),w],impl:Q},R.maybe_={consts:{},types:[t.Thunk(w),t.Fn(_)(w),t.Maybe(_),w],impl:X},R.justs={consts:{f:[u.Filterable,u.Functor]},types:[T(t.Maybe(_)),T(_)],impl:J},R.mapMaybe={consts:{f:[u.Filterable,u.Functor]},types:[t.Fn(_)(t.Maybe(w)),T(_),T(w)],impl:p(p(J))(U)},R.maybeToEither={consts:{},types:[_,t.Maybe(w),t.Either(_)(w)],impl:function(t){return Q(f(t))(l)}},R.Left={consts:{},types:[_,t.Either(_)(w)],impl:f},R.Right={consts:{},types:[w,t.Either(_)(w)],impl:l},R.isLeft={consts:{},types:[t.Either(_)(w),t.Boolean],impl:tt},R.isRight={consts:{},types:[t.Either(_)(w),t.Boolean],impl:et},R.fromEither={consts:{},types:[w,t.Either(_)(w),w],impl:function(t){return nt(V(t))(H)}},R.either={consts:{},types:[t.Fn(_)(S),t.Fn(w)(S),t.Either(_)(w),S],impl:nt},R.lefts={consts:{f:[u.Filterable,u.Functor]},types:[T(t.Either(_)(w)),T(_)],impl:p(U(ht("value")))(F(tt))},R.rights={consts:{f:[u.Filterable,u.Functor]},types:[T(t.Either(_)(w)),T(w)],impl:p(U(ht("value")))(F(et))},R.tagBy={consts:{},types:[t.Predicate(_),_,t.Either(_)(_)],impl:function(t){return at(t)(l)(f)}},R.encase={consts:{},types:[t.Fn(_)(w),_,t.Either(t.Error)(w)],impl:rt},R.eitherToMaybe={consts:{},types:[t.Either(_)(w),t.Maybe(w)],impl:it},R.and={consts:{},types:[t.Boolean,t.Boolean,t.Boolean],impl:function(t){return function(e){return t&&e}}},R.or={consts:{},types:[t.Boolean,t.Boolean,t.Boolean],impl:function(t){return function(e){return t||e}}},R.not={consts:{},types:[t.Boolean,t.Boolean],impl:ot},R.complement={consts:{},types:[t.Predicate(_),_,t.Boolean],impl:p(ot)},R.boolean={consts:{},types:[_,_,t.Boolean,_],impl:function(t){return function(e){return function(n){return n?e:t}}}},R.ifElse={consts:{},types:[t.Predicate(_),t.Fn(_)(w),t.Fn(_)(w),_,w],impl:at},R.when={consts:{},types:[t.Predicate(_),t.Fn(_)(_),_,_],impl:function(t){return g(at(t))(H)}},R.unless={consts:{},types:[t.Predicate(_),t.Fn(_)(_),_,_],impl:function(t){return at(t)(H)}},R.array={consts:{},types:[w,t.Fn(_)(t.Fn(t.Array(_))(w)),t.Array(_),w],impl:function(t){return function(e){return function(n){return 0===n.length?t:e(n[0])(n.slice(1))}}}},R.head={consts:{f:[u.Foldable]},types:[T(_),t.Maybe(_)],impl:function(t){return Array.isArray(t)?t.length>0?h(t[0]):d:u.reduce((function(t,e){return t.isJust?t:h(e)}),d,t)}},R.last={consts:{f:[u.Foldable]},types:[T(_),t.Maybe(_)],impl:function(t){return Array.isArray(t)?t.length>0?h(t[t.length-1]):d:u.reduce((function(t,e){return h(e)}),d,t)}},R.tail={consts:{f:[u.Applicative,u.Foldable,u.Monoid]},types:[T(_),t.Maybe(T(_))],impl:function(t){if(Array.isArray(t))return t.length>0?h(t.slice(1)):d;var e=u.empty(t.constructor);return u.reduce((function(t,n){return h(Q(e)(ft(n))(t))}),d,t)}},R.init={consts:{f:[u.Applicative,u.Foldable,u.Monoid]},types:[T(_),t.Maybe(T(_))],impl:function(t){if(Array.isArray(t))return t.length>0?h(t.slice(0,-1)):d;var e=u.empty(t.constructor);return u.map(o.snd,u.reduce((function(t,n){return h(o(n)(Q(e)(Y(ft))(t)))}),d,t))}};var st=ut((function(t,e){return e.slice(0,t)}),(function(t,e,n){return t>0?u.append(n,e):e}));R.take={consts:{f:[u.Applicative,u.Foldable,u.Monoid]},types:[t.Integer,T(_),t.Maybe(T(_))],impl:st};var ct=ut((function(t,e){return e.slice(t)}),(function(t,e,n){return t>0?e:u.append(n,e)}));function ft(t){return function(e){return u.append(t,e)}}function lt(t){return function(e){for(var n=[],r=t(e);r.isJust;r=t(r.value.snd))n.push(r.value.fst);return n}}function dt(t){return function(e){return function(n){for(var r=[],i=Math.min(e.length,n.length),o=0;o0?h(e.total/e.count):d}},R.even={consts:{},types:[t.Integer,t.Boolean],impl:function(t){return t%2===0}},R.odd={consts:{},types:[t.Integer,t.Boolean],impl:function(t){return t%2!==0}},R.parseDate={consts:{},types:[t.String,t.Maybe(t.ValidDate)],impl:function(t){var e=new Date(t);return isNaN(e.valueOf())?d:h(e)}};var vt,yt=new RegExp("^\\s*[+-]?"+bt(["Infinity","NaN",bt(["[0-9]+","[0-9]+[.][0-9]+","[0-9]+[.]","[.][0-9]+"])+(vt=["[Ee][+-]?[0-9]+"],bt(vt)+"?")])+"\\s*$");R.parseFloat={consts:{},types:[t.String,t.Maybe(t.Number)],impl:function(t){return yt.test(t)?h(parseFloat(t)):d}};var _t=t.NullaryType("Radix")("")([t.Integer])((function(t){return t>=2&&t<=36}));R.parseInt={consts:{},types:[_t,t.String,t.Maybe(t.Integer)],impl:function(e){return function(n){var r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".slice(0,e),i=new RegExp("^["+r+"]+$","i"),o=n.replace(/^[+-]/,"");if(i.test(16===e?o.replace(/^0x/i,""):o)){var a=parseInt(n,e);if(t.test([])(t.Integer)(a))return h(a)}return d}}},R.parseJson={consts:{},types:[t.Predicate(t.Any),t.String,t.Maybe(_)],impl:function(t){return p(F(t))(p(it)(rt(JSON.parse)))}};var wt=t.RecordType({match:t.String,groups:t.Array(t.Maybe(t.String))});function St(t){return{match:t[0],groups:u.map(p(B(D(void 0)))(h),t.slice(1))}}function Ot(t,e){var n=t.lastIndex,r=e();return t.lastIndex=n,r}return R.regex={consts:{},types:[t.RegexFlags,t.String,t.RegExp],impl:function(t){return function(e){return new RegExp(e,t)}}},R.regexEscape={consts:{},types:[t.String,t.String],impl:function(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}},R.test={consts:{},types:[t.RegExp,t.String,t.Boolean],impl:function(t){return function(e){return Ot(t,(function(){return t.test(e)}))}}},R.match={consts:{},types:[t.NonGlobalRegExp,t.String,t.Maybe(wt)],impl:function(t){return function(e){return u.map(St,u.reject(D(null),h(e.match(t))))}}},R.matchAll={consts:{},types:[t.GlobalRegExp,t.String,t.Array(wt)],impl:function(t){return function(e){return Ot(t,(function(){return lt((function(n){return u.map((function(t){return o(St(t))(null)}),u.reject(D(null),h(t.exec(e))))}))([])}))}}},R.toUpper={consts:{},types:[t.String,t.String],impl:b("toUpperCase")},R.toLower={consts:{},types:[t.String,t.String],impl:b("toLowerCase")},R.trim={consts:{},types:[t.String,t.String],impl:b("trim")},R.stripPrefix={consts:{},types:[t.String,t.String,t.Maybe(t.String)],impl:function(t){return function(e){var n=t.length;return e.slice(0,n)===t?h(e.slice(n)):d}}},R.stripSuffix={consts:{},types:[t.String,t.String,t.Maybe(t.String)],impl:function(t){return function(e){var n=e.length-t.length;return e.slice(n)===t?h(e.slice(0,n)):d}}},R.words={consts:{},types:[t.String,t.Array(t.String)],impl:function(t){var e=t.split(/\s+/),n=e.length;return e.slice(""===e[0]?1:0,""===e[n-1]?n-1:n)}},R.unwords={consts:{},types:[t.Array(t.String),t.String],impl:v("join")(" ")},R.lines={consts:{},types:[t.String,t.Array(t.String)],impl:function(t){return""===t?[]:t.replace(/\r\n?/g,"\n").match(/^(?=[\s\S]).*/gm)}},R.unlines={consts:{},types:[t.Array(t.String),t.String],impl:function(t){return t.reduce((function(t,e){return t+e+"\n"}),"")}},R.splitOn={consts:{},types:[t.String,t.String,t.Array(t.String)],impl:v("split")},R.splitOnRegex={consts:{},types:[t.GlobalRegExp,t.String,t.Array(t.String)],impl:function(t){return function(e){return Ot(t,(function(){for(var n,r=[],i=0;null!=(n=t.exec(e));)if(t.lastIndex===i&&""===n[0]){if(t.lastIndex===e.length)return r;t.lastIndex+=1}else r.push(e.slice(i,n.index)),i=n.index+n[0].length;return r.push(e.slice(i)),r}))}}},j({checkTypes:"undefined"===typeof r||null==r||null==Object({NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_TYPE_CHECK_SANCTUARY:"false",REACT_APP_BUILD_TARGET:"LAMASSU"})||!1,env:t.env})}))}).call(this,n(69))},function(t,e,n){"use strict";var r=n(16),i=n(125),o=Object(r.a)((function(t,e){var n=t<0?e.length+t:t;return Object(i.a)(e)?e.charAt(n):e[n]}));e.a=o},function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var r=n(211);function i(t){return function e(n){for(var i,o,a,u=[],s=0,c=n.length;s=e.status}function o(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(r){var e=document.createEvent("MouseEvents");e.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(e)}}var a="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof n&&n.global===n?n:void 0,u=a.saveAs||("object"!=typeof window||window!==a?function(){}:"download"in HTMLAnchorElement.prototype?function(t,e,n){var u=a.URL||a.webkitURL,s=document.createElement("a");e=e||t.name||"download",s.download=e,s.rel="noopener","string"==typeof t?(s.href=t,s.origin===location.origin?o(s):i(s.href)?r(t,e,n):o(s,s.target="_blank")):(s.href=u.createObjectURL(t),setTimeout((function(){u.revokeObjectURL(s.href)}),4e4),setTimeout((function(){o(s)}),0))}:"msSaveOrOpenBlob"in navigator?function(t,n,a){if(n=n||t.name||"download","string"!=typeof t)navigator.msSaveOrOpenBlob(e(t,a),n);else if(i(t))r(t,n,a);else{var u=document.createElement("a");u.href=t,u.target="_blank",setTimeout((function(){o(u)}))}}:function(t,e,n,i){if((i=i||open("","_blank"))&&(i.document.title=i.document.body.innerText="downloading..."),"string"==typeof t)return r(t,e,n);var o="application/octet-stream"===t.type,u=/constructor/i.test(a.HTMLElement)||a.safari,s=/CriOS\/[\d]+/.test(navigator.userAgent);if((s||o&&u)&&"object"==typeof FileReader){var c=new FileReader;c.onloadend=function(){var t=c.result;t=s?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),i?i.location.href=t:location=t,i=null},c.readAsDataURL(t)}else{var f=a.URL||a.webkitURL,l=f.createObjectURL(t);i?i.location=l:location.href=l,i=null,setTimeout((function(){f.revokeObjectURL(l)}),4e4)}});a.saveAs=u.saveAs=u,t.exports=u})?r.apply(e,i):r)||(t.exports=o)}).call(this,n(59))},function(t,e,n){"use strict";(function(t){function r(e,n){var r,i="undefined"!==typeof(r="undefined"!==typeof n?n:"undefined"!==typeof window?window:"undefined"!==typeof self?self:t).document&&r.document.attachEvent;if(!i){var o=function(){var t=r.requestAnimationFrame||r.mozRequestAnimationFrame||r.webkitRequestAnimationFrame||function(t){return r.setTimeout(t,20)};return function(e){return t(e)}}(),a=function(){var t=r.cancelAnimationFrame||r.mozCancelAnimationFrame||r.webkitCancelAnimationFrame||r.clearTimeout;return function(e){return t(e)}}(),u=function(t){var e=t.__resizeTriggers__,n=e.firstElementChild,r=e.lastElementChild,i=n.firstElementChild;r.scrollLeft=r.scrollWidth,r.scrollTop=r.scrollHeight,i.style.width=n.offsetWidth+1+"px",i.style.height=n.offsetHeight+1+"px",n.scrollLeft=n.scrollWidth,n.scrollTop=n.scrollHeight},s=function(t){if(!(t.target.className&&"function"===typeof t.target.className.indexOf&&t.target.className.indexOf("contract-trigger")<0&&t.target.className.indexOf("expand-trigger")<0)){var e=this;u(this),this.__resizeRAF__&&a(this.__resizeRAF__),this.__resizeRAF__=o((function(){(function(t){return t.offsetWidth!=t.__resizeLast__.width||t.offsetHeight!=t.__resizeLast__.height})(e)&&(e.__resizeLast__.width=e.offsetWidth,e.__resizeLast__.height=e.offsetHeight,e.__resizeListeners__.forEach((function(n){n.call(e,t)})))}))}},c=!1,f="",l="animationstart",d="Webkit Moz O ms".split(" "),h="webkitAnimationStart animationstart oAnimationStart MSAnimationStart".split(" "),p=r.document.createElement("fakeelement");if(void 0!==p.style.animationName&&(c=!0),!1===c)for(var g=0;g div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',r=t.head||t.getElementsByTagName("head")[0],i=t.createElement("style");i.id="detectElementResize",i.type="text/css",null!=e&&i.setAttribute("nonce",e),i.styleSheet?i.styleSheet.cssText=n:i.appendChild(t.createTextNode(n)),r.appendChild(i)}}(o),t.__resizeLast__={},t.__resizeListeners__=[],(t.__resizeTriggers__=o.createElement("div")).className="resize-triggers";var c='
';if(window.trustedTypes){var f=trustedTypes.createPolicy("react-virtualized-auto-sizer",{createHTML:function(){return c}});t.__resizeTriggers__.innerHTML=f.createHTML("")}else t.__resizeTriggers__.innerHTML=c;t.appendChild(t.__resizeTriggers__),u(t),t.addEventListener("scroll",s,!0),l&&(t.__resizeTriggers__.__animationListener__=function(e){e.animationName==m&&u(t)},t.__resizeTriggers__.addEventListener(l,t.__resizeTriggers__.__animationListener__))}t.__resizeListeners__.push(n)}},removeResizeListener:function(t,e){if(i)t.detachEvent("onresize",e);else if(t.__resizeListeners__.splice(t.__resizeListeners__.indexOf(e),1),!t.__resizeListeners__.length){t.removeEventListener("scroll",s,!0),t.__resizeTriggers__.__animationListener__&&(t.__resizeTriggers__.removeEventListener(l,t.__resizeTriggers__.__animationListener__),t.__resizeTriggers__.__animationListener__=null);try{t.__resizeTriggers__=!t.removeChild(t.__resizeTriggers__)}catch(n){}}}}}n.d(e,"a",(function(){return r}))}).call(this,n(59))},function(t,e,n){"use strict";var r=n(32),i=n(85),o=Object(r.a)((function(t){return Object(i.a)(t.length,(function(e,n){var r=Array.prototype.slice.call(arguments,0);return r[0]=n,r[1]=e,t.apply(this,r)}))}));e.a=o},function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var r=n(25),i=n(22);function o(t){Object(i.a)(1,arguments);var e=Object(r.a)(t),n=e.getFullYear(),o=e.getMonth(),a=new Date(0);return a.setFullYear(n,o+1,0),a.setHours(0,0,0,0),a.getDate()}},function(t,e,n){"use strict";n.d(e,"a",(function(){return N}));var r=n(194),i=n(170),o=n(334),a=n(25);function u(t,e){for(var n=t<0?"-":"",r=Math.abs(t).toString();r.length0?n:1-n;return u("yy"===e?r%100:r,e.length)},M:function(t,e){var n=t.getUTCMonth();return"M"===e?String(n+1):u(n+1,2)},d:function(t,e){return u(t.getUTCDate(),e.length)},a:function(t,e){var n=t.getUTCHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return"am"===n?"a.m.":"p.m."}},h:function(t,e){return u(t.getUTCHours()%12||12,e.length)},H:function(t,e){return u(t.getUTCHours(),e.length)},m:function(t,e){return u(t.getUTCMinutes(),e.length)},s:function(t,e){return u(t.getUTCSeconds(),e.length)},S:function(t,e){var n=e.length,r=t.getUTCMilliseconds();return u(Math.floor(r*Math.pow(10,n-3)),e.length)}},c=n(22),f=864e5;var l=n(336),d=n(311),h=n(335),p=n(221),g="midnight",m="noon",b="morning",v="afternoon",y="evening",_="night";function w(t,e){var n=t>0?"-":"+",r=Math.abs(t),i=Math.floor(r/60),o=r%60;if(0===o)return n+String(i);var a=e||"";return n+String(i)+a+u(o,2)}function S(t,e){return t%60===0?(t>0?"-":"+")+u(Math.abs(t)/60,2):O(t,e)}function O(t,e){var n=e||"",r=t>0?"-":"+",i=Math.abs(t);return r+u(Math.floor(i/60),2)+n+u(i%60,2)}var x={G:function(t,e,n){var r=t.getUTCFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(t,e,n){if("yo"===e){var r=t.getUTCFullYear(),i=r>0?r:1-r;return n.ordinalNumber(i,{unit:"year"})}return s.y(t,e)},Y:function(t,e,n,r){var i=Object(p.a)(t,r),o=i>0?i:1-i;return"YY"===e?u(o%100,2):"Yo"===e?n.ordinalNumber(o,{unit:"year"}):u(o,e.length)},R:function(t,e){return u(Object(d.a)(t),e.length)},u:function(t,e){return u(t.getUTCFullYear(),e.length)},Q:function(t,e,n){var r=Math.ceil((t.getUTCMonth()+1)/3);switch(e){case"Q":return String(r);case"QQ":return u(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(t,e,n){var r=Math.ceil((t.getUTCMonth()+1)/3);switch(e){case"q":return String(r);case"qq":return u(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(t,e,n){var r=t.getUTCMonth();switch(e){case"M":case"MM":return s.M(t,e);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(t,e,n){var r=t.getUTCMonth();switch(e){case"L":return String(r+1);case"LL":return u(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(t,e,n,r){var i=Object(h.a)(t,r);return"wo"===e?n.ordinalNumber(i,{unit:"week"}):u(i,e.length)},I:function(t,e,n){var r=Object(l.a)(t);return"Io"===e?n.ordinalNumber(r,{unit:"week"}):u(r,e.length)},d:function(t,e,n){return"do"===e?n.ordinalNumber(t.getUTCDate(),{unit:"date"}):s.d(t,e)},D:function(t,e,n){var r=function(t){Object(c.a)(1,arguments);var e=Object(a.a)(t),n=e.getTime();e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0);var r=e.getTime(),i=n-r;return Math.floor(i/f)+1}(t);return"Do"===e?n.ordinalNumber(r,{unit:"dayOfYear"}):u(r,e.length)},E:function(t,e,n){var r=t.getUTCDay();switch(e){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(t,e,n,r){var i=t.getUTCDay(),o=(i-r.weekStartsOn+8)%7||7;switch(e){case"e":return String(o);case"ee":return u(o,2);case"eo":return n.ordinalNumber(o,{unit:"day"});case"eee":return n.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(i,{width:"short",context:"formatting"});case"eeee":default:return n.day(i,{width:"wide",context:"formatting"})}},c:function(t,e,n,r){var i=t.getUTCDay(),o=(i-r.weekStartsOn+8)%7||7;switch(e){case"c":return String(o);case"cc":return u(o,e.length);case"co":return n.ordinalNumber(o,{unit:"day"});case"ccc":return n.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(i,{width:"narrow",context:"standalone"});case"cccccc":return n.day(i,{width:"short",context:"standalone"});case"cccc":default:return n.day(i,{width:"wide",context:"standalone"})}},i:function(t,e,n){var r=t.getUTCDay(),i=0===r?7:r;switch(e){case"i":return String(i);case"ii":return u(i,e.length);case"io":return n.ordinalNumber(i,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(t,e,n){var r=t.getUTCHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(t,e,n){var r,i=t.getUTCHours();switch(r=12===i?m:0===i?g:i/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(t,e,n){var r,i=t.getUTCHours();switch(r=i>=17?y:i>=12?v:i>=4?b:_,e){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(t,e,n){if("ho"===e){var r=t.getUTCHours()%12;return 0===r&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return s.h(t,e)},H:function(t,e,n){return"Ho"===e?n.ordinalNumber(t.getUTCHours(),{unit:"hour"}):s.H(t,e)},K:function(t,e,n){var r=t.getUTCHours()%12;return"Ko"===e?n.ordinalNumber(r,{unit:"hour"}):u(r,e.length)},k:function(t,e,n){var r=t.getUTCHours();return 0===r&&(r=24),"ko"===e?n.ordinalNumber(r,{unit:"hour"}):u(r,e.length)},m:function(t,e,n){return"mo"===e?n.ordinalNumber(t.getUTCMinutes(),{unit:"minute"}):s.m(t,e)},s:function(t,e,n){return"so"===e?n.ordinalNumber(t.getUTCSeconds(),{unit:"second"}):s.s(t,e)},S:function(t,e){return s.S(t,e)},X:function(t,e,n,r){var i=(r._originalDate||t).getTimezoneOffset();if(0===i)return"Z";switch(e){case"X":return S(i);case"XXXX":case"XX":return O(i);case"XXXXX":case"XXX":default:return O(i,":")}},x:function(t,e,n,r){var i=(r._originalDate||t).getTimezoneOffset();switch(e){case"x":return S(i);case"xxxx":case"xx":return O(i);case"xxxxx":case"xxx":default:return O(i,":")}},O:function(t,e,n,r){var i=(r._originalDate||t).getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+w(i,":");case"OOOO":default:return"GMT"+O(i,":")}},z:function(t,e,n,r){var i=(r._originalDate||t).getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+w(i,":");case"zzzz":default:return"GMT"+O(i,":")}},t:function(t,e,n,r){var i=r._originalDate||t;return u(Math.floor(i.getTime()/1e3),e.length)},T:function(t,e,n,r){return u((r._originalDate||t).getTime(),e.length)}},E=n(310),M=n(109),T=n(143),$=n(30),A=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,k=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,C=/^'([^]*?)'?$/,I=/''/g,P=/[a-zA-Z]/;function N(t,e,n){Object(c.a)(2,arguments);var u=String(e),s=n||{},f=s.locale||i.a,l=f.options&&f.options.firstWeekContainsDate,d=null==l?1:Object($.a)(l),h=null==s.firstWeekContainsDate?d:Object($.a)(s.firstWeekContainsDate);if(!(h>=1&&h<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var p=f.options&&f.options.weekStartsOn,g=null==p?0:Object($.a)(p),m=null==s.weekStartsOn?g:Object($.a)(s.weekStartsOn);if(!(m>=0&&m<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!f.localize)throw new RangeError("locale must contain localize property");if(!f.formatLong)throw new RangeError("locale must contain formatLong property");var b=Object(a.a)(t);if(!Object(r.a)(b))throw new RangeError("Invalid time value");var v=Object(M.a)(b),y=Object(o.a)(b,v),_={firstWeekContainsDate:h,weekStartsOn:m,locale:f,_originalDate:b},w=u.match(k).map((function(t){var e=t[0];return"p"===e||"P"===e?(0,E.a[e])(t,f.formatLong,_):t})).join("").match(A).map((function(n){if("''"===n)return"'";var r=n[0];if("'"===r)return R(n);var i=x[r];if(i)return!s.useAdditionalWeekYearTokens&&Object(T.b)(n)&&Object(T.c)(n,e,t),!s.useAdditionalDayOfYearTokens&&Object(T.a)(n)&&Object(T.c)(n,e,t),i(y,n,f.localize,_);if(r.match(P))throw new RangeError("Format string contains an unescaped latin alphabet character `"+r+"`");return n})).join("");return w}function R(t){return t.match(C)[1].replace(I,"'")}},function(t,e,n){"use strict";var r=n(32),i=n(16),o=n(75),a=n(137),u=n(97),s=Object(i.a)((function(t,e){return"function"===typeof e["fantasy-land/ap"]?e["fantasy-land/ap"](t):"function"===typeof t.ap?t.ap(e):"function"===typeof t?function(n){return t(n)(e(n))}:Object(o.a)((function(t,n){return Object(a.a)(t,Object(u.a)(n,e))}),[],t)})),c=n(85),f=Object(i.a)((function(t,e){var n=Object(c.a)(t,e);return Object(c.a)(t,(function(){return Object(o.a)(s,Object(u.a)(n,arguments[0]),Array.prototype.slice.call(arguments,1))}))})),l=Object(r.a)((function(t){return f(t.length,t)}));e.a=l},function(t,e,n){"use strict";var r=n(212),i=n(71),o=n(61),a=n(75),u=n(64),s=function(){function t(t,e,n,r){this.valueFn=t,this.valueAcc=e,this.keyFn=n,this.xf=r,this.inputs={}}return t.prototype["@@transducer/init"]=u.a.init,t.prototype["@@transducer/result"]=function(t){var e;for(e in this.inputs)if(Object(o.a)(e,this.inputs)&&(t=this.xf["@@transducer/step"](t,this.inputs[e]))["@@transducer/reduced"]){t=t["@@transducer/value"];break}return this.inputs=null,this.xf["@@transducer/result"](t)},t.prototype["@@transducer/step"]=function(t,e){var n=this.keyFn(e);return this.inputs[n]=this.inputs[n]||[n,this.valueAcc],this.inputs[n][1]=this.valueFn(this.inputs[n][1],e),t},t}(),c=Object(r.a)(4,[],(function(t,e,n,r){return new s(t,e,n,r)})),f=Object(r.a)(4,[],Object(i.a)([],c,(function(t,e,n,r){return Object(a.a)((function(r,i){var a=n(i);return r[a]=t(Object(o.a)(a,r)?r[a]:e,i),r}),{},r)})));e.a=f},function(t,e,n){"use strict";var r=n(16),i=n(71),o=n(290),a=n(188),u=n(75),s=n(64),c=function(){function t(t,e){this.xf=e,this.f=t}return t.prototype["@@transducer/init"]=s.a.init,t.prototype["@@transducer/result"]=s.a.result,t.prototype["@@transducer/step"]=function(t,e){return this.f(e)?this.xf["@@transducer/step"](t,e):t},t}(),f=Object(r.a)((function(t,e){return new c(t,e)})),l=n(98),d=Object(r.a)(Object(i.a)(["filter"],f,(function(t,e){return Object(a.a)(e)?Object(u.a)((function(n,r){return t(e[r])&&(n[r]=e[r]),n}),{},Object(l.a)(e)):Object(o.a)(t,e)})));e.a=d},function(t,e,n){"use strict";var r=n(301),i=n(299),o=n(16),a=Object(o.a)((function(t,e){for(var n,r,o=new i.a,a=[],u=0;u=0&&this.i>=this.n?Object(o.a)(n):n},t}(),s=Object(r.a)((function(t,e){return new u(t,e)})),c=n(104),f=Object(r.a)(Object(i.a)(["take"],s,(function(t,e){return Object(c.a)(0,t<0?1/0:t,e)})));e.a=f},function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var r=n(25),i=n(22);function o(t,e){Object(i.a)(2,arguments);var n=Object(r.a)(t),o=Object(r.a)(e);return n.getFullYear()-o.getFullYear()}var a=n(108);function u(t,e){Object(i.a)(2,arguments);var n=Object(r.a)(t),u=Object(r.a)(e),s=Object(a.a)(n,u),c=Math.abs(o(n,u));n.setFullYear(1584),u.setFullYear(1584);var f=Object(a.a)(n,u)===-s,l=s*(c-Number(f));return 0===l?0:l}},function(t,e,n){"use strict";n.d(e,"a",(function(){return f}));var r=n(25),i=n(109),o=n(174),a=n(22),u=864e5;function s(t,e){Object(a.a)(2,arguments);var n=Object(o.a)(t),r=Object(o.a)(e),s=n.getTime()-Object(i.a)(n),c=r.getTime()-Object(i.a)(r);return Math.round((s-c)/u)}function c(t,e){var n=t.getFullYear()-e.getFullYear()||t.getMonth()-e.getMonth()||t.getDate()-e.getDate()||t.getHours()-e.getHours()||t.getMinutes()-e.getMinutes()||t.getSeconds()-e.getSeconds()||t.getMilliseconds()-e.getMilliseconds();return n<0?-1:n>0?1:n}function f(t,e){Object(a.a)(2,arguments);var n=Object(r.a)(t),i=Object(r.a)(e),o=c(n,i),u=Math.abs(s(n,i));n.setDate(n.getDate()-o*u);var f=Number(c(n,i)===-o),l=o*(u-f);return 0===l?0:l}},function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var r=n(30),i=n(25),o=n(22);function a(t,e){Object(o.a)(2,arguments);var n=Object(i.a)(t).getTime(),a=Object(r.a)(e);return new Date(n+a)}function u(t,e){Object(o.a)(2,arguments);var n=Object(r.a)(e);return a(t,-n)}},function(t,e,n){"use strict";n.d(e,"a",(function(){return f}));var r=n(25),i=n(127),o=n(30),a=n(221),u=n(22);function s(t,e){Object(u.a)(1,arguments);var n=e||{},r=n.locale,s=r&&r.options&&r.options.firstWeekContainsDate,c=null==s?1:Object(o.a)(s),f=null==n.firstWeekContainsDate?c:Object(o.a)(n.firstWeekContainsDate),l=Object(a.a)(t,e),d=new Date(0);d.setUTCFullYear(l,0,f),d.setUTCHours(0,0,0,0);var h=Object(i.a)(d,e);return h}var c=6048e5;function f(t,e){Object(u.a)(1,arguments);var n=Object(r.a)(t),o=Object(i.a)(n,e).getTime()-s(n,e).getTime();return Math.round(o/c)+1}},function(t,e,n){"use strict";n.d(e,"a",(function(){return c}));var r=n(25),i=n(142),o=n(311),a=n(22);function u(t){Object(a.a)(1,arguments);var e=Object(o.a)(t),n=new Date(0);n.setUTCFullYear(e,0,4),n.setUTCHours(0,0,0,0);var r=Object(i.a)(n);return r}var s=6048e5;function c(t){Object(a.a)(1,arguments);var e=Object(r.a)(t),n=Object(i.a)(e).getTime()-u(e).getTime();return Math.round(n/s)+1}},function(t,e,n){"use strict";var r=n(4),i=n(17),o=n(1),a=n.n(o),u=(n(13),n(48)),s=n(15),c=n(44),f=n(121),l=n(24),d=!0,h=!1,p=null,g={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function m(t){t.metaKey||t.altKey||t.ctrlKey||(d=!0)}function b(){d=!1}function v(){"hidden"===this.visibilityState&&h&&(d=!0)}function y(t){var e=t.target;try{return e.matches(":focus-visible")}catch(n){}return d||function(t){var e=t.type,n=t.tagName;return!("INPUT"!==n||!g[e]||t.readOnly)||"TEXTAREA"===n&&!t.readOnly||!!t.isContentEditable}(e)}function _(){h=!0,window.clearTimeout(p),p=window.setTimeout((function(){h=!1}),100)}function w(){return{isFocusVisible:y,onBlurVisible:_,ref:o.useCallback((function(t){var e,n=u.findDOMNode(t);null!=n&&((e=n.ownerDocument).addEventListener("keydown",m,!0),e.addEventListener("mousedown",b,!0),e.addEventListener("pointerdown",b,!0),e.addEventListener("touchstart",b,!0),e.addEventListener("visibilitychange",v,!0))}),[])}}var S=n(107),O=n(65),x=n(172),E=n(68),M=n(226);function T(t,e){var n=Object.create(null);return t&&o.Children.map(t,(function(t){return t})).forEach((function(t){n[t.key]=function(t){return e&&Object(o.isValidElement)(t)?e(t):t}(t)})),n}function $(t,e,n){return null!=n[e]?n[e]:t.props[e]}function A(t,e,n){var r=T(t.children),i=function(t,e){function n(n){return n in e?e[n]:t[n]}t=t||{},e=e||{};var r,i=Object.create(null),o=[];for(var a in t)a in e?o.length&&(i[a]=o,o=[]):o.push(a);var u={};for(var s in e){if(i[s])for(r=0;r0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,r=e.pulsate,i=void 0!==r&&r,o=e.center,u=void 0===o?a||e.pulsate:o,s=e.fakeElement,c=void 0!==s&&s;if("mousedown"===t.type&&m.current)m.current=!1;else{"touchstart"===t.type&&(m.current=!0);var f,l,d,h=c?null:y.current,p=h?h.getBoundingClientRect():{width:0,height:0,left:0,top:0};if(u||0===t.clientX&&0===t.clientY||!t.clientX&&!t.touches)f=Math.round(p.width/2),l=Math.round(p.height/2);else{var g=t.touches?t.touches[0]:t,w=g.clientX,S=g.clientY;f=Math.round(w-p.left),l=Math.round(S-p.top)}if(u)(d=Math.sqrt((2*Math.pow(p.width,2)+Math.pow(p.height,2))/3))%2===0&&(d+=1);else{var O=2*Math.max(Math.abs((h?h.clientWidth:0)-f),f)+2,x=2*Math.max(Math.abs((h?h.clientHeight:0)-l),l)+2;d=Math.sqrt(Math.pow(O,2)+Math.pow(x,2))}t.touches?null===v.current&&(v.current=function(){_({pulsate:i,rippleX:f,rippleY:l,rippleSize:d,cb:n})},b.current=setTimeout((function(){v.current&&(v.current(),v.current=null)}),80)):_({pulsate:i,rippleX:f,rippleY:l,rippleSize:d,cb:n})}}),[a,_]),O=o.useCallback((function(){w({},{pulsate:!0})}),[w]),x=o.useCallback((function(t,e){if(clearTimeout(b.current),"touchend"===t.type&&v.current)return t.persist(),v.current(),v.current=null,void(b.current=setTimeout((function(){x(t,e)})));v.current=null,h((function(t){return t.length>0?t.slice(1):t})),g.current=e}),[]);return o.useImperativeHandle(e,(function(){return{pulsate:O,start:w,stop:x}}),[O,w,x]),o.createElement("span",Object(r.a)({className:Object(s.a)(u.root,c),ref:y},f),o.createElement(I,{component:null,exit:!0},d))})),j=Object(l.a)((function(t){return{root:{overflow:"hidden",pointerEvents:"none",position:"absolute",zIndex:0,top:0,right:0,bottom:0,left:0,borderRadius:"inherit"},ripple:{opacity:0,position:"absolute"},rippleVisible:{opacity:.3,transform:"scale(1)",animation:"$enter ".concat(550,"ms ").concat(t.transitions.easing.easeInOut)},ripplePulsate:{animationDuration:"".concat(t.transitions.duration.shorter,"ms")},child:{opacity:1,display:"block",width:"100%",height:"100%",borderRadius:"50%",backgroundColor:"currentColor"},childLeaving:{opacity:0,animation:"$exit ".concat(550,"ms ").concat(t.transitions.easing.easeInOut)},childPulsate:{position:"absolute",left:0,top:0,animation:"$pulsate 2500ms ".concat(t.transitions.easing.easeInOut," 200ms infinite")},"@keyframes enter":{"0%":{transform:"scale(0)",opacity:.1},"100%":{transform:"scale(1)",opacity:.3}},"@keyframes exit":{"0%":{opacity:1},"100%":{opacity:0}},"@keyframes pulsate":{"0%":{transform:"scale(1)"},"50%":{transform:"scale(0.92)"},"100%":{transform:"scale(1)"}}}}),{flip:!1,name:"MuiTouchRipple"})(o.memo(R)),D=o.forwardRef((function(t,e){var n=t.action,a=t.buttonRef,l=t.centerRipple,d=void 0!==l&&l,h=t.children,p=t.classes,g=t.className,m=t.component,b=void 0===m?"button":m,v=t.disabled,y=void 0!==v&&v,_=t.disableRipple,S=void 0!==_&&_,O=t.disableTouchRipple,x=void 0!==O&&O,E=t.focusRipple,M=void 0!==E&&E,T=t.focusVisibleClassName,$=t.onBlur,A=t.onClick,k=t.onFocus,C=t.onFocusVisible,I=t.onKeyDown,P=t.onKeyUp,N=t.onMouseDown,R=t.onMouseLeave,D=t.onMouseUp,L=t.onTouchEnd,F=t.onTouchMove,B=t.onTouchStart,U=t.onDragLeave,z=t.tabIndex,H=void 0===z?0:z,V=t.TouchRippleProps,q=t.type,W=void 0===q?"button":q,G=Object(i.a)(t,["action","buttonRef","centerRipple","children","classes","className","component","disabled","disableRipple","disableTouchRipple","focusRipple","focusVisibleClassName","onBlur","onClick","onFocus","onFocusVisible","onKeyDown","onKeyUp","onMouseDown","onMouseLeave","onMouseUp","onTouchEnd","onTouchMove","onTouchStart","onDragLeave","tabIndex","TouchRippleProps","type"]),K=o.useRef(null);var Y=o.useRef(null),Z=o.useState(!1),Q=Z[0],X=Z[1];y&&Q&&X(!1);var J=w(),tt=J.isFocusVisible,et=J.onBlurVisible,nt=J.ref;function rt(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:x;return Object(f.a)((function(r){return e&&e(r),!n&&Y.current&&Y.current[t](r),!0}))}o.useImperativeHandle(n,(function(){return{focusVisible:function(){X(!0),K.current.focus()}}}),[]),o.useEffect((function(){Q&&M&&!S&&Y.current.pulsate()}),[S,M,Q]);var it=rt("start",N),ot=rt("stop",U),at=rt("stop",D),ut=rt("stop",(function(t){Q&&t.preventDefault(),R&&R(t)})),st=rt("start",B),ct=rt("stop",L),ft=rt("stop",F),lt=rt("stop",(function(t){Q&&(et(t),X(!1)),$&&$(t)}),!1),dt=Object(f.a)((function(t){K.current||(K.current=t.currentTarget),tt(t)&&(X(!0),C&&C(t)),k&&k(t)})),ht=function(){var t=u.findDOMNode(K.current);return b&&"button"!==b&&!("A"===t.tagName&&t.href)},pt=o.useRef(!1),gt=Object(f.a)((function(t){M&&!pt.current&&Q&&Y.current&&" "===t.key&&(pt.current=!0,t.persist(),Y.current.stop(t,(function(){Y.current.start(t)}))),t.target===t.currentTarget&&ht()&&" "===t.key&&t.preventDefault(),I&&I(t),t.target===t.currentTarget&&ht()&&"Enter"===t.key&&!y&&(t.preventDefault(),A&&A(t))})),mt=Object(f.a)((function(t){M&&" "===t.key&&Y.current&&Q&&!t.defaultPrevented&&(pt.current=!1,t.persist(),Y.current.stop(t,(function(){Y.current.pulsate(t)}))),P&&P(t),A&&t.target===t.currentTarget&&ht()&&" "===t.key&&!t.defaultPrevented&&A(t)})),bt=b;"button"===bt&&G.href&&(bt="a");var vt={};"button"===bt?(vt.type=W,vt.disabled=y):("a"===bt&&G.href||(vt.role="button"),vt["aria-disabled"]=y);var yt=Object(c.a)(a,e),_t=Object(c.a)(nt,K),wt=Object(c.a)(yt,_t),St=o.useState(!1),Ot=St[0],xt=St[1];o.useEffect((function(){xt(!0)}),[]);var Et=Ot&&!S&&!y;return o.createElement(bt,Object(r.a)({className:Object(s.a)(p.root,g,Q&&[p.focusVisible,T],y&&p.disabled),onBlur:lt,onClick:A,onFocus:dt,onKeyDown:gt,onKeyUp:mt,onMouseDown:it,onMouseLeave:ut,onMouseUp:at,onDragLeave:ot,onTouchEnd:ct,onTouchMove:ft,onTouchStart:st,ref:wt,tabIndex:y?-1:H},vt,G),h,Et?o.createElement(j,Object(r.a)({ref:Y,center:d},V)):null)}));e.a=Object(l.a)({root:{display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle","-moz-appearance":"none","-webkit-appearance":"none",textDecoration:"none",color:"inherit","&::-moz-focus-inner":{borderStyle:"none"},"&$disabled":{pointerEvents:"none",cursor:"default"},"@media print":{colorAdjust:"exact"}},disabled:{},focusVisible:{}},{name:"MuiButtonBase"})(D)},,,,,,,function(t,e,n){"use strict";var r=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function a(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}t.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(t){r[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(i){return!1}}()?Object.assign:function(t,e){for(var n,u,s=a(t),c=1;c-1&&t%1==0&&t<=9007199254740991}},function(t,e,n){var r=n(654),i=n(660),o=n(664);t.exports=function(t){return o(t)?r(t):i(t)}},function(t,e,n){"use strict";var r=e;r.version=n(737).version,r.utils=n(114),r.rand=n(180),r.curve=n(440),r.curves=n(353),r.ec=n(750),r.eddsa=n(753)},function(t,e,n){"use strict";var r,i=e,o=n(181),a=n(440),u=n(114).assert;function s(t){"short"===t.type?this.curve=new a.short(t):"edwards"===t.type?this.curve=new a.edwards(t):this.curve=new a.mont(t),this.g=this.curve.g,this.n=this.curve.n,this.hash=t.hash,u(this.g.validate(),"Invalid curve"),u(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function c(t,e){Object.defineProperty(i,t,{configurable:!0,enumerable:!0,get:function(){var n=new s(e);return Object.defineProperty(i,t,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=s,c("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),c("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),c("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),c("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),c("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),c("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),c("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(749)}catch(f){r=void 0}c("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(t,e,n){"use strict";var r=n(181),i=n(261),o=n(95);function a(t){if(!(this instanceof a))return new a(t);this.hash=t.hash,this.predResist=!!t.predResist,this.outLen=this.hash.outSize,this.minEntropy=t.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var e=i.toArray(t.entropy,t.entropyEnc||"hex"),n=i.toArray(t.nonce,t.nonceEnc||"hex"),r=i.toArray(t.pers,t.persEnc||"hex");o(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(e,n,r)}t.exports=a,a.prototype._init=function(t,e,n){var r=t.concat(e).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(t.concat(n||[])),this._reseed=1},a.prototype.generate=function(t,e,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!==typeof e&&(r=n,n=e,e=null),n&&(n=i.toArray(n,r||"hex"),this._update(n));for(var o=[];o.length-1?r:o.nextTick;v.WritableState=b;var c=Object.create(n(237));c.inherits=n(38);var f={deprecate:n(448)},l=n(445),d=n(356).Buffer,h=i.Uint8Array||function(){};var p,g=n(446);function m(){}function b(t,e){u=u||n(182),t=t||{};var r=e instanceof u;this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var i=t.highWaterMark,c=t.writableHighWaterMark,f=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(c||0===c)?c:f,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var l=!1===t.decodeStrings;this.decodeStrings=!l,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var n=t._writableState,r=n.sync,i=n.writecb;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(n),e)!function(t,e,n,r,i){--e.pendingcb,n?(o.nextTick(i,r),o.nextTick(x,t,e),t._writableState.errorEmitted=!0,t.emit("error",r)):(i(r),t._writableState.errorEmitted=!0,t.emit("error",r),x(t,e))}(t,n,r,e,i);else{var a=S(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||w(t,n),r?s(_,t,n,a,i):_(t,n,a,i)}}(e,t)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function v(t){if(u=u||n(182),!p.call(v,this)&&!(this instanceof u))return new v(t);this._writableState=new b(t,this),this.writable=!0,t&&("function"===typeof t.write&&(this._write=t.write),"function"===typeof t.writev&&(this._writev=t.writev),"function"===typeof t.destroy&&(this._destroy=t.destroy),"function"===typeof t.final&&(this._final=t.final)),l.call(this)}function y(t,e,n,r,i,o,a){e.writelen=r,e.writecb=a,e.writing=!0,e.sync=!0,n?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function _(t,e,n,r){n||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,r(),x(t,e)}function w(t,e){e.bufferProcessing=!0;var n=e.bufferedRequest;if(t._writev&&n&&n.next){var r=e.bufferedRequestCount,i=new Array(r),o=e.corkedRequestsFree;o.entry=n;for(var u=0,s=!0;n;)i[u]=n,n.isBuf||(s=!1),n=n.next,u+=1;i.allBuffers=s,y(t,e,!0,e.length,i,"",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new a(e),e.bufferedRequestCount=0}else{for(;n;){var c=n.chunk,f=n.encoding,l=n.callback;if(y(t,e,!1,e.objectMode?1:c.length,c,f,l),n=n.next,e.bufferedRequestCount--,e.writing)break}null===n&&(e.lastBufferedRequest=null)}e.bufferedRequest=n,e.bufferProcessing=!1}function S(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function O(t,e){t._final((function(n){e.pendingcb--,n&&t.emit("error",n),e.prefinished=!0,t.emit("prefinish"),x(t,e)}))}function x(t,e){var n=S(e);return n&&(!function(t,e){e.prefinished||e.finalCalled||("function"===typeof t._final?(e.pendingcb++,e.finalCalled=!0,o.nextTick(O,t,e)):(e.prefinished=!0,t.emit("prefinish")))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"))),n}c.inherits(v,l),b.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(b.prototype,"buffer",{get:f.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}}(),"function"===typeof Symbol&&Symbol.hasInstance&&"function"===typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(v,Symbol.hasInstance,{value:function(t){return!!p.call(this,t)||this===v&&(t&&t._writableState instanceof b)}})):p=function(t){return t instanceof this},v.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},v.prototype.write=function(t,e,n){var r,i=this._writableState,a=!1,u=!i.objectMode&&(r=t,d.isBuffer(r)||r instanceof h);return u&&!d.isBuffer(t)&&(t=function(t){return d.from(t)}(t)),"function"===typeof e&&(n=e,e=null),u?e="buffer":e||(e=i.defaultEncoding),"function"!==typeof n&&(n=m),i.ended?function(t,e){var n=new Error("write after end");t.emit("error",n),o.nextTick(e,n)}(this,n):(u||function(t,e,n,r){var i=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"===typeof n||void 0===n||e.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(t.emit("error",a),o.nextTick(r,a),i=!1),i}(this,i,t,n))&&(i.pendingcb++,a=function(t,e,n,r,i,o){if(!n){var a=function(t,e,n){t.objectMode||!1===t.decodeStrings||"string"!==typeof e||(e=d.from(e,n));return e}(e,r,i);r!==a&&(n=!0,i="buffer",r=a)}var u=e.objectMode?1:r.length;e.length+=u;var s=e.length-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(v.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),v.prototype._write=function(t,e,n){n(new Error("_write() is not implemented"))},v.prototype._writev=null,v.prototype.end=function(t,e,n){var r=this._writableState;"function"===typeof t?(n=t,t=null,e=null):"function"===typeof e&&(n=e,e=null),null!==t&&void 0!==t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(t,e,n){e.ending=!0,x(t,e),n&&(e.finished?o.nextTick(n):t.once("finish",n));e.ended=!0,t.writable=!1}(this,r,n)},Object.defineProperty(v.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),v.prototype.destroy=g.destroy,v.prototype._undestroy=g.undestroy,v.prototype._destroy=function(t,e){this.end(),e(t)}}).call(this,n(69),n(447).setImmediate,n(59))},function(t,e,n){"use strict";var r=n(38),i=n(451),o=n(37).Buffer,a=new Array(16);function u(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function s(t,e){return t<>>32-e}function c(t,e,n,r,i,o,a){return s(t+(e&n|~e&r)+i+o|0,a)+e|0}function f(t,e,n,r,i,o,a){return s(t+(e&r|n&~r)+i+o|0,a)+e|0}function l(t,e,n,r,i,o,a){return s(t+(e^n^r)+i+o|0,a)+e|0}function d(t,e,n,r,i,o,a){return s(t+(n^(e|~r))+i+o|0,a)+e|0}r(u,i),u.prototype._update=function(){for(var t=a,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);var n=this._a,r=this._b,i=this._c,o=this._d;n=c(n,r,i,o,t[0],3614090360,7),o=c(o,n,r,i,t[1],3905402710,12),i=c(i,o,n,r,t[2],606105819,17),r=c(r,i,o,n,t[3],3250441966,22),n=c(n,r,i,o,t[4],4118548399,7),o=c(o,n,r,i,t[5],1200080426,12),i=c(i,o,n,r,t[6],2821735955,17),r=c(r,i,o,n,t[7],4249261313,22),n=c(n,r,i,o,t[8],1770035416,7),o=c(o,n,r,i,t[9],2336552879,12),i=c(i,o,n,r,t[10],4294925233,17),r=c(r,i,o,n,t[11],2304563134,22),n=c(n,r,i,o,t[12],1804603682,7),o=c(o,n,r,i,t[13],4254626195,12),i=c(i,o,n,r,t[14],2792965006,17),n=f(n,r=c(r,i,o,n,t[15],1236535329,22),i,o,t[1],4129170786,5),o=f(o,n,r,i,t[6],3225465664,9),i=f(i,o,n,r,t[11],643717713,14),r=f(r,i,o,n,t[0],3921069994,20),n=f(n,r,i,o,t[5],3593408605,5),o=f(o,n,r,i,t[10],38016083,9),i=f(i,o,n,r,t[15],3634488961,14),r=f(r,i,o,n,t[4],3889429448,20),n=f(n,r,i,o,t[9],568446438,5),o=f(o,n,r,i,t[14],3275163606,9),i=f(i,o,n,r,t[3],4107603335,14),r=f(r,i,o,n,t[8],1163531501,20),n=f(n,r,i,o,t[13],2850285829,5),o=f(o,n,r,i,t[2],4243563512,9),i=f(i,o,n,r,t[7],1735328473,14),n=l(n,r=f(r,i,o,n,t[12],2368359562,20),i,o,t[5],4294588738,4),o=l(o,n,r,i,t[8],2272392833,11),i=l(i,o,n,r,t[11],1839030562,16),r=l(r,i,o,n,t[14],4259657740,23),n=l(n,r,i,o,t[1],2763975236,4),o=l(o,n,r,i,t[4],1272893353,11),i=l(i,o,n,r,t[7],4139469664,16),r=l(r,i,o,n,t[10],3200236656,23),n=l(n,r,i,o,t[13],681279174,4),o=l(o,n,r,i,t[0],3936430074,11),i=l(i,o,n,r,t[3],3572445317,16),r=l(r,i,o,n,t[6],76029189,23),n=l(n,r,i,o,t[9],3654602809,4),o=l(o,n,r,i,t[12],3873151461,11),i=l(i,o,n,r,t[15],530742520,16),n=d(n,r=l(r,i,o,n,t[2],3299628645,23),i,o,t[0],4096336452,6),o=d(o,n,r,i,t[7],1126891415,10),i=d(i,o,n,r,t[14],2878612391,15),r=d(r,i,o,n,t[5],4237533241,21),n=d(n,r,i,o,t[12],1700485571,6),o=d(o,n,r,i,t[3],2399980690,10),i=d(i,o,n,r,t[10],4293915773,15),r=d(r,i,o,n,t[1],2240044497,21),n=d(n,r,i,o,t[8],1873313359,6),o=d(o,n,r,i,t[15],4264355552,10),i=d(i,o,n,r,t[6],2734768916,15),r=d(r,i,o,n,t[13],1309151649,21),n=d(n,r,i,o,t[4],4149444226,6),o=d(o,n,r,i,t[11],3174756917,10),i=d(i,o,n,r,t[2],718787259,15),r=d(r,i,o,n,t[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},u.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=o.allocUnsafe(16);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t},t.exports=u},function(t,e,n){"use strict";var r=n(199).codes.ERR_STREAM_PREMATURE_CLOSE;function i(){}t.exports=function t(e,n,o){if("function"===typeof n)return t(e,null,n);n||(n={}),o=function(t){var e=!1;return function(){if(!e){e=!0;for(var n=arguments.length,r=new Array(n),i=0;i>>32-e}function g(t,e,n,r,i,o,a,u){return p(t+(e^n^r)+o+a|0,u)+i|0}function m(t,e,n,r,i,o,a,u){return p(t+(e&n|~e&r)+o+a|0,u)+i|0}function b(t,e,n,r,i,o,a,u){return p(t+((e|~n)^r)+o+a|0,u)+i|0}function v(t,e,n,r,i,o,a,u){return p(t+(e&r|n&~r)+o+a|0,u)+i|0}function y(t,e,n,r,i,o,a,u){return p(t+(e^(n|~r))+o+a|0,u)+i|0}i(h,o),h.prototype._update=function(){for(var t=a,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,h=0|this._e,_=0|this._a,w=0|this._b,S=0|this._c,O=0|this._d,x=0|this._e,E=0;E<80;E+=1){var M,T;E<16?(M=g(n,r,i,o,h,t[u[E]],l[0],c[E]),T=y(_,w,S,O,x,t[s[E]],d[0],f[E])):E<32?(M=m(n,r,i,o,h,t[u[E]],l[1],c[E]),T=v(_,w,S,O,x,t[s[E]],d[1],f[E])):E<48?(M=b(n,r,i,o,h,t[u[E]],l[2],c[E]),T=b(_,w,S,O,x,t[s[E]],d[2],f[E])):E<64?(M=v(n,r,i,o,h,t[u[E]],l[3],c[E]),T=m(_,w,S,O,x,t[s[E]],d[3],f[E])):(M=y(n,r,i,o,h,t[u[E]],l[4],c[E]),T=g(_,w,S,O,x,t[s[E]],d[4],f[E])),n=h,h=o,o=p(i,10),i=r,r=M,_=x,x=O,O=p(S,10),S=w,w=T}var $=this._b+i+O|0;this._b=this._c+o+x|0,this._c=this._d+h+_|0,this._d=this._e+n+w|0,this._e=this._a+r+S|0,this._a=$},h.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=r.alloc?r.alloc(20):new r(20);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t.writeInt32LE(this._e,16),t},t.exports=h},function(t,e,n){(e=t.exports=function(t){t=t.toLowerCase();var n=e[t];if(!n)throw new Error(t+" is not supported (we accept pull requests)");return new n}).sha=n(776),e.sha1=n(777),e.sha224=n(778),e.sha256=n(458),e.sha384=n(779),e.sha512=n(459)},function(t,e){var n={Array:function(t){function e(e){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(t){return null!==t&&void 0!==t&&t.constructor===Array})),Boolean:function(t){return"boolean"===typeof t},Function:function(t){return"function"===typeof t},Nil:function(t){return void 0===t||null===t},Number:function(t){return"number"===typeof t},Object:function(t){return"object"===typeof t},String:function(t){return"string"===typeof t},"":function(){return!0}};for(var r in n.Null=n.Nil,n)n[r].toJSON=function(t){return t}.bind(null,r);t.exports=n},function(t,e,n){var r=n(37).Buffer,i=n(157),o=n(60),a=n(786),u=n(67),s=n(77),c=n(132),f=n(462);function l(t){var e=t.length;return f.encodingLength(e)+e}function d(){this.version=1,this.locktime=0,this.ins=[],this.outs=[]}d.DEFAULT_SEQUENCE=4294967295,d.SIGHASH_ALL=1,d.SIGHASH_NONE=2,d.SIGHASH_SINGLE=3,d.SIGHASH_ANYONECANPAY=128,d.ADVANCED_TRANSACTION_MARKER=0,d.ADVANCED_TRANSACTION_FLAG=1;var h=r.allocUnsafe(0),p=[],g=r.from("0000000000000000000000000000000000000000000000000000000000000000","hex"),m=r.from("0000000000000000000000000000000000000000000000000000000000000001","hex"),b=r.from("ffffffffffffffff","hex"),v={script:h,valueBuffer:b};d.fromBuffer=function(t,e){var n=0;function r(e){return n+=e,t.slice(n-e,n)}function i(){var e=t.readUInt32LE(n);return n+=4,e}function o(){var e=a.readUInt64LE(t,n);return n+=8,e}function u(){var e=f.decode(t,n);return n+=f.decode.bytes,e}function s(){return r(u())}function c(){for(var t=u(),e=[],n=0;n=this.ins.length)return m;var a=o.compile(o.decompile(e).filter((function(t){return t!==u.OP_CODESEPARATOR}))),f=this.clone();if((31&n)===d.SIGHASH_NONE)f.outs=[],f.ins.forEach((function(e,n){n!==t&&(e.sequence=0)}));else if((31&n)===d.SIGHASH_SINGLE){if(t>=this.outs.length)return m;f.outs.length=t+1;for(var l=0;l>25;return(33554431&t)<<5^996825010&-(e>>0&1)^642813549&-(e>>1&1)^513874426&-(e>>2&1)^1027748829&-(e>>3&1)^705979059&-(e>>4&1)}function s(t){for(var e=1,n=0;n126)return"Invalid prefix ("+t+")";e=u(e)^r>>5}for(e=u(e),n=0;ne)return"Exceeds length limit";var n=t.toLowerCase(),r=t.toUpperCase();if(t!==n&&t!==r)return"Mixed-case string "+t;var o=(t=n).lastIndexOf("1");if(-1===o)return"No separator character for "+t;if(0===o)return"Missing prefix for "+t;var a=t.slice(0,o),c=t.slice(o+1);if(c.length<6)return"Data too short";var f=s(a);if("string"===typeof f)return f;for(var l=[],d=0;d=c.length||l.push(p)}return 1!==f?"Invalid checksum for "+t:{prefix:a,words:l}}function f(t,e,n,r){for(var i=0,o=0,a=(1<=n;)o-=n,u.push(i>>o&a);if(r)o>0&&u.push(i<=e)return"Excess padding";if(i<n)throw new TypeError("Exceeds length limit");var i=s(t=t.toLowerCase());if("string"===typeof i)throw new Error(i);for(var o=t+"1",a=0;a>5!==0)throw new Error("Non 5-bit word");i=u(i)^c,o+=r.charAt(c)}for(a=0;a<6;++a)i=u(i);for(i^=1,a=0;a<6;++a){o+=r.charAt(i>>5*(5-a)&31)}return o},toWordsUnsafe:function(t){var e=f(t,8,5,!0);if(Array.isArray(e))return e},toWords:function(t){var e=f(t,8,5,!0);if(Array.isArray(e))return e;throw new Error(e)},fromWordsUnsafe:function(t){var e=f(t,5,8,!1);if(Array.isArray(e))return e},fromWords:function(t){var e=f(t,5,8,!1);if(Array.isArray(e))return e;throw new Error(e)}}},function(t,e,n){var r=n(789),i=n(790),o=n(791),a=n(792),u=n(793),s=n(794),c=n(795);t.exports={embed:r,p2ms:i,p2pk:o,p2pkh:a,p2sh:u,p2wpkh:s,p2wsh:c}},function(t,e,n){t.exports={input:n(797),output:n(798)}},function(t,e,n){t.exports={input:n(800),output:n(801)}},function(t,e,n){t.exports={input:n(802),output:n(803)}},function(t,e,n){!function(e,r){var i;t.exports=(i=n(50),function(){var t=i,e=t.lib,n=e.WordArray,r=e.Hasher,o=t.algo,a=[],u=o.SHA1=r.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var n=this._hash.words,r=n[0],i=n[1],o=n[2],u=n[3],s=n[4],c=0;c<80;c++){if(c<16)a[c]=0|t[e+c];else{var f=a[c-3]^a[c-8]^a[c-14]^a[c-16];a[c]=f<<1|f>>>31}var l=(r<<5|r>>>27)+s+a[c];l+=c<20?1518500249+(i&o|~i&u):c<40?1859775393+(i^o^u):c<60?(i&o|i&u|o&u)-1894007588:(i^o^u)-899497514,s=u,u=o,o=i<<30|i>>>2,i=r,r=l}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+u|0,n[4]=n[4]+s|0},_doFinalize:function(){var t=this._data,e=t.words,n=8*this._nDataBytes,r=8*t.sigBytes;return e[r>>>5]|=128<<24-r%32,e[14+(r+64>>>9<<4)]=Math.floor(n/4294967296),e[15+(r+64>>>9<<4)]=n,t.sigBytes=4*e.length,this._process(),this._hash},clone:function(){var t=r.clone.call(this);return t._hash=this._hash.clone(),t}});t.SHA1=r._createHelper(u),t.HmacSHA1=r._createHmacHelper(u)}(),i.SHA1)}()},function(t,e,n){!function(e,r){var i;t.exports=(i=n(50),void function(){var t=i,e=t.lib.Base,n=t.enc.Utf8;t.algo.HMAC=e.extend({init:function(t,e){t=this._hasher=new t.init,"string"==typeof e&&(e=n.parse(e));var r=t.blockSize,i=4*r;e.sigBytes>i&&(e=t.finalize(e)),e.clamp();for(var o=this._oKey=e.clone(),a=this._iKey=e.clone(),u=o.words,s=a.words,c=0;c>1,c=i.getN(),f=i.getG(),d=s?n.add(c):n,h=i.fromX(u,d);if(!h.mul(c).isInfinity())throw new Error("nR is not a valid curve point");var p=e.neg().umod(c),g=n.invm(c),m=h.mul(o).add(f.mul(p)).mul(g);return a.fromPoint(m,this.sig.compressed)},d.prototype.sigError=function(){if(!c.isBuffer(this.hashbuf)||32!==this.hashbuf.length)return"hashbuf must be a 32 byte buffer";var t=this.sig.r,e=this.sig.s;if(!t.gt(r.Zero)||!t.lt(i.getN())||!e.gt(r.Zero)||!e.lt(i.getN()))return"r and s not in range";var n=r.fromBuffer(this.hashbuf,this.endian?{endian:this.endian}:void 0),o=i.getN(),a=e.invm(o),u=a.mul(n).umod(o),s=a.mul(t).umod(o),f=i.getG().mulAdd(u,this.pubkey.point,s);return f.isInfinity()?"p is infinity":0!==f.getX().umod(o).cmp(t)&&"Invalid signature"},d.toLowS=function(t){return t.gt(r.fromBuffer(e.from("7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0","hex")))&&(t=i.getN().sub(t)),t},d.prototype._findSignature=function(t,e){var n,o,a,u=i.getN(),s=i.getG(),c=0;do{(!this.k||c>0)&&this.deterministicK(c),c++,n=this.k,o=s.mul(n).x.umod(u),a=n.invm(u).mul(e.add(t.mul(o))).umod(u)}while(o.cmp(r.Zero)<=0||a.cmp(r.Zero)<=0);return{s:a=d.toLowS(a),r:o}},d.prototype.sign=function(){var t=this.hashbuf,e=this.privkey,n=e.bn;l.checkState(t&&e&&n,new Error("invalid parameters")),l.checkState(c.isBuffer(t)&&32===t.length,new Error("hashbuf must be a 32 byte buffer"));var i=r.fromBuffer(t,this.endian?{endian:this.endian}:void 0),a=this._findSignature(n,i);return a.compressed=this.pubkey.compressed,this.sig=new o(a),this},d.prototype.signRandomK=function(){return this.randomK(),this.sign()},d.prototype.toString=function(){var t={};return this.hashbuf&&(t.hashbuf=this.hashbuf.toString("hex")),this.privkey&&(t.privkey=this.privkey.toString()),this.pubkey&&(t.pubkey=this.pubkey.toString()),this.sig&&(t.sig=this.sig.toString()),this.k&&(t.k=this.k.toString()),JSON.stringify(t)},d.prototype.verify=function(){return this.sigError()?this.verified=!1:this.verified=!0,this},d.sign=function(t,e,n){return d().set({hashbuf:t,endian:n,privkey:e}).sign().sig},d.verify=function(t,e,n,r){return d().set({hashbuf:t,endian:r,sig:e,pubkey:n}).verify().verified},t.exports=d}).call(this,n(29).Buffer)},function(t,e,n){"use strict";var r=n(95);function i(t){this.options=t,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}t.exports=i,i.prototype._init=function(){},i.prototype.update=function(t){return 0===t.length?[]:"decrypt"===this.type?this._updateDecrypt(t):this._updateEncrypt(t)},i.prototype._buffer=function(t,e){for(var n=Math.min(this.buffer.length-this.bufferOff,t.length-e),r=0;r0;r--)e+=this._buffer(t,e),n+=this._flushBuffer(i,n);return e+=this._buffer(t,e),i},i.prototype.final=function(t){var e,n;return t&&(e=this.update(t)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),e?e.concat(n):n},i.prototype._pad=function(t,e){if(0===e)return!1;for(;e=0||!e.umod(t.prime1)||!e.umod(t.prime2));return e}function a(t,n){var i=function(t){var e=o(t);return{blinder:e.toRed(r.mont(t.modulus)).redPow(new r(t.publicExponent)).fromRed(),unblinder:e.invm(t.modulus)}}(n),a=n.modulus.byteLength(),u=new r(t).mul(i.blinder).umod(n.modulus),s=u.toRed(r.mont(n.prime1)),c=u.toRed(r.mont(n.prime2)),f=n.coefficient,l=n.prime1,d=n.prime2,h=s.redPow(n.exponent1).fromRed(),p=c.redPow(n.exponent2).fromRed(),g=h.isub(p).imul(f).umod(l).imul(d);return p.iadd(g).imul(i.unblinder).umod(n.modulus).toArrayLike(e,"be",a)}a.getr=o,t.exports=a}).call(this,n(29).Buffer)},function(t,e,n){"use strict";var r,i=e,o=n(181),a=n(498),u=n(116).assert;function s(t){"short"===t.type?this.curve=new a.short(t):"edwards"===t.type?this.curve=new a.edwards(t):this.curve=new a.mont(t),this.g=this.curve.g,this.n=this.curve.n,this.hash=t.hash,u(this.g.validate(),"Invalid curve"),u(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function c(t,e){Object.defineProperty(i,t,{configurable:!0,enumerable:!0,get:function(){var n=new s(e);return Object.defineProperty(i,t,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=s,c("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),c("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),c("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),c("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),c("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),c("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),c("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(902)}catch(f){r=void 0}c("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(t,e,n){"use strict";(function(e){var r,i=n(29),o=i.Buffer,a={};for(r in i)i.hasOwnProperty(r)&&"SlowBuffer"!==r&&"Buffer"!==r&&(a[r]=i[r]);var u=a.Buffer={};for(r in o)o.hasOwnProperty(r)&&"allocUnsafe"!==r&&"allocUnsafeSlow"!==r&&(u[r]=o[r]);if(a.Buffer.prototype=o.prototype,u.from&&u.from!==Uint8Array.from||(u.from=function(t,e,n){if("number"===typeof t)throw new TypeError('The "value" argument must not be of type number. Received type '+typeof t);if(t&&"undefined"===typeof t.length)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return o(t,e,n)}),u.alloc||(u.alloc=function(t,e,n){if("number"!==typeof t)throw new TypeError('The "size" argument must be of type number. Received type '+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError('The value "'+t+'" is invalid for option "size"');var r=o(t);return e&&0!==e.length?"string"===typeof n?r.fill(e,n):r.fill(e):r.fill(0),r}),!a.kStringMaxLength)try{a.kStringMaxLength=e.binding("buffer").kStringMaxLength}catch(s){}a.constants||(a.constants={MAX_LENGTH:a.kMaxLength},a.kStringMaxLength&&(a.constants.MAX_STRING_LENGTH=a.kStringMaxLength)),t.exports=a}).call(this,n(69))},function(t,e,n){"use strict";var r=n(383).Reporter,i=n(240).EncoderBuffer,o=n(240).DecoderBuffer,a=n(95),u=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],s=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(u);function c(t,e,n){var r={};this._baseState=r,r.name=n,r.enc=t,r.parent=e||null,r.children=null,r.tag=null,r.args=null,r.reverseArgs=null,r.choice=null,r.optional=!1,r.any=!1,r.obj=!1,r.use=null,r.useDecoder=null,r.key=null,r.default=null,r.explicit=null,r.implicit=null,r.contains=null,r.parent||(r.children=[],this._wrap())}t.exports=c;var f=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];c.prototype.clone=function(){var t=this._baseState,e={};f.forEach((function(n){e[n]=t[n]}));var n=new this.constructor(e.parent);return n._baseState=e,n},c.prototype._wrap=function(){var t=this._baseState;s.forEach((function(e){this[e]=function(){var n=new this.constructor(this);return t.children.push(n),n[e].apply(n,arguments)}}),this)},c.prototype._init=function(t){var e=this._baseState;a(null===e.parent),t.call(this),e.children=e.children.filter((function(t){return t._baseState.parent===this}),this),a.equal(e.children.length,1,"Root node can have only one child")},c.prototype._useArgs=function(t){var e=this._baseState,n=t.filter((function(t){return t instanceof this.constructor}),this);t=t.filter((function(t){return!(t instanceof this.constructor)}),this),0!==n.length&&(a(null===e.children),e.children=n,n.forEach((function(t){t._baseState.parent=this}),this)),0!==t.length&&(a(null===e.args),e.args=t,e.reverseArgs=t.map((function(t){if("object"!==typeof t||t.constructor!==Object)return t;var e={};return Object.keys(t).forEach((function(n){n==(0|n)&&(n|=0);var r=t[n];e[r]=n})),e})))},["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"].forEach((function(t){c.prototype[t]=function(){var e=this._baseState;throw new Error(t+" not implemented for encoding: "+e.enc)}})),u.forEach((function(t){c.prototype[t]=function(){var e=this._baseState,n=Array.prototype.slice.call(arguments);return a(null===e.tag),e.tag=t,this._useArgs(n),this}})),c.prototype.use=function(t){a(t);var e=this._baseState;return a(null===e.use),e.use=t,this},c.prototype.optional=function(){return this._baseState.optional=!0,this},c.prototype.def=function(t){var e=this._baseState;return a(null===e.default),e.default=t,e.optional=!0,this},c.prototype.explicit=function(t){var e=this._baseState;return a(null===e.explicit&&null===e.implicit),e.explicit=t,this},c.prototype.implicit=function(t){var e=this._baseState;return a(null===e.explicit&&null===e.implicit),e.implicit=t,this},c.prototype.obj=function(){var t=this._baseState,e=Array.prototype.slice.call(arguments);return t.obj=!0,0!==e.length&&this._useArgs(e),this},c.prototype.key=function(t){var e=this._baseState;return a(null===e.key),e.key=t,this},c.prototype.any=function(){return this._baseState.any=!0,this},c.prototype.choice=function(t){var e=this._baseState;return a(null===e.choice),e.choice=t,this._useArgs(Object.keys(t).map((function(e){return t[e]}))),this},c.prototype.contains=function(t){var e=this._baseState;return a(null===e.use),e.contains=t,this},c.prototype._decode=function(t,e){var n=this._baseState;if(null===n.parent)return t.wrapResult(n.children[0]._decode(t,e));var r,i=n.default,a=!0,u=null;if(null!==n.key&&(u=t.enterKey(n.key)),n.optional){var s=null;if(null!==n.explicit?s=n.explicit:null!==n.implicit?s=n.implicit:null!==n.tag&&(s=n.tag),null!==s||n.any){if(a=this._peekTag(t,s,n.any),t.isError(a))return a}else{var c=t.save();try{null===n.choice?this._decodeGeneric(n.tag,t,e):this._decodeChoice(t,e),a=!0}catch(g){a=!1}t.restore(c)}}if(n.obj&&a&&(r=t.enterObject()),a){if(null!==n.explicit){var f=this._decodeTag(t,n.explicit);if(t.isError(f))return f;t=f}var l=t.offset;if(null===n.use&&null===n.choice){var d;n.any&&(d=t.save());var h=this._decodeTag(t,null!==n.implicit?n.implicit:n.tag,n.any);if(t.isError(h))return h;n.any?i=t.raw(d):t=h}if(e&&e.track&&null!==n.tag&&e.track(t.path(),l,t.length,"tagged"),e&&e.track&&null!==n.tag&&e.track(t.path(),t.offset,t.length,"content"),n.any||(i=null===n.choice?this._decodeGeneric(n.tag,t,e):this._decodeChoice(t,e)),t.isError(i))return i;if(n.any||null!==n.choice||null===n.children||n.children.forEach((function(n){n._decode(t,e)})),n.contains&&("octstr"===n.tag||"bitstr"===n.tag)){var p=new o(i);i=this._getUse(n.contains,t._reporterState.obj)._decode(p,e)}}return n.obj&&a&&(i=t.leaveObject(r)),null===n.key||null===i&&!0!==a?null!==u&&t.exitKey(u):t.leaveKey(u,n.key,i),i},c.prototype._decodeGeneric=function(t,e,n){var r=this._baseState;return"seq"===t||"set"===t?null:"seqof"===t||"setof"===t?this._decodeList(e,t,r.args[0],n):/str$/.test(t)?this._decodeStr(e,t,n):"objid"===t&&r.args?this._decodeObjid(e,r.args[0],r.args[1],n):"objid"===t?this._decodeObjid(e,null,null,n):"gentime"===t||"utctime"===t?this._decodeTime(e,t,n):"null_"===t?this._decodeNull(e,n):"bool"===t?this._decodeBool(e,n):"objDesc"===t?this._decodeStr(e,t,n):"int"===t||"enum"===t?this._decodeInt(e,r.args&&r.args[0],n):null!==r.use?this._getUse(r.use,e._reporterState.obj)._decode(e,n):e.error("unknown tag: "+t)},c.prototype._getUse=function(t,e){var n=this._baseState;return n.useDecoder=this._use(t,e),a(null===n.useDecoder._baseState.parent),n.useDecoder=n.useDecoder._baseState.children[0],n.implicit!==n.useDecoder._baseState.implicit&&(n.useDecoder=n.useDecoder.clone(),n.useDecoder._baseState.implicit=n.implicit),n.useDecoder},c.prototype._decodeChoice=function(t,e){var n=this._baseState,r=null,i=!1;return Object.keys(n.choice).some((function(o){var a=t.save(),u=n.choice[o];try{var s=u._decode(t,e);if(t.isError(s))return!1;r={type:o,value:s},i=!0}catch(c){return t.restore(a),!1}return!0}),this),i?r:t.error("Choice not matched")},c.prototype._createEncoderBuffer=function(t){return new i(t,this.reporter)},c.prototype._encode=function(t,e,n){var r=this._baseState;if(null===r.default||r.default!==t){var i=this._encodeValue(t,e,n);if(void 0!==i&&!this._skipDefault(i,e,n))return i}},c.prototype._encodeValue=function(t,e,n){var i=this._baseState;if(null===i.parent)return i.children[0]._encode(t,e||new r);var o=null;if(this.reporter=e,i.optional&&void 0===t){if(null===i.default)return;t=i.default}var a=null,u=!1;if(i.any)o=this._createEncoderBuffer(t);else if(i.choice)o=this._encodeChoice(t,e);else if(i.contains)a=this._getUse(i.contains,n)._encode(t,e),u=!0;else if(i.children)a=i.children.map((function(n){if("null_"===n._baseState.tag)return n._encode(null,e,t);if(null===n._baseState.key)return e.error("Child should have a key");var r=e.enterKey(n._baseState.key);if("object"!==typeof t)return e.error("Child expected, but input is not object");var i=n._encode(t[n._baseState.key],e,t);return e.leaveKey(r),i}),this).filter((function(t){return t})),a=this._createEncoderBuffer(a);else if("seqof"===i.tag||"setof"===i.tag){if(!i.args||1!==i.args.length)return e.error("Too many args for : "+i.tag);if(!Array.isArray(t))return e.error("seqof/setof, but data is not Array");var s=this.clone();s._baseState.implicit=null,a=this._createEncoderBuffer(t.map((function(n){var r=this._baseState;return this._getUse(r.args[0],t)._encode(n,e)}),s))}else null!==i.use?o=this._getUse(i.use,n)._encode(t,e):(a=this._encodePrimitive(i.tag,t),u=!0);if(!i.any&&null===i.choice){var c=null!==i.implicit?i.implicit:i.tag,f=null===i.implicit?"universal":"context";null===c?null===i.use&&e.error("Tag could be omitted only for .use()"):null===i.use&&(o=this._encodeComposite(c,u,f,a))}return null!==i.explicit&&(o=this._encodeComposite(i.explicit,!1,"context",o)),o},c.prototype._encodeChoice=function(t,e){var n=this._baseState,r=n.choice[t.type];return r||a(!1,t.type+" not found in "+JSON.stringify(Object.keys(n.choice))),r._encode(t.value,e)},c.prototype._encodePrimitive=function(t,e){var n=this._baseState;if(/str$/.test(t))return this._encodeStr(e,t);if("objid"===t&&n.args)return this._encodeObjid(e,n.reverseArgs[0],n.args[1]);if("objid"===t)return this._encodeObjid(e,null,null);if("gentime"===t||"utctime"===t)return this._encodeTime(e,t);if("null_"===t)return this._encodeNull();if("int"===t||"enum"===t)return this._encodeInt(e,n.args&&n.reverseArgs[0]);if("bool"===t)return this._encodeBool(e);if("objDesc"===t)return this._encodeStr(e,t);throw new Error("Unsupported tag: "+t)},c.prototype._isNumstr=function(t){return/^[0-9 ]*$/.test(t)},c.prototype._isPrintstr=function(t){return/^[A-Za-z0-9 '()+,-./:=?]*$/.test(t)}},function(t,e,n){"use strict";var r=n(38);function i(t){this._reporterState={obj:null,path:[],options:t||{},errors:[]}}function o(t,e){this.path=t,this.rethrow(e)}e.Reporter=i,i.prototype.isError=function(t){return t instanceof o},i.prototype.save=function(){var t=this._reporterState;return{obj:t.obj,pathLen:t.path.length}},i.prototype.restore=function(t){var e=this._reporterState;e.obj=t.obj,e.path=e.path.slice(0,t.pathLen)},i.prototype.enterKey=function(t){return this._reporterState.path.push(t)},i.prototype.exitKey=function(t){var e=this._reporterState;e.path=e.path.slice(0,t-1)},i.prototype.leaveKey=function(t,e,n){var r=this._reporterState;this.exitKey(t),null!==r.obj&&(r.obj[e]=n)},i.prototype.path=function(){return this._reporterState.path.join("/")},i.prototype.enterObject=function(){var t=this._reporterState,e=t.obj;return t.obj={},e},i.prototype.leaveObject=function(t){var e=this._reporterState,n=e.obj;return e.obj=t,n},i.prototype.error=function(t){var e,n=this._reporterState,r=t instanceof o;if(e=r?t:new o(n.path.map((function(t){return"["+JSON.stringify(t)+"]"})).join(""),t.message||t,t.stack),!n.options.partial)throw e;return r||n.errors.push(e),e},i.prototype.wrapResult=function(t){var e=this._reporterState;return e.options.partial?{result:this.isError(t)?null:t,errors:e.errors}:t},r(o,Error),o.prototype.rethrow=function(t){if(this.message=t+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,o),!this.stack)try{throw new Error(this.message)}catch(e){this.stack=e.stack}return this}},function(t,e,n){"use strict";function r(t){var e={};return Object.keys(t).forEach((function(n){(0|n)==n&&(n|=0);var r=t[n];e[r]=n})),e}e.tagClass={0:"universal",1:"application",2:"context",3:"private"},e.tagClassByName=r(e.tagClass),e.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},e.tagByName=r(e.tag)},function(t,e,n){"use strict";var r,i=e,o=n(181),a=n(506),u=n(117).assert;function s(t){"short"===t.type?this.curve=new a.short(t):"edwards"===t.type?this.curve=new a.edwards(t):this.curve=new a.mont(t),this.g=this.curve.g,this.n=this.curve.n,this.hash=t.hash,u(this.g.validate(),"Invalid curve"),u(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function c(t,e){Object.defineProperty(i,t,{configurable:!0,enumerable:!0,get:function(){var n=new s(e);return Object.defineProperty(i,t,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=s,c("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),c("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),c("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),c("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),c("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),c("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),c("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(927)}catch(f){r=void 0}c("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(t,e,n){"use strict";(function(e){var r=n(78),i=n(186),o=n(100),a=(n(101),n(242),n(84)),u=n(63),s=(n(49),n(52)),c=function t(e){if(!(this instanceof t))return new t(e);e&&this.set(e)};function f(t){return t.toBuffer().length<32?t.toBuffer({size:32}):t.toBuffer()}c.prototype.set=function(t){return this.hashbuf=t.hashbuf||this.hashbuf,this.endian=t.endian||this.endian,this.privkey=t.privkey||this.privkey,this.pubkey=t.pubkey||(this.privkey?this.privkey.publicKey:this.pubkey),this.sig=t.sig||this.sig,this.verified=t.verified||this.verified,this},c.prototype.privkey2pubkey=function(){this.pubkey=this.privkey.toPublicKey()},c.prototype.toPublicKey=function(){return this.privkey.toPublicKey()},c.prototype.sign=function(){var t=this.hashbuf,e=this.privkey,n=e.bn;s.checkState(t&&e&&n,new Error("invalid parameters")),s.checkState(u.isBuffer(t)&&32===t.length,new Error("hashbuf must be a 32 byte buffer"));var i=r.fromBuffer(t,this.endian?{endian:this.endian}:void 0),a=this._findSignature(n,i);return a.compressed=this.pubkey.compressed,a.isSchnorr=!0,this.sig=new o(a),this},c.prototype._findSignature=function(t,n){var o=i.getN(),u=i.getG();s.checkState(!t.lte(new r(0)),new Error("privkey out of field of curve")),s.checkState(!t.gte(o),new Error("privkey out of field of curve"));var c=this.nonceFunctionRFC6979(t.toBuffer({size:32}),n.toBuffer({size:32})),l=u.mul(t),d=u.mul(c);c=d.hasSquare()?c:o.sub(c);var h=d.getX();return{r:h,s:r.fromBuffer(a.sha256(e.concat([f(h),i.pointToCompressed(l),n.toBuffer({size:32})]))).mul(t).add(c).mod(o)}},c.prototype.sigError=function(){if(!u.isBuffer(this.hashbuf)||32!==this.hashbuf.length)return"hashbuf must be a 32 byte buffer";var t=f(this.sig.r).length+function(t){return t.toBuffer().length<32?t.toBuffer({size:32}):t.toBuffer()}(this.sig.s).length;if(64!==t&&65!==t)return"signature must be a 64 byte or 65 byte array";var n="little"===this.endian?u.reverse(this.hashbuf):this.hashbuf,o=this.pubkey.point,s=i.getG();if(o.isInfinity())return!0;var c=this.sig.r,l=this.sig.s,d=new r("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F","hex"),h=i.getN();if(c.gte(d)||l.gte(h))return!0;var p=f(this.sig.r),g=i.pointToCompressed(o),m=a.sha256(e.concat([p,g,n])),b=r.fromBuffer(m,"big").umod(h),v=s.mul(l),y=o.mul(h.sub(b)),_=v.add(y);return!(!_.isInfinity()&&_.hasSquare()&&_.getX().eq(c))},c.prototype.verify=function(){return this.sigError()?this.verified=!1:this.verified=!0,this},c.prototype.nonceFunctionRFC6979=function(t,n){var o=e.from("0101010101010101010101010101010101010101010101010101010101010101","hex"),u=e.from("0000000000000000000000000000000000000000000000000000000000000000","hex"),c=e.concat([t,n,e.from("","ascii"),e.from("Schnorr+SHA256 ","ascii")]);u=a.sha256hmac(e.concat([o,e.from("00","hex"),c]),u),o=a.sha256hmac(o,u),u=a.sha256hmac(e.concat([o,e.from("01","hex"),c]),u),o=a.sha256hmac(o,u);for(var f=new r(0);o=a.sha256hmac(o,u),f=r.fromBuffer(o),s.checkState(o.length>=32,"V length should be >= 32"),!f.gt(new r(0))||!f.lt(i.getN());)u=a.sha256hmac(e.concat([o,e.from("00","hex")]),u),o=a.hmac(a.sha256,o,u);return f},c.sign=function(t,e,n){return c().set({hashbuf:t,endian:n,privkey:e}).sign().sig},c.verify=function(t,e,n,r){return c().set({hashbuf:t,endian:r,sig:e,pubkey:n}).verify().verified},t.exports=c}).call(this,n(29).Buffer)},function(t,e,n){"use strict";(function(e){var r=n(513),i=n(372),o=n(942),a=n(515),u=n(49),s=n(52),c=n(29),f=e.compare||n(943),l=n(115),d=n(63),h=n(79),p=n(160),g=n(134),m=n(84),b=n(100),v=n(152),y=n(187),_=n(516),w=n(388),S=w.PublicKeyHash,O=w.PublicKey,x=w.MultiSigScriptHash,E=w.MultiSig,M=w.Escrow,T=n(153),$=n(118),A=n(273),k=n(101),C=n(78);function I(t){if(!(this instanceof I))return new I(t);if(this.inputs=[],this.outputs=[],this._inputAmount=void 0,this._outputAmount=void 0,t){if(t instanceof I)return I.shallowCopy(t);if(h.isHexa(t))this.fromString(t);else if(d.isBuffer(t))this.fromBuffer(t);else{if(!u.isObject(t))throw new l.InvalidArgument("Must provide an object or string to deserialize a transaction");this.fromObject(t)}}else this._newTransaction()}I.DUST_AMOUNT=546,I.FEE_SECURITY_MARGIN=150,I.MAX_MONEY=21e14,I.NLOCKTIME_BLOCKHEIGHT_LIMIT=5e8,I.NLOCKTIME_MAX_VALUE=4294967295,I.FEE_PER_KB=1e5,I.CHANGE_OUTPUT_MAX_SIZE=62,I.MAXIMUM_EXTRA_SIZE=26,I.shallowCopy=function(t){return new I(t.toBuffer())};var P={configurable:!1,enumerable:!0,get:function(){return this._hash=new p(this._getHash()).readReverse().toString("hex"),this._hash}};Object.defineProperty(I.prototype,"hash",P),Object.defineProperty(I.prototype,"id",P);var N={configurable:!1,enumerable:!0,get:function(){return this._getInputAmount()}};Object.defineProperty(I.prototype,"inputAmount",N),N.get=function(){return this._getOutputAmount()},Object.defineProperty(I.prototype,"outputAmount",N),I.prototype._getHash=function(){return m.sha256sha256(this.toBuffer())},I.prototype.serialize=function(t){return!0===t||t&&t.disableAll?this.uncheckedSerialize():this.checkedSerialize(t)},I.prototype.uncheckedSerialize=I.prototype.toString=function(){return this.toBuffer().toString("hex")},I.prototype.checkedSerialize=function(t){var e=this.getSerializationError(t);if(e)throw e.message+=" - For more information please see: https://bitcore.io/api/lib/transaction#serialization-checks",e;return this.uncheckedSerialize()},I.prototype.invalidSatoshis=function(){for(var t=!1,e=0;en)return this._missingChange()?new l.Transaction.ChangeAddressMissing("Fee is too large and no change address was provided"):new l.Transaction.FeeError.TooLarge("expected less than "+n+" but got "+e)}if(!t.disableSmallFees){var r=Math.ceil(this._estimateFee()/I.FEE_SECURITY_MARGIN);if(e"},I.prototype.toBuffer=function(){var t=new g;return this.toBufferWriter(t).toBuffer()},I.prototype.toBufferWriter=function(t){return t.writeInt32LE(this.version),t.writeVarintNum(this.inputs.length),u.each(this.inputs,(function(e){e.toBufferWriter(t)})),t.writeVarintNum(this.outputs.length),u.each(this.outputs,(function(e){e.toBufferWriter(t)})),t.writeUInt32LE(this.nLockTime),t},I.prototype.fromBuffer=function(t){var e=new p(t);return this.fromBufferReader(e)},I.prototype.fromBufferReader=function(t){var e,n,r;for(s.checkArgument(!t.finished(),"No transaction data received"),this.version=t.readInt32LE(),n=t.readVarintNum(),e=0;e=I.NLOCKTIME_BLOCKHEIGHT_LIMIT)throw new l.Transaction.BlockHeightTooHigh;if(t<0)throw new l.Transaction.NLockTimeOutOfRange;for(var e=0;e1?this._fromEscrowUtxo(t,t.publicKeys):this._fromNonP2SH(t)),this},I.prototype.associateInputs=function(t,e,n,r){var i,o=this,u=[],s=a(t);try{var c=function(){var t=i.value,a=o.inputs.findIndex((function(e){return e.prevTxId.toString("hex")===t.txId&&e.outputIndex===t.outputIndex}));u.push(a),a>=0&&(o.inputs[a]=o._getInputFrom(t,e,n,r))};for(s.s();!(i=s.n()).done;)c()}catch(f){s.e(f)}finally{s.f()}return u},I.prototype._selectInputType=function(t,e,n){var r;return t=new _(t),e&&n?t.script.isMultisigOut()?r=E:(t.script.isScriptHashOut()||t.script.isWitnessScriptHashOut())&&(r=x):r=t.script.isPublicKeyHashOut()||t.script.isWitnessPublicKeyHashOut()||t.script.isScriptHashOut()?S:t.script.isPublicKeyOut()?O:w,r},I.prototype._getInputFrom=function(t,e,n,r){t=new _(t);var i=this._selectInputType(t,e,n),a={output:new T({script:t.script,satoshis:t.satoshis}),prevTxId:t.txId,outputIndex:t.outputIndex,sequenceNumber:t.sequenceNumber,script:$.empty()};return o(i,[a].concat(e&&n?[e,n,!1,r]:[]))},I.prototype._fromEscrowUtxo=function(t,e){var n=e.map((function(t){return new k(t)})),r=n.slice(1),i=n[0];t=new _(t),this.addInput(new M({output:new T({script:t.script,satoshis:t.satoshis}),prevTxId:t.txId,outputIndex:t.outputIndex,script:$.empty()},r,i))},I.prototype._fromNonP2SH=function(t){var e;e=(t=new _(t)).script.isPublicKeyHashOut()?S:t.script.isPublicKeyOut()?O:w,this.addInput(new e({output:new T({script:t.script,satoshis:t.satoshis}),prevTxId:t.txId,outputIndex:t.outputIndex,script:$.empty()}))},I.prototype._fromMultisigUtxo=function(t,e,n,r){var i;if(s.checkArgument(n<=e.length,"Number of required signatures must be greater than the number of public keys"),(t=new _(t)).script.isMultisigOut())i=E;else{if(!t.script.isScriptHashOut())throw new Error("@TODO");i=x}this.addInput(new i({output:new T({script:t.script,satoshis:t.satoshis}),prevTxId:t.txId,outputIndex:t.outputIndex,script:$.empty()},e,n,void 0,r))},I.prototype.addInput=function(t,e,n){if(s.checkArgumentType(t,w,"input"),!t.output&&(u.isUndefined(e)||u.isUndefined(n)))throw new l.Transaction.NeedMoreInfo("Need information about the UTXO script and satoshis");return t.output||!e||u.isUndefined(n)||(e=e instanceof $?e:new $(e),s.checkArgumentType(n,"number","satoshis"),t.output=new T({script:e,satoshis:n})),this.uncheckedAddInput(t)},I.prototype.uncheckedAddInput=function(t){return s.checkArgumentType(t,w,"input"),this.inputs.push(t),this._inputAmount=void 0,this._updateChangeOutput(),this},I.prototype.hasAllUtxoInfo=function(){return u.every(this.inputs.map((function(t){return!!t.output})))},I.prototype.fee=function(t){return s.checkArgument(u.isNumber(t),"amount must be a number"),this._fee=t,this._updateChangeOutput(),this},I.prototype.feePerKb=function(t){return s.checkArgument(u.isNumber(t),"amount must be a number"),this._feePerKb=t,this._updateChangeOutput(),this},I.prototype.feePerByte=function(t){return s.checkArgument(u.isNumber(t),"amount must be a number"),this._feePerByte=t,this._updateChangeOutput(),this},I.prototype.change=function(t){return s.checkArgument(t,"address is required"),this._changeScript=$.fromAddress(t),this._updateChangeOutput(),this},I.prototype.escrow=function(t,e){s.checkArgument(this.inputs.length>0,"inputs must have already been set when setting escrow"),s.checkArgument(this.outputs.length>0,"non-change outputs must have already been set when setting escrow"),s.checkArgument(!this.getChangeOutput(),"change must still be unset when setting escrow"),s.checkArgument(t,"address is required"),s.checkArgument(e,"amount is required");var n=this._getOutputAmount()+this.getFee()+e,r=this._getInputAmount()-n>I.DUST_AMOUNT;return this.to(t,e),r||(this._fee=void 0),this},I.prototype.getChangeOutput=function(){return u.isUndefined(this._changeIndex)?null:this.outputs[this._changeIndex]},I.prototype.to=function(t,e){if(u.isArray(t)){var n=this;return u.each(t,(function(t){n.to(t.address,t.satoshis)})),this}return s.checkArgument(h.isNaturalNumber(e),"Amount is expected to be a positive integer"),this.addOutput(new T({script:$(new y(t)),satoshis:e})),this},I.prototype.addData=function(t){return this.addOutput(new T({script:$.buildDataOut(t),satoshis:0})),this},I.prototype.addOutput=function(t){return s.checkArgumentType(t,T,"output"),this._addOutput(t),this._updateChangeOutput(),this},I.prototype.clearOutputs=function(){return this.outputs=[],this._clearSignatures(),this._outputAmount=void 0,this._changeIndex=void 0,this._updateChangeOutput(),this},I.prototype._addOutput=function(t){this.outputs.push(t),this._outputAmount=void 0},I.prototype._getOutputAmount=function(){if(u.isUndefined(this._outputAmount)){var t=this;this._outputAmount=0,u.each(this.outputs,(function(e){t._outputAmount+=e.satoshis}))}return this._outputAmount},I.prototype._getInputAmount=function(){return u.isUndefined(this._inputAmount)&&(this._inputAmount=u.sumBy(this.inputs,(function(t){if(u.isUndefined(t.output))throw new l.Transaction.Input.MissingPreviousOutput;return t.output.satoshis}))),this._inputAmount},I.prototype._updateChangeOutput=function(){if(this._changeScript){this._clearSignatures(),u.isUndefined(this._changeIndex)||this._removeOutput(this._changeIndex);var t=this._getUnspentValue()-this.getFee();t>=I.DUST_AMOUNT?(this._changeIndex=this.outputs.length,this._addOutput(new T({script:this._changeScript,satoshis:t}))):this._changeIndex=void 0}},I.prototype.getFee=function(){return this.isCoinbase()?0:u.isUndefined(this._fee)?this._changeScript?this._estimateFee():this._getUnspentValue():this._fee},I.prototype._estimateFee=function(){var t=this._estimateSize(),e=this._getUnspentValue(),n=this._feePerByte||(this._feePerKb||I.FEE_PER_KB)/1e3;function r(t){return t*n}var i=Math.ceil(r(t)),o=Math.ceil(r(t)+r(I.CHANGE_OUTPUT_MAX_SIZE));return!this._changeScript||e<=o?i:o},I.prototype._getUnspentValue=function(){return this._getInputAmount()-this._getOutputAmount()},I.prototype._clearSignatures=function(){u.each(this.inputs,(function(t){t.clearSignatures()}))},I.prototype._estimateSize=function(){var t=I.MAXIMUM_EXTRA_SIZE;return u.each(this.inputs,(function(e){var n=e._estimateSize(),r=g.varintBufNum(n).length;t+=36+r+n})),u.each(this.outputs,(function(e){t+=e.script.toBuffer().length+9})),t},I.prototype._removeOutput=function(t){var e=this.outputs[t];this.outputs=u.without(this.outputs,e),this._outputAmount=void 0},I.prototype.removeOutput=function(t){this._removeOutput(t),this._updateChangeOutput()},I.prototype.sort=function(){return this.sortInputs((function(t){var e=Array.prototype.concat.apply([],t),n=0;return e.forEach((function(t){t.i=n++})),e.sort((function(t,e){return f(t.prevTxId,e.prevTxId)||t.outputIndex-e.outputIndex||t.i-e.i})),e})),this.sortOutputs((function(t){var e=Array.prototype.concat.apply([],t),n=0;return e.forEach((function(t){t.i=n++})),e.sort((function(t,e){return t.satoshis-e.satoshis||f(t.script.toBuffer(),e.script.toBuffer())||t.i-e.i})),e})),this},I.prototype.shuffleOutputs=function(){return this.sortOutputs(u.shuffle)},I.prototype.sortOutputs=function(t){var e=t(this.outputs);return this._newOutputOrder(e)},I.prototype.sortInputs=function(t){return this.inputs=t(this.inputs),this._clearSignatures(),this},I.prototype._newOutputOrder=function(t){if(this.outputs.length!==t.length||0!==u.difference(this.outputs,t).length)throw new l.Transaction.InvalidSorting;if(!u.isUndefined(this._changeIndex)){var e=this.outputs[this._changeIndex];this._changeIndex=u.findIndex(t,e)}return this.outputs=t,this},I.prototype.removeInput=function(t,e){var n;if((n=!e&&u.isNumber(t)?t:u.findIndex(this.inputs,(function(n){return n.prevTxId.toString("hex")===t&&n.outputIndex===e})))<0||n>=this.inputs.length)throw new l.Transaction.InvalidIndex(n,this.inputs.length);var r=this.inputs[n];this.inputs=u.without(this.inputs,r),this._inputAmount=void 0,this._updateChangeOutput()},I.prototype.sign=function(t,e,n){n=n||"ecdsa",s.checkState(this.hasAllUtxoInfo(),"Not all utxo information is available to sign the transaction.");var r=this;return u.isArray(t)?(u.each(t,(function(t){r.sign(t,e,n)})),this):(u.each(this.getSignatures(t,e,n),(function(t){r.applySignature(t,n)})),this)},I.prototype.getSignatures=function(t,e,n){t=new A(t),e=e||b.SIGHASH_ALL|b.SIGHASH_FORKID;var r=this,i=[],o=m.sha256ripemd160(t.publicKey.toBuffer());return u.each(this.inputs,(function(a,s){u.each(a.getSignatures(r,t,s,e,o,n),(function(t){i.push(t)}))})),i},I.prototype.applySignature=function(t,e){return this.inputs[t.inputIndex].addSignature(this,t,e),this},I.prototype.isFullySigned=function(){return u.each(this.inputs,(function(t){if(t.isFullySigned===w.prototype.isFullySigned)throw new l.Transaction.UnableToVerifySignature("Unrecognized script kind, or not enough information to execute script.This usually happens when creating a transaction from a serialized transaction")})),u.every(u.map(this.inputs,(function(t){return t.isFullySigned()})))},I.prototype.isValidSignature=function(t){if(this.inputs[t.inputIndex].isValidSignature===w.prototype.isValidSignature)throw new l.Transaction.UnableToVerifySignature("Unrecognized script kind, or not enough information to execute script.This usually happens when creating a transaction from a serialized transaction");return this.inputs[t.inputIndex].isValidSignature(this,t)},I.prototype.verifySignature=function(t,e,n,r,i,o,a){return v.verify(this,t,e,n,r,i,o,a)},I.prototype.verify=function(){if(0===this.inputs.length)return"transaction txins empty";if(0===this.outputs.length)return"transaction txouts empty";for(var t=new C(0),e=0;e1e6)return"transaction over the maximum block size";var r={};for(e=0;e100)return"coinbase transaction script size invalid"}else for(e=0;e65536)return!1;if(!this.inputs.every((function(t){return t.script.isPublicKeyHashIn()})))return!1;var o;try{o=new I(t)}catch(T){return!1}var a=o.inputs[0];if(a.prevTxId.toString("hex")!==this.id)return!1;var u=this.outputs[a.outputIndex];if(!u)return!1;var s=this.uncheckedSerialize().length/2*n;if(u.toObject().satoshis"},t.exports=u},function(t,e,n){"use strict";t.exports=function(t){var e=t.uri,n=t.name,r=t.type;this.uri=e,this.name=n,this.type=r}},function(t,e,n){"use strict";var r=n(390);t.exports=function(t){return"undefined"!==typeof File&&t instanceof File||"undefined"!==typeof Blob&&t instanceof Blob||t instanceof r}},function(t,e,n){"use strict";n.r(e);var r=n(394);n.d(e,"default",(function(){return r.a}))},function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var r=n(4),i=n(135);function o(t){return t&&"object"===Object(i.a)(t)&&t.constructor===Object}function a(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{clone:!0},i=n.clone?Object(r.a)({},t):t;return o(t)&&o(e)&&Object.keys(e).forEach((function(r){"__proto__"!==r&&(o(e[r])&&r in t?i[r]=a(t[r],e[r],n):i[r]=e[r])})),i}},function(t,e,n){"use strict";var r=n(4),i=n(17),o=n(1),a=(n(13),n(15)),u=n(24),s=n(36),c=n(337),f=n(34),l=o.forwardRef((function(t,e){var n=t.edge,u=void 0!==n&&n,s=t.children,l=t.classes,d=t.className,h=t.color,p=void 0===h?"default":h,g=t.disabled,m=void 0!==g&&g,b=t.disableFocusRipple,v=void 0!==b&&b,y=t.size,_=void 0===y?"medium":y,w=Object(i.a)(t,["edge","children","classes","className","color","disabled","disableFocusRipple","size"]);return o.createElement(c.a,Object(r.a)({className:Object(a.a)(l.root,d,"default"!==p&&l["color".concat(Object(f.a)(p))],m&&l.disabled,"small"===_&&l["size".concat(Object(f.a)(_))],{start:l.edgeStart,end:l.edgeEnd}[u]),centerRipple:!0,focusRipple:!v,disabled:m,ref:e},w),o.createElement("span",{className:l.label},s))}));e.a=Object(u.a)((function(t){return{root:{textAlign:"center",flex:"0 0 auto",fontSize:t.typography.pxToRem(24),padding:12,borderRadius:"50%",overflow:"visible",color:t.palette.action.active,transition:t.transitions.create("background-color",{duration:t.transitions.duration.shortest}),"&:hover":{backgroundColor:Object(s.d)(t.palette.action.active,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},"&$disabled":{backgroundColor:"transparent",color:t.palette.action.disabled}},edgeStart:{marginLeft:-12,"$sizeSmall&":{marginLeft:-3}},edgeEnd:{marginRight:-12,"$sizeSmall&":{marginRight:-3}},colorInherit:{color:"inherit"},colorPrimary:{color:t.palette.primary.main,"&:hover":{backgroundColor:Object(s.d)(t.palette.primary.main,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},colorSecondary:{color:t.palette.secondary.main,"&:hover":{backgroundColor:Object(s.d)(t.palette.secondary.main,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},disabled:{},sizeSmall:{padding:3,fontSize:t.typography.pxToRem(18)},label:{width:"100%",display:"flex",alignItems:"inherit",justifyContent:"inherit"}}}),{name:"MuiIconButton"})(l)},function(t,e,n){"use strict";var r=n(4),i=n(17),o=n(1),a=(n(13),n(48)),u=n(215),s=n(578),c=n(44),f=n(96),l=n(90),d=n(122);function h(t,e){var n=function(t,e){var n,r=e.getBoundingClientRect();if(e.fakeTransform)n=e.fakeTransform;else{var i=window.getComputedStyle(e);n=i.getPropertyValue("-webkit-transform")||i.getPropertyValue("transform")}var o=0,a=0;if(n&&"none"!==n&&"string"===typeof n){var u=n.split("(")[1].split(")")[0].split(",");o=parseInt(u[4],10),a=parseInt(u[5],10)}return"left"===t?"translateX(".concat(window.innerWidth,"px) translateX(").concat(o-r.left,"px)"):"right"===t?"translateX(-".concat(r.left+r.width-o,"px)"):"up"===t?"translateY(".concat(window.innerHeight,"px) translateY(").concat(a-r.top,"px)"):"translateY(-".concat(r.top+r.height-a,"px)")}(t,e);n&&(e.style.webkitTransform=n,e.style.transform=n)}var p={enter:l.b.enteringScreen,exit:l.b.leavingScreen},g=o.forwardRef((function(t,e){var n=t.children,l=t.direction,g=void 0===l?"down":l,m=t.in,b=t.onEnter,v=t.onEntered,y=t.onEntering,_=t.onExit,w=t.onExited,S=t.onExiting,O=t.style,x=t.timeout,E=void 0===x?p:x,M=t.TransitionComponent,T=void 0===M?s.a:M,$=Object(i.a)(t,["children","direction","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","style","timeout","TransitionComponent"]),A=Object(f.a)(),k=o.useRef(null),C=o.useCallback((function(t){k.current=a.findDOMNode(t)}),[]),I=Object(c.a)(n.ref,C),P=Object(c.a)(I,e),N=function(t){return function(e){t&&(void 0===e?t(k.current):t(k.current,e))}},R=N((function(t,e){h(g,t),Object(d.b)(t),b&&b(t,e)})),j=N((function(t,e){var n=Object(d.a)({timeout:E,style:O},{mode:"enter"});t.style.webkitTransition=A.transitions.create("-webkit-transform",Object(r.a)({},n,{easing:A.transitions.easing.easeOut})),t.style.transition=A.transitions.create("transform",Object(r.a)({},n,{easing:A.transitions.easing.easeOut})),t.style.webkitTransform="none",t.style.transform="none",y&&y(t,e)})),D=N(v),L=N(S),F=N((function(t){var e=Object(d.a)({timeout:E,style:O},{mode:"exit"});t.style.webkitTransition=A.transitions.create("-webkit-transform",Object(r.a)({},e,{easing:A.transitions.easing.sharp})),t.style.transition=A.transitions.create("transform",Object(r.a)({},e,{easing:A.transitions.easing.sharp})),h(g,t),_&&_(t)})),B=N((function(t){t.style.webkitTransition="",t.style.transition="",w&&w(t)})),U=o.useCallback((function(){k.current&&h(g,k.current)}),[g]);return o.useEffect((function(){if(!m&&"down"!==g&&"right"!==g){var t=Object(u.a)((function(){k.current&&h(g,k.current)}));return window.addEventListener("resize",t),function(){t.clear(),window.removeEventListener("resize",t)}}}),[g,m]),o.useEffect((function(){m||U()}),[m,U]),o.createElement(T,Object(r.a)({nodeRef:k,onEnter:R,onEntered:D,onEntering:j,onExit:F,onExited:B,onExiting:L,appear:!0,in:m,timeout:E},$),(function(t,e){return o.cloneElement(n,Object(r.a)({ref:P,style:Object(r.a)({visibility:"exited"!==t||m?void 0:"hidden"},O,n.props.style)},e))}))}));e.a=g},function(t,e,n){"use strict";t.exports=n(614)},function(t,e,n){var r=n(431)((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}));t.exports=r},function(t,e,n){var r=n(719);t.exports=h,t.exports.parse=o,t.exports.compile=function(t,e){return u(o(t,e),e)},t.exports.tokensToFunction=u,t.exports.tokensToRegExp=d;var i=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function o(t,e){for(var n,r=[],o=0,a=0,u="",f=e&&e.delimiter||"/";null!=(n=i.exec(t));){var l=n[0],d=n[1],h=n.index;if(u+=t.slice(a,h),a=h+l.length,d)u+=d[1];else{var p=t[a],g=n[2],m=n[3],b=n[4],v=n[5],y=n[6],_=n[7];u&&(r.push(u),u="");var w=null!=g&&null!=p&&p!==g,S="+"===y||"*"===y,O="?"===y||"*"===y,x=n[2]||f,E=b||v;r.push({name:m||o++,prefix:g||"",delimiter:x,optional:O,repeat:S,partial:w,asterisk:!!_,pattern:E?c(E):_?".*":"[^"+s(x)+"]+?"})}}return a=r}}),"es6","es3"),$jscomp.findInternal=function(t,e,n){t instanceof String&&(t=String(t));for(var r=t.length,i=0;i=i}}),"es6","es3"),$jscomp.polyfill("String.prototype.repeat",(function(t){return t||function(t){var e=$jscomp.checkStringArgs(this,null,"repeat");if(0>t||1342177279>>=1)&&(e+=e);return n}}),"es6","es3"),$jscomp.arrayIteratorImpl=function(t){var e=0;return function(){return e>>0),goog.uidCounter_=0,goog.cloneObject=function(t){var e=goog.typeOf(t);if("object"==e||"array"==e){if("function"===typeof t.clone)return t.clone();for(var n in e="array"==e?[]:{},t)e[n]=goog.cloneObject(t[n]);return e}return t},goog.bindNative_=function(t,e,n){return t.call.apply(t.bind,arguments)},goog.bindJs_=function(t,e,n){if(!t)throw Error();if(2").replace(/'/g,"'").replace(/"/g,'"').replace(/&/g,"&")),e&&(t=t.replace(/\{\$([^}]+)}/g,(function(t,n){return null!=e&&n in e?e[n]:t}))),t},goog.getMsgWithFallback=function(t,e){return t},goog.exportSymbol=function(t,e,n){goog.exportPath_(t,e,!0,n)},goog.exportProperty=function(t,e,n){t[e]=n},goog.inherits=function(t,e){function n(){}n.prototype=e.prototype,t.superClass_=e.prototype,t.prototype=new n,t.prototype.constructor=t,t.base=function(t,n,r){for(var i=Array(arguments.length-2),o=2;o{"use strict";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()')})),a("es7",(function(){return b("2 ** 2 == 4")})),a("es8",(function(){return b("async () => 1, true")})),a("es9",(function(){return b("({...rest} = {}), true")})),a("es_next",(function(){return!1})),{target:c,map:d}},goog.Transpiler.prototype.needsTranspile=function(t,e){if("always"==goog.TRANSPILE)return!0;if("never"==goog.TRANSPILE)return!1;if(!this.requiresTranspilation_){var n=this.createRequiresTranspilation_();this.requiresTranspilation_=n.map,this.transpilationTarget_=this.transpilationTarget_||n.target}if(t in this.requiresTranspilation_)return!!this.requiresTranspilation_[t]||!(!goog.inHtmlDocument_()||"es6"!=e||"noModule"in goog.global.document.createElement("script"));throw Error("Unknown language mode: "+t)},goog.Transpiler.prototype.transpile=function(t,e){return goog.transpile_(t,e,this.transpilationTarget_)},goog.transpiler_=new goog.Transpiler,goog.protectScriptTag_=function(t){return t.replace(/<\/(SCRIPT)/gi,"\\x3c/$1")},goog.DebugLoader_=function(){this.dependencies_={},this.idToPath_={},this.written_={},this.loadingDeps_=[],this.depsToLoad_=[],this.paused_=!1,this.factory_=new goog.DependencyFactory(goog.transpiler_),this.deferredCallbacks_={},this.deferredQueue_=[]},goog.DebugLoader_.prototype.bootstrap=function(t,e){function n(){r&&(goog.global.setTimeout(r,0),r=null)}var r=e;if(t.length){e=[];for(var i=0;i<\/script>';i+="",i=goog.Dependency.defer_?i+"document.getElementById('script-"+r+"').onload = function() {\n goog.Dependency.callback_('"+r+"', this);\n};\n":i+"goog.Dependency.callback_('"+r+"', document.getElementById('script-"+r+"'));",i+="<\/script>",e.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(i):i)}else{var o=e.createElement("script");o.defer=goog.Dependency.defer_,o.async=!1,n&&(o.nonce=n),goog.DebugLoader_.IS_OLD_IE_?(t.pause(),o.onreadystatechange=function(){"loaded"!=o.readyState&&"complete"!=o.readyState||(t.loaded(),t.resume())}):o.onload=function(){o.onload=null,t.loaded()},o.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path):this.path,e.head.appendChild(o)}}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),"deps.js"==this.relativePath?(goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true."),t.loaded()):t.pause()},goog.Es6ModuleDependency=function(t,e,n,r,i){goog.Dependency.call(this,t,e,n,r,i)},goog.inherits(goog.Es6ModuleDependency,goog.Dependency),goog.Es6ModuleDependency.prototype.load=function(t){if(goog.global.CLOSURE_IMPORT_SCRIPT)goog.global.CLOSURE_IMPORT_SCRIPT(this.path)?t.loaded():t.pause();else if(goog.inHtmlDocument_()){var e=goog.global.document,n=this;if(goog.isDocumentLoading_()){var r=function(t,n){var r="",i=goog.getScriptNonce();i&&(r=' nonce="'+i+'"'),t=n?'\n//. \n//. \n//. \n//. \n//. \n//. \n//. \n//. ```\n//.\n//. To ensure compatibility one should use the dependency versions specified\n//. in __package.json__.\n//.\n//. For convenience one could define aliases for various modules:\n//.\n//. ```javascript\n//. const S = window.sanctuary;\n//. const $ = window.sanctuaryDef;\n//. // ...\n//. ```\n//.\n//. ## API\n\n(function(f) {\n\n 'use strict';\n\n /* istanbul ignore else */\n if (typeof module === 'object' && typeof module.exports === 'object') {\n module.exports = f (require ('sanctuary-def'),\n require ('sanctuary-either'),\n require ('sanctuary-maybe'),\n require ('sanctuary-pair'),\n require ('sanctuary-show'),\n require ('sanctuary-type-classes'),\n require ('sanctuary-type-identifiers'));\n } else if (typeof define === 'function' && define.amd != null) {\n define (['sanctuary-def',\n 'sanctuary-either',\n 'sanctuary-maybe',\n 'sanctuary-pair',\n 'sanctuary-show',\n 'sanctuary-type-classes',\n 'sanctuary-type-identifiers'],\n f);\n } else {\n self.sanctuary = f (self.sanctuaryDef,\n self.sanctuaryEither,\n self.sanctuaryMaybe,\n self.sanctuaryPair,\n self.sanctuaryShow,\n self.sanctuaryTypeClasses,\n self.sanctuaryTypeIdentifiers);\n }\n\n} (function($, Either, Maybe, Pair, show, Z, type) {\n\n 'use strict';\n\n /* istanbul ignore if */\n if (typeof __doctest !== 'undefined') {\n /* eslint-disable no-unused-vars */\n var Descending = __doctest.require ('sanctuary-descending');\n var Nil = (__doctest.require ('./test/internal/List')).Nil;\n var Cons = (__doctest.require ('./test/internal/List')).Cons;\n var Sum = __doctest.require ('./test/internal/Sum');\n var S = (function(S) {\n var S_ = S.create ({\n checkTypes: true,\n env: S.env.concat ([\n (__doctest.require ('./test/internal/List')).Type ($.Unknown),\n Sum.Type\n ])\n });\n S_.env = S.env; // see S.env doctest\n return S_;\n } (require ('.')));\n /* eslint-enable no-unused-vars */\n }\n\n // Left :: a -> Either a b\n var Left = Either.Left;\n\n // Right :: b -> Either a b\n var Right = Either.Right;\n\n // Nothing :: Maybe a\n var Nothing = Maybe.Nothing;\n\n // Just :: a -> Maybe a\n var Just = Maybe.Just;\n\n // B :: (b -> c) -> (a -> b) -> a -> c\n function B(f) {\n return function(g) {\n return function(x) {\n return f (g (x));\n };\n };\n }\n\n // C :: (a -> b -> c) -> b -> a -> c\n function C(f) {\n return function(y) {\n return function(x) {\n return f (x) (y);\n };\n };\n }\n\n // get_ :: String -> a -> Maybe b\n function get_(key) {\n return B (function(obj) { return key in obj ? Just (obj[key]) : Nothing; })\n (toObject);\n }\n\n // invoke0 :: String -> a -> b\n function invoke0(name) {\n return function(target) {\n return target[name] ();\n };\n }\n\n // invoke1 :: String -> a -> b -> c\n function invoke1(name) {\n return function(x) {\n return function(target) {\n return target[name] (x);\n };\n };\n }\n\n // toObject :: a -> Object\n function toObject(x) {\n return x == null ? Object.create (null) : Object (x);\n }\n\n // :: Type\n var a = $.TypeVariable ('a');\n var b = $.TypeVariable ('b');\n var c = $.TypeVariable ('c');\n var d = $.TypeVariable ('d');\n var e = $.TypeVariable ('e');\n var g = $.TypeVariable ('g');\n var r = $.TypeVariable ('r');\n\n // :: Type -> Type\n var f = $.UnaryTypeVariable ('f');\n var m = $.UnaryTypeVariable ('m');\n var t = $.UnaryTypeVariable ('t');\n var w = $.UnaryTypeVariable ('w');\n\n // :: Type -> Type -> Type\n var p = $.BinaryTypeVariable ('p');\n var s = $.BinaryTypeVariable ('s');\n\n // TypeRep :: Type -> Type\n var TypeRep = $.UnaryType\n ('TypeRep')\n ('https://github.com/fantasyland/fantasy-land#type-representatives')\n ([])\n (function(x) {\n return $.test ([]) ($.AnyFunction) (x) ||\n x != null && $.test ([]) ($.String) (x['@@type']);\n })\n (K ([]));\n\n // Options :: Type\n var Options = $.RecordType ({checkTypes: $.Boolean, env: $.Array ($.Any)});\n\n var _ = {};\n\n //. ### Configure\n\n //# create :: { checkTypes :: Boolean, env :: Array Type } -> Module\n //.\n //. Takes an options record and returns a Sanctuary module. `checkTypes`\n //. specifies whether to enable type checking. The module's polymorphic\n //. functions (such as [`I`](#I)) require each value associated with a\n //. type variable to be a member of at least one type in the environment.\n //.\n //. A well-typed application of a Sanctuary function will produce the same\n //. result regardless of whether type checking is enabled. If type checking\n //. is enabled, a badly typed application will produce an exception with a\n //. descriptive error message.\n //.\n //. The following snippet demonstrates defining a custom type and using\n //. `create` to produce a Sanctuary module that is aware of that type:\n //.\n //. ```javascript\n //. const {create, env} = require ('sanctuary');\n //. const $ = require ('sanctuary-def');\n //. const type = require ('sanctuary-type-identifiers');\n //.\n //. // Identity :: a -> Identity a\n //. const Identity = x => {\n //. const identity = Object.create (Identity$prototype);\n //. identity.value = x;\n //. return identity;\n //. };\n //.\n //. Identity['@@type'] = 'my-package/Identity@1';\n //.\n //. const Identity$prototype = {\n //. 'constructor': Identity,\n //. '@@show': function() { return `Identity (${S.show (this.value)})`; },\n //. 'fantasy-land/map': function(f) { return Identity (f (this.value)); },\n //. };\n //.\n //. // IdentityType :: Type -> Type\n //. const IdentityType = $.UnaryType\n //. ('Identity')\n //. ('http://example.com/my-package#Identity')\n //. ([])\n //. (x => type (x) === Identity['@@type'])\n //. (identity => [identity.value]);\n //.\n //. const S = create ({\n //. checkTypes: process.env.NODE_ENV !== 'production',\n //. env: env.concat ([IdentityType ($.Unknown)]),\n //. });\n //.\n //. S.map (S.sub (1)) (Identity (43));\n //. // => Identity (42)\n //. ```\n //.\n //. See also [`env`](#env).\n function create(opts) {\n var def = $.create (opts);\n var S = {\n env: opts.env,\n is: def ('is') ({}) ([$.Type, $.Any, $.Boolean]) ($.test (opts.env)),\n Maybe: Maybe,\n Nothing: Nothing,\n Either: Either\n };\n (Object.keys (_)).forEach (function(name) {\n S[name] = def (name) (_[name].consts) (_[name].types) (_[name].impl);\n });\n S.unchecked = opts.checkTypes ? create ({checkTypes: false, env: opts.env})\n : S;\n return S;\n }\n _.create = {\n consts: {},\n types: [Options, $.Object],\n impl: create\n };\n\n //# env :: Array Type\n //.\n //. The Sanctuary module's environment (`(S.create ({checkTypes, env})).env`\n //. is a reference to `env`). Useful in conjunction with [`create`](#create).\n //.\n //. ```javascript\n //. > S.env\n //. [ $.AnyFunction,\n //. . $.Arguments,\n //. . $.Array ($.Unknown),\n //. . $.Array2 ($.Unknown) ($.Unknown),\n //. . $.Boolean,\n //. . $.Date,\n //. . $.Descending ($.Unknown),\n //. . $.Either ($.Unknown) ($.Unknown),\n //. . $.Error,\n //. . $.Fn ($.Unknown) ($.Unknown),\n //. . $.HtmlElement,\n //. . $.Identity ($.Unknown),\n //. . $.Maybe ($.Unknown),\n //. . $.Null,\n //. . $.Number,\n //. . $.Object,\n //. . $.Pair ($.Unknown) ($.Unknown),\n //. . $.RegExp,\n //. . $.StrMap ($.Unknown),\n //. . $.String,\n //. . $.Symbol,\n //. . $.Type,\n //. . $.TypeClass,\n //. . $.Undefined ]\n //. ```\n\n //# unchecked :: Module\n //.\n //. A complete Sanctuary module that performs no type checking. This is\n //. useful as it permits operations that Sanctuary's type checking would\n //. disallow, such as mapping over an object with heterogeneous values.\n //.\n //. See also [`create`](#create).\n //.\n //. ```javascript\n //. > S.unchecked.map (S.show) ({x: 'foo', y: true, z: 42})\n //. {x: '\"foo\"', y: 'true', z: '42'}\n //. ```\n //.\n //. Opting out of type checking may cause type errors to go unnoticed.\n //.\n //. ```javascript\n //. > S.unchecked.add (2) ('2')\n //. '22'\n //. ```\n\n //. ### Classify\n\n //# type :: Any -> { namespace :: Maybe String, name :: String, version :: NonNegativeInteger }\n //.\n //. Returns the result of parsing the [type identifier][] of the given value.\n //.\n //. ```javascript\n //. > S.type (S.Just (42))\n //. {namespace: Just ('sanctuary-maybe'), name: 'Maybe', version: 1}\n //.\n //. > S.type ([1, 2, 3])\n //. {namespace: Nothing, name: 'Array', version: 0}\n //. ```\n function type_(x) {\n var r = type.parse (type (x));\n r.namespace = Z.reject (equals (null), Just (r.namespace));\n return r;\n }\n _.type = {\n consts: {},\n types: [$.Any,\n $.RecordType ({namespace: $.Maybe ($.String),\n name: $.String,\n version: $.NonNegativeInteger})],\n impl: type_\n };\n\n //# is :: Type -> Any -> Boolean\n //.\n //. Returns `true` [iff][] the given value is a member of the specified type.\n //. See [`$.test`][] for details.\n //.\n //. ```javascript\n //. > S.is ($.Array ($.Integer)) ([1, 2, 3])\n //. true\n //.\n //. > S.is ($.Array ($.Integer)) ([1, 2, 3.14])\n //. false\n //. ```\n\n //. ### Showable\n\n //# show :: Any -> String\n //.\n //. Alias of [`show`][].\n //.\n //. ```javascript\n //. > S.show (-0)\n //. '-0'\n //.\n //. > S.show (['foo', 'bar', 'baz'])\n //. '[\"foo\", \"bar\", \"baz\"]'\n //.\n //. > S.show ({x: 1, y: 2, z: 3})\n //. '{\"x\": 1, \"y\": 2, \"z\": 3}'\n //.\n //. > S.show (S.Left (S.Right (S.Just (S.Nothing))))\n //. 'Left (Right (Just (Nothing)))'\n //. ```\n _.show = {\n consts: {},\n types: [$.Any, $.String],\n impl: show\n };\n\n //. ### Fantasy Land\n //.\n //. Sanctuary is compatible with the [Fantasy Land][] specification.\n\n //# equals :: Setoid a => a -> a -> Boolean\n //.\n //. Curried version of [`Z.equals`][] that requires two arguments of the\n //. same type.\n //.\n //. To compare values of different types first use [`create`](#create) to\n //. create a Sanctuary module with type checking disabled, then use that\n //. module's `equals` function.\n //.\n //. ```javascript\n //. > S.equals (0) (-0)\n //. true\n //.\n //. > S.equals (NaN) (NaN)\n //. true\n //.\n //. > S.equals (S.Just ([1, 2, 3])) (S.Just ([1, 2, 3]))\n //. true\n //.\n //. > S.equals (S.Just ([1, 2, 3])) (S.Just ([1, 2, 4]))\n //. false\n //. ```\n function equals(x) {\n return function(y) {\n return Z.equals (x, y);\n };\n }\n _.equals = {\n consts: {a: [Z.Setoid]},\n types: [a, a, $.Boolean],\n impl: equals\n };\n\n //# lt :: Ord a => a -> a -> Boolean\n //.\n //. Returns `true` [iff][] the *second* argument is less than the first\n //. according to [`Z.lt`][].\n //.\n //. ```javascript\n //. > S.filter (S.lt (3)) ([1, 2, 3, 4, 5])\n //. [1, 2]\n //. ```\n function lt(y) {\n return function(x) {\n return Z.lt (x, y);\n };\n }\n _.lt = {\n consts: {a: [Z.Ord]},\n types: [a, a, $.Boolean],\n impl: lt\n };\n\n //# lte :: Ord a => a -> a -> Boolean\n //.\n //. Returns `true` [iff][] the *second* argument is less than or equal to\n //. the first according to [`Z.lte`][].\n //.\n //. ```javascript\n //. > S.filter (S.lte (3)) ([1, 2, 3, 4, 5])\n //. [1, 2, 3]\n //. ```\n function lte(y) {\n return function(x) {\n return Z.lte (x, y);\n };\n }\n _.lte = {\n consts: {a: [Z.Ord]},\n types: [a, a, $.Boolean],\n impl: lte\n };\n\n //# gt :: Ord a => a -> a -> Boolean\n //.\n //. Returns `true` [iff][] the *second* argument is greater than the first\n //. according to [`Z.gt`][].\n //.\n //. ```javascript\n //. > S.filter (S.gt (3)) ([1, 2, 3, 4, 5])\n //. [4, 5]\n //. ```\n function gt(y) {\n return function(x) {\n return Z.gt (x, y);\n };\n }\n _.gt = {\n consts: {a: [Z.Ord]},\n types: [a, a, $.Boolean],\n impl: gt\n };\n\n //# gte :: Ord a => a -> a -> Boolean\n //.\n //. Returns `true` [iff][] the *second* argument is greater than or equal\n //. to the first according to [`Z.gte`][].\n //.\n //. ```javascript\n //. > S.filter (S.gte (3)) ([1, 2, 3, 4, 5])\n //. [3, 4, 5]\n //. ```\n function gte(y) {\n return function(x) {\n return Z.gte (x, y);\n };\n }\n _.gte = {\n consts: {a: [Z.Ord]},\n types: [a, a, $.Boolean],\n impl: gte\n };\n\n //# min :: Ord a => a -> a -> a\n //.\n //. Returns the smaller of its two arguments (according to [`Z.lte`][]).\n //.\n //. See also [`max`](#max).\n //.\n //. ```javascript\n //. > S.min (10) (2)\n //. 2\n //.\n //. > S.min (new Date ('1999-12-31')) (new Date ('2000-01-01'))\n //. new Date ('1999-12-31')\n //.\n //. > S.min ('10') ('2')\n //. '10'\n //. ```\n _.min = {\n consts: {a: [Z.Ord]},\n types: [a, a, a],\n impl: curry2 (Z.min)\n };\n\n //# max :: Ord a => a -> a -> a\n //.\n //. Returns the larger of its two arguments (according to [`Z.lte`][]).\n //.\n //. See also [`min`](#min).\n //.\n //. ```javascript\n //. > S.max (10) (2)\n //. 10\n //.\n //. > S.max (new Date ('1999-12-31')) (new Date ('2000-01-01'))\n //. new Date ('2000-01-01')\n //.\n //. > S.max ('10') ('2')\n //. '2'\n //. ```\n _.max = {\n consts: {a: [Z.Ord]},\n types: [a, a, a],\n impl: curry2 (Z.max)\n };\n\n //# clamp :: Ord a => a -> a -> a -> a\n //.\n //. Takes a lower bound, an upper bound, and a value of the same type.\n //. Returns the value if it is within the bounds; the nearer bound otherwise.\n //.\n //. See also [`min`](#min) and [`max`](#max).\n //.\n //. ```javascript\n //. > S.clamp (0) (100) (42)\n //. 42\n //.\n //. > S.clamp (0) (100) (-1)\n //. 0\n //.\n //. > S.clamp ('A') ('Z') ('~')\n //. 'Z'\n //. ```\n _.clamp = {\n consts: {a: [Z.Ord]},\n types: [a, a, a, a],\n impl: curry3 (Z.clamp)\n };\n\n //# id :: Category c => TypeRep c -> c\n //.\n //. [Type-safe][sanctuary-def] version of [`Z.id`][].\n //.\n //. ```javascript\n //. > S.id (Function) (42)\n //. 42\n //. ```\n _.id = {\n consts: {c: [Z.Category]},\n types: [TypeRep (c), c],\n impl: Z.id\n };\n\n //# concat :: Semigroup a => a -> a -> a\n //.\n //. Curried version of [`Z.concat`][].\n //.\n //. ```javascript\n //. > S.concat ('abc') ('def')\n //. 'abcdef'\n //.\n //. > S.concat ([1, 2, 3]) ([4, 5, 6])\n //. [1, 2, 3, 4, 5, 6]\n //.\n //. > S.concat ({x: 1, y: 2}) ({y: 3, z: 4})\n //. {x: 1, y: 3, z: 4}\n //.\n //. > S.concat (S.Just ([1, 2, 3])) (S.Just ([4, 5, 6]))\n //. Just ([1, 2, 3, 4, 5, 6])\n //.\n //. > S.concat (Sum (18)) (Sum (24))\n //. Sum (42)\n //. ```\n _.concat = {\n consts: {a: [Z.Semigroup]},\n types: [a, a, a],\n impl: curry2 (Z.concat)\n };\n\n //# empty :: Monoid a => TypeRep a -> a\n //.\n //. [Type-safe][sanctuary-def] version of [`Z.empty`][].\n //.\n //. ```javascript\n //. > S.empty (String)\n //. ''\n //.\n //. > S.empty (Array)\n //. []\n //.\n //. > S.empty (Object)\n //. {}\n //.\n //. > S.empty (Sum)\n //. Sum (0)\n //. ```\n _.empty = {\n consts: {a: [Z.Monoid]},\n types: [TypeRep (a), a],\n impl: Z.empty\n };\n\n //# invert :: Group g => g -> g\n //.\n //. [Type-safe][sanctuary-def] version of [`Z.invert`][].\n //.\n //. ```javascript\n //. > S.invert (Sum (5))\n //. Sum (-5)\n //. ```\n _.invert = {\n consts: {g: [Z.Group]},\n types: [g, g],\n impl: Z.invert\n };\n\n //# filter :: Filterable f => (a -> Boolean) -> f a -> f a\n //.\n //. Curried version of [`Z.filter`][]. Discards every element that does not\n //. satisfy the predicate.\n //.\n //. See also [`reject`](#reject).\n //.\n //. ```javascript\n //. > S.filter (S.odd) ([1, 2, 3])\n //. [1, 3]\n //.\n //. > S.filter (S.odd) ({x: 1, y: 2, z: 3})\n //. {x: 1, z: 3}\n //.\n //. > S.filter (S.odd) (S.Nothing)\n //. Nothing\n //.\n //. > S.filter (S.odd) (S.Just (0))\n //. Nothing\n //.\n //. > S.filter (S.odd) (S.Just (1))\n //. Just (1)\n //. ```\n function filter(pred) {\n return function(filterable) {\n return Z.filter (pred, filterable);\n };\n }\n _.filter = {\n consts: {f: [Z.Filterable]},\n types: [$.Predicate (a), f (a), f (a)],\n impl: filter\n };\n\n //# reject :: Filterable f => (a -> Boolean) -> f a -> f a\n //.\n //. Curried version of [`Z.reject`][]. Discards every element that satisfies\n //. the predicate.\n //.\n //. See also [`filter`](#filter).\n //.\n //. ```javascript\n //. > S.reject (S.odd) ([1, 2, 3])\n //. [2]\n //.\n //. > S.reject (S.odd) ({x: 1, y: 2, z: 3})\n //. {y: 2}\n //.\n //. > S.reject (S.odd) (S.Nothing)\n //. Nothing\n //.\n //. > S.reject (S.odd) (S.Just (0))\n //. Just (0)\n //.\n //. > S.reject (S.odd) (S.Just (1))\n //. Nothing\n //. ```\n function reject(pred) {\n return function(filterable) {\n return Z.reject (pred, filterable);\n };\n }\n _.reject = {\n consts: {f: [Z.Filterable]},\n types: [$.Predicate (a), f (a), f (a)],\n impl: reject\n };\n\n //# map :: Functor f => (a -> b) -> f a -> f b\n //.\n //. Curried version of [`Z.map`][].\n //.\n //. ```javascript\n //. > S.map (Math.sqrt) ([1, 4, 9])\n //. [1, 2, 3]\n //.\n //. > S.map (Math.sqrt) ({x: 1, y: 4, z: 9})\n //. {x: 1, y: 2, z: 3}\n //.\n //. > S.map (Math.sqrt) (S.Just (9))\n //. Just (3)\n //.\n //. > S.map (Math.sqrt) (S.Right (9))\n //. Right (3)\n //.\n //. > S.map (Math.sqrt) (S.Pair (99980001) (99980001))\n //. Pair (99980001) (9999)\n //. ```\n //.\n //. Replacing `Functor f => f` with `Function x` produces the B combinator\n //. from combinatory logic (i.e. [`compose`](#compose)):\n //.\n //. Functor f => (a -> b) -> f a -> f b\n //. (a -> b) -> Function x a -> Function x b\n //. (a -> c) -> Function x a -> Function x c\n //. (b -> c) -> Function x b -> Function x c\n //. (b -> c) -> Function a b -> Function a c\n //. (b -> c) -> (a -> b) -> (a -> c)\n //.\n //. ```javascript\n //. > S.map (Math.sqrt) (S.add (1)) (99)\n //. 10\n //. ```\n function map(f) {\n return function(functor) {\n return Z.map (f, functor);\n };\n }\n _.map = {\n consts: {f: [Z.Functor]},\n types: [$.Fn (a) (b), f (a), f (b)],\n impl: map\n };\n\n //# flip :: Functor f => f (a -> b) -> a -> f b\n //.\n //. Curried version of [`Z.flip`][]. Maps over the given functions, applying\n //. each to the given value.\n //.\n //. Replacing `Functor f => f` with `Function x` produces the C combinator\n //. from combinatory logic:\n //.\n //. Functor f => f (a -> b) -> a -> f b\n //. Function x (a -> b) -> a -> Function x b\n //. Function x (a -> c) -> a -> Function x c\n //. Function x (b -> c) -> b -> Function x c\n //. Function a (b -> c) -> b -> Function a c\n //. (a -> b -> c) -> b -> a -> c\n //.\n //. ```javascript\n //. > S.flip (S.concat) ('!') ('foo')\n //. 'foo!'\n //.\n //. > S.flip ([Math.floor, Math.ceil]) (1.5)\n //. [1, 2]\n //.\n //. > S.flip ({floor: Math.floor, ceil: Math.ceil}) (1.5)\n //. {floor: 1, ceil: 2}\n //.\n //. > S.flip (Cons (Math.floor) (Cons (Math.ceil) (Nil))) (1.5)\n //. Cons (1) (Cons (2) (Nil))\n //. ```\n _.flip = {\n consts: {f: [Z.Functor]},\n types: [f ($.Fn (a) (b)), a, f (b)],\n impl: curry2 (Z.flip)\n };\n\n //# bimap :: Bifunctor f => (a -> b) -> (c -> d) -> f a c -> f b d\n //.\n //. Curried version of [`Z.bimap`][].\n //.\n //. ```javascript\n //. > S.bimap (S.toUpper) (Math.sqrt) (S.Pair ('foo') (64))\n //. Pair ('FOO') (8)\n //.\n //. > S.bimap (S.toUpper) (Math.sqrt) (S.Left ('foo'))\n //. Left ('FOO')\n //.\n //. > S.bimap (S.toUpper) (Math.sqrt) (S.Right (64))\n //. Right (8)\n //. ```\n _.bimap = {\n consts: {p: [Z.Bifunctor]},\n types: [$.Fn (a) (b), $.Fn (c) (d), p (a) (c), p (b) (d)],\n impl: curry3 (Z.bimap)\n };\n\n //# mapLeft :: Bifunctor f => (a -> b) -> f a c -> f b c\n //.\n //. Curried version of [`Z.mapLeft`][]. Maps the given function over the left\n //. side of a Bifunctor.\n //.\n //. ```javascript\n //. > S.mapLeft (S.toUpper) (S.Pair ('foo') (64))\n //. Pair ('FOO') (64)\n //.\n //. > S.mapLeft (S.toUpper) (S.Left ('foo'))\n //. Left ('FOO')\n //.\n //. > S.mapLeft (S.toUpper) (S.Right (64))\n //. Right (64)\n //. ```\n _.mapLeft = {\n consts: {p: [Z.Bifunctor]},\n types: [$.Fn (a) (b), p (a) (c), p (b) (c)],\n impl: curry2 (Z.mapLeft)\n };\n\n //# promap :: Profunctor p => (a -> b) -> (c -> d) -> p b c -> p a d\n //.\n //. Curried version of [`Z.promap`][].\n //.\n //. ```javascript\n //. > S.promap (Math.abs) (S.add (1)) (Math.sqrt) (-100)\n //. 11\n //. ```\n _.promap = {\n consts: {p: [Z.Profunctor]},\n types: [$.Fn (a) (b), $.Fn (c) (d), p (b) (c), p (a) (d)],\n impl: curry3 (Z.promap)\n };\n\n //# alt :: Alt f => f a -> f a -> f a\n //.\n //. Curried version of [`Z.alt`][] with arguments flipped to facilitate\n //. partial application.\n //.\n //. ```javascript\n //. > S.alt (S.Just ('default')) (S.Nothing)\n //. Just ('default')\n //.\n //. > S.alt (S.Just ('default')) (S.Just ('hello'))\n //. Just ('hello')\n //.\n //. > S.alt (S.Right (0)) (S.Left ('X'))\n //. Right (0)\n //.\n //. > S.alt (S.Right (0)) (S.Right (1))\n //. Right (1)\n //. ```\n function alt(y) {\n return function(x) {\n return Z.alt (x, y);\n };\n }\n _.alt = {\n consts: {f: [Z.Alt]},\n types: [f (a), f (a), f (a)],\n impl: alt\n };\n\n //# zero :: Plus f => TypeRep f -> f a\n //.\n //. [Type-safe][sanctuary-def] version of [`Z.zero`][].\n //.\n //. ```javascript\n //. > S.zero (Array)\n //. []\n //.\n //. > S.zero (Object)\n //. {}\n //.\n //. > S.zero (S.Maybe)\n //. Nothing\n //. ```\n _.zero = {\n consts: {f: [Z.Plus]},\n types: [TypeRep (f (a)), f (a)],\n impl: Z.zero\n };\n\n //# reduce :: Foldable f => (b -> a -> b) -> b -> f a -> b\n //.\n //. Takes a curried binary function, an initial value, and a [Foldable][],\n //. and applies the function to the initial value and the Foldable's first\n //. value, then applies the function to the result of the previous\n //. application and the Foldable's second value. Repeats this process\n //. until each of the Foldable's values has been used. Returns the initial\n //. value if the Foldable is empty; the result of the final application\n //. otherwise.\n //.\n //. ```javascript\n //. > S.reduce (S.add) (0) ([1, 2, 3, 4, 5])\n //. 15\n //.\n //. > S.reduce (xs => x => S.prepend (x) (xs)) ([]) ([1, 2, 3, 4, 5])\n //. [5, 4, 3, 2, 1]\n //. ```\n function reduce(f) {\n return function(initial) {\n return function(foldable) {\n return Z.reduce (function(y, x) { return f (y) (x); },\n initial,\n foldable);\n };\n };\n }\n _.reduce = {\n consts: {f: [Z.Foldable]},\n types: [$.Fn (a) ($.Fn (b) (a)), a, f (b), a],\n impl: reduce\n };\n\n //# traverse :: (Applicative f, Traversable t) => TypeRep f -> (a -> f b) -> t a -> f (t b)\n //.\n //. Curried version of [`Z.traverse`][].\n //.\n //. ```javascript\n //. > S.traverse (Array) (S.words) (S.Just ('foo bar baz'))\n //. [Just ('foo'), Just ('bar'), Just ('baz')]\n //.\n //. > S.traverse (Array) (S.words) (S.Nothing)\n //. [Nothing]\n //.\n //. > S.traverse (S.Maybe) (S.parseInt (16)) (['A', 'B', 'C'])\n //. Just ([10, 11, 12])\n //.\n //. > S.traverse (S.Maybe) (S.parseInt (16)) (['A', 'B', 'C', 'X'])\n //. Nothing\n //.\n //. > S.traverse (S.Maybe) (S.parseInt (16)) ({a: 'A', b: 'B', c: 'C'})\n //. Just ({a: 10, b: 11, c: 12})\n //.\n //. > S.traverse (S.Maybe) (S.parseInt (16)) ({a: 'A', b: 'B', c: 'C', x: 'X'})\n //. Nothing\n //. ```\n _.traverse = {\n consts: {f: [Z.Applicative], t: [Z.Traversable]},\n types: [TypeRep (f (b)), $.Fn (a) (f (b)), t (a), f (t (b))],\n impl: curry3 (Z.traverse)\n };\n\n //# sequence :: (Applicative f, Traversable t) => TypeRep f -> t (f a) -> f (t a)\n //.\n //. Curried version of [`Z.sequence`][]. Inverts the given `t (f a)`\n //. to produce an `f (t a)`.\n //.\n //. ```javascript\n //. > S.sequence (Array) (S.Just ([1, 2, 3]))\n //. [Just (1), Just (2), Just (3)]\n //.\n //. > S.sequence (S.Maybe) ([S.Just (1), S.Just (2), S.Just (3)])\n //. Just ([1, 2, 3])\n //.\n //. > S.sequence (S.Maybe) ([S.Just (1), S.Just (2), S.Nothing])\n //. Nothing\n //.\n //. > S.sequence (S.Maybe) ({a: S.Just (1), b: S.Just (2), c: S.Just (3)})\n //. Just ({a: 1, b: 2, c: 3})\n //.\n //. > S.sequence (S.Maybe) ({a: S.Just (1), b: S.Just (2), c: S.Nothing})\n //. Nothing\n //. ```\n _.sequence = {\n consts: {f: [Z.Applicative], t: [Z.Traversable]},\n types: [TypeRep (f (a)), t (f (a)), f (t (a))],\n impl: curry2 (Z.sequence)\n };\n\n //# ap :: Apply f => f (a -> b) -> f a -> f b\n //.\n //. Curried version of [`Z.ap`][].\n //.\n //. ```javascript\n //. > S.ap ([Math.sqrt, x => x * x]) ([1, 4, 9, 16, 25])\n //. [1, 2, 3, 4, 5, 1, 16, 81, 256, 625]\n //.\n //. > S.ap ({x: Math.sqrt, y: S.add (1), z: S.sub (1)}) ({w: 4, x: 4, y: 4})\n //. {x: 2, y: 5}\n //.\n //. > S.ap (S.Just (Math.sqrt)) (S.Just (64))\n //. Just (8)\n //. ```\n //.\n //. Replacing `Apply f => f` with `Function x` produces the S combinator\n //. from combinatory logic:\n //.\n //. Apply f => f (a -> b) -> f a -> f b\n //. Function x (a -> b) -> Function x a -> Function x b\n //. Function x (a -> c) -> Function x a -> Function x c\n //. Function x (b -> c) -> Function x b -> Function x c\n //. Function a (b -> c) -> Function a b -> Function a c\n //. (a -> b -> c) -> (a -> b) -> (a -> c)\n //.\n //. ```javascript\n //. > S.ap (s => n => s.slice (0, n)) (s => Math.ceil (s.length / 2)) ('Haskell')\n //. 'Hask'\n //. ```\n _.ap = {\n consts: {f: [Z.Apply]},\n types: [f ($.Fn (a) (b)), f (a), f (b)],\n impl: curry2 (Z.ap)\n };\n\n //# lift2 :: Apply f => (a -> b -> c) -> f a -> f b -> f c\n //.\n //. Promotes a curried binary function to a function that operates on two\n //. [Apply][]s.\n //.\n //. ```javascript\n //. > S.lift2 (S.add) (S.Just (2)) (S.Just (3))\n //. Just (5)\n //.\n //. > S.lift2 (S.add) (S.Just (2)) (S.Nothing)\n //. Nothing\n //.\n //. > S.lift2 (S.and) (S.Just (true)) (S.Just (true))\n //. Just (true)\n //.\n //. > S.lift2 (S.and) (S.Just (true)) (S.Just (false))\n //. Just (false)\n //. ```\n _.lift2 = {\n consts: {f: [Z.Apply]},\n types: [$.Fn (a) ($.Fn (b) (c)), f (a), f (b), f (c)],\n impl: curry3 (Z.lift2)\n };\n\n //# lift3 :: Apply f => (a -> b -> c -> d) -> f a -> f b -> f c -> f d\n //.\n //. Promotes a curried ternary function to a function that operates on three\n //. [Apply][]s.\n //.\n //. ```javascript\n //. > S.lift3 (S.reduce) (S.Just (S.add)) (S.Just (0)) (S.Just ([1, 2, 3]))\n //. Just (6)\n //.\n //. > S.lift3 (S.reduce) (S.Just (S.add)) (S.Just (0)) (S.Nothing)\n //. Nothing\n //. ```\n _.lift3 = {\n consts: {f: [Z.Apply]},\n types: [$.Fn (a) ($.Fn (b) ($.Fn (c) (d))), f (a), f (b), f (c), f (d)],\n impl: curry4 (Z.lift3)\n };\n\n //# apFirst :: Apply f => f a -> f b -> f a\n //.\n //. Curried version of [`Z.apFirst`][]. Combines two effectful actions,\n //. keeping only the result of the first. Equivalent to Haskell's `(<*)`\n //. function.\n //.\n //. See also [`apSecond`](#apSecond).\n //.\n //. ```javascript\n //. > S.apFirst ([1, 2]) ([3, 4])\n //. [1, 1, 2, 2]\n //.\n //. > S.apFirst (S.Just (1)) (S.Just (2))\n //. Just (1)\n //. ```\n _.apFirst = {\n consts: {f: [Z.Apply]},\n types: [f (a), f (b), f (a)],\n impl: curry2 (Z.apFirst)\n };\n\n //# apSecond :: Apply f => f a -> f b -> f b\n //.\n //. Curried version of [`Z.apSecond`][]. Combines two effectful actions,\n //. keeping only the result of the second. Equivalent to Haskell's `(*>)`\n //. function.\n //.\n //. See also [`apFirst`](#apFirst).\n //.\n //. ```javascript\n //. > S.apSecond ([1, 2]) ([3, 4])\n //. [3, 4, 3, 4]\n //.\n //. > S.apSecond (S.Just (1)) (S.Just (2))\n //. Just (2)\n //. ```\n _.apSecond = {\n consts: {f: [Z.Apply]},\n types: [f (a), f (b), f (b)],\n impl: curry2 (Z.apSecond)\n };\n\n //# of :: Applicative f => TypeRep f -> a -> f a\n //.\n //. Curried version of [`Z.of`][].\n //.\n //. ```javascript\n //. > S.of (Array) (42)\n //. [42]\n //.\n //. > S.of (Function) (42) (null)\n //. 42\n //.\n //. > S.of (S.Maybe) (42)\n //. Just (42)\n //.\n //. > S.of (S.Either) (42)\n //. Right (42)\n //. ```\n function of(typeRep) {\n return function(x) {\n return Z.of (typeRep, x);\n };\n }\n _.of = {\n consts: {f: [Z.Applicative]},\n types: [TypeRep (f (a)), a, f (a)],\n impl: of\n };\n\n //# chain :: Chain m => (a -> m b) -> m a -> m b\n //.\n //. Curried version of [`Z.chain`][].\n //.\n //. ```javascript\n //. > S.chain (x => [x, x]) ([1, 2, 3])\n //. [1, 1, 2, 2, 3, 3]\n //.\n //. > S.chain (n => s => s.slice (0, n)) (s => Math.ceil (s.length / 2)) ('slice')\n //. 'sli'\n //.\n //. > S.chain (S.parseInt (10)) (S.Just ('123'))\n //. Just (123)\n //.\n //. > S.chain (S.parseInt (10)) (S.Just ('XXX'))\n //. Nothing\n //. ```\n _.chain = {\n consts: {m: [Z.Chain]},\n types: [$.Fn (a) (m (b)), m (a), m (b)],\n impl: curry2 (Z.chain)\n };\n\n //# join :: Chain m => m (m a) -> m a\n //.\n //. [Type-safe][sanctuary-def] version of [`Z.join`][].\n //. Removes one level of nesting from a nested monadic structure.\n //.\n //. ```javascript\n //. > S.join ([[1], [2], [3]])\n //. [1, 2, 3]\n //.\n //. > S.join ([[[1, 2, 3]]])\n //. [[1, 2, 3]]\n //.\n //. > S.join (S.Just (S.Just (1)))\n //. Just (1)\n //.\n //. > S.join (S.Pair ('foo') (S.Pair ('bar') ('baz')))\n //. Pair ('foobar') ('baz')\n //. ```\n //.\n //. Replacing `Chain m => m` with `Function x` produces the W combinator\n //. from combinatory logic:\n //.\n //. Chain m => m (m a) -> m a\n //. Function x (Function x a) -> Function x a\n //. (x -> x -> a) -> (x -> a)\n //.\n //. ```javascript\n //. > S.join (S.concat) ('abc')\n //. 'abcabc'\n //. ```\n _.join = {\n consts: {m: [Z.Chain]},\n types: [m (m (a)), m (a)],\n impl: Z.join\n };\n\n //# chainRec :: ChainRec m => TypeRep m -> (a -> m (Either a b)) -> a -> m b\n //.\n //. Performs a [`chain`](#chain)-like computation with constant stack usage.\n //. Similar to [`Z.chainRec`][], but curried and more convenient due to the\n //. use of the Either type to indicate completion (via a Right).\n //.\n //. ```javascript\n //. > S.chainRec (Array)\n //. . (s => s.length === 2 ? S.map (S.Right) ([s + '!', s + '?'])\n //. . : S.map (S.Left) ([s + 'o', s + 'n']))\n //. . ('')\n //. ['oo!', 'oo?', 'on!', 'on?', 'no!', 'no?', 'nn!', 'nn?']\n //. ```\n function chainRec(typeRep) {\n return function(f) {\n return function(x) {\n return Z.chainRec (typeRep, step, x);\n };\n function step(next, done, x) {\n return Z.map (either (next) (done), f (x));\n }\n };\n }\n _.chainRec = {\n consts: {m: [Z.ChainRec]},\n types: [TypeRep (m (b)), $.Fn (a) (m ($.Either (a) (b))), a, m (b)],\n impl: chainRec\n };\n\n //# extend :: Extend w => (w a -> b) -> w a -> w b\n //.\n //. Curried version of [`Z.extend`][].\n //.\n //. ```javascript\n //. > S.extend (S.joinWith ('')) (['x', 'y', 'z'])\n //. ['xyz', 'yz', 'z']\n //.\n //. > S.extend (f => f ([3, 4])) (S.reverse) ([1, 2])\n //. [4, 3, 2, 1]\n //. ```\n _.extend = {\n consts: {w: [Z.Extend]},\n types: [$.Fn (w (a)) (b), w (a), w (b)],\n impl: curry2 (Z.extend)\n };\n\n //# duplicate :: Extend w => w a -> w (w a)\n //.\n //. [Type-safe][sanctuary-def] version of [`Z.duplicate`][].\n //. Adds one level of nesting to a comonadic structure.\n //.\n //. ```javascript\n //. > S.duplicate (S.Just (1))\n //. Just (Just (1))\n //.\n //. > S.duplicate ([1])\n //. [[1]]\n //.\n //. > S.duplicate ([1, 2, 3])\n //. [[1, 2, 3], [2, 3], [3]]\n //.\n //. > S.duplicate (S.reverse) ([1, 2]) ([3, 4])\n //. [4, 3, 2, 1]\n //. ```\n _.duplicate = {\n consts: {w: [Z.Extend]},\n types: [w (a), w (w (a))],\n impl: Z.duplicate\n };\n\n //# extract :: Comonad w => w a -> a\n //.\n //. [Type-safe][sanctuary-def] version of [`Z.extract`][].\n //.\n //. ```javascript\n //. > S.extract (S.Pair ('foo') ('bar'))\n //. 'bar'\n //. ```\n _.extract = {\n consts: {w: [Z.Comonad]},\n types: [w (a), a],\n impl: Z.extract\n };\n\n //# contramap :: Contravariant f => (b -> a) -> f a -> f b\n //.\n //. [Type-safe][sanctuary-def] version of [`Z.contramap`][].\n //.\n //. ```javascript\n //. > S.contramap (s => s.length) (Math.sqrt) ('Sanctuary')\n //. 3\n //. ```\n _.contramap = {\n consts: {f: [Z.Contravariant]},\n types: [$.Fn (b) (a), f (a), f (b)],\n impl: curry2 (Z.contramap)\n };\n\n //. ### Combinator\n\n //# I :: a -> a\n //.\n //. The I combinator. Returns its argument. Equivalent to Haskell's `id`\n //. function.\n //.\n //. ```javascript\n //. > S.I ('foo')\n //. 'foo'\n //. ```\n function I(x) {\n return x;\n }\n _.I = {\n consts: {},\n types: [a, a],\n impl: I\n };\n\n //# K :: a -> b -> a\n //.\n //. The K combinator. Takes two values and returns the first. Equivalent to\n //. Haskell's `const` function.\n //.\n //. ```javascript\n //. > S.K ('foo') ('bar')\n //. 'foo'\n //.\n //. > S.map (S.K (42)) (S.range (0) (5))\n //. [42, 42, 42, 42, 42]\n //. ```\n function K(x) {\n return function(y) {\n return x;\n };\n }\n _.K = {\n consts: {},\n types: [a, b, a],\n impl: K\n };\n\n //# T :: a -> (a -> b) -> b\n //.\n //. The T ([thrush][]) combinator. Takes a value and a function, and returns\n //. the result of applying the function to the value. Equivalent to Haskell's\n //. `(&)` function.\n //.\n //. ```javascript\n //. > S.T (42) (S.add (1))\n //. 43\n //.\n //. > S.map (S.T (100)) ([S.add (1), Math.sqrt])\n //. [101, 10]\n //. ```\n function T(x) {\n return function(f) {\n return f (x);\n };\n }\n _.T = {\n consts: {},\n types: [a, $.Fn (a) (b), b],\n impl: T\n };\n\n //. ### Function\n\n //# curry2 :: ((a, b) -> c) -> a -> b -> c\n //.\n //. Curries the given binary function.\n //.\n //. ```javascript\n //. > S.map (S.curry2 (Math.pow) (10)) ([1, 2, 3])\n //. [10, 100, 1000]\n //. ```\n function curry2(f) {\n return function(x) {\n return function(y) {\n return f (x, y);\n };\n };\n }\n _.curry2 = {\n consts: {},\n types: [$.Function ([a, b, c]), a, b, c],\n impl: curry2\n };\n\n //# curry3 :: ((a, b, c) -> d) -> a -> b -> c -> d\n //.\n //. Curries the given ternary function.\n //.\n //. ```javascript\n //. > const replaceString = S.curry3 ((what, replacement, string) =>\n //. . string.replace (what, replacement)\n //. . )\n //.\n //. > replaceString ('banana') ('orange') ('banana icecream')\n //. 'orange icecream'\n //. ```\n function curry3(f) {\n return function(x) {\n return function(y) {\n return function(z) {\n return f (x, y, z);\n };\n };\n };\n }\n _.curry3 = {\n consts: {},\n types: [$.Function ([a, b, c, d]), a, b, c, d],\n impl: curry3\n };\n\n //# curry4 :: ((a, b, c, d) -> e) -> a -> b -> c -> d -> e\n //.\n //. Curries the given quaternary function.\n //.\n //. ```javascript\n //. > const createRect = S.curry4 ((x, y, width, height) =>\n //. . ({x, y, width, height})\n //. . )\n //.\n //. > createRect (0) (0) (10) (10)\n //. {x: 0, y: 0, width: 10, height: 10}\n //. ```\n function curry4(f) {\n return function(w) {\n return function(x) {\n return function(y) {\n return function(z) {\n return f (w, x, y, z);\n };\n };\n };\n };\n }\n _.curry4 = {\n consts: {},\n types: [$.Function ([a, b, c, d, e]), a, b, c, d, e],\n impl: curry4\n };\n\n //# curry5 :: ((a, b, c, d, e) -> f) -> a -> b -> c -> d -> e -> f\n //.\n //. Curries the given quinary function.\n //.\n //. ```javascript\n //. > const toUrl = S.curry5 ((protocol, creds, hostname, port, pathname) =>\n //. . protocol + '//' +\n //. . S.maybe ('') (S.flip (S.concat) ('@')) (creds) +\n //. . hostname +\n //. . S.maybe ('') (S.concat (':')) (port) +\n //. . pathname\n //. . )\n //.\n //. > toUrl ('https:') (S.Nothing) ('example.com') (S.Just ('443')) ('/foo/bar')\n //. 'https://example.com:443/foo/bar'\n //. ```\n function curry5(f) {\n return function(v) {\n return function(w) {\n return function(x) {\n return function(y) {\n return function(z) {\n return f (v, w, x, y, z);\n };\n };\n };\n };\n };\n }\n _.curry5 = {\n consts: {},\n types: [$.Function ([a, b, c, d, e, r]), a, b, c, d, e, r],\n impl: curry5\n };\n\n //. ### Composition\n\n //# compose :: Semigroupoid s => s b c -> s a b -> s a c\n //.\n //. Curried version of [`Z.compose`][].\n //.\n //. When specialized to Function, `compose` composes two unary functions,\n //. from right to left (this is the B combinator from combinatory logic).\n //.\n //. The generalized type signature indicates that `compose` is compatible\n //. with any [Semigroupoid][].\n //.\n //. See also [`pipe`](#pipe).\n //.\n //. ```javascript\n //. > S.compose (Math.sqrt) (S.add (1)) (99)\n //. 10\n //. ```\n _.compose = {\n consts: {s: [Z.Semigroupoid]},\n types: [s (b) (c), s (a) (b), s (a) (c)],\n impl: curry2 (Z.compose)\n };\n\n //# pipe :: Foldable f => f (Any -> Any) -> a -> b\n //.\n //. Takes a sequence of functions assumed to be unary and a value of any\n //. type, and returns the result of applying the sequence of transformations\n //. to the initial value.\n //.\n //. In general terms, `pipe` performs left-to-right composition of a sequence\n //. of functions. `pipe ([f, g, h]) (x)` is equivalent to `h (g (f (x)))`.\n //.\n //. ```javascript\n //. > S.pipe ([S.add (1), Math.sqrt, S.sub (1)]) (99)\n //. 9\n //. ```\n function pipe(fs) {\n return function(x) {\n return reduce (T) (x) (fs);\n };\n }\n _.pipe = {\n consts: {f: [Z.Foldable]},\n types: [f ($.Fn ($.Any) ($.Any)), a, b],\n impl: pipe\n };\n\n //# pipeK :: (Foldable f, Chain m) => f (Any -> m Any) -> m a -> m b\n //.\n //. Takes a sequence of functions assumed to be unary that return values\n //. with a [Chain][], and a value of that Chain, and returns the result\n //. of applying the sequence of transformations to the initial value.\n //.\n //. In general terms, `pipeK` performs left-to-right [Kleisli][] composition\n //. of an sequence of functions. `pipeK ([f, g, h]) (x)` is equivalent to\n //. `chain (h) (chain (g) (chain (f) (x)))`.\n //.\n //. ```javascript\n //. > S.pipeK ([S.tail, S.tail, S.head]) (S.Just ([1, 2, 3, 4]))\n //. Just (3)\n //. ```\n function pipeK(fs) {\n return function(x) {\n return Z.reduce (function(x, f) { return Z.chain (f, x); }, x, fs);\n };\n }\n _.pipeK = {\n consts: {f: [Z.Foldable], m: [Z.Chain]},\n types: [f ($.Fn ($.Any) (m ($.Any))), m (a), m (b)],\n impl: pipeK\n };\n\n //# on :: (b -> b -> c) -> (a -> b) -> a -> a -> c\n //.\n //. Takes a binary function `f`, a unary function `g`, and two\n //. values `x` and `y`. Returns `f (g (x)) (g (y))`.\n //.\n //. This is the P combinator from combinatory logic.\n //.\n //. ```javascript\n //. > S.on (S.concat) (S.reverse) ([1, 2, 3]) ([4, 5, 6])\n //. [3, 2, 1, 6, 5, 4]\n //. ```\n function on(f) {\n return function(g) {\n return function(x) {\n return function(y) {\n return f (g (x)) (g (y));\n };\n };\n };\n }\n _.on = {\n consts: {},\n types: [$.Fn (b) ($.Fn (b) (c)), $.Fn (a) (b), a, a, c],\n impl: on\n };\n\n //. ### Pair\n //.\n //. Pair is the canonical product type: a value of type `Pair a b` always\n //. contains exactly two values: one of type `a`; one of type `b`.\n //.\n //. The implementation is provided by [sanctuary-pair][].\n\n //# Pair :: a -> b -> Pair a b\n //.\n //. Pair's sole data constructor. Additionally, it serves as the\n //. Pair [type representative][].\n //.\n //. ```javascript\n //. > S.Pair ('foo') (42)\n //. Pair ('foo') (42)\n //. ```\n _.Pair = {\n consts: {},\n types: [a, b, $.Pair (a) (b)],\n impl: Pair\n };\n\n //# pair :: (a -> b -> c) -> Pair a b -> c\n //.\n //. Case analysis for the `Pair a b` type.\n //.\n //. ```javascript\n //. > S.pair (S.concat) (S.Pair ('foo') ('bar'))\n //. 'foobar'\n //. ```\n function pair(f) {\n return function(pair) {\n return f (pair.fst) (pair.snd);\n };\n }\n _.pair = {\n consts: {},\n types: [$.Fn (a) ($.Fn (b) (c)), $.Pair (a) (b), c],\n impl: pair\n };\n\n //# fst :: Pair a b -> a\n //.\n //. `fst (Pair (x) (y))` is equivalent to `x`.\n //.\n //. ```javascript\n //. > S.fst (S.Pair ('foo') (42))\n //. 'foo'\n //. ```\n _.fst = {\n consts: {},\n types: [$.Pair (a) (b), a],\n impl: pair (K)\n };\n\n //# snd :: Pair a b -> b\n //.\n //. `snd (Pair (x) (y))` is equivalent to `y`.\n //.\n //. ```javascript\n //. > S.snd (S.Pair ('foo') (42))\n //. 42\n //. ```\n _.snd = {\n consts: {},\n types: [$.Pair (a) (b), b],\n impl: pair (C (K))\n };\n\n //# swap :: Pair a b -> Pair b a\n //.\n //. `swap (Pair (x) (y))` is equivalent to `Pair (y) (x)`.\n //.\n //. ```javascript\n //. > S.swap (S.Pair ('foo') (42))\n //. Pair (42) ('foo')\n //. ```\n _.swap = {\n consts: {},\n types: [$.Pair (a) (b), $.Pair (b) (a)],\n impl: pair (C (Pair))\n };\n\n //. ### Maybe\n //.\n //. The Maybe type represents optional values: a value of type `Maybe a` is\n //. either Nothing (the empty value) or a Just whose value is of type `a`.\n //.\n //. The implementation is provided by [sanctuary-maybe][].\n\n //# Maybe :: TypeRep Maybe\n //.\n //. Maybe [type representative][].\n\n //# Nothing :: Maybe a\n //.\n //. The empty value of type `Maybe a`.\n //.\n //. ```javascript\n //. > S.Nothing\n //. Nothing\n //. ```\n\n //# Just :: a -> Maybe a\n //.\n //. Constructs a value of type `Maybe a` from a value of type `a`.\n //.\n //. ```javascript\n //. > S.Just (42)\n //. Just (42)\n //. ```\n _.Just = {\n consts: {},\n types: [a, $.Maybe (a)],\n impl: Just\n };\n\n //# isNothing :: Maybe a -> Boolean\n //.\n //. Returns `true` if the given Maybe is Nothing; `false` if it is a Just.\n //.\n //. ```javascript\n //. > S.isNothing (S.Nothing)\n //. true\n //.\n //. > S.isNothing (S.Just (42))\n //. false\n //. ```\n function isNothing(maybe) {\n return maybe.isNothing;\n }\n _.isNothing = {\n consts: {},\n types: [$.Maybe (a), $.Boolean],\n impl: isNothing\n };\n\n //# isJust :: Maybe a -> Boolean\n //.\n //. Returns `true` if the given Maybe is a Just; `false` if it is Nothing.\n //.\n //. ```javascript\n //. > S.isJust (S.Just (42))\n //. true\n //.\n //. > S.isJust (S.Nothing)\n //. false\n //. ```\n function isJust(maybe) {\n return maybe.isJust;\n }\n _.isJust = {\n consts: {},\n types: [$.Maybe (a), $.Boolean],\n impl: isJust\n };\n\n //# fromMaybe :: a -> Maybe a -> a\n //.\n //. Takes a default value and a Maybe, and returns the Maybe's value\n //. if the Maybe is a Just; the default value otherwise.\n //.\n //. See also [`fromMaybe_`](#fromMaybe_) and\n //. [`maybeToNullable`](#maybeToNullable).\n //.\n //. ```javascript\n //. > S.fromMaybe (0) (S.Just (42))\n //. 42\n //.\n //. > S.fromMaybe (0) (S.Nothing)\n //. 0\n //. ```\n _.fromMaybe = {\n consts: {},\n types: [a, $.Maybe (a), a],\n impl: C (maybe) (I)\n };\n\n //# fromMaybe_ :: (() -> a) -> Maybe a -> a\n //.\n //. Variant of [`fromMaybe`](#fromMaybe) that takes a thunk so the default\n //. value is only computed if required.\n //.\n //. ```javascript\n //. > function fib(n) { return n <= 1 ? n : fib (n - 2) + fib (n - 1); }\n //.\n //. > S.fromMaybe_ (() => fib (30)) (S.Just (1000000))\n //. 1000000\n //.\n //. > S.fromMaybe_ (() => fib (30)) (S.Nothing)\n //. 832040\n //. ```\n _.fromMaybe_ = {\n consts: {},\n types: [$.Thunk (a), $.Maybe (a), a],\n impl: C (maybe_) (I)\n };\n\n //# maybeToNullable :: Maybe a -> Nullable a\n //.\n //. Returns the given Maybe's value if the Maybe is a Just; `null` otherwise.\n //. [Nullable][] is defined in [sanctuary-def][].\n //.\n //. See also [`fromMaybe`](#fromMaybe).\n //.\n //. ```javascript\n //. > S.maybeToNullable (S.Just (42))\n //. 42\n //.\n //. > S.maybeToNullable (S.Nothing)\n //. null\n //. ```\n function maybeToNullable(maybe) {\n return maybe.isJust ? maybe.value : null;\n }\n _.maybeToNullable = {\n consts: {},\n types: [$.Maybe (a), $.Nullable (a)],\n impl: maybeToNullable\n };\n\n //# maybe :: b -> (a -> b) -> Maybe a -> b\n //.\n //. Takes a value of any type, a function, and a Maybe. If the Maybe is\n //. a Just, the return value is the result of applying the function to\n //. the Just's value. Otherwise, the first argument is returned.\n //.\n //. See also [`maybe_`](#maybe_).\n //.\n //. ```javascript\n //. > S.maybe (0) (S.prop ('length')) (S.Just ('refuge'))\n //. 6\n //.\n //. > S.maybe (0) (S.prop ('length')) (S.Nothing)\n //. 0\n //. ```\n function maybe(x) {\n return function(f) {\n return function(maybe) {\n return maybe.isJust ? f (maybe.value) : x;\n };\n };\n }\n _.maybe = {\n consts: {},\n types: [b, $.Fn (a) (b), $.Maybe (a), b],\n impl: maybe\n };\n\n //# maybe_ :: (() -> b) -> (a -> b) -> Maybe a -> b\n //.\n //. Variant of [`maybe`](#maybe) that takes a thunk so the default value\n //. is only computed if required.\n //.\n //. ```javascript\n //. > function fib(n) { return n <= 1 ? n : fib (n - 2) + fib (n - 1); }\n //.\n //. > S.maybe_ (() => fib (30)) (Math.sqrt) (S.Just (1000000))\n //. 1000\n //.\n //. > S.maybe_ (() => fib (30)) (Math.sqrt) (S.Nothing)\n //. 832040\n //. ```\n function maybe_(thunk) {\n return function(f) {\n return function(maybe) {\n return maybe.isJust ? f (maybe.value) : thunk ();\n };\n };\n }\n _.maybe_ = {\n consts: {},\n types: [$.Thunk (b), $.Fn (a) (b), $.Maybe (a), b],\n impl: maybe_\n };\n\n //# justs :: (Filterable f, Functor f) => f (Maybe a) -> f a\n //.\n //. Discards each element that is Nothing, and unwraps each element that is\n //. a Just. Related to Haskell's `catMaybes` function.\n //.\n //. See also [`lefts`](#lefts) and [`rights`](#rights).\n //.\n //. ```javascript\n //. > S.justs ([S.Just ('foo'), S.Nothing, S.Just ('baz')])\n //. ['foo', 'baz']\n //. ```\n function justs(maybes) {\n return map (prop ('value')) (filter (isJust) (maybes));\n }\n _.justs = {\n consts: {f: [Z.Filterable, Z.Functor]},\n types: [f ($.Maybe (a)), f (a)],\n impl: justs\n };\n\n //# mapMaybe :: (Filterable f, Functor f) => (a -> Maybe b) -> f a -> f b\n //.\n //. Takes a function and a structure, applies the function to each element\n //. of the structure, and returns the \"successful\" results. If the result of\n //. applying the function to an element is Nothing, the result is discarded;\n //. if the result is a Just, the Just's value is included.\n //.\n //. ```javascript\n //. > S.mapMaybe (S.head) ([[], [1, 2, 3], [], [4, 5, 6], []])\n //. [1, 4]\n //.\n //. > S.mapMaybe (S.head) ({x: [1, 2, 3], y: [], z: [4, 5, 6]})\n //. {x: 1, z: 4}\n //. ```\n _.mapMaybe = {\n consts: {f: [Z.Filterable, Z.Functor]},\n types: [$.Fn (a) ($.Maybe (b)), f (a), f (b)],\n impl: B (B (justs)) (map)\n };\n\n //# maybeToEither :: a -> Maybe b -> Either a b\n //.\n //. Converts a Maybe to an Either. Nothing becomes a Left (containing the\n //. first argument); a Just becomes a Right.\n //.\n //. See also [`eitherToMaybe`](#eitherToMaybe).\n //.\n //. ```javascript\n //. > S.maybeToEither ('Expecting an integer') (S.parseInt (10) ('xyz'))\n //. Left ('Expecting an integer')\n //.\n //. > S.maybeToEither ('Expecting an integer') (S.parseInt (10) ('42'))\n //. Right (42)\n //. ```\n function maybeToEither(x) {\n return maybe (Left (x)) (Right);\n }\n _.maybeToEither = {\n consts: {},\n types: [a, $.Maybe (b), $.Either (a) (b)],\n impl: maybeToEither\n };\n\n //. ### Either\n //.\n //. The Either type represents values with two possibilities: a value of type\n //. `Either a b` is either a Left whose value is of type `a` or a Right whose\n //. value is of type `b`.\n //.\n //. The implementation is provided by [sanctuary-either][].\n\n //# Either :: TypeRep Either\n //.\n //. Either [type representative][].\n\n //# Left :: a -> Either a b\n //.\n //. Constructs a value of type `Either a b` from a value of type `a`.\n //.\n //. ```javascript\n //. > S.Left ('Cannot divide by zero')\n //. Left ('Cannot divide by zero')\n //. ```\n _.Left = {\n consts: {},\n types: [a, $.Either (a) (b)],\n impl: Left\n };\n\n //# Right :: b -> Either a b\n //.\n //. Constructs a value of type `Either a b` from a value of type `b`.\n //.\n //. ```javascript\n //. > S.Right (42)\n //. Right (42)\n //. ```\n _.Right = {\n consts: {},\n types: [b, $.Either (a) (b)],\n impl: Right\n };\n\n //# isLeft :: Either a b -> Boolean\n //.\n //. Returns `true` if the given Either is a Left; `false` if it is a Right.\n //.\n //. ```javascript\n //. > S.isLeft (S.Left ('Cannot divide by zero'))\n //. true\n //.\n //. > S.isLeft (S.Right (42))\n //. false\n //. ```\n function isLeft(either) {\n return either.isLeft;\n }\n _.isLeft = {\n consts: {},\n types: [$.Either (a) (b), $.Boolean],\n impl: isLeft\n };\n\n //# isRight :: Either a b -> Boolean\n //.\n //. Returns `true` if the given Either is a Right; `false` if it is a Left.\n //.\n //. ```javascript\n //. > S.isRight (S.Right (42))\n //. true\n //.\n //. > S.isRight (S.Left ('Cannot divide by zero'))\n //. false\n //. ```\n function isRight(either) {\n return either.isRight;\n }\n _.isRight = {\n consts: {},\n types: [$.Either (a) (b), $.Boolean],\n impl: isRight\n };\n\n //# fromEither :: b -> Either a b -> b\n //.\n //. Takes a default value and an Either, and returns the Right value\n //. if the Either is a Right; the default value otherwise.\n //.\n //. ```javascript\n //. > S.fromEither (0) (S.Right (42))\n //. 42\n //.\n //. > S.fromEither (0) (S.Left (42))\n //. 0\n //. ```\n function fromEither(x) {\n return either (K (x)) (I);\n }\n _.fromEither = {\n consts: {},\n types: [b, $.Either (a) (b), b],\n impl: fromEither\n };\n\n //# either :: (a -> c) -> (b -> c) -> Either a b -> c\n //.\n //. Takes two functions and an Either, and returns the result of\n //. applying the first function to the Left's value, if the Either\n //. is a Left, or the result of applying the second function to the\n //. Right's value, if the Either is a Right.\n //.\n //. ```javascript\n //. > S.either (S.toUpper) (S.show) (S.Left ('Cannot divide by zero'))\n //. 'CANNOT DIVIDE BY ZERO'\n //.\n //. > S.either (S.toUpper) (S.show) (S.Right (42))\n //. '42'\n //. ```\n function either(l) {\n return function(r) {\n return function(either) {\n return (either.isLeft ? l : r) (either.value);\n };\n };\n }\n _.either = {\n consts: {},\n types: [$.Fn (a) (c), $.Fn (b) (c), $.Either (a) (b), c],\n impl: either\n };\n\n //# lefts :: (Filterable f, Functor f) => f (Either a b) -> f a\n //.\n //. Discards each element that is a Right, and unwraps each element that is\n //. a Left.\n //.\n //. See also [`rights`](#rights).\n //.\n //. ```javascript\n //. > S.lefts ([S.Right (20), S.Left ('foo'), S.Right (10), S.Left ('bar')])\n //. ['foo', 'bar']\n //. ```\n _.lefts = {\n consts: {f: [Z.Filterable, Z.Functor]},\n types: [f ($.Either (a) (b)), f (a)],\n impl: B (map (prop ('value'))) (filter (isLeft))\n };\n\n //# rights :: (Filterable f, Functor f) => f (Either a b) -> f b\n //.\n //. Discards each element that is a Left, and unwraps each element that is\n //. a Right.\n //.\n //. See also [`lefts`](#lefts).\n //.\n //. ```javascript\n //. > S.rights ([S.Right (20), S.Left ('foo'), S.Right (10), S.Left ('bar')])\n //. [20, 10]\n //. ```\n _.rights = {\n consts: {f: [Z.Filterable, Z.Functor]},\n types: [f ($.Either (a) (b)), f (b)],\n impl: B (map (prop ('value'))) (filter (isRight))\n };\n\n //# tagBy :: (a -> Boolean) -> a -> Either a a\n //.\n //. Takes a predicate and a value, and returns a Right of the value if it\n //. satisfies the predicate; a Left of the value otherwise.\n //.\n //. ```javascript\n //. > S.tagBy (S.odd) (0)\n //. Left (0)\n //\n //. > S.tagBy (S.odd) (1)\n //. Right (1)\n //. ```\n function tagBy(pred) {\n return ifElse (pred) (Right) (Left);\n }\n _.tagBy = {\n consts: {},\n types: [$.Predicate (a), a, $.Either (a) (a)],\n impl: tagBy\n };\n\n //# encase :: (a -> b) -> a -> Either Error b\n //.\n //. Takes a function that may throw and returns a pure function.\n //.\n //. ```javascript\n //. > S.encase (JSON.parse) ('[\"foo\",\"bar\",\"baz\"]')\n //. Right (['foo', 'bar', 'baz'])\n //.\n //. > S.encase (JSON.parse) ('[')\n //. Left (new SyntaxError ('Unexpected end of JSON input'))\n //. ```\n function encase(f) {\n return function(x) {\n try {\n return Right (f (x));\n } catch (err) {\n return Left (err);\n }\n };\n }\n _.encase = {\n consts: {},\n types: [$.Fn (a) (b), a, $.Either ($.Error) (b)],\n impl: encase\n };\n\n //# eitherToMaybe :: Either a b -> Maybe b\n //.\n //. Converts an Either to a Maybe. A Left becomes Nothing; a Right becomes\n //. a Just.\n //.\n //. See also [`maybeToEither`](#maybeToEither).\n //.\n //. ```javascript\n //. > S.eitherToMaybe (S.Left ('Cannot divide by zero'))\n //. Nothing\n //.\n //. > S.eitherToMaybe (S.Right (42))\n //. Just (42)\n //. ```\n function eitherToMaybe(either) {\n return either.isLeft ? Nothing : Just (either.value);\n }\n _.eitherToMaybe = {\n consts: {},\n types: [$.Either (a) (b), $.Maybe (b)],\n impl: eitherToMaybe\n };\n\n //. ### Logic\n\n //# and :: Boolean -> Boolean -> Boolean\n //.\n //. Boolean \"and\".\n //.\n //. ```javascript\n //. > S.and (false) (false)\n //. false\n //.\n //. > S.and (false) (true)\n //. false\n //.\n //. > S.and (true) (false)\n //. false\n //.\n //. > S.and (true) (true)\n //. true\n //. ```\n function and(x) {\n return function(y) {\n return x && y;\n };\n }\n _.and = {\n consts: {},\n types: [$.Boolean, $.Boolean, $.Boolean],\n impl: and\n };\n\n //# or :: Boolean -> Boolean -> Boolean\n //.\n //. Boolean \"or\".\n //.\n //. ```javascript\n //. > S.or (false) (false)\n //. false\n //.\n //. > S.or (false) (true)\n //. true\n //.\n //. > S.or (true) (false)\n //. true\n //.\n //. > S.or (true) (true)\n //. true\n //. ```\n function or(x) {\n return function(y) {\n return x || y;\n };\n }\n _.or = {\n consts: {},\n types: [$.Boolean, $.Boolean, $.Boolean],\n impl: or\n };\n\n //# not :: Boolean -> Boolean\n //.\n //. Boolean \"not\".\n //.\n //. See also [`complement`](#complement).\n //.\n //. ```javascript\n //. > S.not (false)\n //. true\n //.\n //. > S.not (true)\n //. false\n //. ```\n function not(x) {\n return !x;\n }\n _.not = {\n consts: {},\n types: [$.Boolean, $.Boolean],\n impl: not\n };\n\n //# complement :: (a -> Boolean) -> a -> Boolean\n //.\n //. Takes a unary predicate and a value of any type, and returns the logical\n //. negation of applying the predicate to the value.\n //.\n //. See also [`not`](#not).\n //.\n //. ```javascript\n //. > Number.isInteger (42)\n //. true\n //.\n //. > S.complement (Number.isInteger) (42)\n //. false\n //. ```\n _.complement = {\n consts: {},\n types: [$.Predicate (a), a, $.Boolean],\n impl: B (not)\n };\n\n //# boolean :: a -> a -> Boolean -> a\n //.\n //. Case analysis for the `Boolean` type. `boolean (x) (y) (b)` evaluates\n //. to `x` if `b` is `false`; to `y` if `b` is `true`.\n //.\n //. ```javascript\n //. > S.boolean ('no') ('yes') (false)\n //. 'no'\n //.\n //. > S.boolean ('no') ('yes') (true)\n //. 'yes'\n //. ```\n function boolean(x) {\n return function(y) {\n return function(b) {\n return b ? y : x;\n };\n };\n }\n _.boolean = {\n consts: {},\n types: [a, a, $.Boolean, a],\n impl: boolean\n };\n\n //# ifElse :: (a -> Boolean) -> (a -> b) -> (a -> b) -> a -> b\n //.\n //. Takes a unary predicate, a unary \"if\" function, a unary \"else\"\n //. function, and a value of any type, and returns the result of\n //. applying the \"if\" function to the value if the value satisfies\n //. the predicate; the result of applying the \"else\" function to the\n //. value otherwise.\n //.\n //. See also [`when`](#when) and [`unless`](#unless).\n //.\n //. ```javascript\n //. > S.ifElse (x => x < 0) (Math.abs) (Math.sqrt) (-1)\n //. 1\n //.\n //. > S.ifElse (x => x < 0) (Math.abs) (Math.sqrt) (16)\n //. 4\n //. ```\n function ifElse(pred) {\n return function(f) {\n return function(g) {\n return function(x) {\n return (pred (x) ? f : g) (x);\n };\n };\n };\n }\n _.ifElse = {\n consts: {},\n types: [$.Predicate (a), $.Fn (a) (b), $.Fn (a) (b), a, b],\n impl: ifElse\n };\n\n //# when :: (a -> Boolean) -> (a -> a) -> a -> a\n //.\n //. Takes a unary predicate, a unary function, and a value of any type, and\n //. returns the result of applying the function to the value if the value\n //. satisfies the predicate; the value otherwise.\n //.\n //. See also [`unless`](#unless) and [`ifElse`](#ifElse).\n //.\n //. ```javascript\n //. > S.when (x => x >= 0) (Math.sqrt) (16)\n //. 4\n //.\n //. > S.when (x => x >= 0) (Math.sqrt) (-1)\n //. -1\n //. ```\n function when(pred) {\n return C (ifElse (pred)) (I);\n }\n _.when = {\n consts: {},\n types: [$.Predicate (a), $.Fn (a) (a), a, a],\n impl: when\n };\n\n //# unless :: (a -> Boolean) -> (a -> a) -> a -> a\n //.\n //. Takes a unary predicate, a unary function, and a value of any type, and\n //. returns the result of applying the function to the value if the value\n //. does not satisfy the predicate; the value otherwise.\n //.\n //. See also [`when`](#when) and [`ifElse`](#ifElse).\n //.\n //. ```javascript\n //. > S.unless (x => x < 0) (Math.sqrt) (16)\n //. 4\n //.\n //. > S.unless (x => x < 0) (Math.sqrt) (-1)\n //. -1\n //. ```\n function unless(pred) {\n return ifElse (pred) (I);\n }\n _.unless = {\n consts: {},\n types: [$.Predicate (a), $.Fn (a) (a), a, a],\n impl: unless\n };\n\n //. ### Array\n\n //# array :: b -> (a -> Array a -> b) -> Array a -> b\n //.\n //. Case analysis for the `Array a` type.\n //.\n //. ```javascript\n //. > S.array (S.Nothing) (head => tail => S.Just (head)) ([])\n //. Nothing\n //.\n //. > S.array (S.Nothing) (head => tail => S.Just (head)) ([1, 2, 3])\n //. Just (1)\n //.\n //. > S.array (S.Nothing) (head => tail => S.Just (tail)) ([])\n //. Nothing\n //.\n //. > S.array (S.Nothing) (head => tail => S.Just (tail)) ([1, 2, 3])\n //. Just ([2, 3])\n //. ```\n function array(y) {\n return function(f) {\n return function(xs) {\n return xs.length === 0 ? y : f (xs[0]) (xs.slice (1));\n };\n };\n }\n _.array = {\n consts: {},\n types: [b, $.Fn (a) ($.Fn ($.Array (a)) (b)), $.Array (a), b],\n impl: array\n };\n\n //# head :: Foldable f => f a -> Maybe a\n //.\n //. Returns Just the first element of the given structure if the structure\n //. contains at least one element; Nothing otherwise.\n //.\n //. ```javascript\n //. > S.head ([1, 2, 3])\n //. Just (1)\n //.\n //. > S.head ([])\n //. Nothing\n //.\n //. > S.head (Cons (1) (Cons (2) (Cons (3) (Nil))))\n //. Just (1)\n //.\n //. > S.head (Nil)\n //. Nothing\n //. ```\n function head(foldable) {\n // Fast path for arrays.\n if (Array.isArray (foldable)) {\n return foldable.length > 0 ? Just (foldable[0]) : Nothing;\n }\n return Z.reduce (function(m, x) { return m.isJust ? m : Just (x); },\n Nothing,\n foldable);\n }\n _.head = {\n consts: {f: [Z.Foldable]},\n types: [f (a), $.Maybe (a)],\n impl: head\n };\n\n //# last :: Foldable f => f a -> Maybe a\n //.\n //. Returns Just the last element of the given structure if the structure\n //. contains at least one element; Nothing otherwise.\n //.\n //. ```javascript\n //. > S.last ([1, 2, 3])\n //. Just (3)\n //.\n //. > S.last ([])\n //. Nothing\n //.\n //. > S.last (Cons (1) (Cons (2) (Cons (3) (Nil))))\n //. Just (3)\n //.\n //. > S.last (Nil)\n //. Nothing\n //. ```\n function last(foldable) {\n // Fast path for arrays.\n if (Array.isArray (foldable)) {\n return foldable.length > 0 ? Just (foldable[foldable.length - 1])\n : Nothing;\n }\n return Z.reduce (function(_, x) { return Just (x); }, Nothing, foldable);\n }\n _.last = {\n consts: {f: [Z.Foldable]},\n types: [f (a), $.Maybe (a)],\n impl: last\n };\n\n //# tail :: (Applicative f, Foldable f, Monoid (f a)) => f a -> Maybe (f a)\n //.\n //. Returns Just all but the first of the given structure's elements if the\n //. structure contains at least one element; Nothing otherwise.\n //.\n //. ```javascript\n //. > S.tail ([1, 2, 3])\n //. Just ([2, 3])\n //.\n //. > S.tail ([])\n //. Nothing\n //.\n //. > S.tail (Cons (1) (Cons (2) (Cons (3) (Nil))))\n //. Just (Cons (2) (Cons (3) (Nil)))\n //\n //. > S.tail (Nil)\n //. Nothing\n //. ```\n function tail(foldable) {\n // Fast path for arrays.\n if (Array.isArray (foldable)) {\n return foldable.length > 0 ? Just (foldable.slice (1)) : Nothing;\n }\n var empty = Z.empty (foldable.constructor);\n return Z.reduce (function(m, x) {\n return Just (maybe (empty) (append (x)) (m));\n }, Nothing, foldable);\n }\n _.tail = {\n consts: {f: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [f (a), $.Maybe (f (a))],\n impl: tail\n };\n\n //# init :: (Applicative f, Foldable f, Monoid (f a)) => f a -> Maybe (f a)\n //.\n //. Returns Just all but the last of the given structure's elements if the\n //. structure contains at least one element; Nothing otherwise.\n //.\n //. ```javascript\n //. > S.init ([1, 2, 3])\n //. Just ([1, 2])\n //.\n //. > S.init ([])\n //. Nothing\n //.\n //. > S.init (Cons (1) (Cons (2) (Cons (3) (Nil))))\n //. Just (Cons (1) (Cons (2) (Nil)))\n //.\n //. > S.init (Nil)\n //. Nothing\n //. ```\n function init(foldable) {\n // Fast path for arrays.\n if (Array.isArray (foldable)) {\n return foldable.length > 0 ? Just (foldable.slice (0, -1)) : Nothing;\n }\n var empty = Z.empty (foldable.constructor);\n return Z.map (Pair.snd, Z.reduce (function(m, x) {\n return Just (Pair (x) (maybe (empty) (pair (append)) (m)));\n }, Nothing, foldable));\n }\n _.init = {\n consts: {f: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [f (a), $.Maybe (f (a))],\n impl: init\n };\n\n //# take :: (Applicative f, Foldable f, Monoid (f a)) => Integer -> f a -> Maybe (f a)\n //.\n //. Returns Just the first N elements of the given structure if N is\n //. non-negative and less than or equal to the size of the structure;\n //. Nothing otherwise.\n //.\n //. ```javascript\n //. > S.take (0) (['foo', 'bar'])\n //. Just ([])\n //.\n //. > S.take (1) (['foo', 'bar'])\n //. Just (['foo'])\n //.\n //. > S.take (2) (['foo', 'bar'])\n //. Just (['foo', 'bar'])\n //.\n //. > S.take (3) (['foo', 'bar'])\n //. Nothing\n //.\n //. > S.take (3) (Cons (1) (Cons (2) (Cons (3) (Cons (4) (Cons (5) (Nil))))))\n //. Just (Cons (1) (Cons (2) (Cons (3) (Nil))))\n //. ```\n function _takeDrop(arrayCase, generalCase) {\n return function(n) {\n return function(xs) {\n if (n < 0) return Nothing;\n\n // Fast path for arrays.\n if (Array.isArray (xs)) {\n return n <= xs.length ? Just (arrayCase (n, xs)) : Nothing;\n }\n\n // m :: Maybe (Pair Integer (f a))\n var m = Z.reduce (function(m, x) {\n return Z.map (function(pair) {\n var n = pair.fst;\n var xs = pair.snd;\n return Pair (n - 1) (generalCase (n, xs, x));\n }, m);\n }, Just (Pair (n) (Z.empty (xs.constructor))), xs);\n\n return Z.map (Pair.snd, Z.reject (B (gt (0)) (Pair.fst), m));\n };\n };\n }\n var take = _takeDrop (\n function(n, xs) { return xs.slice (0, n); },\n function(n, xs, x) { return n > 0 ? Z.append (x, xs) : xs; }\n );\n _.take = {\n consts: {f: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [$.Integer, f (a), $.Maybe (f (a))],\n impl: take\n };\n\n //# drop :: (Applicative f, Foldable f, Monoid (f a)) => Integer -> f a -> Maybe (f a)\n //.\n //. Returns Just all but the first N elements of the given structure if\n //. N is non-negative and less than or equal to the size of the structure;\n //. Nothing otherwise.\n //.\n //. ```javascript\n //. > S.drop (0) (['foo', 'bar'])\n //. Just (['foo', 'bar'])\n //.\n //. > S.drop (1) (['foo', 'bar'])\n //. Just (['bar'])\n //.\n //. > S.drop (2) (['foo', 'bar'])\n //. Just ([])\n //.\n //. > S.drop (3) (['foo', 'bar'])\n //. Nothing\n //.\n //. > S.drop (3) (Cons (1) (Cons (2) (Cons (3) (Cons (4) (Cons (5) (Nil))))))\n //. Just (Cons (4) (Cons (5) (Nil)))\n //. ```\n var drop = _takeDrop (\n function(n, xs) { return xs.slice (n); },\n function(n, xs, x) { return n > 0 ? xs : Z.append (x, xs); }\n );\n _.drop = {\n consts: {f: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [$.Integer, f (a), $.Maybe (f (a))],\n impl: drop\n };\n\n //# takeLast :: (Applicative f, Foldable f, Monoid (f a)) => Integer -> f a -> Maybe (f a)\n //.\n //. Returns Just the last N elements of the given structure if N is\n //. non-negative and less than or equal to the size of the structure;\n //. Nothing otherwise.\n //.\n //. ```javascript\n //. > S.takeLast (0) (['foo', 'bar'])\n //. Just ([])\n //.\n //. > S.takeLast (1) (['foo', 'bar'])\n //. Just (['bar'])\n //.\n //. > S.takeLast (2) (['foo', 'bar'])\n //. Just (['foo', 'bar'])\n //.\n //. > S.takeLast (3) (['foo', 'bar'])\n //. Nothing\n //.\n //. > S.takeLast (3) (Cons (1) (Cons (2) (Cons (3) (Cons (4) (Nil)))))\n //. Just (Cons (2) (Cons (3) (Cons (4) (Nil))))\n //. ```\n function takeLast(n) {\n return function(xs) {\n return Z.map (Z.reverse, take (n) (Z.reverse (xs)));\n };\n }\n _.takeLast = {\n consts: {f: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [$.Integer, f (a), $.Maybe (f (a))],\n impl: takeLast\n };\n\n //# dropLast :: (Applicative f, Foldable f, Monoid (f a)) => Integer -> f a -> Maybe (f a)\n //.\n //. Returns Just all but the last N elements of the given structure if\n //. N is non-negative and less than or equal to the size of the structure;\n //. Nothing otherwise.\n //.\n //. ```javascript\n //. > S.dropLast (0) (['foo', 'bar'])\n //. Just (['foo', 'bar'])\n //.\n //. > S.dropLast (1) (['foo', 'bar'])\n //. Just (['foo'])\n //.\n //. > S.dropLast (2) (['foo', 'bar'])\n //. Just ([])\n //.\n //. > S.dropLast (3) (['foo', 'bar'])\n //. Nothing\n //.\n //. > S.dropLast (3) (Cons (1) (Cons (2) (Cons (3) (Cons (4) (Nil)))))\n //. Just (Cons (1) (Nil))\n //. ```\n function dropLast(n) {\n return function(xs) {\n return Z.map (Z.reverse, drop (n) (Z.reverse (xs)));\n };\n }\n _.dropLast = {\n consts: {f: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [$.Integer, f (a), $.Maybe (f (a))],\n impl: dropLast\n };\n\n //# takeWhile :: (a -> Boolean) -> Array a -> Array a\n //.\n //. Discards the first element that does not satisfy the predicate,\n //. and all subsequent elements.\n //.\n //. See also [`dropWhile`](#dropWhile).\n //.\n //. ```javascript\n //. > S.takeWhile (S.odd) ([3, 3, 3, 7, 6, 3, 5, 4])\n //. [3, 3, 3, 7]\n //.\n //. > S.takeWhile (S.even) ([3, 3, 3, 7, 6, 3, 5, 4])\n //. []\n //. ```\n function takeWhile(pred) {\n return function(xs) {\n var idx = 0;\n while (idx < xs.length && pred (xs[idx])) idx += 1;\n return xs.slice (0, idx);\n };\n }\n _.takeWhile = {\n consts: {},\n types: [$.Predicate (a), $.Array (a), $.Array (a)],\n impl: takeWhile\n };\n\n //# dropWhile :: (a -> Boolean) -> Array a -> Array a\n //.\n //. Retains the first element that does not satisfy the predicate,\n //. and all subsequent elements.\n //.\n //. See also [`takeWhile`](#takeWhile).\n //.\n //. ```javascript\n //. > S.dropWhile (S.odd) ([3, 3, 3, 7, 6, 3, 5, 4])\n //. [6, 3, 5, 4]\n //.\n //. > S.dropWhile (S.even) ([3, 3, 3, 7, 6, 3, 5, 4])\n //. [3, 3, 3, 7, 6, 3, 5, 4]\n //. ```\n function dropWhile(pred) {\n return function(xs) {\n var idx = 0;\n while (idx < xs.length && pred (xs[idx])) idx += 1;\n return xs.slice (idx);\n };\n }\n _.dropWhile = {\n consts: {},\n types: [$.Predicate (a), $.Array (a), $.Array (a)],\n impl: dropWhile\n };\n\n //# size :: Foldable f => f a -> NonNegativeInteger\n //.\n //. Returns the number of elements of the given structure.\n //.\n //. ```javascript\n //. > S.size ([])\n //. 0\n //.\n //. > S.size (['foo', 'bar', 'baz'])\n //. 3\n //.\n //. > S.size (Nil)\n //. 0\n //.\n //. > S.size (Cons ('foo') (Cons ('bar') (Cons ('baz') (Nil))))\n //. 3\n //.\n //. > S.size (S.Nothing)\n //. 0\n //.\n //. > S.size (S.Just ('quux'))\n //. 1\n //.\n //. > S.size (S.Pair ('ignored!') ('counted!'))\n //. 1\n //. ```\n _.size = {\n consts: {f: [Z.Foldable]},\n types: [f (a), $.NonNegativeInteger],\n impl: Z.size\n };\n\n //# all :: Foldable f => (a -> Boolean) -> f a -> Boolean\n //.\n //. Returns `true` [iff][] all the elements of the structure satisfy the\n //. predicate.\n //.\n //. See also [`any`](#any) and [`none`](#none).\n //.\n //. ```javascript\n //. > S.all (S.odd) ([])\n //. true\n //.\n //. > S.all (S.odd) ([1, 3, 5])\n //. true\n //.\n //. > S.all (S.odd) ([1, 2, 3])\n //. false\n //. ```\n _.all = {\n consts: {f: [Z.Foldable]},\n types: [$.Predicate (a), f (a), $.Boolean],\n impl: curry2 (Z.all)\n };\n\n //# any :: Foldable f => (a -> Boolean) -> f a -> Boolean\n //.\n //. Returns `true` [iff][] any element of the structure satisfies the\n //. predicate.\n //.\n //. See also [`all`](#all) and [`none`](#none).\n //.\n //. ```javascript\n //. > S.any (S.odd) ([])\n //. false\n //.\n //. > S.any (S.odd) ([2, 4, 6])\n //. false\n //.\n //. > S.any (S.odd) ([1, 2, 3])\n //. true\n //. ```\n _.any = {\n consts: {f: [Z.Foldable]},\n types: [$.Predicate (a), f (a), $.Boolean],\n impl: curry2 (Z.any)\n };\n\n //# none :: Foldable f => (a -> Boolean) -> f a -> Boolean\n //.\n //. Returns `true` [iff][] none of the elements of the structure satisfies\n //. the predicate.\n //.\n //. Properties:\n //.\n //. - `forall p :: a -> Boolean, xs :: Foldable f => f a.\n //. S.none (p) (xs) = S.not (S.any (p) (xs))`\n //.\n //. - `forall p :: a -> Boolean, xs :: Foldable f => f a.\n //. S.none (p) (xs) = S.all (S.complement (p)) (xs)`\n //.\n //. See also [`all`](#all) and [`any`](#any).\n //.\n //. ```javascript\n //. > S.none (S.odd) ([])\n //. true\n //.\n //. > S.none (S.odd) ([2, 4, 6])\n //. true\n //.\n //. > S.none (S.odd) ([1, 2, 3])\n //. false\n //. ```\n _.none = {\n consts: {f: [Z.Foldable]},\n types: [$.Predicate (a), f (a), $.Boolean],\n impl: curry2 (Z.none)\n };\n\n //# append :: (Applicative f, Semigroup (f a)) => a -> f a -> f a\n //.\n //. Returns the result of appending the first argument to the second.\n //.\n //. See also [`prepend`](#prepend).\n //.\n //. ```javascript\n //. > S.append (3) ([1, 2])\n //. [1, 2, 3]\n //.\n //. > S.append (3) (Cons (1) (Cons (2) (Nil)))\n //. Cons (1) (Cons (2) (Cons (3) (Nil)))\n //.\n //. > S.append ([1]) (S.Nothing)\n //. Just ([1])\n //.\n //. > S.append ([3]) (S.Just ([1, 2]))\n //. Just ([1, 2, 3])\n //. ```\n function append(x) {\n return function(xs) {\n return Z.append (x, xs);\n };\n }\n _.append = {\n consts: {f: [Z.Applicative, Z.Semigroup]},\n types: [a, f (a), f (a)],\n impl: append\n };\n\n //# prepend :: (Applicative f, Semigroup (f a)) => a -> f a -> f a\n //.\n //. Returns the result of prepending the first argument to the second.\n //.\n //. See also [`append`](#append).\n //.\n //. ```javascript\n //. > S.prepend (1) ([2, 3])\n //. [1, 2, 3]\n //.\n //. > S.prepend (1) (Cons (2) (Cons (3) (Nil)))\n //. Cons (1) (Cons (2) (Cons (3) (Nil)))\n //.\n //. > S.prepend ([1]) (S.Nothing)\n //. Just ([1])\n //.\n //. > S.prepend ([1]) (S.Just ([2, 3]))\n //. Just ([1, 2, 3])\n //. ```\n _.prepend = {\n consts: {f: [Z.Applicative, Z.Semigroup]},\n types: [a, f (a), f (a)],\n impl: curry2 (Z.prepend)\n };\n\n //# joinWith :: String -> Array String -> String\n //.\n //. Joins the strings of the second argument separated by the first argument.\n //.\n //. Properties:\n //.\n //. - `forall s :: String, t :: String.\n //. S.joinWith (s) (S.splitOn (s) (t)) = t`\n //.\n //. See also [`splitOn`](#splitOn).\n //.\n //. ```javascript\n //. > S.joinWith (':') (['foo', 'bar', 'baz'])\n //. 'foo:bar:baz'\n //. ```\n _.joinWith = {\n consts: {},\n types: [$.String, $.Array ($.String), $.String],\n impl: invoke1 ('join')\n };\n\n //# elem :: (Setoid a, Foldable f) => a -> f a -> Boolean\n //.\n //. Takes a value and a structure and returns `true` [iff][] the value is an\n //. element of the structure.\n //.\n //. See also [`find`](#find).\n //.\n //. ```javascript\n //. > S.elem ('c') (['a', 'b', 'c'])\n //. true\n //.\n //. > S.elem ('x') (['a', 'b', 'c'])\n //. false\n //.\n //. > S.elem (3) ({x: 1, y: 2, z: 3})\n //. true\n //.\n //. > S.elem (8) ({x: 1, y: 2, z: 3})\n //. false\n //.\n //. > S.elem (0) (S.Just (0))\n //. true\n //.\n //. > S.elem (0) (S.Just (1))\n //. false\n //.\n //. > S.elem (0) (S.Nothing)\n //. false\n //. ```\n _.elem = {\n consts: {a: [Z.Setoid], f: [Z.Foldable]},\n types: [a, f (a), $.Boolean],\n impl: curry2 (Z.elem)\n };\n\n //# find :: Foldable f => (a -> Boolean) -> f a -> Maybe a\n //.\n //. Takes a predicate and a structure and returns Just the leftmost element\n //. of the structure that satisfies the predicate; Nothing if there is no\n //. such element.\n //.\n //. See also [`elem`](#elem).\n //.\n //. ```javascript\n //. > S.find (S.lt (0)) ([1, -2, 3, -4, 5])\n //. Just (-2)\n //.\n //. > S.find (S.lt (0)) ([1, 2, 3, 4, 5])\n //. Nothing\n //. ```\n function find(pred) {\n return function(xs) {\n return Z.reduce (\n function(m, x) {\n return m.isJust ? m : pred (x) ? Just (x) : Nothing;\n },\n Nothing,\n xs\n );\n };\n }\n _.find = {\n consts: {f: [Z.Foldable]},\n types: [$.Predicate (a), f (a), $.Maybe (a)],\n impl: find\n };\n\n //# foldMap :: (Monoid m, Foldable f) => TypeRep m -> (a -> m) -> f a -> m\n //.\n //. Curried version of [`Z.foldMap`][]. Deconstructs a foldable by mapping\n //. every element to a monoid and concatenating the results.\n //.\n //. ```javascript\n //. > S.foldMap (String) (f => f.name) ([Math.sin, Math.cos, Math.tan])\n //. 'sincostan'\n //.\n //. > S.foldMap (Array) (x => [x + 1, x + 2]) ([10, 20, 30])\n //. [11, 12, 21, 22, 31, 32]\n //. ```\n _.foldMap = {\n consts: {b: [Z.Monoid], f: [Z.Foldable]},\n types: [TypeRep (b), $.Fn (a) (b), f (a), b],\n impl: curry3 (Z.foldMap)\n };\n\n //# unfoldr :: (b -> Maybe (Pair a b)) -> b -> Array a\n //.\n //. Takes a function and a seed value, and returns an array generated by\n //. applying the function repeatedly. The array is initially empty. The\n //. function is initially applied to the seed value. Each application\n //. of the function should result in either:\n //.\n //. - Nothing, in which case the array is returned; or\n //.\n //. - Just a pair, in which case the first element is appended to\n //. the array and the function is applied to the second element.\n //.\n //. ```javascript\n //. > S.unfoldr (n => n < 1000 ? S.Just (S.Pair (n) (2 * n)) : S.Nothing) (1)\n //. [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]\n //. ```\n function unfoldr(f) {\n return function(x) {\n var result = [];\n for (var m = f (x); m.isJust; m = f (m.value.snd)) {\n result.push (m.value.fst);\n }\n return result;\n };\n }\n _.unfoldr = {\n consts: {},\n types: [$.Fn (b) ($.Maybe ($.Pair (a) (b))), b, $.Array (a)],\n impl: unfoldr\n };\n\n //# range :: Integer -> Integer -> Array Integer\n //.\n //. Returns an array of consecutive integers starting with the first argument\n //. and ending with the second argument minus one. Returns `[]` if the second\n //. argument is less than or equal to the first argument.\n //.\n //. ```javascript\n //. > S.range (0) (10)\n //. [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]\n //.\n //. > S.range (-5) (0)\n //. [-5, -4, -3, -2, -1]\n //.\n //. > S.range (0) (-5)\n //. []\n //. ```\n function range(from) {\n return function(to) {\n var result = [];\n for (var n = from; n < to; n += 1) result.push (n);\n return result;\n };\n }\n _.range = {\n consts: {},\n types: [$.Integer, $.Integer, $.Array ($.Integer)],\n impl: range\n };\n\n //# groupBy :: (a -> a -> Boolean) -> Array a -> Array (Array a)\n //.\n //. Splits its array argument into an array of arrays of equal,\n //. adjacent elements. Equality is determined by the function\n //. provided as the first argument. Its behaviour can be surprising\n //. for functions that aren't reflexive, transitive, and symmetric\n //. (see [equivalence][] relation).\n //.\n //. Properties:\n //.\n //. - `forall f :: a -> a -> Boolean, xs :: Array a.\n //. S.join (S.groupBy (f) (xs)) = xs`\n //.\n //. ```javascript\n //. > S.groupBy (S.equals) ([1, 1, 2, 1, 1])\n //. [[1, 1], [2], [1, 1]]\n //.\n //. > S.groupBy (x => y => x + y === 0) ([2, -3, 3, 3, 3, 4, -4, 4])\n //. [[2], [-3, 3, 3, 3], [4, -4], [4]]\n //. ```\n function groupBy(f) {\n return function(xs) {\n if (xs.length === 0) return [];\n var x0 = xs[0]; // :: a\n var active = [x0]; // :: Array a\n var result = [active]; // :: Array (Array a)\n for (var idx = 1; idx < xs.length; idx += 1) {\n var x = xs[idx];\n if (f (x0) (x)) active.push (x); else result.push (active = [x0 = x]);\n }\n return result;\n };\n }\n _.groupBy = {\n consts: {},\n types: [$.Fn (a) ($.Predicate (a)), $.Array (a), $.Array ($.Array (a))],\n impl: groupBy\n };\n\n //# reverse :: (Applicative f, Foldable f, Monoid (f a)) => f a -> f a\n //.\n //. Reverses the elements of the given structure.\n //.\n //. ```javascript\n //. > S.reverse ([1, 2, 3])\n //. [3, 2, 1]\n //.\n //. > S.reverse (Cons (1) (Cons (2) (Cons (3) (Nil))))\n //. Cons (3) (Cons (2) (Cons (1) (Nil)))\n //.\n //. > S.pipe ([S.splitOn (''), S.reverse, S.joinWith ('')]) ('abc')\n //. 'cba'\n //. ```\n _.reverse = {\n consts: {f: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [f (a), f (a)],\n impl: Z.reverse\n };\n\n //# sort :: (Ord a, Applicative m, Foldable m, Monoid (m a)) => m a -> m a\n //.\n //. Performs a [stable sort][] of the elements of the given structure, using\n //. [`Z.lte`][] for comparisons.\n //.\n //. Properties:\n //.\n //. - `S.sort (S.sort (m)) = S.sort (m)` (idempotence)\n //.\n //. See also [`sortBy`](#sortBy).\n //.\n //. ```javascript\n //. > S.sort (['foo', 'bar', 'baz'])\n //. ['bar', 'baz', 'foo']\n //.\n //. > S.sort ([S.Left (4), S.Right (3), S.Left (2), S.Right (1)])\n //. [Left (2), Left (4), Right (1), Right (3)]\n //. ```\n _.sort = {\n consts: {a: [Z.Ord], m: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [m (a), m (a)],\n impl: Z.sort\n };\n\n //# sortBy :: (Ord b, Applicative m, Foldable m, Monoid (m a)) => (a -> b) -> m a -> m a\n //.\n //. Performs a [stable sort][] of the elements of the given structure, using\n //. [`Z.lte`][] to compare the values produced by applying the given function\n //. to each element of the structure.\n //.\n //. Properties:\n //.\n //. - `S.sortBy (f) (S.sortBy (f) (m)) = S.sortBy (f) (m)` (idempotence)\n //.\n //. See also [`sort`](#sort).\n //.\n //. ```javascript\n //. > S.sortBy (S.prop ('rank')) ([\n //. . {rank: 7, suit: 'spades'},\n //. . {rank: 5, suit: 'hearts'},\n //. . {rank: 2, suit: 'hearts'},\n //. . {rank: 5, suit: 'spades'},\n //. . ])\n //. [ {rank: 2, suit: 'hearts'},\n //. . {rank: 5, suit: 'hearts'},\n //. . {rank: 5, suit: 'spades'},\n //. . {rank: 7, suit: 'spades'} ]\n //.\n //. > S.sortBy (S.prop ('suit')) ([\n //. . {rank: 7, suit: 'spades'},\n //. . {rank: 5, suit: 'hearts'},\n //. . {rank: 2, suit: 'hearts'},\n //. . {rank: 5, suit: 'spades'},\n //. . ])\n //. [ {rank: 5, suit: 'hearts'},\n //. . {rank: 2, suit: 'hearts'},\n //. . {rank: 7, suit: 'spades'},\n //. . {rank: 5, suit: 'spades'} ]\n //. ```\n //.\n //. If descending order is desired, one may use [`Descending`][]:\n //.\n //. ```javascript\n //. > S.sortBy (Descending) ([83, 97, 110, 99, 116, 117, 97, 114, 121])\n //. [121, 117, 116, 114, 110, 99, 97, 97, 83]\n //. ```\n _.sortBy = {\n consts: {b: [Z.Ord], m: [Z.Applicative, Z.Foldable, Z.Monoid]},\n types: [$.Fn (a) (b), m (a), m (a)],\n impl: curry2 (Z.sortBy)\n };\n\n //# zip :: Array a -> Array b -> Array (Pair a b)\n //.\n //. Returns an array of pairs of corresponding elements from the given\n //. arrays. The length of the resulting array is equal to the length of\n //. the shorter input array.\n //.\n //. See also [`zipWith`](#zipWith).\n //.\n //. ```javascript\n //. > S.zip (['a', 'b']) (['x', 'y', 'z'])\n //. [Pair ('a') ('x'), Pair ('b') ('y')]\n //.\n //. > S.zip ([1, 3, 5]) ([2, 4])\n //. [Pair (1) (2), Pair (3) (4)]\n //. ```\n _.zip = {\n consts: {},\n types: [$.Array (a), $.Array (b), $.Array ($.Pair (a) (b))],\n impl: zipWith (Pair)\n };\n\n //# zipWith :: (a -> b -> c) -> Array a -> Array b -> Array c\n //.\n //. Returns the result of combining, pairwise, the given arrays using the\n //. given binary function. The length of the resulting array is equal to the\n //. length of the shorter input array.\n //.\n //. See also [`zip`](#zip).\n //.\n //. ```javascript\n //. > S.zipWith (a => b => a + b) (['a', 'b']) (['x', 'y', 'z'])\n //. ['ax', 'by']\n //.\n //. > S.zipWith (a => b => [a, b]) ([1, 3, 5]) ([2, 4])\n //. [[1, 2], [3, 4]]\n //. ```\n function zipWith(f) {\n return function(xs) {\n return function(ys) {\n var result = [];\n var len = Math.min (xs.length, ys.length);\n for (var idx = 0; idx < len; idx += 1) {\n result.push (f (xs[idx]) (ys[idx]));\n }\n return result;\n };\n };\n }\n _.zipWith = {\n consts: {},\n types: [$.Fn (a) ($.Fn (b) (c)), $.Array (a), $.Array (b), $.Array (c)],\n impl: zipWith\n };\n\n //. ### Object\n\n //# prop :: String -> a -> b\n //.\n //. Takes a property name and an object with known properties and returns\n //. the value of the specified property. If for some reason the object\n //. lacks the specified property, a type error is thrown.\n //.\n //. For accessing properties of uncertain objects, use [`get`](#get) instead.\n //. For accessing string map values by key, use [`value`](#value) instead.\n //.\n //. ```javascript\n //. > S.prop ('a') ({a: 1, b: 2})\n //. 1\n //. ```\n function prop(key) {\n return function(x) {\n var obj = toObject (x);\n if (key in obj) return obj[key];\n throw new TypeError ('‘prop’ expected object to have a property named ' +\n '‘' + key + '’; ' + show (x) + ' does not');\n };\n }\n _.prop = {\n consts: {},\n types: [$.String, a, b],\n impl: prop\n };\n\n //# props :: Array String -> a -> b\n //.\n //. Takes a property path (an array of property names) and an object with\n //. known structure and returns the value at the given path. If for some\n //. reason the path does not exist, a type error is thrown.\n //.\n //. For accessing property paths of uncertain objects, use [`gets`](#gets)\n //. instead.\n //.\n //. ```javascript\n //. > S.props (['a', 'b', 'c']) ({a: {b: {c: 1}}})\n //. 1\n //. ```\n function props(path) {\n return function(x) {\n return path.reduce (function(x, key) {\n var obj = toObject (x);\n if (key in obj) return obj[key];\n throw new TypeError ('‘props’ expected object to have a property at ' +\n show (path) + '; ' + show (x) + ' does not');\n }, x);\n };\n }\n _.props = {\n consts: {},\n types: [$.Array ($.String), a, b],\n impl: props\n };\n\n //# get :: (Any -> Boolean) -> String -> a -> Maybe b\n //.\n //. Takes a predicate, a property name, and an object and returns Just the\n //. value of the specified object property if it exists and the value\n //. satisfies the given predicate; Nothing otherwise.\n //.\n //. See also [`gets`](#gets), [`prop`](#prop), and [`value`](#value).\n //.\n //. ```javascript\n //. > S.get (S.is ($.Number)) ('x') ({x: 1, y: 2})\n //. Just (1)\n //.\n //. > S.get (S.is ($.Number)) ('x') ({x: '1', y: '2'})\n //. Nothing\n //.\n //. > S.get (S.is ($.Number)) ('x') ({})\n //. Nothing\n //.\n //. > S.get (S.is ($.Array ($.Number))) ('x') ({x: [1, 2, 3]})\n //. Just ([1, 2, 3])\n //.\n //. > S.get (S.is ($.Array ($.Number))) ('x') ({x: [1, 2, 3, null]})\n //. Nothing\n //. ```\n function get(pred) {\n return B (B (filter (pred))) (get_);\n }\n _.get = {\n consts: {},\n types: [$.Predicate ($.Any), $.String, a, $.Maybe (b)],\n impl: get\n };\n\n //# gets :: (Any -> Boolean) -> Array String -> a -> Maybe b\n //.\n //. Takes a predicate, a property path (an array of property names), and\n //. an object and returns Just the value at the given path if such a path\n //. exists and the value satisfies the given predicate; Nothing otherwise.\n //.\n //. See also [`get`](#get).\n //.\n //. ```javascript\n //. > S.gets (S.is ($.Number)) (['a', 'b', 'c']) ({a: {b: {c: 42}}})\n //. Just (42)\n //.\n //. > S.gets (S.is ($.Number)) (['a', 'b', 'c']) ({a: {b: {c: '42'}}})\n //. Nothing\n //.\n //. > S.gets (S.is ($.Number)) (['a', 'b', 'c']) ({})\n //. Nothing\n //. ```\n function gets(pred) {\n return function(keys) {\n return function(x) {\n return Z.filter (pred, keys.reduce (function(maybe, key) {\n return Z.chain (get_ (key), maybe);\n }, Just (x)));\n };\n };\n }\n _.gets = {\n consts: {},\n types: [$.Predicate ($.Any), $.Array ($.String), a, $.Maybe (b)],\n impl: gets\n };\n\n //. ### StrMap\n //.\n //. StrMap is an abbreviation of _string map_. A string map is an object,\n //. such as `{foo: 1, bar: 2, baz: 3}`, whose values are all members of\n //. the same type. Formally, a value is a member of type `StrMap a` if its\n //. [type identifier][] is `'Object'` and the values of its enumerable own\n //. properties are all members of type `a`.\n\n //# value :: String -> StrMap a -> Maybe a\n //.\n //. Retrieve the value associated with the given key in the given string map.\n //.\n //. Formally, `value (k) (m)` evaluates to `Just (m[k])` if `k` is an\n //. enumerable own property of `m`; `Nothing` otherwise.\n //.\n //. See also [`prop`](#prop) and [`get`](#get).\n //.\n //. ```javascript\n //. > S.value ('foo') ({foo: 1, bar: 2})\n //. Just (1)\n //.\n //. > S.value ('bar') ({foo: 1, bar: 2})\n //. Just (2)\n //.\n //. > S.value ('baz') ({foo: 1, bar: 2})\n //. Nothing\n //. ```\n function value(key) {\n return function(strMap) {\n return Object.prototype.propertyIsEnumerable.call (strMap, key) ?\n Just (strMap[key]) :\n Nothing;\n };\n }\n _.value = {\n consts: {},\n types: [$.String, $.StrMap (a), $.Maybe (a)],\n impl: value\n };\n\n //# singleton :: String -> a -> StrMap a\n //.\n //. Takes a string and a value of any type, and returns a string map with\n //. a single entry (mapping the key to the value).\n //.\n //. ```javascript\n //. > S.singleton ('foo') (42)\n //. {foo: 42}\n //. ```\n function singleton(key) {\n return function(val) {\n var strMap = {};\n strMap[key] = val;\n return strMap;\n };\n }\n _.singleton = {\n consts: {},\n types: [$.String, a, $.StrMap (a)],\n impl: singleton\n };\n\n //# insert :: String -> a -> StrMap a -> StrMap a\n //.\n //. Takes a string, a value of any type, and a string map, and returns a\n //. string map comprising all the entries of the given string map plus the\n //. entry specified by the first two arguments (which takes precedence).\n //.\n //. Equivalent to Haskell's `insert` function. Similar to Clojure's `assoc`\n //. function.\n //.\n //. ```javascript\n //. > S.insert ('c') (3) ({a: 1, b: 2})\n //. {a: 1, b: 2, c: 3}\n //.\n //. > S.insert ('a') (4) ({a: 1, b: 2})\n //. {a: 4, b: 2}\n //. ```\n function insert(key) {\n return function(val) {\n return function(strMap) {\n return Z.concat (strMap, singleton (key) (val));\n };\n };\n }\n _.insert = {\n consts: {},\n types: [$.String, a, $.StrMap (a), $.StrMap (a)],\n impl: insert\n };\n\n //# remove :: String -> StrMap a -> StrMap a\n //.\n //. Takes a string and a string map, and returns a string map comprising all\n //. the entries of the given string map except the one whose key matches the\n //. given string (if such a key exists).\n //.\n //. Equivalent to Haskell's `delete` function. Similar to Clojure's `dissoc`\n //. function.\n //.\n //. ```javascript\n //. > S.remove ('c') ({a: 1, b: 2, c: 3})\n //. {a: 1, b: 2}\n //.\n //. > S.remove ('c') ({})\n //. {}\n //. ```\n function remove(key) {\n return function(strMap) {\n var result = Z.concat (strMap, {});\n delete result[key];\n return result;\n };\n }\n _.remove = {\n consts: {},\n types: [$.String, $.StrMap (a), $.StrMap (a)],\n impl: remove\n };\n\n //# keys :: StrMap a -> Array String\n //.\n //. Returns the keys of the given string map, in arbitrary order.\n //.\n //. ```javascript\n //. > S.sort (S.keys ({b: 2, c: 3, a: 1}))\n //. ['a', 'b', 'c']\n //. ```\n _.keys = {\n consts: {},\n types: [$.StrMap (a), $.Array ($.String)],\n impl: Object.keys\n };\n\n //# values :: StrMap a -> Array a\n //.\n //. Returns the values of the given string map, in arbitrary order.\n //.\n //. ```javascript\n //. > S.sort (S.values ({a: 1, c: 3, b: 2}))\n //. [1, 2, 3]\n //. ```\n function values(strMap) {\n return Z.map (function(k) { return strMap[k]; }, Object.keys (strMap));\n }\n _.values = {\n consts: {},\n types: [$.StrMap (a), $.Array (a)],\n impl: values\n };\n\n //# pairs :: StrMap a -> Array (Pair String a)\n //.\n //. Returns the key–value pairs of the given string map, in arbitrary order.\n //.\n //. ```javascript\n //. > S.sort (S.pairs ({b: 2, a: 1, c: 3}))\n //. [Pair ('a') (1), Pair ('b') (2), Pair ('c') (3)]\n //. ```\n function pairs(strMap) {\n return Z.map (function(k) { return Pair (k) (strMap[k]); },\n Object.keys (strMap));\n }\n _.pairs = {\n consts: {},\n types: [$.StrMap (a), $.Array ($.Pair ($.String) (a))],\n impl: pairs\n };\n\n //# fromPairs :: Foldable f => f (Pair String a) -> StrMap a\n //.\n //. Returns a string map containing the key–value pairs specified by the\n //. given [Foldable][]. If a key appears in multiple pairs, the rightmost\n //. pair takes precedence.\n //.\n //. ```javascript\n //. > S.fromPairs ([S.Pair ('a') (1), S.Pair ('b') (2), S.Pair ('c') (3)])\n //. {a: 1, b: 2, c: 3}\n //.\n //. > S.fromPairs ([S.Pair ('x') (1), S.Pair ('x') (2)])\n //. {x: 2}\n //. ```\n function fromPairs(pairs) {\n return Z.reduce (function(strMap, pair) {\n strMap[pair.fst] = pair.snd;\n return strMap;\n }, {}, pairs);\n }\n _.fromPairs = {\n consts: {f: [Z.Foldable]},\n types: [f ($.Pair ($.String) (a)), $.StrMap (a)],\n impl: fromPairs\n };\n\n //. ### Number\n\n //# negate :: ValidNumber -> ValidNumber\n //.\n //. Negates its argument.\n //.\n //. ```javascript\n //. > S.negate (12.5)\n //. -12.5\n //.\n //. > S.negate (-42)\n //. 42\n //. ```\n function negate(n) {\n return -n;\n }\n _.negate = {\n consts: {},\n types: [$.ValidNumber, $.ValidNumber],\n impl: negate\n };\n\n //# add :: FiniteNumber -> FiniteNumber -> FiniteNumber\n //.\n //. Returns the sum of two (finite) numbers.\n //.\n //. ```javascript\n //. > S.add (1) (1)\n //. 2\n //. ```\n function add(x) {\n return function(y) {\n return x + y;\n };\n }\n _.add = {\n consts: {},\n types: [$.FiniteNumber, $.FiniteNumber, $.FiniteNumber],\n impl: add\n };\n\n //# sum :: Foldable f => f FiniteNumber -> FiniteNumber\n //.\n //. Returns the sum of the given array of (finite) numbers.\n //.\n //. ```javascript\n //. > S.sum ([1, 2, 3, 4, 5])\n //. 15\n //.\n //. > S.sum ([])\n //. 0\n //.\n //. > S.sum (S.Just (42))\n //. 42\n //.\n //. > S.sum (S.Nothing)\n //. 0\n //. ```\n _.sum = {\n consts: {f: [Z.Foldable]},\n types: [f ($.FiniteNumber), $.FiniteNumber],\n impl: reduce (add) (0)\n };\n\n //# sub :: FiniteNumber -> FiniteNumber -> FiniteNumber\n //.\n //. Takes a finite number `n` and returns the _subtract `n`_ function.\n //.\n //. ```javascript\n //. > S.map (S.sub (1)) ([1, 2, 3])\n //. [0, 1, 2]\n //. ```\n function sub(y) {\n return function(x) {\n return x - y;\n };\n }\n _.sub = {\n consts: {},\n types: [$.FiniteNumber, $.FiniteNumber, $.FiniteNumber],\n impl: sub\n };\n\n //# mult :: FiniteNumber -> FiniteNumber -> FiniteNumber\n //.\n //. Returns the product of two (finite) numbers.\n //.\n //. ```javascript\n //. > S.mult (4) (2)\n //. 8\n //. ```\n function mult(x) {\n return function(y) {\n return x * y;\n };\n }\n _.mult = {\n consts: {},\n types: [$.FiniteNumber, $.FiniteNumber, $.FiniteNumber],\n impl: mult\n };\n\n //# product :: Foldable f => f FiniteNumber -> FiniteNumber\n //.\n //. Returns the product of the given array of (finite) numbers.\n //.\n //. ```javascript\n //. > S.product ([1, 2, 3, 4, 5])\n //. 120\n //.\n //. > S.product ([])\n //. 1\n //.\n //. > S.product (S.Just (42))\n //. 42\n //.\n //. > S.product (S.Nothing)\n //. 1\n //. ```\n _.product = {\n consts: {f: [Z.Foldable]},\n types: [f ($.FiniteNumber), $.FiniteNumber],\n impl: reduce (mult) (1)\n };\n\n //# div :: NonZeroFiniteNumber -> FiniteNumber -> FiniteNumber\n //.\n //. Takes a non-zero finite number `n` and returns the _divide by `n`_\n //. function.\n //.\n //. ```javascript\n //. > S.map (S.div (2)) ([0, 1, 2, 3])\n //. [0, 0.5, 1, 1.5]\n //. ```\n function div(y) {\n return function(x) {\n return x / y;\n };\n }\n _.div = {\n consts: {},\n types: [$.NonZeroFiniteNumber, $.FiniteNumber, $.FiniteNumber],\n impl: div\n };\n\n //# pow :: FiniteNumber -> FiniteNumber -> FiniteNumber\n //.\n //. Takes a finite number `n` and returns the _power of `n`_ function.\n //.\n //. ```javascript\n //. > S.map (S.pow (2)) ([-3, -2, -1, 0, 1, 2, 3])\n //. [9, 4, 1, 0, 1, 4, 9]\n //.\n //. > S.map (S.pow (0.5)) ([1, 4, 9, 16, 25])\n //. [1, 2, 3, 4, 5]\n //. ```\n function pow(exp) {\n return function(base) {\n return Math.pow (base, exp);\n };\n }\n _.pow = {\n consts: {},\n types: [$.FiniteNumber, $.FiniteNumber, $.FiniteNumber],\n impl: pow\n };\n\n //# mean :: Foldable f => f FiniteNumber -> Maybe FiniteNumber\n //.\n //. Returns the mean of the given array of (finite) numbers.\n //.\n //. ```javascript\n //. > S.mean ([1, 2, 3, 4, 5])\n //. Just (3)\n //.\n //. > S.mean ([])\n //. Nothing\n //.\n //. > S.mean (S.Just (42))\n //. Just (42)\n //.\n //. > S.mean (S.Nothing)\n //. Nothing\n //. ```\n function mean(foldable) {\n var result = Z.reduce (\n function(acc, n) {\n acc.total += n;\n acc.count += 1;\n return acc;\n },\n {total: 0, count: 0},\n foldable\n );\n return result.count > 0 ? Just (result.total / result.count) : Nothing;\n }\n _.mean = {\n consts: {f: [Z.Foldable]},\n types: [f ($.FiniteNumber), $.Maybe ($.FiniteNumber)],\n impl: mean\n };\n\n //. ### Integer\n\n //# even :: Integer -> Boolean\n //.\n //. Returns `true` if the given integer is even; `false` if it is odd.\n //.\n //. ```javascript\n //. > S.even (42)\n //. true\n //.\n //. > S.even (99)\n //. false\n //. ```\n function even(n) {\n return n % 2 === 0;\n }\n _.even = {\n consts: {},\n types: [$.Integer, $.Boolean],\n impl: even\n };\n\n //# odd :: Integer -> Boolean\n //.\n //. Returns `true` if the given integer is odd; `false` if it is even.\n //.\n //. ```javascript\n //. > S.odd (99)\n //. true\n //.\n //. > S.odd (42)\n //. false\n //. ```\n function odd(n) {\n return n % 2 !== 0;\n }\n _.odd = {\n consts: {},\n types: [$.Integer, $.Boolean],\n impl: odd\n };\n\n //. ### Parse\n\n //# parseDate :: String -> Maybe ValidDate\n //.\n //. Takes a string `s` and returns `Just (new Date (s))` if `new Date (s)`\n //. evaluates to a [`ValidDate`][ValidDate] value; Nothing otherwise.\n //.\n //. As noted in [#488][], this function's behaviour is unspecified for some\n //. inputs! [MDN][date parsing] warns against using the `Date` constructor\n //. to parse date strings:\n //.\n //. > __Note:__ parsing of date strings with the `Date` constructor […] is\n //. > strongly discouraged due to browser differences and inconsistencies.\n //. > Support for RFC 2822 format strings is by convention only. Support for\n //. > ISO 8601 formats differs in that date-only strings (e.g. \"1970-01-01\")\n //. > are treated as UTC, not local.\n //.\n //. ```javascript\n //. > S.parseDate ('2011-01-19T17:40:00Z')\n //. Just (new Date ('2011-01-19T17:40:00.000Z'))\n //.\n //. > S.parseDate ('today')\n //. Nothing\n //. ```\n function parseDate(s) {\n var date = new Date (s);\n return isNaN (date.valueOf ()) ? Nothing : Just (date);\n }\n _.parseDate = {\n consts: {},\n types: [$.String, $.Maybe ($.ValidDate)],\n impl: parseDate\n };\n\n // requiredNonCapturingGroup :: Array String -> String\n function requiredNonCapturingGroup(xs) {\n return '(?:' + xs.join ('|') + ')';\n }\n\n // optionalNonCapturingGroup :: Array String -> String\n function optionalNonCapturingGroup(xs) {\n return requiredNonCapturingGroup (xs) + '?';\n }\n\n // validFloatRepr :: RegExp\n var validFloatRepr = new RegExp (\n '^' + // start-of-string anchor\n '\\\\s*' + // any number of leading whitespace characters\n '[+-]?' + // optional sign\n requiredNonCapturingGroup ([\n 'Infinity', // \"Infinity\"\n 'NaN', // \"NaN\"\n requiredNonCapturingGroup ([\n '[0-9]+', // number\n '[0-9]+[.][0-9]+', // number with interior decimal point\n '[0-9]+[.]', // number with trailing decimal point\n '[.][0-9]+' // number with leading decimal point\n ]) +\n optionalNonCapturingGroup ([\n '[Ee]' + // \"E\" or \"e\"\n '[+-]?' + // optional sign\n '[0-9]+' // exponent\n ])\n ]) +\n '\\\\s*' + // any number of trailing whitespace characters\n '$' // end-of-string anchor\n );\n\n //# parseFloat :: String -> Maybe Number\n //.\n //. Takes a string and returns Just the number represented by the string\n //. if it does in fact represent a number; Nothing otherwise.\n //.\n //. ```javascript\n //. > S.parseFloat ('-123.45')\n //. Just (-123.45)\n //.\n //. > S.parseFloat ('foo.bar')\n //. Nothing\n //. ```\n function parseFloat_(s) {\n return validFloatRepr.test (s) ? Just (parseFloat (s)) : Nothing;\n }\n _.parseFloat = {\n consts: {},\n types: [$.String, $.Maybe ($.Number)],\n impl: parseFloat_\n };\n\n // Radix :: Type\n var Radix = $.NullaryType\n ('Radix')\n ('')\n ([$.Integer])\n (function(x) { return x >= 2 && x <= 36; });\n\n //# parseInt :: Radix -> String -> Maybe Integer\n //.\n //. Takes a radix (an integer between 2 and 36 inclusive) and a string,\n //. and returns Just the number represented by the string if it does in\n //. fact represent a number in the base specified by the radix; Nothing\n //. otherwise.\n //.\n //. This function is stricter than [`parseInt`][parseInt]: a string\n //. is considered to represent an integer only if all its non-prefix\n //. characters are members of the character set specified by the radix.\n //.\n //. ```javascript\n //. > S.parseInt (10) ('-42')\n //. Just (-42)\n //.\n //. > S.parseInt (16) ('0xFF')\n //. Just (255)\n //.\n //. > S.parseInt (16) ('0xGG')\n //. Nothing\n //. ```\n function parseInt_(radix) {\n return function(s) {\n var charset = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'.slice (0, radix);\n var pattern = new RegExp ('^[' + charset + ']+$', 'i');\n\n var t = s.replace (/^[+-]/, '');\n if (pattern.test (radix === 16 ? t.replace (/^0x/i, '') : t)) {\n var n = parseInt (s, radix);\n if ($.test ([]) ($.Integer) (n)) return Just (n);\n }\n return Nothing;\n };\n }\n _.parseInt = {\n consts: {},\n types: [Radix, $.String, $.Maybe ($.Integer)],\n impl: parseInt_\n };\n\n //# parseJson :: (Any -> Boolean) -> String -> Maybe a\n //.\n //. Takes a predicate and a string that may or may not be valid JSON, and\n //. returns Just the result of applying `JSON.parse` to the string *if* the\n //. result satisfies the predicate; Nothing otherwise.\n //.\n //. ```javascript\n //. > S.parseJson (S.is ($.Array ($.Integer))) ('[')\n //. Nothing\n //.\n //. > S.parseJson (S.is ($.Array ($.Integer))) ('[\"1\",\"2\",\"3\"]')\n //. Nothing\n //.\n //. > S.parseJson (S.is ($.Array ($.Integer))) ('[0,1.5,3,4.5]')\n //. Nothing\n //.\n //. > S.parseJson (S.is ($.Array ($.Integer))) ('[1,2,3]')\n //. Just ([1, 2, 3])\n //. ```\n function parseJson(pred) {\n return B (filter (pred)) (B (eitherToMaybe) (encase (JSON.parse)));\n }\n _.parseJson = {\n consts: {},\n types: [$.Predicate ($.Any), $.String, $.Maybe (a)],\n impl: parseJson\n };\n\n //. ### RegExp\n\n // Match :: Type\n var Match = $.RecordType ({\n match: $.String,\n groups: $.Array ($.Maybe ($.String))\n });\n\n // toMatch :: Array String? -> Match\n function toMatch(ss) {\n return {\n match: ss[0],\n groups: Z.map (B (reject (equals (undefined))) (Just), ss.slice (1))\n };\n }\n\n // withRegex :: (RegExp, () -> a) -> a\n function withRegex(pattern, thunk) {\n var lastIndex = pattern.lastIndex;\n var result = thunk ();\n pattern.lastIndex = lastIndex;\n return result;\n }\n\n //# regex :: RegexFlags -> String -> RegExp\n //.\n //. Takes a [RegexFlags][] and a pattern, and returns a RegExp.\n //.\n //. ```javascript\n //. > S.regex ('g') (':\\\\d+:')\n //. /:\\d+:/g\n //. ```\n function regex(flags) {\n return function(source) {\n return new RegExp (source, flags);\n };\n }\n _.regex = {\n consts: {},\n types: [$.RegexFlags, $.String, $.RegExp],\n impl: regex\n };\n\n //# regexEscape :: String -> String\n //.\n //. Takes a string that may contain regular expression metacharacters,\n //. and returns a string with those metacharacters escaped.\n //.\n //. Properties:\n //.\n //. - `forall s :: String.\n //. S.test (S.regex ('') (S.regexEscape (s))) (s) = true`\n //.\n //. ```javascript\n //. > S.regexEscape ('-=*{XYZ}*=-')\n //. '\\\\-=\\\\*\\\\{XYZ\\\\}\\\\*=\\\\-'\n //. ```\n function regexEscape(s) {\n return s.replace (/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n }\n _.regexEscape = {\n consts: {},\n types: [$.String, $.String],\n impl: regexEscape\n };\n\n //# test :: RegExp -> String -> Boolean\n //.\n //. Takes a pattern and a string, and returns `true` [iff][] the pattern\n //. matches the string.\n //.\n //. ```javascript\n //. > S.test (/^a/) ('abacus')\n //. true\n //.\n //. > S.test (/^a/) ('banana')\n //. false\n //. ```\n function test(pattern) {\n return function(s) {\n return withRegex (pattern, function() { return pattern.test (s); });\n };\n }\n _.test = {\n consts: {},\n types: [$.RegExp, $.String, $.Boolean],\n impl: test\n };\n\n //# match :: NonGlobalRegExp -> String -> Maybe { match :: String, groups :: Array (Maybe String) }\n //.\n //. Takes a pattern and a string, and returns Just a match record if the\n //. pattern matches the string; Nothing otherwise.\n //.\n //. `groups :: Array (Maybe String)` acknowledges the existence of optional\n //. capturing groups.\n //.\n //. Properties:\n //.\n //. - `forall p :: Pattern, s :: String.\n //. S.head (S.matchAll (S.regex ('g') (p)) (s))\n //. = S.match (S.regex ('') (p)) (s)`\n //.\n //. See also [`matchAll`](#matchAll).\n //.\n //. ```javascript\n //. > S.match (/(good)?bye/) ('goodbye')\n //. Just ({match: 'goodbye', groups: [Just ('good')]})\n //.\n //. > S.match (/(good)?bye/) ('bye')\n //. Just ({match: 'bye', groups: [Nothing]})\n //. ```\n function match(pattern) {\n return function(s) {\n return Z.map (toMatch,\n Z.reject (equals (null), Just (s.match (pattern))));\n };\n }\n _.match = {\n consts: {},\n types: [$.NonGlobalRegExp, $.String, $.Maybe (Match)],\n impl: match\n };\n\n //# matchAll :: GlobalRegExp -> String -> Array { match :: String, groups :: Array (Maybe String) }\n //.\n //. Takes a pattern and a string, and returns an array of match records.\n //.\n //. `groups :: Array (Maybe String)` acknowledges the existence of optional\n //. capturing groups.\n //.\n //. See also [`match`](#match).\n //.\n //. ```javascript\n //. > S.matchAll (/@([a-z]+)/g) ('Hello, world!')\n //. []\n //.\n //. > S.matchAll (/@([a-z]+)/g) ('Hello, @foo! Hello, @bar! Hello, @baz!')\n //. [ {match: '@foo', groups: [Just ('foo')]},\n //. . {match: '@bar', groups: [Just ('bar')]},\n //. . {match: '@baz', groups: [Just ('baz')]} ]\n //. ```\n function matchAll(pattern) {\n return function(s) {\n return withRegex (pattern, function() {\n return unfoldr (function(_) {\n return Z.map (function(ss) {\n return Pair (toMatch (ss)) (null);\n }, Z.reject (equals (null), Just (pattern.exec (s))));\n }) ([]);\n });\n };\n }\n _.matchAll = {\n consts: {},\n types: [$.GlobalRegExp, $.String, $.Array (Match)],\n impl: matchAll\n };\n\n //. ### String\n\n //# toUpper :: String -> String\n //.\n //. Returns the upper-case equivalent of its argument.\n //.\n //. See also [`toLower`](#toLower).\n //.\n //. ```javascript\n //. > S.toUpper ('ABC def 123')\n //. 'ABC DEF 123'\n //. ```\n _.toUpper = {\n consts: {},\n types: [$.String, $.String],\n impl: invoke0 ('toUpperCase')\n };\n\n //# toLower :: String -> String\n //.\n //. Returns the lower-case equivalent of its argument.\n //.\n //. See also [`toUpper`](#toUpper).\n //.\n //. ```javascript\n //. > S.toLower ('ABC def 123')\n //. 'abc def 123'\n //. ```\n _.toLower = {\n consts: {},\n types: [$.String, $.String],\n impl: invoke0 ('toLowerCase')\n };\n\n //# trim :: String -> String\n //.\n //. Strips leading and trailing whitespace characters.\n //.\n //. ```javascript\n //. > S.trim ('\\t\\t foo bar \\n')\n //. 'foo bar'\n //. ```\n _.trim = {\n consts: {},\n types: [$.String, $.String],\n impl: invoke0 ('trim')\n };\n\n //# stripPrefix :: String -> String -> Maybe String\n //.\n //. Returns Just the portion of the given string (the second argument) left\n //. after removing the given prefix (the first argument) if the string starts\n //. with the prefix; Nothing otherwise.\n //.\n //. See also [`stripSuffix`](#stripSuffix).\n //.\n //. ```javascript\n //. > S.stripPrefix ('https://') ('https://sanctuary.js.org')\n //. Just ('sanctuary.js.org')\n //.\n //. > S.stripPrefix ('https://') ('http://sanctuary.js.org')\n //. Nothing\n //. ```\n function stripPrefix(prefix) {\n return function(s) {\n var idx = prefix.length;\n return s.slice (0, idx) === prefix ? Just (s.slice (idx)) : Nothing;\n };\n }\n _.stripPrefix = {\n consts: {},\n types: [$.String, $.String, $.Maybe ($.String)],\n impl: stripPrefix\n };\n\n //# stripSuffix :: String -> String -> Maybe String\n //.\n //. Returns Just the portion of the given string (the second argument) left\n //. after removing the given suffix (the first argument) if the string ends\n //. with the suffix; Nothing otherwise.\n //.\n //. See also [`stripPrefix`](#stripPrefix).\n //.\n //. ```javascript\n //. > S.stripSuffix ('.md') ('README.md')\n //. Just ('README')\n //.\n //. > S.stripSuffix ('.md') ('README')\n //. Nothing\n //. ```\n function stripSuffix(suffix) {\n return function(s) {\n var idx = s.length - suffix.length; // value may be negative\n return s.slice (idx) === suffix ? Just (s.slice (0, idx)) : Nothing;\n };\n }\n _.stripSuffix = {\n consts: {},\n types: [$.String, $.String, $.Maybe ($.String)],\n impl: stripSuffix\n };\n\n //# words :: String -> Array String\n //.\n //. Takes a string and returns the array of words the string contains\n //. (words are delimited by whitespace characters).\n //.\n //. See also [`unwords`](#unwords).\n //.\n //. ```javascript\n //. > S.words (' foo bar baz ')\n //. ['foo', 'bar', 'baz']\n //. ```\n function words(s) {\n var words = s.split (/\\s+/);\n var len = words.length;\n return words.slice (words[0] === '' ? 1 : 0,\n words[len - 1] === '' ? len - 1 : len);\n }\n _.words = {\n consts: {},\n types: [$.String, $.Array ($.String)],\n impl: words\n };\n\n //# unwords :: Array String -> String\n //.\n //. Takes an array of words and returns the result of joining the words\n //. with separating spaces.\n //.\n //. See also [`words`](#words).\n //.\n //. ```javascript\n //. > S.unwords (['foo', 'bar', 'baz'])\n //. 'foo bar baz'\n //. ```\n _.unwords = {\n consts: {},\n types: [$.Array ($.String), $.String],\n impl: invoke1 ('join') (' ')\n };\n\n //# lines :: String -> Array String\n //.\n //. Takes a string and returns the array of lines the string contains\n //. (lines are delimited by newlines: `'\\n'` or `'\\r\\n'` or `'\\r'`).\n //. The resulting strings do not contain newlines.\n //.\n //. See also [`unlines`](#unlines).\n //.\n //. ```javascript\n //. > S.lines ('foo\\nbar\\nbaz\\n')\n //. ['foo', 'bar', 'baz']\n //. ```\n function lines(s) {\n return s === '' ? []\n : (s.replace (/\\r\\n?/g, '\\n')).match (/^(?=[\\s\\S]).*/gm);\n }\n _.lines = {\n consts: {},\n types: [$.String, $.Array ($.String)],\n impl: lines\n };\n\n //# unlines :: Array String -> String\n //.\n //. Takes an array of lines and returns the result of joining the lines\n //. after appending a terminating line feed (`'\\n'`) to each.\n //.\n //. See also [`lines`](#lines).\n //.\n //. ```javascript\n //. > S.unlines (['foo', 'bar', 'baz'])\n //. 'foo\\nbar\\nbaz\\n'\n //. ```\n function unlines(xs) {\n return xs.reduce (function(s, x) { return s + x + '\\n'; }, '');\n }\n _.unlines = {\n consts: {},\n types: [$.Array ($.String), $.String],\n impl: unlines\n };\n\n //# splitOn :: String -> String -> Array String\n //.\n //. Returns the substrings of its second argument separated by occurrences\n //. of its first argument.\n //.\n //. See also [`joinWith`](#joinWith) and [`splitOnRegex`](#splitOnRegex).\n //.\n //. ```javascript\n //. > S.splitOn ('::') ('foo::bar::baz')\n //. ['foo', 'bar', 'baz']\n //. ```\n _.splitOn = {\n consts: {},\n types: [$.String, $.String, $.Array ($.String)],\n impl: invoke1 ('split')\n };\n\n //# splitOnRegex :: GlobalRegExp -> String -> Array String\n //.\n //. Takes a pattern and a string, and returns the result of splitting the\n //. string at every non-overlapping occurrence of the pattern.\n //.\n //. Properties:\n //.\n //. - `forall s :: String, t :: String.\n //. S.joinWith (s)\n //. (S.splitOnRegex (S.regex ('g') (S.regexEscape (s))) (t))\n //. = t`\n //.\n //. See also [`splitOn`](#splitOn).\n //.\n //. ```javascript\n //. > S.splitOnRegex (/[,;][ ]*/g) ('foo, bar, baz')\n //. ['foo', 'bar', 'baz']\n //.\n //. > S.splitOnRegex (/[,;][ ]*/g) ('foo;bar;baz')\n //. ['foo', 'bar', 'baz']\n //. ```\n function splitOnRegex(pattern) {\n return function(s) {\n return withRegex (pattern, function() {\n var result = [];\n var lastIndex = 0;\n var match;\n while ((match = pattern.exec (s)) != null) {\n if (pattern.lastIndex === lastIndex && match[0] === '') {\n if (pattern.lastIndex === s.length) return result;\n pattern.lastIndex += 1;\n } else {\n result.push (s.slice (lastIndex, match.index));\n lastIndex = match.index + match[0].length;\n }\n }\n result.push (s.slice (lastIndex));\n return result;\n });\n };\n }\n _.splitOnRegex = {\n consts: {},\n types: [$.GlobalRegExp, $.String, $.Array ($.String)],\n impl: splitOnRegex\n };\n\n return create ({\n checkTypes: typeof process === 'undefined'\n || process == null\n || process.env == null\n || process.env.NODE_ENV !== 'production',\n env: $.env\n });\n\n}));\n\n//. [#438]: https://github.com/sanctuary-js/sanctuary/issues/438\n//. [#488]: https://github.com/sanctuary-js/sanctuary/issues/488\n//. [Apply]: v:fantasyland/fantasy-land#apply\n//. [Chain]: v:fantasyland/fantasy-land#chain\n//. [Either]: #section:either\n//. [Fantasy Land]: v:fantasyland/fantasy-land\n//. [Foldable]: v:fantasyland/fantasy-land#foldable\n//. [Folktale]: https://folktale.origamitower.com/\n//. [GIGO]: https://en.wikipedia.org/wiki/Garbage_in,_garbage_out\n//. [Haskell]: https://www.haskell.org/\n//. [Kleisli]: https://en.wikipedia.org/wiki/Kleisli_category\n//. [Maybe]: #section:maybe\n//. [Nullable]: v:sanctuary-js/sanctuary-def#Nullable\n//. [PureScript]: http://www.purescript.org/\n//. [Ramda]: https://ramdajs.com/\n//. [RegexFlags]: v:sanctuary-js/sanctuary-def#RegexFlags\n//. [Semigroupoid]: v:fantasyland/fantasy-land#semigroupoid\n//. [ValidDate]: v:sanctuary-js/sanctuary-def#ValidDate\n//. [`$.test`]: v:sanctuary-js/sanctuary-def#test\n//. [`Descending`]: v:sanctuary-js/sanctuary-descending#Descending\n//. [`R.__`]: https://ramdajs.com/docs/#__\n//. [`R.bind`]: https://ramdajs.com/docs/#bind\n//. [`R.invoker`]: https://ramdajs.com/docs/#invoker\n//. [`Z.alt`]: v:sanctuary-js/sanctuary-type-classes#alt\n//. [`Z.ap`]: v:sanctuary-js/sanctuary-type-classes#ap\n//. [`Z.apFirst`]: v:sanctuary-js/sanctuary-type-classes#apFirst\n//. [`Z.apSecond`]: v:sanctuary-js/sanctuary-type-classes#apSecond\n//. [`Z.bimap`]: v:sanctuary-js/sanctuary-type-classes#bimap\n//. [`Z.chain`]: v:sanctuary-js/sanctuary-type-classes#chain\n//. [`Z.chainRec`]: v:sanctuary-js/sanctuary-type-classes#chainRec\n//. [`Z.compose`]: v:sanctuary-js/sanctuary-type-classes#compose\n//. [`Z.concat`]: v:sanctuary-js/sanctuary-type-classes#concat\n//. [`Z.contramap`]: v:sanctuary-js/sanctuary-type-classes#contramap\n//. [`Z.duplicate`]: v:sanctuary-js/sanctuary-type-classes#duplicate\n//. [`Z.empty`]: v:sanctuary-js/sanctuary-type-classes#empty\n//. [`Z.equals`]: v:sanctuary-js/sanctuary-type-classes#equals\n//. [`Z.extend`]: v:sanctuary-js/sanctuary-type-classes#extend\n//. [`Z.extract`]: v:sanctuary-js/sanctuary-type-classes#extract\n//. [`Z.filter`]: v:sanctuary-js/sanctuary-type-classes#filter\n//. [`Z.flip`]: v:sanctuary-js/sanctuary-type-classes#flip\n//. [`Z.foldMap`]: v:sanctuary-js/sanctuary-type-classes#foldMap\n//. [`Z.gt`]: v:sanctuary-js/sanctuary-type-classes#gt\n//. [`Z.gte`]: v:sanctuary-js/sanctuary-type-classes#gte\n//. [`Z.id`]: v:sanctuary-js/sanctuary-type-classes#id\n//. [`Z.invert`]: v:sanctuary-js/sanctuary-type-classes#invert\n//. [`Z.join`]: v:sanctuary-js/sanctuary-type-classes#join\n//. [`Z.lt`]: v:sanctuary-js/sanctuary-type-classes#lt\n//. [`Z.lte`]: v:sanctuary-js/sanctuary-type-classes#lte\n//. [`Z.map`]: v:sanctuary-js/sanctuary-type-classes#map\n//. [`Z.mapLeft`]: v:sanctuary-js/sanctuary-type-classes#mapLeft\n//. [`Z.of`]: v:sanctuary-js/sanctuary-type-classes#of\n//. [`Z.promap`]: v:sanctuary-js/sanctuary-type-classes#promap\n//. [`Z.reject`]: v:sanctuary-js/sanctuary-type-classes#reject\n//. [`Z.sequence`]: v:sanctuary-js/sanctuary-type-classes#sequence\n//. [`Z.traverse`]: v:sanctuary-js/sanctuary-type-classes#traverse\n//. [`Z.zero`]: v:sanctuary-js/sanctuary-type-classes#zero\n//. [`show`]: v:sanctuary-js/sanctuary-show#show\n//. [date parsing]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date\n//. [equivalence]: https://en.wikipedia.org/wiki/Equivalence_relation\n//. [iff]: https://en.wikipedia.org/wiki/If_and_only_if\n//. [parseInt]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt\n//. [partial functions]: https://en.wikipedia.org/wiki/Partial_function\n//. [ramda/ramda#683]: https://github.com/ramda/ramda/issues/683\n//. [ramda/ramda#1413]: https://github.com/ramda/ramda/issues/1413\n//. [ramda/ramda#1419]: https://github.com/ramda/ramda/pull/1419\n//. [sanctuary-def]: v:sanctuary-js/sanctuary-def\n//. [sanctuary-either]: v:sanctuary-js/sanctuary-either\n//. [sanctuary-maybe]: v:sanctuary-js/sanctuary-maybe\n//. [sanctuary-pair]: v:sanctuary-js/sanctuary-pair\n//. [sanctuary-show]: v:sanctuary-js/sanctuary-show\n//. [sanctuary-type-classes]: v:sanctuary-js/sanctuary-type-classes\n//. [stable sort]: https://en.wikipedia.org/wiki/Sorting_algorithm#Stability\n//. [thrush]: https://github.com/raganwald-deprecated/homoiconic/blob/master/2008-10-30/thrush.markdown\n//. [total functions]: https://en.wikipedia.org/wiki/Partial_function#Total_function\n//. [type checking]: #section:type-checking\n//. [type identifier]: v:sanctuary-js/sanctuary-type-identifiers\n//. [type representative]: v:fantasyland/fantasy-land#type-representatives\n//. [variadic functions]: https://en.wikipedia.org/wiki/Variadic_function\n","import _curry2 from './internal/_curry2.js';\nimport _isString from './internal/_isString.js';\n\n/**\n * Returns the nth element of the given list or string. If n is negative the\n * element at index length + n is returned.\n *\n * @func\n * @memberOf R\n * @since v0.1.0\n * @category List\n * @sig Number -> [a] -> a | Undefined\n * @sig Number -> String -> String\n * @param {Number} offset\n * @param {*} list\n * @return {*}\n * @example\n *\n * const list = ['foo', 'bar', 'baz', 'quux'];\n * R.nth(1, list); //=> 'bar'\n * R.nth(-1, list); //=> 'quux'\n * R.nth(-99, list); //=> undefined\n *\n * R.nth(2, 'abc'); //=> 'c'\n * R.nth(3, 'abc'); //=> ''\n * @symb R.nth(-1, [a, b, c]) = c\n * @symb R.nth(0, [a, b, c]) = a\n * @symb R.nth(1, [a, b, c]) = b\n */\nvar nth = /*#__PURE__*/_curry2(function nth(offset, list) {\n var idx = offset < 0 ? list.length + offset : offset;\n return _isString(list) ? list.charAt(idx) : list[idx];\n});\nexport default nth;","import _isArrayLike from './_isArrayLike.js';\n\n/**\n * `_makeFlat` is a helper function that returns a one-level or fully recursive\n * function based on the flag passed in.\n *\n * @private\n */\nexport default function _makeFlat(recursive) {\n return function flatt(list) {\n var value, jlen, j;\n var result = [];\n var idx = 0;\n var ilen = list.length;\n\n while (idx < ilen) {\n if (_isArrayLike(list[idx])) {\n value = recursive ? flatt(list[idx]) : list[idx];\n j = 0;\n jlen = value.length;\n while (j < jlen) {\n result[result.length] = value[j];\n j += 1;\n }\n } else {\n result[result.length] = list[idx];\n }\n idx += 1;\n }\n return result;\n };\n}","import _curry3 from './internal/_curry3.js';\nimport _has from './internal/_has.js';\n\n/**\n * Creates a new object with the own properties of the two provided objects. If\n * a key exists in both objects, the provided function is applied to the key\n * and the values associated with the key in each object, with the result being\n * used as the value associated with the key in the returned object.\n *\n * @func\n * @memberOf R\n * @since v0.19.0\n * @category Object\n * @sig ((String, a, a) -> a) -> {a} -> {a} -> {a}\n * @param {Function} fn\n * @param {Object} l\n * @param {Object} r\n * @return {Object}\n * @see R.mergeDeepWithKey, R.merge, R.mergeWith\n * @example\n *\n * let concatValues = (k, l, r) => k == 'values' ? R.concat(l, r) : r\n * R.mergeWithKey(concatValues,\n * { a: true, thing: 'foo', values: [10, 20] },\n * { b: true, thing: 'bar', values: [15, 35] });\n * //=> { a: true, b: true, thing: 'bar', values: [10, 20, 15, 35] }\n * @symb R.mergeWithKey(f, { x: 1, y: 2 }, { y: 5, z: 3 }) = { x: 1, y: f('y', 2, 5), z: 3 }\n */\nvar mergeWithKey = /*#__PURE__*/_curry3(function mergeWithKey(fn, l, r) {\n var result = {};\n var k;\n\n for (k in l) {\n if (_has(k, l)) {\n result[k] = _has(k, r) ? fn(k, l[k], r[k]) : l[k];\n }\n }\n\n for (k in r) {\n if (_has(k, r) && !_has(k, result)) {\n result[k] = r[k];\n }\n }\n\n return result;\n});\nexport default mergeWithKey;","/*\n* FileSaver.js\n* A saveAs() FileSaver implementation.\n*\n* By Eli Grey, http://eligrey.com\n*\n* License : https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md (MIT)\n* source : http://purl.eligrey.com/github/FileSaver.js\n*/\n\n// The one and only way of getting global scope in all environments\n// https://stackoverflow.com/q/3277182/1008999\nvar _global = typeof window === 'object' && window.window === window\n ? window : typeof self === 'object' && self.self === self\n ? self : typeof global === 'object' && global.global === global\n ? global\n : this\n\nfunction bom (blob, opts) {\n if (typeof opts === 'undefined') opts = { autoBom: false }\n else if (typeof opts !== 'object') {\n console.warn('Deprecated: Expected third argument to be a object')\n opts = { autoBom: !opts }\n }\n\n // prepend BOM for UTF-8 XML and text/* types (including HTML)\n // note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF\n if (opts.autoBom && /^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(blob.type)) {\n return new Blob([String.fromCharCode(0xFEFF), blob], { type: blob.type })\n }\n return blob\n}\n\nfunction download (url, name, opts) {\n var xhr = new XMLHttpRequest()\n xhr.open('GET', url)\n xhr.responseType = 'blob'\n xhr.onload = function () {\n saveAs(xhr.response, name, opts)\n }\n xhr.onerror = function () {\n console.error('could not download file')\n }\n xhr.send()\n}\n\nfunction corsEnabled (url) {\n var xhr = new XMLHttpRequest()\n // use sync to avoid popup blocker\n xhr.open('HEAD', url, false)\n try {\n xhr.send()\n } catch (e) {}\n return xhr.status >= 200 && xhr.status <= 299\n}\n\n// `a.click()` doesn't work for all browsers (#465)\nfunction click (node) {\n try {\n node.dispatchEvent(new MouseEvent('click'))\n } catch (e) {\n var evt = document.createEvent('MouseEvents')\n evt.initMouseEvent('click', true, true, window, 0, 0, 0, 80,\n 20, false, false, false, false, 0, null)\n node.dispatchEvent(evt)\n }\n}\n\nvar saveAs = _global.saveAs || (\n // probably in some web worker\n (typeof window !== 'object' || window !== _global)\n ? function saveAs () { /* noop */ }\n\n // Use download attribute first if possible (#193 Lumia mobile)\n : 'download' in HTMLAnchorElement.prototype\n ? function saveAs (blob, name, opts) {\n var URL = _global.URL || _global.webkitURL\n var a = document.createElement('a')\n name = name || blob.name || 'download'\n\n a.download = name\n a.rel = 'noopener' // tabnabbing\n\n // TODO: detect chrome extensions & packaged apps\n // a.target = '_blank'\n\n if (typeof blob === 'string') {\n // Support regular links\n a.href = blob\n if (a.origin !== location.origin) {\n corsEnabled(a.href)\n ? download(blob, name, opts)\n : click(a, a.target = '_blank')\n } else {\n click(a)\n }\n } else {\n // Support blobs\n a.href = URL.createObjectURL(blob)\n setTimeout(function () { URL.revokeObjectURL(a.href) }, 4E4) // 40s\n setTimeout(function () { click(a) }, 0)\n }\n }\n\n // Use msSaveOrOpenBlob as a second approach\n : 'msSaveOrOpenBlob' in navigator\n ? function saveAs (blob, name, opts) {\n name = name || blob.name || 'download'\n\n if (typeof blob === 'string') {\n if (corsEnabled(blob)) {\n download(blob, name, opts)\n } else {\n var a = document.createElement('a')\n a.href = blob\n a.target = '_blank'\n setTimeout(function () { click(a) })\n }\n } else {\n navigator.msSaveOrOpenBlob(bom(blob, opts), name)\n }\n }\n\n // Fallback to using FileReader and a popup\n : function saveAs (blob, name, opts, popup) {\n // Open a popup immediately do go around popup blocker\n // Mostly only available on user interaction and the fileReader is async so...\n popup = popup || open('', '_blank')\n if (popup) {\n popup.document.title =\n popup.document.body.innerText = 'downloading...'\n }\n\n if (typeof blob === 'string') return download(blob, name, opts)\n\n var force = blob.type === 'application/octet-stream'\n var isSafari = /constructor/i.test(_global.HTMLElement) || _global.safari\n var isChromeIOS = /CriOS\\/[\\d]+/.test(navigator.userAgent)\n\n if ((isChromeIOS || (force && isSafari)) && typeof FileReader === 'object') {\n // Safari doesn't allow downloading of blob URLs\n var reader = new FileReader()\n reader.onloadend = function () {\n var url = reader.result\n url = isChromeIOS ? url : url.replace(/^data:[^;]*;/, 'data:attachment/file;')\n if (popup) popup.location.href = url\n else location = url\n popup = null // reverse-tabnabbing #460\n }\n reader.readAsDataURL(blob)\n } else {\n var URL = _global.URL || _global.webkitURL\n var url = URL.createObjectURL(blob)\n if (popup) popup.location = url\n else location.href = url\n popup = null // reverse-tabnabbing #460\n setTimeout(function () { URL.revokeObjectURL(url) }, 4E4) // 40s\n }\n }\n)\n\n_global.saveAs = saveAs.saveAs = saveAs\n\nif (typeof module !== 'undefined') {\n module.exports = saveAs;\n}\n","/**\n * Detect Element Resize.\n * https://github.com/sdecima/javascript-detect-element-resize\n * Sebastian Decima\n *\n * Forked from version 0.5.3; includes the following modifications:\n * 1) Guard against unsafe 'window' and 'document' references (to support SSR).\n * 2) Defer initialization code via a top-level function wrapper (to support SSR).\n * 3) Avoid unnecessary reflows by not measuring size for scroll events bubbling from children.\n * 4) Add nonce for style element.\n * 5) Added support for injecting custom window object\n **/\nexport default function createDetectElementResize(nonce, hostWindow) {\n // Check `document` and `window` in case of server-side rendering\n var _window;\n\n if (typeof hostWindow !== 'undefined') {\n _window = hostWindow;\n } else if (typeof window !== 'undefined') {\n _window = window;\n } else if (typeof self !== 'undefined') {\n _window = self;\n } else {\n _window = global;\n }\n\n var attachEvent = typeof _window.document !== 'undefined' && _window.document.attachEvent;\n\n if (!attachEvent) {\n var requestFrame = function () {\n var raf = _window.requestAnimationFrame || _window.mozRequestAnimationFrame || _window.webkitRequestAnimationFrame || function (fn) {\n return _window.setTimeout(fn, 20);\n };\n\n return function (fn) {\n return raf(fn);\n };\n }();\n\n var cancelFrame = function () {\n var cancel = _window.cancelAnimationFrame || _window.mozCancelAnimationFrame || _window.webkitCancelAnimationFrame || _window.clearTimeout;\n return function (id) {\n return cancel(id);\n };\n }();\n\n var resetTriggers = function resetTriggers(element) {\n var triggers = element.__resizeTriggers__,\n expand = triggers.firstElementChild,\n contract = triggers.lastElementChild,\n expandChild = expand.firstElementChild;\n contract.scrollLeft = contract.scrollWidth;\n contract.scrollTop = contract.scrollHeight;\n expandChild.style.width = expand.offsetWidth + 1 + 'px';\n expandChild.style.height = expand.offsetHeight + 1 + 'px';\n expand.scrollLeft = expand.scrollWidth;\n expand.scrollTop = expand.scrollHeight;\n };\n\n var checkTriggers = function checkTriggers(element) {\n return element.offsetWidth != element.__resizeLast__.width || element.offsetHeight != element.__resizeLast__.height;\n };\n\n var scrollListener = function scrollListener(e) {\n // Don't measure (which forces) reflow for scrolls that happen inside of children!\n if (e.target.className && typeof e.target.className.indexOf === 'function' && e.target.className.indexOf('contract-trigger') < 0 && e.target.className.indexOf('expand-trigger') < 0) {\n return;\n }\n\n var element = this;\n resetTriggers(this);\n\n if (this.__resizeRAF__) {\n cancelFrame(this.__resizeRAF__);\n }\n\n this.__resizeRAF__ = requestFrame(function () {\n if (checkTriggers(element)) {\n element.__resizeLast__.width = element.offsetWidth;\n element.__resizeLast__.height = element.offsetHeight;\n\n element.__resizeListeners__.forEach(function (fn) {\n fn.call(element, e);\n });\n }\n });\n };\n /* Detect CSS Animations support to detect element display/re-attach */\n\n\n var animation = false,\n keyframeprefix = '',\n animationstartevent = 'animationstart',\n domPrefixes = 'Webkit Moz O ms'.split(' '),\n startEvents = 'webkitAnimationStart animationstart oAnimationStart MSAnimationStart'.split(' '),\n pfx = '';\n {\n var elm = _window.document.createElement('fakeelement');\n\n if (elm.style.animationName !== undefined) {\n animation = true;\n }\n\n if (animation === false) {\n for (var i = 0; i < domPrefixes.length; i++) {\n if (elm.style[domPrefixes[i] + 'AnimationName'] !== undefined) {\n pfx = domPrefixes[i];\n keyframeprefix = '-' + pfx.toLowerCase() + '-';\n animationstartevent = startEvents[i];\n animation = true;\n break;\n }\n }\n }\n }\n var animationName = 'resizeanim';\n var animationKeyframes = '@' + keyframeprefix + 'keyframes ' + animationName + ' { from { opacity: 0; } to { opacity: 0; } } ';\n var animationStyle = keyframeprefix + 'animation: 1ms ' + animationName + '; ';\n }\n\n var createStyles = function createStyles(doc) {\n if (!doc.getElementById('detectElementResize')) {\n //opacity:0 works around a chrome bug https://code.google.com/p/chromium/issues/detail?id=286360\n var css = (animationKeyframes ? animationKeyframes : '') + '.resize-triggers { ' + (animationStyle ? animationStyle : '') + 'visibility: hidden; opacity: 0; } ' + '.resize-triggers, .resize-triggers > div, .contract-trigger:before { content: \" \"; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',\n head = doc.head || doc.getElementsByTagName('head')[0],\n style = doc.createElement('style');\n style.id = 'detectElementResize';\n style.type = 'text/css';\n\n if (nonce != null) {\n style.setAttribute('nonce', nonce);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(doc.createTextNode(css));\n }\n\n head.appendChild(style);\n }\n };\n\n var addResizeListener = function addResizeListener(element, fn) {\n if (attachEvent) {\n element.attachEvent('onresize', fn);\n } else {\n if (!element.__resizeTriggers__) {\n var doc = element.ownerDocument;\n\n var elementStyle = _window.getComputedStyle(element);\n\n if (elementStyle && elementStyle.position == 'static') {\n element.style.position = 'relative';\n }\n\n createStyles(doc);\n element.__resizeLast__ = {};\n element.__resizeListeners__ = [];\n (element.__resizeTriggers__ = doc.createElement('div')).className = 'resize-triggers';\n var resizeTriggersHtml = '
' + '
';\n\n if (window.trustedTypes) {\n var staticPolicy = trustedTypes.createPolicy('react-virtualized-auto-sizer', {\n createHTML: function createHTML() {\n return resizeTriggersHtml;\n }\n });\n element.__resizeTriggers__.innerHTML = staticPolicy.createHTML('');\n } else {\n element.__resizeTriggers__.innerHTML = resizeTriggersHtml;\n }\n\n element.appendChild(element.__resizeTriggers__);\n resetTriggers(element);\n element.addEventListener('scroll', scrollListener, true);\n /* Listen for a css animation to detect element display/re-attach */\n\n if (animationstartevent) {\n element.__resizeTriggers__.__animationListener__ = function animationListener(e) {\n if (e.animationName == animationName) {\n resetTriggers(element);\n }\n };\n\n element.__resizeTriggers__.addEventListener(animationstartevent, element.__resizeTriggers__.__animationListener__);\n }\n }\n\n element.__resizeListeners__.push(fn);\n }\n };\n\n var removeResizeListener = function removeResizeListener(element, fn) {\n if (attachEvent) {\n element.detachEvent('onresize', fn);\n } else {\n element.__resizeListeners__.splice(element.__resizeListeners__.indexOf(fn), 1);\n\n if (!element.__resizeListeners__.length) {\n element.removeEventListener('scroll', scrollListener, true);\n\n if (element.__resizeTriggers__.__animationListener__) {\n element.__resizeTriggers__.removeEventListener(animationstartevent, element.__resizeTriggers__.__animationListener__);\n\n element.__resizeTriggers__.__animationListener__ = null;\n }\n\n try {\n element.__resizeTriggers__ = !element.removeChild(element.__resizeTriggers__);\n } catch (e) {// Preact compat; see developit/preact-compat/issues/228\n }\n }\n }\n };\n\n return {\n addResizeListener: addResizeListener,\n removeResizeListener: removeResizeListener\n };\n}","import _curry1 from './internal/_curry1.js';\nimport curryN from './curryN.js';\n\n/**\n * Returns a new function much like the supplied one, except that the first two\n * arguments' order is reversed.\n *\n * @func\n * @memberOf R\n * @since v0.1.0\n * @category Function\n * @sig ((a, b, c, ...) -> z) -> (b -> a -> c -> ... -> z)\n * @param {Function} fn The function to invoke with its first two parameters reversed.\n * @return {*} The result of invoking `fn` with its first two parameters' order reversed.\n * @example\n *\n * const mergeThree = (a, b, c) => [].concat(a, b, c);\n *\n * mergeThree(1, 2, 3); //=> [1, 2, 3]\n *\n * R.flip(mergeThree)(1, 2, 3); //=> [2, 1, 3]\n * @symb R.flip(f)(a, b, c) = f(b, a, c)\n */\nvar flip = /*#__PURE__*/_curry1(function flip(fn) {\n return curryN(fn.length, function (a, b) {\n var args = Array.prototype.slice.call(arguments, 0);\n args[0] = b;\n args[1] = a;\n return fn.apply(this, args);\n });\n});\nexport default flip;","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getDaysInMonth\n * @category Month Helpers\n * @summary Get the number of days in a month of the given date.\n *\n * @description\n * Get the number of days in a month of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the number of days in a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // How many days are in February 2000?\n * const result = getDaysInMonth(new Date(2000, 1))\n * //=> 29\n */\n\nexport default function getDaysInMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getFullYear();\n var monthIndex = date.getMonth();\n var lastDayOfMonth = new Date(0);\n lastDayOfMonth.setFullYear(year, monthIndex + 1, 0);\n lastDayOfMonth.setHours(0, 0, 0, 0);\n return lastDayOfMonth.getDate();\n}","export default function addLeadingZeros(number, targetLength) {\n var sign = number < 0 ? '-' : '';\n var output = Math.abs(number).toString();\n\n while (output.length < targetLength) {\n output = '0' + output;\n }\n\n return sign + output;\n}","import addLeadingZeros from \"../../addLeadingZeros/index.js\";\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | |\n * | d | Day of month | D | |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | m | Minute | M | Month |\n * | s | Second | S | Fraction of second |\n * | y | Year (abs) | Y | |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n */\n\nvar formatters = {\n // Year\n y: function (date, token) {\n // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_tokens\n // | Year | y | yy | yyy | yyyy | yyyyy |\n // |----------|-------|----|-------|-------|-------|\n // | AD 1 | 1 | 01 | 001 | 0001 | 00001 |\n // | AD 12 | 12 | 12 | 012 | 0012 | 00012 |\n // | AD 123 | 123 | 23 | 123 | 0123 | 00123 |\n // | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 |\n // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |\n var signedYear = date.getUTCFullYear(); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var year = signedYear > 0 ? signedYear : 1 - signedYear;\n return addLeadingZeros(token === 'yy' ? year % 100 : year, token.length);\n },\n // Month\n M: function (date, token) {\n var month = date.getUTCMonth();\n return token === 'M' ? String(month + 1) : addLeadingZeros(month + 1, 2);\n },\n // Day of the month\n d: function (date, token) {\n return addLeadingZeros(date.getUTCDate(), token.length);\n },\n // AM or PM\n a: function (date, token) {\n var dayPeriodEnumValue = date.getUTCHours() / 12 >= 1 ? 'pm' : 'am';\n\n switch (token) {\n case 'a':\n case 'aa':\n return dayPeriodEnumValue.toUpperCase();\n\n case 'aaa':\n return dayPeriodEnumValue;\n\n case 'aaaaa':\n return dayPeriodEnumValue[0];\n\n case 'aaaa':\n default:\n return dayPeriodEnumValue === 'am' ? 'a.m.' : 'p.m.';\n }\n },\n // Hour [1-12]\n h: function (date, token) {\n return addLeadingZeros(date.getUTCHours() % 12 || 12, token.length);\n },\n // Hour [0-23]\n H: function (date, token) {\n return addLeadingZeros(date.getUTCHours(), token.length);\n },\n // Minute\n m: function (date, token) {\n return addLeadingZeros(date.getUTCMinutes(), token.length);\n },\n // Second\n s: function (date, token) {\n return addLeadingZeros(date.getUTCSeconds(), token.length);\n },\n // Fraction of second\n S: function (date, token) {\n var numberOfDigits = token.length;\n var milliseconds = date.getUTCMilliseconds();\n var fractionalSeconds = Math.floor(milliseconds * Math.pow(10, numberOfDigits - 3));\n return addLeadingZeros(fractionalSeconds, token.length);\n }\n};\nexport default formatters;","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_DAY = 86400000; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function getUTCDayOfYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var timestamp = date.getTime();\n date.setUTCMonth(0, 1);\n date.setUTCHours(0, 0, 0, 0);\n var startOfYearTimestamp = date.getTime();\n var difference = timestamp - startOfYearTimestamp;\n return Math.floor(difference / MILLISECONDS_IN_DAY) + 1;\n}","import lightFormatters from \"../lightFormatters/index.js\";\nimport getUTCDayOfYear from \"../../../_lib/getUTCDayOfYear/index.js\";\nimport getUTCISOWeek from \"../../../_lib/getUTCISOWeek/index.js\";\nimport getUTCISOWeekYear from \"../../../_lib/getUTCISOWeekYear/index.js\";\nimport getUTCWeek from \"../../../_lib/getUTCWeek/index.js\";\nimport getUTCWeekYear from \"../../../_lib/getUTCWeekYear/index.js\";\nimport addLeadingZeros from \"../../addLeadingZeros/index.js\";\nvar dayPeriodEnum = {\n am: 'am',\n pm: 'pm',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n};\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | b | AM, PM, noon, midnight | B | Flexible day period |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O | Timezone (GMT) |\n * | p! | Long localized time | P! | Long localized date |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `format` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n * - `P` is long localized date format\n * - `p` is long localized time format\n */\n\nvar formatters = {\n // Era\n G: function (date, token, localize) {\n var era = date.getUTCFullYear() > 0 ? 1 : 0;\n\n switch (token) {\n // AD, BC\n case 'G':\n case 'GG':\n case 'GGG':\n return localize.era(era, {\n width: 'abbreviated'\n });\n // A, B\n\n case 'GGGGG':\n return localize.era(era, {\n width: 'narrow'\n });\n // Anno Domini, Before Christ\n\n case 'GGGG':\n default:\n return localize.era(era, {\n width: 'wide'\n });\n }\n },\n // Year\n y: function (date, token, localize) {\n // Ordinal number\n if (token === 'yo') {\n var signedYear = date.getUTCFullYear(); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var year = signedYear > 0 ? signedYear : 1 - signedYear;\n return localize.ordinalNumber(year, {\n unit: 'year'\n });\n }\n\n return lightFormatters.y(date, token);\n },\n // Local week-numbering year\n Y: function (date, token, localize, options) {\n var signedWeekYear = getUTCWeekYear(date, options); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear; // Two digit year\n\n if (token === 'YY') {\n var twoDigitYear = weekYear % 100;\n return addLeadingZeros(twoDigitYear, 2);\n } // Ordinal number\n\n\n if (token === 'Yo') {\n return localize.ordinalNumber(weekYear, {\n unit: 'year'\n });\n } // Padding\n\n\n return addLeadingZeros(weekYear, token.length);\n },\n // ISO week-numbering year\n R: function (date, token) {\n var isoWeekYear = getUTCISOWeekYear(date); // Padding\n\n return addLeadingZeros(isoWeekYear, token.length);\n },\n // Extended year. This is a single number designating the year of this calendar system.\n // The main difference between `y` and `u` localizers are B.C. years:\n // | Year | `y` | `u` |\n // |------|-----|-----|\n // | AC 1 | 1 | 1 |\n // | BC 1 | 1 | 0 |\n // | BC 2 | 2 | -1 |\n // Also `yy` always returns the last two digits of a year,\n // while `uu` pads single digit years to 2 characters and returns other years unchanged.\n u: function (date, token) {\n var year = date.getUTCFullYear();\n return addLeadingZeros(year, token.length);\n },\n // Quarter\n Q: function (date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);\n\n switch (token) {\n // 1, 2, 3, 4\n case 'Q':\n return String(quarter);\n // 01, 02, 03, 04\n\n case 'QQ':\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n\n case 'Qo':\n return localize.ordinalNumber(quarter, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n\n case 'QQQ':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n\n case 'QQQQQ':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'formatting'\n });\n // 1st quarter, 2nd quarter, ...\n\n case 'QQQQ':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone quarter\n q: function (date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);\n\n switch (token) {\n // 1, 2, 3, 4\n case 'q':\n return String(quarter);\n // 01, 02, 03, 04\n\n case 'qq':\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n\n case 'qo':\n return localize.ordinalNumber(quarter, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n\n case 'qqq':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n\n case 'qqqqq':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'standalone'\n });\n // 1st quarter, 2nd quarter, ...\n\n case 'qqqq':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // Month\n M: function (date, token, localize) {\n var month = date.getUTCMonth();\n\n switch (token) {\n case 'M':\n case 'MM':\n return lightFormatters.M(date, token);\n // 1st, 2nd, ..., 12th\n\n case 'Mo':\n return localize.ordinalNumber(month + 1, {\n unit: 'month'\n });\n // Jan, Feb, ..., Dec\n\n case 'MMM':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // J, F, ..., D\n\n case 'MMMMM':\n return localize.month(month, {\n width: 'narrow',\n context: 'formatting'\n });\n // January, February, ..., December\n\n case 'MMMM':\n default:\n return localize.month(month, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone month\n L: function (date, token, localize) {\n var month = date.getUTCMonth();\n\n switch (token) {\n // 1, 2, ..., 12\n case 'L':\n return String(month + 1);\n // 01, 02, ..., 12\n\n case 'LL':\n return addLeadingZeros(month + 1, 2);\n // 1st, 2nd, ..., 12th\n\n case 'Lo':\n return localize.ordinalNumber(month + 1, {\n unit: 'month'\n });\n // Jan, Feb, ..., Dec\n\n case 'LLL':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // J, F, ..., D\n\n case 'LLLLL':\n return localize.month(month, {\n width: 'narrow',\n context: 'standalone'\n });\n // January, February, ..., December\n\n case 'LLLL':\n default:\n return localize.month(month, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // Local week of year\n w: function (date, token, localize, options) {\n var week = getUTCWeek(date, options);\n\n if (token === 'wo') {\n return localize.ordinalNumber(week, {\n unit: 'week'\n });\n }\n\n return addLeadingZeros(week, token.length);\n },\n // ISO week of year\n I: function (date, token, localize) {\n var isoWeek = getUTCISOWeek(date);\n\n if (token === 'Io') {\n return localize.ordinalNumber(isoWeek, {\n unit: 'week'\n });\n }\n\n return addLeadingZeros(isoWeek, token.length);\n },\n // Day of the month\n d: function (date, token, localize) {\n if (token === 'do') {\n return localize.ordinalNumber(date.getUTCDate(), {\n unit: 'date'\n });\n }\n\n return lightFormatters.d(date, token);\n },\n // Day of year\n D: function (date, token, localize) {\n var dayOfYear = getUTCDayOfYear(date);\n\n if (token === 'Do') {\n return localize.ordinalNumber(dayOfYear, {\n unit: 'dayOfYear'\n });\n }\n\n return addLeadingZeros(dayOfYear, token.length);\n },\n // Day of week\n E: function (date, token, localize) {\n var dayOfWeek = date.getUTCDay();\n\n switch (token) {\n // Tue\n case 'E':\n case 'EE':\n case 'EEE':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'EEEEE':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'EEEEEE':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'EEEE':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Local day of week\n e: function (date, token, localize, options) {\n var dayOfWeek = date.getUTCDay();\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n\n switch (token) {\n // Numerical value (Nth day of week with current locale or weekStartsOn)\n case 'e':\n return String(localDayOfWeek);\n // Padded numerical value\n\n case 'ee':\n return addLeadingZeros(localDayOfWeek, 2);\n // 1st, 2nd, ..., 7th\n\n case 'eo':\n return localize.ordinalNumber(localDayOfWeek, {\n unit: 'day'\n });\n\n case 'eee':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'eeeee':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'eeeeee':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'eeee':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone local day of week\n c: function (date, token, localize, options) {\n var dayOfWeek = date.getUTCDay();\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n\n switch (token) {\n // Numerical value (same as in `e`)\n case 'c':\n return String(localDayOfWeek);\n // Padded numerical value\n\n case 'cc':\n return addLeadingZeros(localDayOfWeek, token.length);\n // 1st, 2nd, ..., 7th\n\n case 'co':\n return localize.ordinalNumber(localDayOfWeek, {\n unit: 'day'\n });\n\n case 'ccc':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // T\n\n case 'ccccc':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'standalone'\n });\n // Tu\n\n case 'cccccc':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'standalone'\n });\n // Tuesday\n\n case 'cccc':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // ISO day of week\n i: function (date, token, localize) {\n var dayOfWeek = date.getUTCDay();\n var isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek;\n\n switch (token) {\n // 2\n case 'i':\n return String(isoDayOfWeek);\n // 02\n\n case 'ii':\n return addLeadingZeros(isoDayOfWeek, token.length);\n // 2nd\n\n case 'io':\n return localize.ordinalNumber(isoDayOfWeek, {\n unit: 'day'\n });\n // Tue\n\n case 'iii':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'iiiii':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'iiiiii':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'iiii':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // AM or PM\n a: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am';\n\n switch (token) {\n case 'a':\n case 'aa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'aaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n }).toLowerCase();\n\n case 'aaaaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'aaaa':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // AM, PM, midnight, noon\n b: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue;\n\n if (hours === 12) {\n dayPeriodEnumValue = dayPeriodEnum.noon;\n } else if (hours === 0) {\n dayPeriodEnumValue = dayPeriodEnum.midnight;\n } else {\n dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am';\n }\n\n switch (token) {\n case 'b':\n case 'bb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'bbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n }).toLowerCase();\n\n case 'bbbbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'bbbb':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // in the morning, in the afternoon, in the evening, at night\n B: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue;\n\n if (hours >= 17) {\n dayPeriodEnumValue = dayPeriodEnum.evening;\n } else if (hours >= 12) {\n dayPeriodEnumValue = dayPeriodEnum.afternoon;\n } else if (hours >= 4) {\n dayPeriodEnumValue = dayPeriodEnum.morning;\n } else {\n dayPeriodEnumValue = dayPeriodEnum.night;\n }\n\n switch (token) {\n case 'B':\n case 'BB':\n case 'BBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'BBBBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'BBBB':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Hour [1-12]\n h: function (date, token, localize) {\n if (token === 'ho') {\n var hours = date.getUTCHours() % 12;\n if (hours === 0) hours = 12;\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return lightFormatters.h(date, token);\n },\n // Hour [0-23]\n H: function (date, token, localize) {\n if (token === 'Ho') {\n return localize.ordinalNumber(date.getUTCHours(), {\n unit: 'hour'\n });\n }\n\n return lightFormatters.H(date, token);\n },\n // Hour [0-11]\n K: function (date, token, localize) {\n var hours = date.getUTCHours() % 12;\n\n if (token === 'Ko') {\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return addLeadingZeros(hours, token.length);\n },\n // Hour [1-24]\n k: function (date, token, localize) {\n var hours = date.getUTCHours();\n if (hours === 0) hours = 24;\n\n if (token === 'ko') {\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return addLeadingZeros(hours, token.length);\n },\n // Minute\n m: function (date, token, localize) {\n if (token === 'mo') {\n return localize.ordinalNumber(date.getUTCMinutes(), {\n unit: 'minute'\n });\n }\n\n return lightFormatters.m(date, token);\n },\n // Second\n s: function (date, token, localize) {\n if (token === 'so') {\n return localize.ordinalNumber(date.getUTCSeconds(), {\n unit: 'second'\n });\n }\n\n return lightFormatters.s(date, token);\n },\n // Fraction of second\n S: function (date, token) {\n return lightFormatters.S(date, token);\n },\n // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)\n X: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n if (timezoneOffset === 0) {\n return 'Z';\n }\n\n switch (token) {\n // Hours and optional minutes\n case 'X':\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XX`\n\n case 'XXXX':\n case 'XX':\n // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XXX`\n\n case 'XXXXX':\n case 'XXX': // Hours and minutes with `:` delimiter\n\n default:\n return formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)\n x: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Hours and optional minutes\n case 'x':\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xx`\n\n case 'xxxx':\n case 'xx':\n // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xxx`\n\n case 'xxxxx':\n case 'xxx': // Hours and minutes with `:` delimiter\n\n default:\n return formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (GMT)\n O: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Short\n case 'O':\n case 'OO':\n case 'OOO':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':');\n // Long\n\n case 'OOOO':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (specific non-location)\n z: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Short\n case 'z':\n case 'zz':\n case 'zzz':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':');\n // Long\n\n case 'zzzz':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':');\n }\n },\n // Seconds timestamp\n t: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timestamp = Math.floor(originalDate.getTime() / 1000);\n return addLeadingZeros(timestamp, token.length);\n },\n // Milliseconds timestamp\n T: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timestamp = originalDate.getTime();\n return addLeadingZeros(timestamp, token.length);\n }\n};\n\nfunction formatTimezoneShort(offset, dirtyDelimiter) {\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = Math.floor(absOffset / 60);\n var minutes = absOffset % 60;\n\n if (minutes === 0) {\n return sign + String(hours);\n }\n\n var delimiter = dirtyDelimiter || '';\n return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2);\n}\n\nfunction formatTimezoneWithOptionalMinutes(offset, dirtyDelimiter) {\n if (offset % 60 === 0) {\n var sign = offset > 0 ? '-' : '+';\n return sign + addLeadingZeros(Math.abs(offset) / 60, 2);\n }\n\n return formatTimezone(offset, dirtyDelimiter);\n}\n\nfunction formatTimezone(offset, dirtyDelimiter) {\n var delimiter = dirtyDelimiter || '';\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = addLeadingZeros(Math.floor(absOffset / 60), 2);\n var minutes = addLeadingZeros(absOffset % 60, 2);\n return sign + hours + delimiter + minutes;\n}\n\nexport default formatters;","import isValid from \"../isValid/index.js\";\nimport defaultLocale from \"../locale/en-US/index.js\";\nimport subMilliseconds from \"../subMilliseconds/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport formatters from \"../_lib/format/formatters/index.js\";\nimport longFormatters from \"../_lib/format/longFormatters/index.js\";\nimport getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport { isProtectedDayOfYearToken, isProtectedWeekYearToken, throwProtectedError } from \"../_lib/protectedTokens/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\"; // This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\n\nvar formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g; // This RegExp catches symbols escaped by quotes, and also\n// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`\n\nvar longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;\nvar escapedStringRegExp = /^'([^]*?)'?$/;\nvar doubleQuoteRegExp = /''/g;\nvar unescapedLatinCharacterRegExp = /[a-zA-Z]/;\n/**\n * @name format\n * @category Common Helpers\n * @summary Format the date.\n *\n * @description\n * Return the formatted date string in the given format. The result may vary by locale.\n *\n * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://git.io/fxCyr\n *\n * The characters wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n * (see the last example)\n *\n * Format of the string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 7 below the table).\n *\n * Accepted patterns:\n * | Unit | Pattern | Result examples | Notes |\n * |---------------------------------|---------|-----------------------------------|-------|\n * | Era | G..GGG | AD, BC | |\n * | | GGGG | Anno Domini, Before Christ | 2 |\n * | | GGGGG | A, B | |\n * | Calendar year | y | 44, 1, 1900, 2017 | 5 |\n * | | yo | 44th, 1st, 0th, 17th | 5,7 |\n * | | yy | 44, 01, 00, 17 | 5 |\n * | | yyy | 044, 001, 1900, 2017 | 5 |\n * | | yyyy | 0044, 0001, 1900, 2017 | 5 |\n * | | yyyyy | ... | 3,5 |\n * | Local week-numbering year | Y | 44, 1, 1900, 2017 | 5 |\n * | | Yo | 44th, 1st, 1900th, 2017th | 5,7 |\n * | | YY | 44, 01, 00, 17 | 5,8 |\n * | | YYY | 044, 001, 1900, 2017 | 5 |\n * | | YYYY | 0044, 0001, 1900, 2017 | 5,8 |\n * | | YYYYY | ... | 3,5 |\n * | ISO week-numbering year | R | -43, 0, 1, 1900, 2017 | 5,7 |\n * | | RR | -43, 00, 01, 1900, 2017 | 5,7 |\n * | | RRR | -043, 000, 001, 1900, 2017 | 5,7 |\n * | | RRRR | -0043, 0000, 0001, 1900, 2017 | 5,7 |\n * | | RRRRR | ... | 3,5,7 |\n * | Extended year | u | -43, 0, 1, 1900, 2017 | 5 |\n * | | uu | -43, 01, 1900, 2017 | 5 |\n * | | uuu | -043, 001, 1900, 2017 | 5 |\n * | | uuuu | -0043, 0001, 1900, 2017 | 5 |\n * | | uuuuu | ... | 3,5 |\n * | Quarter (formatting) | Q | 1, 2, 3, 4 | |\n * | | Qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | QQ | 01, 02, 03, 04 | |\n * | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | q | 1, 2, 3, 4 | |\n * | | qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | qq | 01, 02, 03, 04 | |\n * | | qqq | Q1, Q2, Q3, Q4 | |\n * | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | qqqqq | 1, 2, 3, 4 | 4 |\n * | Month (formatting) | M | 1, 2, ..., 12 | |\n * | | Mo | 1st, 2nd, ..., 12th | 7 |\n * | | MM | 01, 02, ..., 12 | |\n * | | MMM | Jan, Feb, ..., Dec | |\n * | | MMMM | January, February, ..., December | 2 |\n * | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | L | 1, 2, ..., 12 | |\n * | | Lo | 1st, 2nd, ..., 12th | 7 |\n * | | LL | 01, 02, ..., 12 | |\n * | | LLL | Jan, Feb, ..., Dec | |\n * | | LLLL | January, February, ..., December | 2 |\n * | | LLLLL | J, F, ..., D | |\n * | Local week of year | w | 1, 2, ..., 53 | |\n * | | wo | 1st, 2nd, ..., 53th | 7 |\n * | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | I | 1, 2, ..., 53 | 7 |\n * | | Io | 1st, 2nd, ..., 53th | 7 |\n * | | II | 01, 02, ..., 53 | 7 |\n * | Day of month | d | 1, 2, ..., 31 | |\n * | | do | 1st, 2nd, ..., 31st | 7 |\n * | | dd | 01, 02, ..., 31 | |\n * | Day of year | D | 1, 2, ..., 365, 366 | 9 |\n * | | Do | 1st, 2nd, ..., 365th, 366th | 7 |\n * | | DD | 01, 02, ..., 365, 366 | 9 |\n * | | DDD | 001, 002, ..., 365, 366 | |\n * | | DDDD | ... | 3 |\n * | Day of week (formatting) | E..EEE | Mon, Tue, Wed, ..., Sun | |\n * | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | EEEEE | M, T, W, T, F, S, S | |\n * | | EEEEEE | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | ISO day of week (formatting) | i | 1, 2, 3, ..., 7 | 7 |\n * | | io | 1st, 2nd, ..., 7th | 7 |\n * | | ii | 01, 02, ..., 07 | 7 |\n * | | iii | Mon, Tue, Wed, ..., Sun | 7 |\n * | | iiii | Monday, Tuesday, ..., Sunday | 2,7 |\n * | | iiiii | M, T, W, T, F, S, S | 7 |\n * | | iiiiii | Mo, Tu, We, Th, Fr, Sa, Su | 7 |\n * | Local day of week (formatting) | e | 2, 3, 4, ..., 1 | |\n * | | eo | 2nd, 3rd, ..., 1st | 7 |\n * | | ee | 02, 03, ..., 01 | |\n * | | eee | Mon, Tue, Wed, ..., Sun | |\n * | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | eeeee | M, T, W, T, F, S, S | |\n * | | eeeeee | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | Local day of week (stand-alone) | c | 2, 3, 4, ..., 1 | |\n * | | co | 2nd, 3rd, ..., 1st | 7 |\n * | | cc | 02, 03, ..., 01 | |\n * | | ccc | Mon, Tue, Wed, ..., Sun | |\n * | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | ccccc | M, T, W, T, F, S, S | |\n * | | cccccc | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | AM, PM | a..aa | AM, PM | |\n * | | aaa | am, pm | |\n * | | aaaa | a.m., p.m. | 2 |\n * | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | b..bb | AM, PM, noon, midnight | |\n * | | bbb | am, pm, noon, midnight | |\n * | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | bbbbb | a, p, n, mi | |\n * | Flexible day period | B..BBB | at night, in the morning, ... | |\n * | | BBBB | at night, in the morning, ... | 2 |\n * | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | h | 1, 2, ..., 11, 12 | |\n * | | ho | 1st, 2nd, ..., 11th, 12th | 7 |\n * | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | H | 0, 1, 2, ..., 23 | |\n * | | Ho | 0th, 1st, 2nd, ..., 23rd | 7 |\n * | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | K | 1, 2, ..., 11, 0 | |\n * | | Ko | 1st, 2nd, ..., 11th, 0th | 7 |\n * | | KK | 01, 02, ..., 11, 00 | |\n * | Hour [1-24] | k | 24, 1, 2, ..., 23 | |\n * | | ko | 24th, 1st, 2nd, ..., 23rd | 7 |\n * | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | m | 0, 1, ..., 59 | |\n * | | mo | 0th, 1st, ..., 59th | 7 |\n * | | mm | 00, 01, ..., 59 | |\n * | Second | s | 0, 1, ..., 59 | |\n * | | so | 0th, 1st, ..., 59th | 7 |\n * | | ss | 00, 01, ..., 59 | |\n * | Fraction of second | S | 0, 1, ..., 9 | |\n * | | SS | 00, 01, ..., 99 | |\n * | | SSS | 000, 001, ..., 999 | |\n * | | SSSS | ... | 3 |\n * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z | |\n * | | XX | -0800, +0530, Z | |\n * | | XXX | -08:00, +05:30, Z | |\n * | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 | |\n * | | xx | -0800, +0530, +0000 | |\n * | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * | Timezone (GMT) | O...OOO | GMT-8, GMT+5:30, GMT+0 | |\n * | | OOOO | GMT-08:00, GMT+05:30, GMT+00:00 | 2 |\n * | Timezone (specific non-locat.) | z...zzz | GMT-8, GMT+5:30, GMT+0 | 6 |\n * | | zzzz | GMT-08:00, GMT+05:30, GMT+00:00 | 2,6 |\n * | Seconds timestamp | t | 512969520 | 7 |\n * | | tt | ... | 3,7 |\n * | Milliseconds timestamp | T | 512969520900 | 7 |\n * | | TT | ... | 3,7 |\n * | Long localized date | P | 04/29/1453 | 7 |\n * | | PP | Apr 29, 1453 | 7 |\n * | | PPP | April 29th, 1453 | 7 |\n * | | PPPP | Friday, April 29th, 1453 | 2,7 |\n * | Long localized time | p | 12:00 AM | 7 |\n * | | pp | 12:00:00 AM | 7 |\n * | | ppp | 12:00:00 AM GMT+2 | 7 |\n * | | pppp | 12:00:00 AM GMT+02:00 | 2,7 |\n * | Combination of date and time | Pp | 04/29/1453, 12:00 AM | 7 |\n * | | PPpp | Apr 29, 1453, 12:00:00 AM | 7 |\n * | | PPPppp | April 29th, 1453 at ... | 7 |\n * | | PPPPpppp| Friday, April 29th, 1453 at ... | 2,7 |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`)\n * the output will be the same as default pattern for this unit, usually\n * the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units\n * are marked with \"2\" in the last column of the table.\n *\n * `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'`\n *\n * `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'`\n *\n * 3. Some patterns could be unlimited length (such as `yyyyyyyy`).\n * The output will be padded with zeros to match the length of the pattern.\n *\n * `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'`\n *\n * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 5. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` always returns the last two digits of a year,\n * while `uu` pads single digit years to 2 characters and returns other years unchanged:\n *\n * | Year | `yy` | `uu` |\n * |------|------|------|\n * | 1 | 01 | 01 |\n * | 14 | 14 | 14 |\n * | 376 | 76 | 376 |\n * | 1453 | 53 | 1453 |\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [getISOWeekYear]{@link https://date-fns.org/docs/getISOWeekYear}\n * and [getWeekYear]{@link https://date-fns.org/docs/getWeekYear}).\n *\n * 6. Specific non-location timezones are currently unavailable in `date-fns`,\n * so right now these tokens fall back to GMT timezones.\n *\n * 7. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `t`: seconds timestamp\n * - `T`: milliseconds timestamp\n * - `o`: ordinal number modifier\n * - `P`: long localized date\n * - `p`: long localized time\n *\n * 8. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.\n * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://git.io/fxCyr\n *\n * 9. `D` and `DD` tokens represent days of the year but they are ofthen confused with days of the month.\n * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://git.io/fxCyr\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The second argument is now required for the sake of explicitness.\n *\n * ```javascript\n * // Before v2.0.0\n * format(new Date(2016, 0, 1))\n *\n * // v2.0.0 onward\n * format(new Date(2016, 0, 1), \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\")\n * ```\n *\n * - New format string API for `format` function\n * which is based on [Unicode Technical Standard #35](https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table).\n * See [this post](https://blog.date-fns.org/post/unicode-tokens-in-date-fns-v2-sreatyki91jg) for more details.\n *\n * - Characters are now escaped using single quote symbols (`'`) instead of square brackets.\n *\n * @param {Date|Number} date - the original date\n * @param {String} format - the string of tokens\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Number} [options.firstWeekContainsDate=1] - the day of January, which is\n * @param {Boolean} [options.useAdditionalWeekYearTokens=false] - if true, allows usage of the week-numbering year tokens `YY` and `YYYY`;\n * see: https://git.io/fxCyr\n * @param {Boolean} [options.useAdditionalDayOfYearTokens=false] - if true, allows usage of the day of year tokens `D` and `DD`;\n * see: https://git.io/fxCyr\n * @returns {String} the formatted date string\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `date` must not be Invalid Date\n * @throws {RangeError} `options.locale` must contain `localize` property\n * @throws {RangeError} `options.locale` must contain `formatLong` property\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n * @throws {RangeError} use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://git.io/fxCyr\n * @throws {RangeError} use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://git.io/fxCyr\n * @throws {RangeError} use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://git.io/fxCyr\n * @throws {RangeError} use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://git.io/fxCyr\n * @throws {RangeError} format string contains an unescaped latin alphabet character\n *\n * @example\n * // Represent 11 February 2014 in middle-endian format:\n * var result = format(new Date(2014, 1, 11), 'MM/dd/yyyy')\n * //=> '02/11/2014'\n *\n * @example\n * // Represent 2 July 2014 in Esperanto:\n * import { eoLocale } from 'date-fns/locale/eo'\n * var result = format(new Date(2014, 6, 2), \"do 'de' MMMM yyyy\", {\n * locale: eoLocale\n * })\n * //=> '2-a de julio 2014'\n *\n * @example\n * // Escape string by single quote characters:\n * var result = format(new Date(2014, 6, 2, 15), \"h 'o''clock'\")\n * //=> \"3 o'clock\"\n */\n\nexport default function format(dirtyDate, dirtyFormatStr, dirtyOptions) {\n requiredArgs(2, arguments);\n var formatStr = String(dirtyFormatStr);\n var options = dirtyOptions || {};\n var locale = options.locale || defaultLocale;\n var localeFirstWeekContainsDate = locale.options && locale.options.firstWeekContainsDate;\n var defaultFirstWeekContainsDate = localeFirstWeekContainsDate == null ? 1 : toInteger(localeFirstWeekContainsDate);\n var firstWeekContainsDate = options.firstWeekContainsDate == null ? defaultFirstWeekContainsDate : toInteger(options.firstWeekContainsDate); // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');\n }\n\n var localeWeekStartsOn = locale.options && locale.options.weekStartsOn;\n var defaultWeekStartsOn = localeWeekStartsOn == null ? 0 : toInteger(localeWeekStartsOn);\n var weekStartsOn = options.weekStartsOn == null ? defaultWeekStartsOn : toInteger(options.weekStartsOn); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n if (!locale.localize) {\n throw new RangeError('locale must contain localize property');\n }\n\n if (!locale.formatLong) {\n throw new RangeError('locale must contain formatLong property');\n }\n\n var originalDate = toDate(dirtyDate);\n\n if (!isValid(originalDate)) {\n throw new RangeError('Invalid time value');\n } // Convert the date in system timezone to the same date in UTC+00:00 timezone.\n // This ensures that when UTC functions will be implemented, locales will be compatible with them.\n // See an issue about UTC functions: https://github.com/date-fns/date-fns/issues/376\n\n\n var timezoneOffset = getTimezoneOffsetInMilliseconds(originalDate);\n var utcDate = subMilliseconds(originalDate, timezoneOffset);\n var formatterOptions = {\n firstWeekContainsDate: firstWeekContainsDate,\n weekStartsOn: weekStartsOn,\n locale: locale,\n _originalDate: originalDate\n };\n var result = formatStr.match(longFormattingTokensRegExp).map(function (substring) {\n var firstCharacter = substring[0];\n\n if (firstCharacter === 'p' || firstCharacter === 'P') {\n var longFormatter = longFormatters[firstCharacter];\n return longFormatter(substring, locale.formatLong, formatterOptions);\n }\n\n return substring;\n }).join('').match(formattingTokensRegExp).map(function (substring) {\n // Replace two single quote characters with one single quote character\n if (substring === \"''\") {\n return \"'\";\n }\n\n var firstCharacter = substring[0];\n\n if (firstCharacter === \"'\") {\n return cleanEscapedString(substring);\n }\n\n var formatter = formatters[firstCharacter];\n\n if (formatter) {\n if (!options.useAdditionalWeekYearTokens && isProtectedWeekYearToken(substring)) {\n throwProtectedError(substring, dirtyFormatStr, dirtyDate);\n }\n\n if (!options.useAdditionalDayOfYearTokens && isProtectedDayOfYearToken(substring)) {\n throwProtectedError(substring, dirtyFormatStr, dirtyDate);\n }\n\n return formatter(utcDate, substring, locale.localize, formatterOptions);\n }\n\n if (firstCharacter.match(unescapedLatinCharacterRegExp)) {\n throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`');\n }\n\n return substring;\n }).join('');\n return result;\n}\n\nfunction cleanEscapedString(input) {\n return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, \"'\");\n}","import _concat from './internal/_concat.js';\nimport _curry2 from './internal/_curry2.js';\nimport _reduce from './internal/_reduce.js';\nimport map from './map.js';\n\n/**\n * ap applies a list of functions to a list of values.\n *\n * Dispatches to the `ap` method of the second argument, if present. Also\n * treats curried functions as applicatives.\n *\n * @func\n * @memberOf R\n * @since v0.3.0\n * @category Function\n * @sig [a -> b] -> [a] -> [b]\n * @sig Apply f => f (a -> b) -> f a -> f b\n * @sig (r -> a -> b) -> (r -> a) -> (r -> b)\n * @param {*} applyF\n * @param {*} applyX\n * @return {*}\n * @example\n *\n * R.ap([R.multiply(2), R.add(3)], [1,2,3]); //=> [2, 4, 6, 4, 5, 6]\n * R.ap([R.concat('tasty '), R.toUpper], ['pizza', 'salad']); //=> [\"tasty pizza\", \"tasty salad\", \"PIZZA\", \"SALAD\"]\n *\n * // R.ap can also be used as S combinator\n * // when only two functions are passed\n * R.ap(R.concat, R.toUpper)('Ramda') //=> 'RamdaRAMDA'\n * @symb R.ap([f, g], [a, b]) = [f(a), f(b), g(a), g(b)]\n */\nvar ap = /*#__PURE__*/_curry2(function ap(applyF, applyX) {\n return typeof applyX['fantasy-land/ap'] === 'function' ? applyX['fantasy-land/ap'](applyF) : typeof applyF.ap === 'function' ? applyF.ap(applyX) : typeof applyF === 'function' ? function (x) {\n return applyF(x)(applyX(x));\n } : _reduce(function (acc, f) {\n return _concat(acc, map(f, applyX));\n }, [], applyF);\n});\nexport default ap;","import _curry2 from './internal/_curry2.js';\nimport _reduce from './internal/_reduce.js';\nimport ap from './ap.js';\nimport curryN from './curryN.js';\nimport map from './map.js';\n\n/**\n * \"lifts\" a function to be the specified arity, so that it may \"map over\" that\n * many lists, Functions or other objects that satisfy the [FantasyLand Apply spec](https://github.com/fantasyland/fantasy-land#apply).\n *\n * @func\n * @memberOf R\n * @since v0.7.0\n * @category Function\n * @sig Number -> (*... -> *) -> ([*]... -> [*])\n * @param {Function} fn The function to lift into higher context\n * @return {Function} The lifted function.\n * @see R.lift, R.ap\n * @example\n *\n * const madd3 = R.liftN(3, (...args) => R.sum(args));\n * madd3([1,2,3], [1,2,3], [1]); //=> [3, 4, 5, 4, 5, 6, 5, 6, 7]\n */\nvar liftN = /*#__PURE__*/_curry2(function liftN(arity, fn) {\n var lifted = curryN(arity, fn);\n return curryN(arity, function () {\n return _reduce(ap, map(lifted, arguments[0]), Array.prototype.slice.call(arguments, 1));\n });\n});\nexport default liftN;","import _curry1 from './internal/_curry1.js';\nimport liftN from './liftN.js';\n\n/**\n * \"lifts\" a function of arity > 1 so that it may \"map over\" a list, Function or other\n * object that satisfies the [FantasyLand Apply spec](https://github.com/fantasyland/fantasy-land#apply).\n *\n * @func\n * @memberOf R\n * @since v0.7.0\n * @category Function\n * @sig (*... -> *) -> ([*]... -> [*])\n * @param {Function} fn The function to lift into higher context\n * @return {Function} The lifted function.\n * @see R.liftN\n * @example\n *\n * const madd3 = R.lift((a, b, c) => a + b + c);\n *\n * madd3([1,2,3], [1,2,3], [1]); //=> [3, 4, 5, 4, 5, 6, 5, 6, 7]\n *\n * const madd5 = R.lift((a, b, c, d, e) => a + b + c + d + e);\n *\n * madd5([1,2], [3], [4, 5], [6], [7, 8]); //=> [21, 22, 22, 23, 22, 23, 23, 24]\n */\nvar lift = /*#__PURE__*/_curry1(function lift(fn) {\n return liftN(fn.length, fn);\n});\nexport default lift;","import _curryN from './_curryN.js';\nimport _has from './_has.js';\nimport _xfBase from './_xfBase.js';\n\nvar XReduceBy = /*#__PURE__*/function () {\n function XReduceBy(valueFn, valueAcc, keyFn, xf) {\n this.valueFn = valueFn;\n this.valueAcc = valueAcc;\n this.keyFn = keyFn;\n this.xf = xf;\n this.inputs = {};\n }\n XReduceBy.prototype['@@transducer/init'] = _xfBase.init;\n XReduceBy.prototype['@@transducer/result'] = function (result) {\n var key;\n for (key in this.inputs) {\n if (_has(key, this.inputs)) {\n result = this.xf['@@transducer/step'](result, this.inputs[key]);\n if (result['@@transducer/reduced']) {\n result = result['@@transducer/value'];\n break;\n }\n }\n }\n this.inputs = null;\n return this.xf['@@transducer/result'](result);\n };\n XReduceBy.prototype['@@transducer/step'] = function (result, input) {\n var key = this.keyFn(input);\n this.inputs[key] = this.inputs[key] || [key, this.valueAcc];\n this.inputs[key][1] = this.valueFn(this.inputs[key][1], input);\n return result;\n };\n\n return XReduceBy;\n}();\n\nvar _xreduceBy = /*#__PURE__*/_curryN(4, [], function _xreduceBy(valueFn, valueAcc, keyFn, xf) {\n return new XReduceBy(valueFn, valueAcc, keyFn, xf);\n});\nexport default _xreduceBy;","import _curryN from './internal/_curryN.js';\nimport _dispatchable from './internal/_dispatchable.js';\nimport _has from './internal/_has.js';\nimport _reduce from './internal/_reduce.js';\nimport _xreduceBy from './internal/_xreduceBy.js';\n\n/**\n * Groups the elements of the list according to the result of calling\n * the String-returning function `keyFn` on each element and reduces the elements\n * of each group to a single value via the reducer function `valueFn`.\n *\n * This function is basically a more general [`groupBy`](#groupBy) function.\n *\n * Acts as a transducer if a transformer is given in list position.\n *\n * @func\n * @memberOf R\n * @since v0.20.0\n * @category List\n * @sig ((a, b) -> a) -> a -> (b -> String) -> [b] -> {String: a}\n * @param {Function} valueFn The function that reduces the elements of each group to a single\n * value. Receives two values, accumulator for a particular group and the current element.\n * @param {*} acc The (initial) accumulator value for each group.\n * @param {Function} keyFn The function that maps the list's element into a key.\n * @param {Array} list The array to group.\n * @return {Object} An object with the output of `keyFn` for keys, mapped to the output of\n * `valueFn` for elements which produced that key when passed to `keyFn`.\n * @see R.groupBy, R.reduce\n * @example\n *\n * const groupNames = (acc, {name}) => acc.concat(name)\n * const toGrade = ({score}) =>\n * score < 65 ? 'F' :\n * score < 70 ? 'D' :\n * score < 80 ? 'C' :\n * score < 90 ? 'B' : 'A'\n *\n * var students = [\n * {name: 'Abby', score: 83},\n * {name: 'Bart', score: 62},\n * {name: 'Curt', score: 88},\n * {name: 'Dora', score: 92},\n * ]\n *\n * reduceBy(groupNames, [], toGrade, students)\n * //=> {\"A\": [\"Dora\"], \"B\": [\"Abby\", \"Curt\"], \"F\": [\"Bart\"]}\n */\nvar reduceBy = /*#__PURE__*/_curryN(4, [], /*#__PURE__*/_dispatchable([], _xreduceBy, function reduceBy(valueFn, valueAcc, keyFn, list) {\n return _reduce(function (acc, elt) {\n var key = keyFn(elt);\n acc[key] = valueFn(_has(key, acc) ? acc[key] : valueAcc, elt);\n return acc;\n }, {}, list);\n}));\nexport default reduceBy;","import _curry2 from './_curry2.js';\nimport _xfBase from './_xfBase.js';\n\nvar XFilter = /*#__PURE__*/function () {\n function XFilter(f, xf) {\n this.xf = xf;\n this.f = f;\n }\n XFilter.prototype['@@transducer/init'] = _xfBase.init;\n XFilter.prototype['@@transducer/result'] = _xfBase.result;\n XFilter.prototype['@@transducer/step'] = function (result, input) {\n return this.f(input) ? this.xf['@@transducer/step'](result, input) : result;\n };\n\n return XFilter;\n}();\n\nvar _xfilter = /*#__PURE__*/_curry2(function _xfilter(f, xf) {\n return new XFilter(f, xf);\n});\nexport default _xfilter;","import _curry2 from './internal/_curry2.js';\nimport _dispatchable from './internal/_dispatchable.js';\nimport _filter from './internal/_filter.js';\nimport _isObject from './internal/_isObject.js';\nimport _reduce from './internal/_reduce.js';\nimport _xfilter from './internal/_xfilter.js';\nimport keys from './keys.js';\n\n/**\n * Takes a predicate and a `Filterable`, and returns a new filterable of the\n * same type containing the members of the given filterable which satisfy the\n * given predicate. Filterable objects include plain objects or any object\n * that has a filter method such as `Array`.\n *\n * Dispatches to the `filter` method of the second argument, if present.\n *\n * Acts as a transducer if a transformer is given in list position.\n *\n * @func\n * @memberOf R\n * @since v0.1.0\n * @category List\n * @sig Filterable f => (a -> Boolean) -> f a -> f a\n * @param {Function} pred\n * @param {Array} filterable\n * @return {Array} Filterable\n * @see R.reject, R.transduce, R.addIndex\n * @example\n *\n * const isEven = n => n % 2 === 0;\n *\n * R.filter(isEven, [1, 2, 3, 4]); //=> [2, 4]\n *\n * R.filter(isEven, {a: 1, b: 2, c: 3, d: 4}); //=> {b: 2, d: 4}\n */\nvar filter = /*#__PURE__*/_curry2( /*#__PURE__*/_dispatchable(['filter'], _xfilter, function (pred, filterable) {\n return _isObject(filterable) ? _reduce(function (acc, key) {\n if (pred(filterable[key])) {\n acc[key] = filterable[key];\n }\n return acc;\n }, {}, keys(filterable)) :\n // else\n _filter(pred, filterable);\n}));\nexport default filter;","import identity from './identity.js';\nimport uniqBy from './uniqBy.js';\n\n/**\n * Returns a new list containing only one copy of each element in the original\n * list. [`R.equals`](#equals) is used to determine equality.\n *\n * @func\n * @memberOf R\n * @since v0.1.0\n * @category List\n * @sig [a] -> [a]\n * @param {Array} list The array to consider.\n * @return {Array} The list of unique items.\n * @example\n *\n * R.uniq([1, 1, 2, 1]); //=> [1, 2]\n * R.uniq([1, '1']); //=> [1, '1']\n * R.uniq([[42], [42]]); //=> [[42]]\n */\nvar uniq = /*#__PURE__*/uniqBy(identity);\nexport default uniq;","import _Set from './internal/_Set.js';\nimport _curry2 from './internal/_curry2.js';\n\n/**\n * Returns a new list containing only one copy of each element in the original\n * list, based upon the value returned by applying the supplied function to\n * each list element. Prefers the first item if the supplied function produces\n * the same value on two items. [`R.equals`](#equals) is used for comparison.\n *\n * @func\n * @memberOf R\n * @since v0.16.0\n * @category List\n * @sig (a -> b) -> [a] -> [a]\n * @param {Function} fn A function used to produce a value to use during comparisons.\n * @param {Array} list The array to consider.\n * @return {Array} The list of unique items.\n * @example\n *\n * R.uniqBy(Math.abs, [-1, -5, 2, 10, 1, 2]); //=> [-1, -5, 2, 10]\n */\nvar uniqBy = /*#__PURE__*/_curry2(function uniqBy(fn, list) {\n var set = new _Set();\n var result = [];\n var idx = 0;\n var appliedItem, item;\n\n while (idx < list.length) {\n item = list[idx];\n appliedItem = fn(item);\n if (set.add(appliedItem)) {\n result.push(item);\n }\n idx += 1;\n }\n return result;\n});\nexport default uniqBy;","import _curry2 from './_curry2.js';\nimport _reduced from './_reduced.js';\nimport _xfBase from './_xfBase.js';\n\nvar XTake = /*#__PURE__*/function () {\n function XTake(n, xf) {\n this.xf = xf;\n this.n = n;\n this.i = 0;\n }\n XTake.prototype['@@transducer/init'] = _xfBase.init;\n XTake.prototype['@@transducer/result'] = _xfBase.result;\n XTake.prototype['@@transducer/step'] = function (result, input) {\n this.i += 1;\n var ret = this.n === 0 ? result : this.xf['@@transducer/step'](result, input);\n return this.n >= 0 && this.i >= this.n ? _reduced(ret) : ret;\n };\n\n return XTake;\n}();\n\nvar _xtake = /*#__PURE__*/_curry2(function _xtake(n, xf) {\n return new XTake(n, xf);\n});\nexport default _xtake;","import _curry2 from './internal/_curry2.js';\nimport _dispatchable from './internal/_dispatchable.js';\nimport _xtake from './internal/_xtake.js';\nimport slice from './slice.js';\n\n/**\n * Returns the first `n` elements of the given list, string, or\n * transducer/transformer (or object with a `take` method).\n *\n * Dispatches to the `take` method of the second argument, if present.\n *\n * @func\n * @memberOf R\n * @since v0.1.0\n * @category List\n * @sig Number -> [a] -> [a]\n * @sig Number -> String -> String\n * @param {Number} n\n * @param {*} list\n * @return {*}\n * @see R.drop\n * @example\n *\n * R.take(1, ['foo', 'bar', 'baz']); //=> ['foo']\n * R.take(2, ['foo', 'bar', 'baz']); //=> ['foo', 'bar']\n * R.take(3, ['foo', 'bar', 'baz']); //=> ['foo', 'bar', 'baz']\n * R.take(4, ['foo', 'bar', 'baz']); //=> ['foo', 'bar', 'baz']\n * R.take(3, 'ramda'); //=> 'ram'\n *\n * const personnel = [\n * 'Dave Brubeck',\n * 'Paul Desmond',\n * 'Eugene Wright',\n * 'Joe Morello',\n * 'Gerry Mulligan',\n * 'Bob Bates',\n * 'Joe Dodge',\n * 'Ron Crotty'\n * ];\n *\n * const takeFive = R.take(5);\n * takeFive(personnel);\n * //=> ['Dave Brubeck', 'Paul Desmond', 'Eugene Wright', 'Joe Morello', 'Gerry Mulligan']\n * @symb R.take(-1, [a, b]) = [a, b]\n * @symb R.take(0, [a, b]) = []\n * @symb R.take(1, [a, b]) = [a]\n * @symb R.take(2, [a, b]) = [a, b]\n */\nvar take = /*#__PURE__*/_curry2( /*#__PURE__*/_dispatchable(['take'], _xtake, function take(n, xs) {\n return slice(0, n < 0 ? Infinity : n, xs);\n}));\nexport default take;","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name differenceInCalendarYears\n * @category Year Helpers\n * @summary Get the number of calendar years between the given dates.\n *\n * @description\n * Get the number of calendar years between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar years\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar years are between 31 December 2013 and 11 February 2015?\n * const result = differenceInCalendarYears(\n * new Date(2015, 1, 11),\n * new Date(2013, 11, 31)\n * )\n * //=> 2\n */\n\nexport default function differenceInCalendarYears(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() - dateRight.getFullYear();\n}","import toDate from \"../toDate/index.js\";\nimport differenceInCalendarYears from \"../differenceInCalendarYears/index.js\";\nimport compareAsc from \"../compareAsc/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name differenceInYears\n * @category Year Helpers\n * @summary Get the number of full years between the given dates.\n *\n * @description\n * Get the number of full years between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full years\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full years are between 31 December 2013 and 11 February 2015?\n * const result = differenceInYears(new Date(2015, 1, 11), new Date(2013, 11, 31))\n * //=> 1\n */\n\nexport default function differenceInYears(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n var sign = compareAsc(dateLeft, dateRight);\n var difference = Math.abs(differenceInCalendarYears(dateLeft, dateRight)); // Set both dates to a valid leap year for accurate comparison when dealing\n // with leap days\n\n dateLeft.setFullYear(1584);\n dateRight.setFullYear(1584); // Math.abs(diff in full years - diff in calendar years) === 1 if last calendar year is not full\n // If so, result must be decreased by 1 in absolute value\n\n var isLastYearNotFull = compareAsc(dateLeft, dateRight) === -sign;\n var result = sign * (difference - Number(isLastYearNotFull)); // Prevent negative zero\n\n return result === 0 ? 0 : result;\n}","import getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport startOfDay from \"../startOfDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nvar MILLISECONDS_IN_DAY = 86400000;\n/**\n * @name differenceInCalendarDays\n * @category Day Helpers\n * @summary Get the number of calendar days between the given dates.\n *\n * @description\n * Get the number of calendar days between the given dates. This means that the times are removed\n * from the dates and then the difference in days is calculated.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar days\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * const result = differenceInCalendarDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 366\n * // How many calendar days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * const result = differenceInCalendarDays(\n * new Date(2011, 6, 3, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 1\n */\n\nexport default function differenceInCalendarDays(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var startOfDayLeft = startOfDay(dirtyDateLeft);\n var startOfDayRight = startOfDay(dirtyDateRight);\n var timestampLeft = startOfDayLeft.getTime() - getTimezoneOffsetInMilliseconds(startOfDayLeft);\n var timestampRight = startOfDayRight.getTime() - getTimezoneOffsetInMilliseconds(startOfDayRight); // Round the number of days to the nearest integer\n // because the number of milliseconds in a day is not constant\n // (e.g. it's different in the day of the daylight saving time clock shift)\n\n return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_DAY);\n}","import toDate from \"../toDate/index.js\";\nimport differenceInCalendarDays from \"../differenceInCalendarDays/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\"; // Like `compareAsc` but uses local time not UTC, which is needed\n// for accurate equality comparisons of UTC timestamps that end up\n// having the same representation in local time, e.g. one hour before\n// DST ends vs. the instant that DST ends.\n\nfunction compareLocalAsc(dateLeft, dateRight) {\n var diff = dateLeft.getFullYear() - dateRight.getFullYear() || dateLeft.getMonth() - dateRight.getMonth() || dateLeft.getDate() - dateRight.getDate() || dateLeft.getHours() - dateRight.getHours() || dateLeft.getMinutes() - dateRight.getMinutes() || dateLeft.getSeconds() - dateRight.getSeconds() || dateLeft.getMilliseconds() - dateRight.getMilliseconds();\n\n if (diff < 0) {\n return -1;\n } else if (diff > 0) {\n return 1; // Return 0 if diff is 0; return NaN if diff is NaN\n } else {\n return diff;\n }\n}\n/**\n * @name differenceInDays\n * @category Day Helpers\n * @summary Get the number of full days between the given dates.\n *\n * @description\n * Get the number of full day periods between two dates. Fractional days are\n * truncated towards zero.\n *\n * One \"full day\" is the distance between a local time in one day to the same\n * local time on the next or previous day. A full day can sometimes be less than\n * or more than 24 hours if a daylight savings change happens between two dates.\n *\n * To ignore DST and only measure exact 24-hour periods, use this instead:\n * `Math.floor(differenceInHours(dateLeft, dateRight)/24)|0`.\n *\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full days according to the local timezone\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * const result = differenceInDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 365\n * // How many full days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * const result = differenceInDays(\n * new Date(2011, 6, 3, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 0\n * // How many full days are between\n * // 1 March 2020 0:00 and 1 June 2020 0:00 ?\n * // Note: because local time is used, the\n * // result will always be 92 days, even in\n * // time zones where DST starts and the\n * // period has only 92*24-1 hours.\n * const result = differenceInDays(\n * new Date(2020, 5, 1),\n * new Date(2020, 2, 1)\n * )\n//=> 92\n */\n\n\nexport default function differenceInDays(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n var sign = compareLocalAsc(dateLeft, dateRight);\n var difference = Math.abs(differenceInCalendarDays(dateLeft, dateRight));\n dateLeft.setDate(dateLeft.getDate() - sign * difference); // Math.abs(diff in full days - diff in calendar days) === 1 if last calendar day is not full\n // If so, result must be decreased by 1 in absolute value\n\n var isLastDayNotFull = Number(compareLocalAsc(dateLeft, dateRight) === -sign);\n var result = sign * (difference - isLastDayNotFull); // Prevent negative zero\n\n return result === 0 ? 0 : result;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addMilliseconds\n * @category Millisecond Helpers\n * @summary Add the specified number of milliseconds to the given date.\n *\n * @description\n * Add the specified number of milliseconds to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the milliseconds added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 750 milliseconds to 10 July 2014 12:45:30.000:\n * const result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:30.750\n */\n\nexport default function addMilliseconds(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var timestamp = toDate(dirtyDate).getTime();\n var amount = toInteger(dirtyAmount);\n return new Date(timestamp + amount);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addMilliseconds from \"../addMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name subMilliseconds\n * @category Millisecond Helpers\n * @summary Subtract the specified number of milliseconds from the given date.\n *\n * @description\n * Subtract the specified number of milliseconds from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the milliseconds subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 750 milliseconds from 10 July 2014 12:45:30.000:\n * const result = subMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:29.250\n */\n\nexport default function subMilliseconds(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMilliseconds(dirtyDate, -amount);\n}","import toInteger from \"../toInteger/index.js\";\nimport getUTCWeekYear from \"../getUTCWeekYear/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\"; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function startOfUTCWeekYear(dirtyDate, dirtyOptions) {\n requiredArgs(1, arguments);\n var options = dirtyOptions || {};\n var locale = options.locale;\n var localeFirstWeekContainsDate = locale && locale.options && locale.options.firstWeekContainsDate;\n var defaultFirstWeekContainsDate = localeFirstWeekContainsDate == null ? 1 : toInteger(localeFirstWeekContainsDate);\n var firstWeekContainsDate = options.firstWeekContainsDate == null ? defaultFirstWeekContainsDate : toInteger(options.firstWeekContainsDate);\n var year = getUTCWeekYear(dirtyDate, dirtyOptions);\n var firstWeek = new Date(0);\n firstWeek.setUTCFullYear(year, 0, firstWeekContainsDate);\n firstWeek.setUTCHours(0, 0, 0, 0);\n var date = startOfUTCWeek(firstWeek, dirtyOptions);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport startOfUTCWeekYear from \"../startOfUTCWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function getUTCWeek(dirtyDate, options) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfUTCWeek(date, options).getTime() - startOfUTCWeekYear(date, options).getTime(); // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","import getUTCISOWeekYear from \"../getUTCISOWeekYear/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\"; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function startOfUTCISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var year = getUTCISOWeekYear(dirtyDate);\n var fourthOfJanuary = new Date(0);\n fourthOfJanuary.setUTCFullYear(year, 0, 4);\n fourthOfJanuary.setUTCHours(0, 0, 0, 0);\n var date = startOfUTCISOWeek(fourthOfJanuary);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport startOfUTCISOWeekYear from \"../startOfUTCISOWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function getUTCISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfUTCISOWeek(date).getTime() - startOfUTCISOWeekYear(date).getTime(); // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","// based on https://github.com/WICG/focus-visible/blob/v4.1.5/src/focus-visible.js\nimport * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nvar hadKeyboardEvent = true;\nvar hadFocusVisibleRecently = false;\nvar hadFocusVisibleRecentlyTimeout = null;\nvar inputTypesWhitelist = {\n text: true,\n search: true,\n url: true,\n tel: true,\n email: true,\n password: true,\n number: true,\n date: true,\n month: true,\n week: true,\n time: true,\n datetime: true,\n 'datetime-local': true\n};\n/**\n * Computes whether the given element should automatically trigger the\n * `focus-visible` class being added, i.e. whether it should always match\n * `:focus-visible` when focused.\n * @param {Element} node\n * @return {boolean}\n */\n\nfunction focusTriggersKeyboardModality(node) {\n var type = node.type,\n tagName = node.tagName;\n\n if (tagName === 'INPUT' && inputTypesWhitelist[type] && !node.readOnly) {\n return true;\n }\n\n if (tagName === 'TEXTAREA' && !node.readOnly) {\n return true;\n }\n\n if (node.isContentEditable) {\n return true;\n }\n\n return false;\n}\n/**\n * Keep track of our keyboard modality state with `hadKeyboardEvent`.\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * @param {KeyboardEvent} event\n */\n\n\nfunction handleKeyDown(event) {\n if (event.metaKey || event.altKey || event.ctrlKey) {\n return;\n }\n\n hadKeyboardEvent = true;\n}\n/**\n * If at any point a user clicks with a pointing device, ensure that we change\n * the modality away from keyboard.\n * This avoids the situation where a user presses a key on an already focused\n * element, and then clicks on a different element, focusing it with a\n * pointing device, while we still think we're in keyboard modality.\n */\n\n\nfunction handlePointerDown() {\n hadKeyboardEvent = false;\n}\n\nfunction handleVisibilityChange() {\n if (this.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n if (hadFocusVisibleRecently) {\n hadKeyboardEvent = true;\n }\n }\n}\n\nfunction prepare(doc) {\n doc.addEventListener('keydown', handleKeyDown, true);\n doc.addEventListener('mousedown', handlePointerDown, true);\n doc.addEventListener('pointerdown', handlePointerDown, true);\n doc.addEventListener('touchstart', handlePointerDown, true);\n doc.addEventListener('visibilitychange', handleVisibilityChange, true);\n}\n\nexport function teardown(doc) {\n doc.removeEventListener('keydown', handleKeyDown, true);\n doc.removeEventListener('mousedown', handlePointerDown, true);\n doc.removeEventListener('pointerdown', handlePointerDown, true);\n doc.removeEventListener('touchstart', handlePointerDown, true);\n doc.removeEventListener('visibilitychange', handleVisibilityChange, true);\n}\n\nfunction isFocusVisible(event) {\n var target = event.target;\n\n try {\n return target.matches(':focus-visible');\n } catch (error) {// browsers not implementing :focus-visible will throw a SyntaxError\n // we use our own heuristic for those browsers\n // rethrow might be better if it's not the expected error but do we really\n // want to crash if focus-visible malfunctioned?\n } // no need for validFocusTarget check. the user does that by attaching it to\n // focusable events only\n\n\n return hadKeyboardEvent || focusTriggersKeyboardModality(target);\n}\n/**\n * Should be called if a blur event is fired on a focus-visible element\n */\n\n\nfunction handleBlurVisible() {\n // To detect a tab/window switch, we look for a blur event followed\n // rapidly by a visibility change.\n // If we don't see a visibility change within 100ms, it's probably a\n // regular focus change.\n hadFocusVisibleRecently = true;\n window.clearTimeout(hadFocusVisibleRecentlyTimeout);\n hadFocusVisibleRecentlyTimeout = window.setTimeout(function () {\n hadFocusVisibleRecently = false;\n }, 100);\n}\n\nexport default function useIsFocusVisible() {\n var ref = React.useCallback(function (instance) {\n var node = ReactDOM.findDOMNode(instance);\n\n if (node != null) {\n prepare(node.ownerDocument);\n }\n }, []);\n\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useDebugValue(isFocusVisible);\n }\n\n return {\n isFocusVisible: isFocusVisible,\n onBlurVisible: handleBlurVisible,\n ref: ref\n };\n}","import { Children, cloneElement, isValidElement } from 'react';\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\n\nexport function getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && isValidElement(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\n\nexport function mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n } // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n\n\n var nextKeysPending = Object.create(null);\n var pendingKeys = [];\n\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i;\n var childMapping = {};\n\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n\n childMapping[nextKey] = getValueForKey(nextKey);\n } // Finally, add the keys which didn't appear before any key in `next`\n\n\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\nfunction getProp(child, prop, props) {\n return props[prop] != null ? props[prop] : child.props[prop];\n}\n\nexport function getInitialChildMapping(props, onExited) {\n return getChildMapping(props.children, function (child) {\n return cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n appear: getProp(child, 'appear', props),\n enter: getProp(child, 'enter', props),\n exit: getProp(child, 'exit', props)\n });\n });\n}\nexport function getNextChildMapping(nextProps, prevChildMapping, onExited) {\n var nextChildMapping = getChildMapping(nextProps.children);\n var children = mergeChildMappings(prevChildMapping, nextChildMapping);\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n if (!isValidElement(child)) return;\n var hasPrev = (key in prevChildMapping);\n var hasNext = (key in nextChildMapping);\n var prevChild = prevChildMapping[key];\n var isLeaving = isValidElement(prevChild) && !prevChild.props.in; // item is new (entering)\n\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n } else if (!hasNext && hasPrev && !isLeaving) {\n // item is old (exiting)\n // console.log('leaving', key)\n children[key] = cloneElement(child, {\n in: false\n });\n } else if (hasNext && hasPrev && isValidElement(prevChild)) {\n // item hasn't changed transition states\n // copy over the last transition props;\n // console.log('unchanged', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: prevChild.props.in,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n }\n });\n return children;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { getChildMapping, getInitialChildMapping, getNextChildMapping } from './utils/ChildMapping';\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n/**\n * The `` component manages a set of transition components\n * (`` and ``) in a list. Like with the transition\n * components, `` is a state machine for managing the mounting\n * and unmounting of components over time.\n *\n * Consider the example below. As items are removed or added to the TodoList the\n * `in` prop is toggled automatically by the ``.\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual transition\n * component. This means you can mix and match animations across different list\n * items.\n */\n\nvar TransitionGroup = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n\n var handleExited = _this.handleExited.bind(_assertThisInitialized(_this)); // Initial children should all be entering, dependent on appear\n\n\n _this.state = {\n contextValue: {\n isMounting: true\n },\n handleExited: handleExited,\n firstRender: true\n };\n return _this;\n }\n\n var _proto = TransitionGroup.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.mounted = true;\n this.setState({\n contextValue: {\n isMounting: false\n }\n });\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n TransitionGroup.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, _ref) {\n var prevChildMapping = _ref.children,\n handleExited = _ref.handleExited,\n firstRender = _ref.firstRender;\n return {\n children: firstRender ? getInitialChildMapping(nextProps, handleExited) : getNextChildMapping(nextProps, prevChildMapping, handleExited),\n firstRender: false\n };\n } // node is `undefined` when user provided `nodeRef` prop\n ;\n\n _proto.handleExited = function handleExited(child, node) {\n var currentChildMapping = getChildMapping(this.props.children);\n if (child.key in currentChildMapping) return;\n\n if (child.props.onExited) {\n child.props.onExited(node);\n }\n\n if (this.mounted) {\n this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[child.key];\n return {\n children: children\n };\n });\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n Component = _this$props.component,\n childFactory = _this$props.childFactory,\n props = _objectWithoutPropertiesLoose(_this$props, [\"component\", \"childFactory\"]);\n\n var contextValue = this.state.contextValue;\n var children = values(this.state.children).map(childFactory);\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n if (Component === null) {\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(Component, props, children));\n };\n\n return TransitionGroup;\n}(React.Component);\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n * If you use React v16+ and would like to avoid a wrapping `
` element\n * you can pass in `component={null}`. This is useful if the wrapping div\n * borks your css styles.\n */\n component: PropTypes.any,\n\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n *\n * While this component is meant for multiple `Transition` or `CSSTransition`\n * children, sometimes you may want to have a single transition child with\n * content that you want to be transitioned out and in when you change it\n * (e.g. routes, images etc.) In that case you can change the `key` prop of\n * the transition child as you change its content, this will cause\n * `TransitionGroup` to transition the child out and back in.\n */\n children: PropTypes.node,\n\n /**\n * A convenience prop that enables or disables appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: PropTypes.func\n} : {};\nTransitionGroup.defaultProps = defaultProps;\nexport default TransitionGroup;","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport useEventCallback from '../utils/useEventCallback';\nvar useEnhancedEffect = typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect;\n/**\n * @ignore - internal component.\n */\n\nfunction Ripple(props) {\n var classes = props.classes,\n _props$pulsate = props.pulsate,\n pulsate = _props$pulsate === void 0 ? false : _props$pulsate,\n rippleX = props.rippleX,\n rippleY = props.rippleY,\n rippleSize = props.rippleSize,\n inProp = props.in,\n _props$onExited = props.onExited,\n onExited = _props$onExited === void 0 ? function () {} : _props$onExited,\n timeout = props.timeout;\n\n var _React$useState = React.useState(false),\n leaving = _React$useState[0],\n setLeaving = _React$useState[1];\n\n var rippleClassName = clsx(classes.ripple, classes.rippleVisible, pulsate && classes.ripplePulsate);\n var rippleStyles = {\n width: rippleSize,\n height: rippleSize,\n top: -(rippleSize / 2) + rippleY,\n left: -(rippleSize / 2) + rippleX\n };\n var childClassName = clsx(classes.child, leaving && classes.childLeaving, pulsate && classes.childPulsate);\n var handleExited = useEventCallback(onExited); // Ripple is used for user feedback (e.g. click or press) so we want to apply styles with the highest priority\n\n useEnhancedEffect(function () {\n if (!inProp) {\n // react-transition-group#onExit\n setLeaving(true); // react-transition-group#onExited\n\n var timeoutId = setTimeout(handleExited, timeout);\n return function () {\n clearTimeout(timeoutId);\n };\n }\n\n return undefined;\n }, [handleExited, inProp, timeout]);\n return /*#__PURE__*/React.createElement(\"span\", {\n className: rippleClassName,\n style: rippleStyles\n }, /*#__PURE__*/React.createElement(\"span\", {\n className: childClassName\n }));\n}\n\nprocess.env.NODE_ENV !== \"production\" ? Ripple.propTypes = {\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object.isRequired,\n\n /**\n * @ignore - injected from TransitionGroup\n */\n in: PropTypes.bool,\n\n /**\n * @ignore - injected from TransitionGroup\n */\n onExited: PropTypes.func,\n\n /**\n * If `true`, the ripple pulsates, typically indicating the keyboard focus state of an element.\n */\n pulsate: PropTypes.bool,\n\n /**\n * Diameter of the ripple.\n */\n rippleSize: PropTypes.number,\n\n /**\n * Horizontal position of the ripple center.\n */\n rippleX: PropTypes.number,\n\n /**\n * Vertical position of the ripple center.\n */\n rippleY: PropTypes.number,\n\n /**\n * exit delay\n */\n timeout: PropTypes.number.isRequired\n} : void 0;\nexport default Ripple;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { TransitionGroup } from 'react-transition-group';\nimport clsx from 'clsx';\nimport withStyles from '../styles/withStyles';\nimport Ripple from './Ripple';\nvar DURATION = 550;\nexport var DELAY_RIPPLE = 80;\nexport var styles = function styles(theme) {\n return {\n /* Styles applied to the root element. */\n root: {\n overflow: 'hidden',\n pointerEvents: 'none',\n position: 'absolute',\n zIndex: 0,\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n borderRadius: 'inherit'\n },\n\n /* Styles applied to the internal `Ripple` components `ripple` class. */\n ripple: {\n opacity: 0,\n position: 'absolute'\n },\n\n /* Styles applied to the internal `Ripple` components `rippleVisible` class. */\n rippleVisible: {\n opacity: 0.3,\n transform: 'scale(1)',\n animation: \"$enter \".concat(DURATION, \"ms \").concat(theme.transitions.easing.easeInOut)\n },\n\n /* Styles applied to the internal `Ripple` components `ripplePulsate` class. */\n ripplePulsate: {\n animationDuration: \"\".concat(theme.transitions.duration.shorter, \"ms\")\n },\n\n /* Styles applied to the internal `Ripple` components `child` class. */\n child: {\n opacity: 1,\n display: 'block',\n width: '100%',\n height: '100%',\n borderRadius: '50%',\n backgroundColor: 'currentColor'\n },\n\n /* Styles applied to the internal `Ripple` components `childLeaving` class. */\n childLeaving: {\n opacity: 0,\n animation: \"$exit \".concat(DURATION, \"ms \").concat(theme.transitions.easing.easeInOut)\n },\n\n /* Styles applied to the internal `Ripple` components `childPulsate` class. */\n childPulsate: {\n position: 'absolute',\n left: 0,\n top: 0,\n animation: \"$pulsate 2500ms \".concat(theme.transitions.easing.easeInOut, \" 200ms infinite\")\n },\n '@keyframes enter': {\n '0%': {\n transform: 'scale(0)',\n opacity: 0.1\n },\n '100%': {\n transform: 'scale(1)',\n opacity: 0.3\n }\n },\n '@keyframes exit': {\n '0%': {\n opacity: 1\n },\n '100%': {\n opacity: 0\n }\n },\n '@keyframes pulsate': {\n '0%': {\n transform: 'scale(1)'\n },\n '50%': {\n transform: 'scale(0.92)'\n },\n '100%': {\n transform: 'scale(1)'\n }\n }\n };\n};\n/**\n * @ignore - internal component.\n *\n * TODO v5: Make private\n */\n\nvar TouchRipple = /*#__PURE__*/React.forwardRef(function TouchRipple(props, ref) {\n var _props$center = props.center,\n centerProp = _props$center === void 0 ? false : _props$center,\n classes = props.classes,\n className = props.className,\n other = _objectWithoutProperties(props, [\"center\", \"classes\", \"className\"]);\n\n var _React$useState = React.useState([]),\n ripples = _React$useState[0],\n setRipples = _React$useState[1];\n\n var nextKey = React.useRef(0);\n var rippleCallback = React.useRef(null);\n React.useEffect(function () {\n if (rippleCallback.current) {\n rippleCallback.current();\n rippleCallback.current = null;\n }\n }, [ripples]); // Used to filter out mouse emulated events on mobile.\n\n var ignoringMouseDown = React.useRef(false); // We use a timer in order to only show the ripples for touch \"click\" like events.\n // We don't want to display the ripple for touch scroll events.\n\n var startTimer = React.useRef(null); // This is the hook called once the previous timeout is ready.\n\n var startTimerCommit = React.useRef(null);\n var container = React.useRef(null);\n React.useEffect(function () {\n return function () {\n clearTimeout(startTimer.current);\n };\n }, []);\n var startCommit = React.useCallback(function (params) {\n var pulsate = params.pulsate,\n rippleX = params.rippleX,\n rippleY = params.rippleY,\n rippleSize = params.rippleSize,\n cb = params.cb;\n setRipples(function (oldRipples) {\n return [].concat(_toConsumableArray(oldRipples), [/*#__PURE__*/React.createElement(Ripple, {\n key: nextKey.current,\n classes: classes,\n timeout: DURATION,\n pulsate: pulsate,\n rippleX: rippleX,\n rippleY: rippleY,\n rippleSize: rippleSize\n })]);\n });\n nextKey.current += 1;\n rippleCallback.current = cb;\n }, [classes]);\n var start = React.useCallback(function () {\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var cb = arguments.length > 2 ? arguments[2] : undefined;\n var _options$pulsate = options.pulsate,\n pulsate = _options$pulsate === void 0 ? false : _options$pulsate,\n _options$center = options.center,\n center = _options$center === void 0 ? centerProp || options.pulsate : _options$center,\n _options$fakeElement = options.fakeElement,\n fakeElement = _options$fakeElement === void 0 ? false : _options$fakeElement;\n\n if (event.type === 'mousedown' && ignoringMouseDown.current) {\n ignoringMouseDown.current = false;\n return;\n }\n\n if (event.type === 'touchstart') {\n ignoringMouseDown.current = true;\n }\n\n var element = fakeElement ? null : container.current;\n var rect = element ? element.getBoundingClientRect() : {\n width: 0,\n height: 0,\n left: 0,\n top: 0\n }; // Get the size of the ripple\n\n var rippleX;\n var rippleY;\n var rippleSize;\n\n if (center || event.clientX === 0 && event.clientY === 0 || !event.clientX && !event.touches) {\n rippleX = Math.round(rect.width / 2);\n rippleY = Math.round(rect.height / 2);\n } else {\n var _ref = event.touches ? event.touches[0] : event,\n clientX = _ref.clientX,\n clientY = _ref.clientY;\n\n rippleX = Math.round(clientX - rect.left);\n rippleY = Math.round(clientY - rect.top);\n }\n\n if (center) {\n rippleSize = Math.sqrt((2 * Math.pow(rect.width, 2) + Math.pow(rect.height, 2)) / 3); // For some reason the animation is broken on Mobile Chrome if the size if even.\n\n if (rippleSize % 2 === 0) {\n rippleSize += 1;\n }\n } else {\n var sizeX = Math.max(Math.abs((element ? element.clientWidth : 0) - rippleX), rippleX) * 2 + 2;\n var sizeY = Math.max(Math.abs((element ? element.clientHeight : 0) - rippleY), rippleY) * 2 + 2;\n rippleSize = Math.sqrt(Math.pow(sizeX, 2) + Math.pow(sizeY, 2));\n } // Touche devices\n\n\n if (event.touches) {\n // check that this isn't another touchstart due to multitouch\n // otherwise we will only clear a single timer when unmounting while two\n // are running\n if (startTimerCommit.current === null) {\n // Prepare the ripple effect.\n startTimerCommit.current = function () {\n startCommit({\n pulsate: pulsate,\n rippleX: rippleX,\n rippleY: rippleY,\n rippleSize: rippleSize,\n cb: cb\n });\n }; // Delay the execution of the ripple effect.\n\n\n startTimer.current = setTimeout(function () {\n if (startTimerCommit.current) {\n startTimerCommit.current();\n startTimerCommit.current = null;\n }\n }, DELAY_RIPPLE); // We have to make a tradeoff with this value.\n }\n } else {\n startCommit({\n pulsate: pulsate,\n rippleX: rippleX,\n rippleY: rippleY,\n rippleSize: rippleSize,\n cb: cb\n });\n }\n }, [centerProp, startCommit]);\n var pulsate = React.useCallback(function () {\n start({}, {\n pulsate: true\n });\n }, [start]);\n var stop = React.useCallback(function (event, cb) {\n clearTimeout(startTimer.current); // The touch interaction occurs too quickly.\n // We still want to show ripple effect.\n\n if (event.type === 'touchend' && startTimerCommit.current) {\n event.persist();\n startTimerCommit.current();\n startTimerCommit.current = null;\n startTimer.current = setTimeout(function () {\n stop(event, cb);\n });\n return;\n }\n\n startTimerCommit.current = null;\n setRipples(function (oldRipples) {\n if (oldRipples.length > 0) {\n return oldRipples.slice(1);\n }\n\n return oldRipples;\n });\n rippleCallback.current = cb;\n }, []);\n React.useImperativeHandle(ref, function () {\n return {\n pulsate: pulsate,\n start: start,\n stop: stop\n };\n }, [pulsate, start, stop]);\n return /*#__PURE__*/React.createElement(\"span\", _extends({\n className: clsx(classes.root, className),\n ref: container\n }, other), /*#__PURE__*/React.createElement(TransitionGroup, {\n component: null,\n exit: true\n }, ripples));\n});\nprocess.env.NODE_ENV !== \"production\" ? TouchRipple.propTypes = {\n /**\n * If `true`, the ripple starts at the center of the component\n * rather than at the point of interaction.\n */\n center: PropTypes.bool,\n\n /**\n * Override or extend the styles applied to the component.\n * See [CSS API](#css) below for more details.\n */\n classes: PropTypes.object.isRequired,\n\n /**\n * @ignore\n */\n className: PropTypes.string\n} : void 0;\nexport default withStyles(styles, {\n flip: false,\n name: 'MuiTouchRipple'\n})( /*#__PURE__*/React.memo(TouchRipple));","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport * as ReactDOM from 'react-dom';\nimport clsx from 'clsx';\nimport { elementTypeAcceptingRef, refType } from '@material-ui/utils';\nimport useForkRef from '../utils/useForkRef';\nimport useEventCallback from '../utils/useEventCallback';\nimport withStyles from '../styles/withStyles';\nimport useIsFocusVisible from '../utils/useIsFocusVisible';\nimport TouchRipple from './TouchRipple';\nexport var styles = {\n /* Styles applied to the root element. */\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n position: 'relative',\n WebkitTapHighlightColor: 'transparent',\n backgroundColor: 'transparent',\n // Reset default value\n // We disable the focus ring for mouse, touch and keyboard users.\n outline: 0,\n border: 0,\n margin: 0,\n // Remove the margin in Safari\n borderRadius: 0,\n padding: 0,\n // Remove the padding in Firefox\n cursor: 'pointer',\n userSelect: 'none',\n verticalAlign: 'middle',\n '-moz-appearance': 'none',\n // Reset\n '-webkit-appearance': 'none',\n // Reset\n textDecoration: 'none',\n // So we take precedent over the style of a native element.\n color: 'inherit',\n '&::-moz-focus-inner': {\n borderStyle: 'none' // Remove Firefox dotted outline.\n\n },\n '&$disabled': {\n pointerEvents: 'none',\n // Disable link interactions\n cursor: 'default'\n },\n '@media print': {\n colorAdjust: 'exact'\n }\n },\n\n /* Pseudo-class applied to the root element if `disabled={true}`. */\n disabled: {},\n\n /* Pseudo-class applied to the root element if keyboard focused. */\n focusVisible: {}\n};\n/**\n * `ButtonBase` contains as few styles as possible.\n * It aims to be a simple building block for creating a button.\n * It contains a load of style reset and some focus/ripple logic.\n */\n\nvar ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(props, ref) {\n var action = props.action,\n buttonRefProp = props.buttonRef,\n _props$centerRipple = props.centerRipple,\n centerRipple = _props$centerRipple === void 0 ? false : _props$centerRipple,\n children = props.children,\n classes = props.classes,\n className = props.className,\n _props$component = props.component,\n component = _props$component === void 0 ? 'button' : _props$component,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$disableRipple = props.disableRipple,\n disableRipple = _props$disableRipple === void 0 ? false : _props$disableRipple,\n _props$disableTouchRi = props.disableTouchRipple,\n disableTouchRipple = _props$disableTouchRi === void 0 ? false : _props$disableTouchRi,\n _props$focusRipple = props.focusRipple,\n focusRipple = _props$focusRipple === void 0 ? false : _props$focusRipple,\n focusVisibleClassName = props.focusVisibleClassName,\n onBlur = props.onBlur,\n onClick = props.onClick,\n onFocus = props.onFocus,\n onFocusVisible = props.onFocusVisible,\n onKeyDown = props.onKeyDown,\n onKeyUp = props.onKeyUp,\n onMouseDown = props.onMouseDown,\n onMouseLeave = props.onMouseLeave,\n onMouseUp = props.onMouseUp,\n onTouchEnd = props.onTouchEnd,\n onTouchMove = props.onTouchMove,\n onTouchStart = props.onTouchStart,\n onDragLeave = props.onDragLeave,\n _props$tabIndex = props.tabIndex,\n tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,\n TouchRippleProps = props.TouchRippleProps,\n _props$type = props.type,\n type = _props$type === void 0 ? 'button' : _props$type,\n other = _objectWithoutProperties(props, [\"action\", \"buttonRef\", \"centerRipple\", \"children\", \"classes\", \"className\", \"component\", \"disabled\", \"disableRipple\", \"disableTouchRipple\", \"focusRipple\", \"focusVisibleClassName\", \"onBlur\", \"onClick\", \"onFocus\", \"onFocusVisible\", \"onKeyDown\", \"onKeyUp\", \"onMouseDown\", \"onMouseLeave\", \"onMouseUp\", \"onTouchEnd\", \"onTouchMove\", \"onTouchStart\", \"onDragLeave\", \"tabIndex\", \"TouchRippleProps\", \"type\"]);\n\n var buttonRef = React.useRef(null);\n\n function getButtonNode() {\n // #StrictMode ready\n return ReactDOM.findDOMNode(buttonRef.current);\n }\n\n var rippleRef = React.useRef(null);\n\n var _React$useState = React.useState(false),\n focusVisible = _React$useState[0],\n setFocusVisible = _React$useState[1];\n\n if (disabled && focusVisible) {\n setFocusVisible(false);\n }\n\n var _useIsFocusVisible = useIsFocusVisible(),\n isFocusVisible = _useIsFocusVisible.isFocusVisible,\n onBlurVisible = _useIsFocusVisible.onBlurVisible,\n focusVisibleRef = _useIsFocusVisible.ref;\n\n React.useImperativeHandle(action, function () {\n return {\n focusVisible: function focusVisible() {\n setFocusVisible(true);\n buttonRef.current.focus();\n }\n };\n }, []);\n React.useEffect(function () {\n if (focusVisible && focusRipple && !disableRipple) {\n rippleRef.current.pulsate();\n }\n }, [disableRipple, focusRipple, focusVisible]);\n\n function useRippleHandler(rippleAction, eventCallback) {\n var skipRippleAction = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : disableTouchRipple;\n return useEventCallback(function (event) {\n if (eventCallback) {\n eventCallback(event);\n }\n\n var ignore = skipRippleAction;\n\n if (!ignore && rippleRef.current) {\n rippleRef.current[rippleAction](event);\n }\n\n return true;\n });\n }\n\n var handleMouseDown = useRippleHandler('start', onMouseDown);\n var handleDragLeave = useRippleHandler('stop', onDragLeave);\n var handleMouseUp = useRippleHandler('stop', onMouseUp);\n var handleMouseLeave = useRippleHandler('stop', function (event) {\n if (focusVisible) {\n event.preventDefault();\n }\n\n if (onMouseLeave) {\n onMouseLeave(event);\n }\n });\n var handleTouchStart = useRippleHandler('start', onTouchStart);\n var handleTouchEnd = useRippleHandler('stop', onTouchEnd);\n var handleTouchMove = useRippleHandler('stop', onTouchMove);\n var handleBlur = useRippleHandler('stop', function (event) {\n if (focusVisible) {\n onBlurVisible(event);\n setFocusVisible(false);\n }\n\n if (onBlur) {\n onBlur(event);\n }\n }, false);\n var handleFocus = useEventCallback(function (event) {\n // Fix for https://github.com/facebook/react/issues/7769\n if (!buttonRef.current) {\n buttonRef.current = event.currentTarget;\n }\n\n if (isFocusVisible(event)) {\n setFocusVisible(true);\n\n if (onFocusVisible) {\n onFocusVisible(event);\n }\n }\n\n if (onFocus) {\n onFocus(event);\n }\n });\n\n var isNonNativeButton = function isNonNativeButton() {\n var button = getButtonNode();\n return component && component !== 'button' && !(button.tagName === 'A' && button.href);\n };\n /**\n * IE 11 shim for https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat\n */\n\n\n var keydownRef = React.useRef(false);\n var handleKeyDown = useEventCallback(function (event) {\n // Check if key is already down to avoid repeats being counted as multiple activations\n if (focusRipple && !keydownRef.current && focusVisible && rippleRef.current && event.key === ' ') {\n keydownRef.current = true;\n event.persist();\n rippleRef.current.stop(event, function () {\n rippleRef.current.start(event);\n });\n }\n\n if (event.target === event.currentTarget && isNonNativeButton() && event.key === ' ') {\n event.preventDefault();\n }\n\n if (onKeyDown) {\n onKeyDown(event);\n } // Keyboard accessibility for non interactive elements\n\n\n if (event.target === event.currentTarget && isNonNativeButton() && event.key === 'Enter' && !disabled) {\n event.preventDefault();\n\n if (onClick) {\n onClick(event);\n }\n }\n });\n var handleKeyUp = useEventCallback(function (event) {\n // calling preventDefault in keyUp on a

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 diff --git a/public/fonts/MontHeavy/mont-bold-webfont.woff b/public/fonts/MontHeavy/mont-bold-webfont.woff deleted file mode 100644 index 85e11fa74021164183804f55b5cc0037b06ccf99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33244 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 diff --git a/public/fonts/MontHeavy/mont-bold-webfont.woff2 b/public/fonts/MontHeavy/mont-bold-webfont.woff2 deleted file mode 100644 index ddf8442d908641b6e8936a50cbe8f210b0ad13bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25180 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 z z#Y@Ln?$j^~QTKhaZC-%>s!K}#Z#Jc#J{0G^>W%o_1*dPVeDRxkg^GmY}&zFfl{U|$edk63Q`9kv*dS`|I_~Xs= zM{?<-?W-z(-EjR{7aZFC%#`}T z&l1l(T(fTGKA9<;<`OzKwz0l*=1cFa_qp*-J*SPmuPXFSz-5LhuWT2~T>O$(roegU zN~QLD%gz4Ulg@F@xcc~Ia(je$=;Mz`KHmH#tKV(AXm#v%`^((RwGWOYF+GoL|8n8- z`V6%%r+KLWDV%NXRIxXfEG&N!0Hu>_6 z2_3sqB#(D8b)K2w(#{mk%zQ9GwOGKj=7YY*J4eN@zAxJ*zYOu1U$-_uSU$o1qJXnj z!lwqqnP;cb?u*>dC?_pWlFjG3R;6jn%ey6o=o~@^%1HUxbq%Ap_&X*+a$vf5EC0CX|S5RLXt1FYRVVOQhXPrei7yAb- z>$7J><5oL3$0Ry9nC;o%dwpGY{W#M%Arn8pJLyyRI!}b;yz}a+%hI zIY)oaD!8&ZRY0J@^K8U&6NPT_L%ch&uV>z}?<e6 z_(Hk9^P#!ZmmjJ6xLDe_cZ+1zC#8VEGh6;T{ZMt^wd2H7nNz;gmaXBPyUVS!H$mBY z+O8+3Z)>iRnrsr3cJ7y!eM;pSv)v()3WqX7;{DA+FT^NL;$l9vAjt4aI-Bs4v$?Yz z%onO1|5zrzl2vg^#)2~8m6`S%4`+sL$$ovN>wK84?yS;%O8b*NH4d`vk@I?bKzRGt zdIm?$O&V)b&*mNt6!@Jw)8L#(`=aHR93QVuxy;`2I7nT$wENQ;r-YB(#xXNyiA;^W zcW8pl%$QjXOSO)xYv~_qV3?V-=534Ei31kSnM%Jc!z2PlPPFz=UkZ?R_lCe2(Uz6eWHzyP>o$4*x(6@>Er}PdF z)!M+rt2~lt1;1e_KmE9`*Zio8@}*A#OR^X4`Ix-;#)3`UxmAu{cGAt0^^f?udd?`w zE2a@*I7z8=hut`#6y(IP%t~oaPSl)73c8!8h@V;0v+m@fgF&2G zPXneY?phPQxGyBB3ueES&lxbi@HNMiIWyKKWRQt?6upFiUG zV)kf9OQn%*eeas1uR}~{&YXTV{}4}v1H&qps<1mJ-(6TLHC2IciIG|j#|hPS`#$Su z+p3f%Y-*U0us49GNmJ;v!dV`bgSFv_NfWNH&J^u5EI44({E^Kkr*XZnTbAArtwxk~Qq{A%k%p3HQ4aADIGN0W7y z9_KE;K4G~1S*aaU@G!z^|~#|3W7)P+3D3KJYO-( z|Htw+k; z?!cC9(rTB^uuA7$Uwh_+QgB6Fy8d6gle?C^uypy7CiheGX+Gnl-v2)<8MzMajkvob z=HJ4?#brC@{e5uiY;kJ)E|2Bw^Uv=VD}T5(cC*Jlv1iv`DgRBlm(S+;e6!Em>Uw>* zY)1DG9@(z_);m8v|BSKB=APJ>}tGKC~{3l&@)CwHviL^#JNl5T_13* zWw_xe^vP7}=&p_kZF{$OZ=7D*Oud-X+*f?*^Rl<+a$YE8>MYW-mn&*yvvk!zkn|*u znbG^Ww^#a{&7!v-sU19iR@nUUu8`+KO^-7@GgG$subiLeFaC1jnHYl?pBpPUivXFeX&+{jdJ<+hgH`!BTl-j=&f|w zpW5PMaQ0xFN$+I;BE(f8sjH|qsVCplNX%}L~Je)dH7l6cqd<62c$QttTQ z*&eL@&3uQ0FUN{2%qCpIKOUt_w`u!cW}IDF8`XP%uhX4hM~5BJBQD^;gfLj%yM;O=~)rxmz7Um+hbP3X1zOH`1GlB4=$J8np;!(w#CKF zX|L#1vt@qj2PUNM%ygR~qyAa;w+E~A)dUAtNj<55OG4!33s*Y%#?I`1z~R(1^Tzo% z#Y=CjEqnBe>sdIViJnfQ4-b-Aalbg@H;Fyxu@;1{t`j)40zO~rF22+)yCR_hIH`ZV48Nt;x)C>FMZ%L%A2vO)GmlW#Yzz>IQ#KYp5}ZDki%mFIsYO6I+`| zafoIV#lWm>?WhSDWzYOGhbyt(^#bzrGV@$*yfil2V?6gm5XVnAG+ z#i^a^u7!pz=}7Q1bIYE6ZEHo{cFwr%HpRETat^%be34kFWC9@Mq^H ztUT-g{-KNJ^KI>MvoD|Ox*Nz@KVhSczxZ_X(@8IXxth;;bHgARx}0)RfnuCy7=%I zL*M_*IW`wl<6d3ev!GJh$R#g6`D**hwfgmkUgtbqy=!;P4%VX7ocDJvN^(~eUc29I z`})_K$b|O34V$b|q=SD=@!m8kmyL1P>vM;T7GBJ@%k0wDXjsbrS5b62r+$sRz`JR- z9Cp?-nl^iW&(v|x|oYTy<#Gk|&G2w(>uSTOnTfZ^=Wm z6mx-J(=2qB&C%Tc!}D1f!!}N(ZN|~IAqS7@Nw8}geOtsLZ_@RYcc#(N_Ocx(r!jAp zT{qiWYQ|xu2|;qASsK|!?^kVMxV!%BUK!P^KY#5wC3a%QM1`$Ur5nzPy|vPjIThyO zE^}+<-NKVsR;{VbbCa6YlqS~6anScy&(AdZO`Yq7wq|i`Z@s;j!LOriUP|Ms#^}3w zA$RYr%4V^aXH>Y-9Fnm*dy1>k=@s_A$>}lS>sFtd#kAE!b)8Yu#OI33G#Y)bI~e%R z&Ye^&dwGd2)3P&%LhgF(Fg^A{(ddJLQO>IiNn4Au3-gUuM#c9$mP^t-{!?~kU(qbf zqAIN%DaCnw)6c|)AL~Eu*~PgtzU-j)3?$$YoH;{S=? zb55zAi`lwdn!h`?+CQV~u|ZYki3bIrzG%&Cuk5@bFQxapz5cr9%Ze9$xB8AeEWVy? zX^~!W!~Vy--QWEgM1ISbWco}q+Z(zjerce-?t#-)7riB;))&k@{dnFQ51I1ruU}0% z)Ak#2v0q3mm5XElB!A-XqKRsEJ+8V=u?ox)c^-V}FOS-yn0P4rkHfCS7bn#f^%iH> z9$C3bYOVZ%Rejgy9bT&XSHWkhOxV=o%HWNz`6pgBZC$r1&suhCMrN0cY)E!N-LV!i z@940GXslUFAwtaV-4_^H&x-+q%p#{YzbNnVX@jAkM2 z5-D=upY2%Cn`~0pVLR#lgQ+^%W{(Y8B3oM>mg#vTWl8_bvG*N@jct7$wvWN|nb#}v;?X-0Q)kF2@+L%e;f@Ee!6z0Aw^*X@k5KYJ$s z=Y{Yuse7&$|C+bBxWu|>aNnP~T@2Lu`|Z5BjX`qm z^6cfBx@PBswnm!H@^bp&k}5n`!6;44&f(Fd=ecKNzaIJ#Z^@@HCHmpfCcc$+_Szon z8ZJsc<8u8muWFga3dfVRI}{ubh4^Y$a7B5fgr7WqJVH*9<BEn#*n$I%ozsg;7>=;3hT-ed~*< zRwY?Xm!9qJZ1=eACiRAA_B)N25C2@qu>38&Z|;iZ#m~Ql|GsGTc60XO@&ymuby|NM zUhVS!gW`WBp9>*J=C9Z0{QKbL?QimLF3H@xxBt(nX&-<6ZY!4D^N`o>>za4b53U9% z|H_$MQCCuHyL+i&@6T5z8Xu3{*_`(`#8h;5z^7Y3c~d8eg&S|rD_Feo8drmFsMsv; z)lmv>&GXKmztnYZ%8t)(+im>V8CU%>x+44fWAUbU!7A?q_N-VMZMVNXWuD!aBg=E| zUbeEexVdNHZJT{B_k8@3VtK$>`t6k8(W!3IYY!f4?R>m;=l8qeGB0y$0(#6dw_R_n zJiPh5d&yzm*UKvUpKcPk%WyBZ_Wsv%KNK&Y_?db1`SS_Vs@rb|B z2QOCdYF{v2EOa^VQZfDb?c7SsqJE`HvX^_Wcdq0* zlbLk)TJzb-l0^@@RMg(&3rxzlaEhBRYx2%KRXFQ{a_W<)<;%=A+`O15k;7Iie%e`g zfyEAv#SbH9Ke+qy|8~B8@4weCOWPaJz0K^>t?b`rxkr{VM(?w{s`S#n?0@#JCt;R3 zt4v=Xym@t(UBkWJrqk2kZGXh;nrCnO`o2+{|K)?_Dc|a{Do#8}OMklO_3iat;pdb5 zSA_kWEV+KM;)V%s6|=r%70rvjqo7(?c+ptO@X{i)s2z6Q!6}E^U!~=Jt3BrT;^(CE zDYhnA!s%NWET&odZoICmBKoU6s&nZ{lPB91FL|V!t%%?9IoWyc_w5f2GQ@r#T+$_R zGD_&jn|kxR6MjlY{yph&&DZ2i$ajw)pBo&?@4o$bc;>9cgL|4ws~3HIu(<8*+PMlM zN6&qDFXtF^_0Q9%Q;e=QugjEI{BS&EtLV-17q`m??VBW>dsXSCk=y$XMlwglQ{1(l zIoP@H&7Zq?&zZ1u>^G)apDmpq?z(@;zvSXIWj6fpt5`U%c9uT-tFUBw$j*|s1xE_~ zT}3LL({+`13u|pkRuhzaCOG?3I9En(K&vD3)=9EwL&Rt8%4^QK%qifzf_G1>;omJT zmLJpR9s01QB>l_x+x$LnT=T6r$>!3U_Gbsb z{{FIy)s9E>`DwA}d+}44=AZfc_@(=z&P(aj^yh0WI3Dr)SjD0Jho+sny6j8xF7p!O zbhG6ui!YjP*~YQ$)ru#}YL;)Ydwtk(+ZDUzI-9>;ZBDwkB9&|1iU%JzPr4j^d42EC zjC0*9RGH(mw|?~8y3E%>*~ZR7-jHO`)Y0mVSvd-OhP;JuV9Q z7RJf%quu^??GB|&Z?0XDT-+n`eCL^suFEIJ=DxZ9S9|4I-jiY}_4mGYf3vd;>h1e_ z?P6W^>97U$zcNmjMafrKzME(nbjo~|OaJZ%j;s@s{$1kD*cK+4zdtNs($pKJ8XWn* z>#k2c)*5^L{Oc|!3)y73WB+b%S?HknbCge`+JkxLbJ0(acX_@qs55V|lAW?^ zRb|Qq$x|Cl?+De+bJ!DR=r-lTG=bvf+yAa-JyE+Y^rt|yX449(Zx?1h*(x2F|8wW> z*YeE@on4n~{lhrtG0oXjXu&EOx0SE=ynOi2FAIY$7@D^JeWhgcYB#<67o*~sJCrB|OUIk3i=Q<%MVYx89<*L@`=QI_U+uYRd3%oSIhwJOJb%g()% z&+^>dGX3oiv+cJxO;n%le`MCwoUGH|!b-~mZm#Q${&(PgU!s}&%|C~fk7sPpK9?h_ z!oH)}jA2)qyl%VXvD|RA2$j6s6GG1jGvE4Nm!tY7dRDO1g+SrP_koe8q8=#r7kXJF zy??MTDbvvFWgO!zX}4KD9$q{fFNLk$e=R6J+IK-dcl#5GkMFdfeR2P!UDUMqvG!|@ zvQ*8ACu{C7eYx|#XOHIG*VXqg-?msab7qNUU0j&$-O`6w>iTp;YV9^1UmH-Luylv| zWB<*!M1MauG?xmWdvWusJ=3!`oVz+t_U+a~d{e*8OPwWVb*60T$~d3*A`P?kWz=VK zPs)9NJ+14yPmhYQ;C8iViIO=htdFi`;A65{(|P(?_|~-DR#pwW1uX6w%WyuK@@-%G zmI9NQ8S$rNr&(U=T?|q@U)BG|F<+HoSIg-u+%And3r}1& z|+qAT{ZW8)-?^}z> zr`6k2Zmp<1x~NM;GgMnsajoatEvAo{xP!xYgiel8_@EtHlQ=mq>xAHB>$`C#cHX+D zKLv)aim*w(A~*TWpD8Ocw;!9*Fzvbal$9Y{i;nWY*_LzZUbds6%8x5Ax1H|UJI&Il zW|3y~Jr&1m7g&!?HIGuuUVhZVV6mG|&*|wFY!e5f)`31AM7o!#ZK$5QgMm`>!DocZ}{Zk%8BSM~)% z`OAs#71}jET;qRNc*yg4ZuRa1n{{H_Bva>jE}NM;&vi)?$0c3A*+thT-JY}YO~zu@ zr)BXhdW}mQjT}@tc>6m}`gB~$-Mea@L)INdqnoqtWNz|)J#l5Ai}@n)i~SNVJj!l@ zUPmmFF6G=^=`D9jbl)t&>#c06?(-xsExtTMQMQVA-w(yIA3`_%n*Z@~u41|-^;oTL z@;il)yVXXV{DnHacJnrFxW8Yf{fpK_-k;e`UP~voywO;_CALV9?`z=7;CD-tmS6E{ z_1ie_(_AOkr&d2DQmrl3Q>|_~YrakKak=?kL?MvfEa>}5tEZq_NT N=j>A#omdzc7ywC9yBPog diff --git a/public/fonts/MontHeavy/mont-heavy-webfont.woff b/public/fonts/MontHeavy/mont-heavy-webfont.woff deleted file mode 100644 index f76db64684f97bc7f5efa845a06d9b86ceb1a64f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58028 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