diff --git a/__mocks__/extensionizer.ts b/__mocks__/extensionizer.ts index 55316f6b..420badb1 100644 --- a/__mocks__/extensionizer.ts +++ b/__mocks__/extensionizer.ts @@ -16,7 +16,7 @@ class MessagingFake { get onDisconnect (): any { return { - addListener: (): any => {} + addListener: (): any => undefined }; } diff --git a/package.json b/package.json index 5fe6fd31..7fc0f3f4 100644 --- a/package.json +++ b/package.json @@ -12,13 +12,13 @@ "yarn": "^1.10.1" }, "resolutions": { - "@polkadot/api": "^0.97.0-beta.33", - "@polkadot/keyring": "^1.7.0-beta.8", - "@polkadot/types": "^0.97.0-beta.33", - "@polkadot/util": "^1.7.0-beta.8", - "@polkadot/util-crypto": "^1.7.0-beta.8", + "@polkadot/api": "^0.99.0-beta.1", + "@polkadot/keyring": "^1.7.1", + "@polkadot/types": "^0.99.0-beta.1", + "@polkadot/util": "^1.7.1", + "@polkadot/util-crypto": "^1.7.1", "babel-core": "^7.0.0-bridge.0", - "typescript": "^3.7.2" + "typescript": "^3.7.3" }, "scripts": { "build": "NODE_ENV=production polkadot-dev-build-ts", @@ -32,7 +32,7 @@ }, "devDependencies": { "@babel/core": "^7.7.4", - "@polkadot/dev-react": "^0.32.0-beta.15", - "@polkadot/ts": "^0.1.86" + "@polkadot/dev-react": "^0.32.0-beta.16", + "@polkadot/ts": "^0.1.87" } } diff --git a/packages/extension-chains/src/edgeware.ts b/packages/extension-chains/src/edgeware.ts index 8d77f808..6ad3c098 100644 --- a/packages/extension-chains/src/edgeware.ts +++ b/packages/extension-chains/src/edgeware.ts @@ -18,7 +18,8 @@ export default { tokenDecimals: 18, tokenSymbol: 'EDG', types: { - Keys: 'SessionKeysSubstrate', + Keys: 'SessionKeys3', + ValidatorPrefs: 'ValidatorPrefsTo196', ...IdentityTypes, ...SignalingTypes, ...TreasuryRewardTypes, diff --git a/packages/extension-chains/src/index.ts b/packages/extension-chains/src/index.ts index addbaa16..8aae9890 100644 --- a/packages/extension-chains/src/index.ts +++ b/packages/extension-chains/src/index.ts @@ -10,10 +10,10 @@ import { Metadata, TypeRegistry } from '@polkadot/types'; // inside the api, run `yarn chain:info --ws ` import alexander from './alexander'; import edgeware from './edgeware'; -import kusamaCC2 from './kusama-cc2'; +import kusamaCC3 from './kusama-cc3'; const chains: Map = new Map( - [alexander, edgeware, kusamaCC2].map(({ chain, genesisHash, icon, metaCalls, specVersion, ss58Format, tokenDecimals, tokenSymbol, types }): [string, Chain] => { + [alexander, edgeware, kusamaCC3].map(({ chain, genesisHash, icon, metaCalls, specVersion, ss58Format, tokenDecimals, tokenSymbol, types }): [string, Chain] => { let metadata: Metadata | undefined; const registry = new TypeRegistry(); diff --git a/packages/extension-chains/src/kusama-cc2.ts b/packages/extension-chains/src/kusama-cc2.ts deleted file mode 100644 index 880ccacd..00000000 --- a/packages/extension-chains/src/kusama-cc2.ts +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2019 @polkadot/extension-chains authors & contributors -// This software may be modified and distributed under the terms -// of the Apache-2.0 license. See the LICENSE file for details. - -// Generated via 'yarn run chain:info wss://serinus-5.kusama.network/' - -export default { - chain: 'Kusama CC2', - genesisHash: '0xe3777fa922cafbff200cadeaea1a76bd7898ad5b89f7848999058b50e715f636', - icon: 'polkadot', - specVersion: 1003, - ss58Format: 2, - tokenDecimals: 12, - tokenSymbol: 'KSM', - types: { - Keys: 'SessionKeysPolkadot' - }, - metaCalls: 'bWV0YQdcGFN5c3RlbQABGChmaWxsX2Jsb2NrAAQhASBBIGJpZyBkaXNwYXRjaCB0aGF0IHdpbGwgZGlzYWxsb3cgYW55IG90aGVyIHRyYW5zYWN0aW9uIHRvIGJlIGluY2x1ZGVkLhhyZW1hcmsEHF9yZW1hcmsUQnl0ZXMEbCBNYWtlIHNvbWUgb24tY2hhaW4gcmVtYXJrLjhzZXRfaGVhcF9wYWdlcwQUcGFnZXMMdTY0BPwgU2V0IHRoZSBudW1iZXIgb2YgcGFnZXMgaW4gdGhlIFdlYkFzc2VtYmx5IGVudmlyb25tZW50J3MgaGVhcC4gc2V0X2NvZGUEDG5ldxRCeXRlcwRIIFNldCB0aGUgbmV3IGNvZGUuLHNldF9zdG9yYWdlBBRpdGVtczRWZWM8S2V5VmFsdWU+BGwgU2V0IHNvbWUgaXRlbXMgb2Ygc3RvcmFnZS4wa2lsbF9zdG9yYWdlBBBrZXlzIFZlYzxLZXk+BHggS2lsbCBzb21lIGl0ZW1zIGZyb20gc3RvcmFnZS4AABBCYWJlAAEAAAAkVGltZXN0YW1wAAEEDHNldAQMbm93PENvbXBhY3Q8TW9tZW50PiRYIFNldCB0aGUgY3VycmVudCB0aW1lLgBZASBUaGlzIGNhbGwgc2hvdWxkIGJlIGludm9rZWQgZXhhY3RseSBvbmNlIHBlciBibG9jay4gSXQgd2lsbCBwYW5pYyBhdCB0aGUgZmluYWxpemF0aW9u2CBwaGFzZSwgaWYgdGhpcyBjYWxsIGhhc24ndCBiZWVuIGludm9rZWQgYnkgdGhhdCB0aW1lLgBFASBUaGUgdGltZXN0YW1wIHNob3VsZCBiZSBncmVhdGVyIHRoYW4gdGhlIHByZXZpb3VzIG9uZSBieSB0aGUgYW1vdW50IHNwZWNpZmllZCBieUQgYE1pbmltdW1QZXJpb2RgLgDYIFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBtdXN0IGJlIGBJbmhlcmVudGAuAAAcSW5kaWNlcwABAAAAIEJhbGFuY2VzAAEMIHRyYW5zZmVyCBBkZXN0HEFkZHJlc3MUdmFsdWVAQ29tcGFjdDxCYWxhbmNlPlzYIFRyYW5zZmVyIHNvbWUgbGlxdWlkIGZyZWUgYmFsYW5jZSB0byBhbm90aGVyIGFjY291bnQuAAkBIGB0cmFuc2ZlcmAgd2lsbCBzZXQgdGhlIGBGcmVlQmFsYW5jZWAgb2YgdGhlIHNlbmRlciBhbmQgcmVjZWl2ZXIuIQEgSXQgd2lsbCBkZWNyZWFzZSB0aGUgdG90YWwgaXNzdWFuY2Ugb2YgdGhlIHN5c3RlbSBieSB0aGUgYFRyYW5zZmVyRmVlYC4VASBJZiB0aGUgc2VuZGVyJ3MgYWNjb3VudCBpcyBiZWxvdyB0aGUgZXhpc3RlbnRpYWwgZGVwb3NpdCBhcyBhIHJlc3VsdLQgb2YgdGhlIHRyYW5zZmVyLCB0aGUgYWNjb3VudCB3aWxsIGJlIHJlYXBlZC4AGQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgYFNpZ25lZGAgYnkgdGhlIHRyYW5zYWN0b3IuACwgIyA8d2VpZ2h0PjEBIC0gRGVwZW5kZW50IG9uIGFyZ3VtZW50cyBidXQgbm90IGNyaXRpY2FsLCBnaXZlbiBwcm9wZXIgaW1wbGVtZW50YXRpb25zIGZvcswgICBpbnB1dCBjb25maWcgdHlwZXMuIFNlZSByZWxhdGVkIGZ1bmN0aW9ucyBiZWxvdy5pASAtIEl0IGNvbnRhaW5zIGEgbGltaXRlZCBudW1iZXIgb2YgcmVhZHMgYW5kIHdyaXRlcyBpbnRlcm5hbGx5IGFuZCBubyBjb21wbGV4IGNvbXB1dGF0aW9uLgBMIFJlbGF0ZWQgZnVuY3Rpb25zOgBRASAgIC0gYGVuc3VyZV9jYW5fd2l0aGRyYXdgIGlzIGFsd2F5cyBjYWxsZWQgaW50ZXJuYWxseSBidXQgaGFzIGEgYm91bmRlZCBjb21wbGV4aXR5Li0BICAgLSBUcmFuc2ZlcnJpbmcgYmFsYW5jZXMgdG8gYWNjb3VudHMgdGhhdCBkaWQgbm90IGV4aXN0IGJlZm9yZSB3aWxsIGNhdXNl1CAgICAgIGBUOjpPbk5ld0FjY291bnQ6Om9uX25ld19hY2NvdW50YCB0byBiZSBjYWxsZWQu3CAgIC0gUmVtb3ZpbmcgZW5vdWdoIGZ1bmRzIGZyb20gYW4gYWNjb3VudCB3aWxsIHRyaWdnZXJZASAgICAgYFQ6OkR1c3RSZW1vdmFsOjpvbl91bmJhbGFuY2VkYCBhbmQgYFQ6Ok9uRnJlZUJhbGFuY2VaZXJvOjpvbl9mcmVlX2JhbGFuY2VfemVyb2AuADAgIyA8L3dlaWdodD4sc2V0X2JhbGFuY2UMDHdobxxBZGRyZXNzIG5ld19mcmVlQENvbXBhY3Q8QmFsYW5jZT4wbmV3X3Jlc2VydmVkQENvbXBhY3Q8QmFsYW5jZT40lCBTZXQgdGhlIGJhbGFuY2VzIG9mIGEgZ2l2ZW4gYWNjb3VudC4AIQEgVGhpcyB3aWxsIGFsdGVyIGBGcmVlQmFsYW5jZWAgYW5kIGBSZXNlcnZlZEJhbGFuY2VgIGluIHN0b3JhZ2UuIGl0IHdpbGwJASBhbHNvIGRlY3JlYXNlIHRoZSB0b3RhbCBpc3N1YW5jZSBvZiB0aGUgc3lzdGVtIChgVG90YWxJc3N1YW5jZWApLhkBIElmIHRoZSBuZXcgZnJlZSBvciByZXNlcnZlZCBiYWxhbmNlIGlzIGJlbG93IHRoZSBleGlzdGVudGlhbCBkZXBvc2l0LOggaXQgd2lsbCByZXNldCB0aGUgYWNjb3VudCBub25jZSAoYHN5c3RlbTo6QWNjb3VudE5vbmNlYCkuALQgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIGlzIGByb290YC4ALCAjIDx3ZWlnaHQ+gCAtIEluZGVwZW5kZW50IG9mIHRoZSBhcmd1bWVudHMuxCAtIENvbnRhaW5zIGEgbGltaXRlZCBudW1iZXIgb2YgcmVhZHMgYW5kIHdyaXRlcy4wICMgPC93ZWlnaHQ+OGZvcmNlX3RyYW5zZmVyDBhzb3VyY2UcQWRkcmVzcxBkZXN0HEFkZHJlc3MUdmFsdWVAQ29tcGFjdDxCYWxhbmNlPghRASBFeGFjdGx5IGFzIGB0cmFuc2ZlcmAsIGV4Y2VwdCB0aGUgb3JpZ2luIG11c3QgYmUgcm9vdCBhbmQgdGhlIHNvdXJjZSBhY2NvdW50IG1heSBiZSwgc3BlY2lmaWVkLgAAKEF1dGhvcnNoaXAAAQQoc2V0X3VuY2xlcwQobmV3X3VuY2xlcyxWZWM8SGVhZGVyPgRkIFByb3ZpZGUgYSBzZXQgb2YgdW5jbGVzLgAAHFN0YWtpbmcAATQQYm9uZAwoY29udHJvbGxlchxBZGRyZXNzFHZhbHVlSENvbXBhY3Q8QmFsYW5jZU9mPhRwYXllZURSZXdhcmREZXN0aW5hdGlvbjxlASBUYWtlIHRoZSBvcmlnaW4gYWNjb3VudCBhcyBhIHN0YXNoIGFuZCBsb2NrIHVwIGB2YWx1ZWAgb2YgaXRzIGJhbGFuY2UuIGBjb250cm9sbGVyYCB3aWxshCBiZSB0aGUgYWNjb3VudCB0aGF0IGNvbnRyb2xzIGl0LgAxASBgdmFsdWVgIG11c3QgYmUgbW9yZSB0aGFuIHRoZSBgbWluaW11bV9iYWxhbmNlYCBzcGVjaWZpZWQgYnkgYFQ6OkN1cnJlbmN5YC4AJQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8gYnkgdGhlIHN0YXNoIGFjY291bnQuACwgIyA8d2VpZ2h0PtQgLSBJbmRlcGVuZGVudCBvZiB0aGUgYXJndW1lbnRzLiBNb2RlcmF0ZSBjb21wbGV4aXR5LiAgLSBPKDEpLmggLSBUaHJlZSBleHRyYSBEQiBlbnRyaWVzLgBtASBOT1RFOiBUd28gb2YgdGhlIHN0b3JhZ2Ugd3JpdGVzIChgU2VsZjo6Ym9uZGVkYCwgYFNlbGY6OnBheWVlYCkgYXJlIF9uZXZlcl8gY2xlYW5lZCB1bmxlc3MlASB0aGUgYG9yaWdpbmAgZmFsbHMgYmVsb3cgX2V4aXN0ZW50aWFsIGRlcG9zaXRfIGFuZCBnZXRzIHJlbW92ZWQgYXMgZHVzdC4wICMgPC93ZWlnaHQ+KGJvbmRfZXh0cmEEOG1heF9hZGRpdGlvbmFsSENvbXBhY3Q8QmFsYW5jZU9mPjhlASBBZGQgc29tZSBleHRyYSBhbW91bnQgdGhhdCBoYXZlIGFwcGVhcmVkIGluIHRoZSBzdGFzaCBgZnJlZV9iYWxhbmNlYCBpbnRvIHRoZSBiYWxhbmNlIHVwNCBmb3Igc3Rha2luZy4AUQEgVXNlIHRoaXMgaWYgdGhlcmUgYXJlIGFkZGl0aW9uYWwgZnVuZHMgaW4geW91ciBzdGFzaCBhY2NvdW50IHRoYXQgeW91IHdpc2ggdG8gYm9uZC5lASBVbmxpa2UgW2Bib25kYF0gb3IgW2B1bmJvbmRgXSB0aGlzIGZ1bmN0aW9uIGRvZXMgbm90IGltcG9zZSBhbnkgbGltaXRhdGlvbiBvbiB0aGUgYW1vdW50TCB0aGF0IGNhbiBiZSBhZGRlZC4AVQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8gYnkgdGhlIHN0YXNoLCBub3QgdGhlIGNvbnRyb2xsZXIuACwgIyA8d2VpZ2h0PuggLSBJbmRlcGVuZGVudCBvZiB0aGUgYXJndW1lbnRzLiBJbnNpZ25pZmljYW50IGNvbXBsZXhpdHkuICAtIE8oMSkuQCAtIE9uZSBEQiBlbnRyeS4wICMgPC93ZWlnaHQ+GHVuYm9uZAQUdmFsdWVIQ29tcGFjdDxCYWxhbmNlT2Y+XFUBIFNjaGVkdWxlIGEgcG9ydGlvbiBvZiB0aGUgc3Rhc2ggdG8gYmUgdW5sb2NrZWQgcmVhZHkgZm9yIHRyYW5zZmVyIG91dCBhZnRlciB0aGUgYm9uZAEBIHBlcmlvZCBlbmRzLiBJZiB0aGlzIGxlYXZlcyBhbiBhbW91bnQgYWN0aXZlbHkgYm9uZGVkIGxlc3MgdGhhbiUBIFQ6OkN1cnJlbmN5OjptaW5pbXVtX2JhbGFuY2UoKSwgdGhlbiBpdCBpcyBpbmNyZWFzZWQgdG8gdGhlIGZ1bGwgYW1vdW50LgBJASBPbmNlIHRoZSB1bmxvY2sgcGVyaW9kIGlzIGRvbmUsIHlvdSBjYW4gY2FsbCBgd2l0aGRyYXdfdW5ib25kZWRgIHRvIGFjdHVhbGx5IG1vdmXAIHRoZSBmdW5kcyBvdXQgb2YgbWFuYWdlbWVudCByZWFkeSBmb3IgdHJhbnNmZXIuAD0BIE5vIG1vcmUgdGhhbiBhIGxpbWl0ZWQgbnVtYmVyIG9mIHVubG9ja2luZyBjaHVua3MgKHNlZSBgTUFYX1VOTE9DS0lOR19DSFVOS1NgKT0BIGNhbiBjby1leGlzdHMgYXQgdGhlIHNhbWUgdGltZS4gSW4gdGhhdCBjYXNlLCBbYENhbGw6OndpdGhkcmF3X3VuYm9uZGVkYF0gbmVlZPwgdG8gYmUgY2FsbGVkIGZpcnN0IHRvIHJlbW92ZSBzb21lIG9mIHRoZSBjaHVua3MgKGlmIHBvc3NpYmxlKS4AVQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8gYnkgdGhlIGNvbnRyb2xsZXIsIG5vdCB0aGUgc3Rhc2guAJggU2VlIGFsc28gW2BDYWxsOjp3aXRoZHJhd191bmJvbmRlZGBdLgAsICMgPHdlaWdodD5BASAtIEluZGVwZW5kZW50IG9mIHRoZSBhcmd1bWVudHMuIExpbWl0ZWQgYnV0IHBvdGVudGlhbGx5IGV4cGxvaXRhYmxlIGNvbXBsZXhpdHkumCAtIENvbnRhaW5zIGEgbGltaXRlZCBudW1iZXIgb2YgcmVhZHMuZQEgLSBFYWNoIGNhbGwgKHJlcXVpcmVzIHRoZSByZW1haW5kZXIgb2YgdGhlIGJvbmRlZCBiYWxhbmNlIHRvIGJlIGFib3ZlIGBtaW5pbXVtX2JhbGFuY2VgKXEBICAgd2lsbCBjYXVzZSBhIG5ldyBlbnRyeSB0byBiZSBpbnNlcnRlZCBpbnRvIGEgdmVjdG9yIChgTGVkZ2VyLnVubG9ja2luZ2ApIGtlcHQgaW4gc3RvcmFnZS6lASAgIFRoZSBvbmx5IHdheSB0byBjbGVhbiB0aGUgYWZvcmVtZW50aW9uZWQgc3RvcmFnZSBpdGVtIGlzIGFsc28gdXNlci1jb250cm9sbGVkIHZpYSBgd2l0aGRyYXdfdW5ib25kZWRgLkAgLSBPbmUgREIgZW50cnkuKCA8L3dlaWdodD5Ed2l0aGRyYXdfdW5ib25kZWQAQC0BIFJlbW92ZSBhbnkgdW5sb2NrZWQgY2h1bmtzIGZyb20gdGhlIGB1bmxvY2tpbmdgIHF1ZXVlIGZyb20gb3VyIG1hbmFnZW1lbnQuADUBIFRoaXMgZXNzZW50aWFsbHkgZnJlZXMgdXAgdGhhdCBiYWxhbmNlIHRvIGJlIHVzZWQgYnkgdGhlIHN0YXNoIGFjY291bnQgdG8gZG9MIHdoYXRldmVyIGl0IHdhbnRzLgBVASBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfU2lnbmVkXyBieSB0aGUgY29udHJvbGxlciwgbm90IHRoZSBzdGFzaC4AbCBTZWUgYWxzbyBbYENhbGw6OnVuYm9uZGBdLgAsICMgPHdlaWdodD5VASAtIENvdWxkIGJlIGRlcGVuZGVudCBvbiB0aGUgYG9yaWdpbmAgYXJndW1lbnQgYW5kIGhvdyBtdWNoIGB1bmxvY2tpbmdgIGNodW5rcyBleGlzdC5FASAgSXQgaW1wbGllcyBgY29uc29saWRhdGVfdW5sb2NrZWRgIHdoaWNoIGxvb3BzIG92ZXIgYExlZGdlci51bmxvY2tpbmdgLCB3aGljaCBpc/QgIGluZGlyZWN0bHkgdXNlci1jb250cm9sbGVkLiBTZWUgW2B1bmJvbmRgXSBmb3IgbW9yZSBkZXRhaWwueQEgLSBDb250YWlucyBhIGxpbWl0ZWQgbnVtYmVyIG9mIHJlYWRzLCB5ZXQgdGhlIHNpemUgb2Ygd2hpY2ggY291bGQgYmUgbGFyZ2UgYmFzZWQgb24gYGxlZGdlcmAuyCAtIFdyaXRlcyBhcmUgbGltaXRlZCB0byB0aGUgYG9yaWdpbmAgYWNjb3VudCBrZXkuMCAjIDwvd2VpZ2h0PiB2YWxpZGF0ZQQUcHJlZnM4VmFsaWRhdG9yUHJlZnMs6CBEZWNsYXJlIHRoZSBkZXNpcmUgdG8gdmFsaWRhdGUgZm9yIHRoZSBvcmlnaW4gY29udHJvbGxlci4A3CBFZmZlY3RzIHdpbGwgYmUgZmVsdCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBuZXh0IGVyYS4AVQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8gYnkgdGhlIGNvbnRyb2xsZXIsIG5vdCB0aGUgc3Rhc2guACwgIyA8d2VpZ2h0PuggLSBJbmRlcGVuZGVudCBvZiB0aGUgYXJndW1lbnRzLiBJbnNpZ25pZmljYW50IGNvbXBsZXhpdHkumCAtIENvbnRhaW5zIGEgbGltaXRlZCBudW1iZXIgb2YgcmVhZHMuyCAtIFdyaXRlcyBhcmUgbGltaXRlZCB0byB0aGUgYG9yaWdpbmAgYWNjb3VudCBrZXkuMCAjIDwvd2VpZ2h0PiBub21pbmF0ZQQcdGFyZ2V0czBWZWM8QWRkcmVzcz4sEQEgRGVjbGFyZSB0aGUgZGVzaXJlIHRvIG5vbWluYXRlIGB0YXJnZXRzYCBmb3IgdGhlIG9yaWdpbiBjb250cm9sbGVyLgDcIEVmZmVjdHMgd2lsbCBiZSBmZWx0IGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIG5leHQgZXJhLgBVASBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfU2lnbmVkXyBieSB0aGUgY29udHJvbGxlciwgbm90IHRoZSBzdGFzaC4ALCAjIDx3ZWlnaHQ+JQEgLSBUaGUgdHJhbnNhY3Rpb24ncyBjb21wbGV4aXR5IGlzIHByb3BvcnRpb25hbCB0byB0aGUgc2l6ZSBvZiBgdGFyZ2V0c2AsmCB3aGljaCBpcyBjYXBwZWQgYXQgYE1BWF9OT01JTkFUSU9OU2Au2CAtIEJvdGggdGhlIHJlYWRzIGFuZCB3cml0ZXMgZm9sbG93IGEgc2ltaWxhciBwYXR0ZXJuLjAgIyA8L3dlaWdodD4UY2hpbGwALMggRGVjbGFyZSBubyBkZXNpcmUgdG8gZWl0aGVyIHZhbGlkYXRlIG9yIG5vbWluYXRlLgDcIEVmZmVjdHMgd2lsbCBiZSBmZWx0IGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIG5leHQgZXJhLgBVASBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfU2lnbmVkXyBieSB0aGUgY29udHJvbGxlciwgbm90IHRoZSBzdGFzaC4ALCAjIDx3ZWlnaHQ+6CAtIEluZGVwZW5kZW50IG9mIHRoZSBhcmd1bWVudHMuIEluc2lnbmlmaWNhbnQgY29tcGxleGl0eS5UIC0gQ29udGFpbnMgb25lIHJlYWQuyCAtIFdyaXRlcyBhcmUgbGltaXRlZCB0byB0aGUgYG9yaWdpbmAgYWNjb3VudCBrZXkuMCAjIDwvd2VpZ2h0PiRzZXRfcGF5ZWUEFHBheWVlRFJld2FyZERlc3RpbmF0aW9uLLggKFJlLSlzZXQgdGhlIHBheW1lbnQgdGFyZ2V0IGZvciBhIGNvbnRyb2xsZXIuANwgRWZmZWN0cyB3aWxsIGJlIGZlbHQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgbmV4dCBlcmEuAFUBIFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBtdXN0IGJlIF9TaWduZWRfIGJ5IHRoZSBjb250cm9sbGVyLCBub3QgdGhlIHN0YXNoLgAsICMgPHdlaWdodD7oIC0gSW5kZXBlbmRlbnQgb2YgdGhlIGFyZ3VtZW50cy4gSW5zaWduaWZpY2FudCBjb21wbGV4aXR5LpggLSBDb250YWlucyBhIGxpbWl0ZWQgbnVtYmVyIG9mIHJlYWRzLsggLSBXcml0ZXMgYXJlIGxpbWl0ZWQgdG8gdGhlIGBvcmlnaW5gIGFjY291bnQga2V5LjAgIyA8L3dlaWdodD44c2V0X2NvbnRyb2xsZXIEKGNvbnRyb2xsZXIcQWRkcmVzcyyQIChSZS0pc2V0IHRoZSBjb250cm9sbGVyIG9mIGEgc3Rhc2guANwgRWZmZWN0cyB3aWxsIGJlIGZlbHQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgbmV4dCBlcmEuAFUBIFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBtdXN0IGJlIF9TaWduZWRfIGJ5IHRoZSBzdGFzaCwgbm90IHRoZSBjb250cm9sbGVyLgAsICMgPHdlaWdodD7oIC0gSW5kZXBlbmRlbnQgb2YgdGhlIGFyZ3VtZW50cy4gSW5zaWduaWZpY2FudCBjb21wbGV4aXR5LpggLSBDb250YWlucyBhIGxpbWl0ZWQgbnVtYmVyIG9mIHJlYWRzLsggLSBXcml0ZXMgYXJlIGxpbWl0ZWQgdG8gdGhlIGBvcmlnaW5gIGFjY291bnQga2V5LjAgIyA8L3dlaWdodD5Mc2V0X3ZhbGlkYXRvcl9jb3VudAQMbmV3MENvbXBhY3Q8dTMyPgSAIFRoZSBpZGVhbCBudW1iZXIgb2YgdmFsaWRhdG9ycy40Zm9yY2Vfbm9fZXJhcwAUsCBGb3JjZSB0aGVyZSB0byBiZSBubyBuZXcgZXJhcyBpbmRlZmluaXRlbHkuACwgIyA8d2VpZ2h0PkAgLSBObyBhcmd1bWVudHMuMCAjIDwvd2VpZ2h0PjRmb3JjZV9uZXdfZXJhABhNASBGb3JjZSB0aGVyZSB0byBiZSBhIG5ldyBlcmEgYXQgdGhlIGVuZCBvZiB0aGUgbmV4dCBzZXNzaW9uLiBBZnRlciB0aGlzLCBpdCB3aWxsIGJloCByZXNldCB0byBub3JtYWwgKG5vbi1mb3JjZWQpIGJlaGF2aW91ci4ALCAjIDx3ZWlnaHQ+QCAtIE5vIGFyZ3VtZW50cy4wICMgPC93ZWlnaHQ+RHNldF9pbnZ1bG5lcmFibGVzBCh2YWxpZGF0b3JzOFZlYzxBY2NvdW50SWQ+BMwgU2V0IHRoZSB2YWxpZGF0b3JzIHdobyBjYW5ub3QgYmUgc2xhc2hlZCAoaWYgYW55KS4AACBPZmZlbmNlcwABAAAAHFNlc3Npb24AAQQgc2V0X2tleXMIEGtleXMQS2V5cxRwcm9vZhRCeXRlcyjkIFNldHMgdGhlIHNlc3Npb24ga2V5KHMpIG9mIHRoZSBmdW5jdGlvbiBjYWxsZXIgdG8gYGtleWAuIQEgQWxsb3dzIGFuIGFjY291bnQgdG8gc2V0IGl0cyBzZXNzaW9uIGtleSBwcmlvciB0byBiZWNvbWluZyBhIHZhbGlkYXRvci7EIFRoaXMgZG9lc24ndCB0YWtlIGVmZmVjdCB1bnRpbCB0aGUgbmV4dCBzZXNzaW9uLgDUIFRoZSBkaXNwYXRjaCBvcmlnaW4gb2YgdGhpcyBmdW5jdGlvbiBtdXN0IGJlIHNpZ25lZC4ALCAjIDx3ZWlnaHQ+iCAtIE8obG9nIG4pIGluIG51bWJlciBvZiBhY2NvdW50cy5YIC0gT25lIGV4dHJhIERCIGVudHJ5LjAgIyA8L3dlaWdodD4AADxGaW5hbGl0eVRyYWNrZXIAAQQoZmluYWxfaGludAQQaGludFBDb21wYWN0PEJsb2NrTnVtYmVyPgj0IEhpbnQgdGhhdCB0aGUgYXV0aG9yIG9mIHRoaXMgYmxvY2sgdGhpbmtzIHRoZSBiZXN0IGZpbmFsaXplZGwgYmxvY2sgaXMgdGhlIGdpdmVuIG51bWJlci4AABxHcmFuZHBhAAEESHJlcG9ydF9taXNiZWhhdmlvcgQcX3JlcG9ydBRCeXRlcwRkIFJlcG9ydCBzb21lIG1pc2JlaGF2aW9yLgAAIEltT25saW5lAAEEJGhlYXJ0YmVhdAgkaGVhcnRiZWF0JEhlYXJ0YmVhdCRzaWduYXR1cmUkU2lnbmF0dXJlAAAAJERlbW9jcmFjeQABRBxwcm9wb3NlCCBwcm9wb3NhbCBQcm9wb3NhbBR2YWx1ZUhDb21wYWN0PEJhbGFuY2VPZj4YoCBQcm9wb3NlIGEgc2Vuc2l0aXZlIGFjdGlvbiB0byBiZSB0YWtlbi4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkugCAtIFR3byBEQiBjaGFuZ2VzLCBvbmUgREIgZW50cnkuMCAjIDwvd2VpZ2h0PhhzZWNvbmQEIHByb3Bvc2FsSENvbXBhY3Q8UHJvcEluZGV4PhigIFByb3Bvc2UgYSBzZW5zaXRpdmUgYWN0aW9uIHRvIGJlIHRha2VuLgAsICMgPHdlaWdodD4gIC0gTygxKS5AIC0gT25lIERCIGVudHJ5LjAgIyA8L3dlaWdodD4Qdm90ZQgkcmVmX2luZGV4YENvbXBhY3Q8UmVmZXJlbmR1bUluZGV4PhB2b3RlEFZvdGUcNQEgVm90ZSBpbiBhIHJlZmVyZW5kdW0uIElmIGB2b3RlLmlzX2F5ZSgpYCwgdGhlIHZvdGUgaXMgdG8gZW5hY3QgdGhlIHByb3Bvc2FsO7wgb3RoZXJ3aXNlIGl0IGlzIGEgdm90ZSB0byBrZWVwIHRoZSBzdGF0dXMgcXVvLgAsICMgPHdlaWdodD4gIC0gTygxKS58IC0gT25lIERCIGNoYW5nZSwgb25lIERCIGVudHJ5LjAgIyA8L3dlaWdodD4ocHJveHlfdm90ZQgkcmVmX2luZGV4YENvbXBhY3Q8UmVmZXJlbmR1bUluZGV4PhB2b3RlEFZvdGUcUQEgVm90ZSBpbiBhIHJlZmVyZW5kdW0gb24gYmVoYWxmIG9mIGEgc3Rhc2guIElmIGB2b3RlLmlzX2F5ZSgpYCwgdGhlIHZvdGUgaXMgdG8gZW5hY3T4IHRoZSBwcm9wb3NhbDsgIG90aGVyd2lzZSBpdCBpcyBhIHZvdGUgdG8ga2VlcCB0aGUgc3RhdHVzIHF1by4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkufCAtIE9uZSBEQiBjaGFuZ2UsIG9uZSBEQiBlbnRyeS4wICMgPC93ZWlnaHQ+QGVtZXJnZW5jeV9jYW5jZWwEJHJlZl9pbmRleDxSZWZlcmVuZHVtSW5kZXgIUQEgU2NoZWR1bGUgYW4gZW1lcmdlbmN5IGNhbmNlbGxhdGlvbiBvZiBhIHJlZmVyZW5kdW0uIENhbm5vdCBoYXBwZW4gdHdpY2UgdG8gdGhlIHNhbWUwIHJlZmVyZW5kdW0uQGV4dGVybmFsX3Byb3Bvc2UEIHByb3Bvc2FsIFByb3Bvc2FsCDEBIFNjaGVkdWxlIGEgcmVmZXJlbmR1bSB0byBiZSB0YWJsZWQgb25jZSBpdCBpcyBsZWdhbCB0byBzY2hlZHVsZSBhbiBleHRlcm5hbDAgcmVmZXJlbmR1bS5kZXh0ZXJuYWxfcHJvcG9zZV9tYWpvcml0eQQgcHJvcG9zYWwgUHJvcG9zYWwUWQEgU2NoZWR1bGUgYSBtYWpvcml0eS1jYXJyaWVzIHJlZmVyZW5kdW0gdG8gYmUgdGFibGVkIG5leHQgb25jZSBpdCBpcyBsZWdhbCB0byBzY2hlZHVsZWAgYW4gZXh0ZXJuYWwgcmVmZXJlbmR1bS4ATQEgVW5saWtlIGBleHRlcm5hbF9wcm9wb3NlYCwgYmxhY2tsaXN0aW5nIGhhcyBubyBlZmZlY3Qgb24gdGhpcyBhbmQgaXQgbWF5IHJlcGxhY2UgYZwgcHJlLXNjaGVkdWxlZCBgZXh0ZXJuYWxfcHJvcG9zZWAgY2FsbC5gZXh0ZXJuYWxfcHJvcG9zZV9kZWZhdWx0BCBwcm9wb3NhbCBQcm9wb3NhbBRJASBTY2hlZHVsZSBhIG5lZ2F0aXZlLXR1cm5vdXQtYmlhcyByZWZlcmVuZHVtIHRvIGJlIHRhYmxlZCBuZXh0IG9uY2UgaXQgaXMgbGVnYWwgdG+EIHNjaGVkdWxlIGFuIGV4dGVybmFsIHJlZmVyZW5kdW0uAE0BIFVubGlrZSBgZXh0ZXJuYWxfcHJvcG9zZWAsIGJsYWNrbGlzdGluZyBoYXMgbm8gZWZmZWN0IG9uIHRoaXMgYW5kIGl0IG1heSByZXBsYWNlIGGcIHByZS1zY2hlZHVsZWQgYGV4dGVybmFsX3Byb3Bvc2VgIGNhbGwuKGZhc3RfdHJhY2sMNHByb3Bvc2FsX2hhc2gQSGFzaDR2b3RpbmdfcGVyaW9kLEJsb2NrTnVtYmVyFGRlbGF5LEJsb2NrTnVtYmVyIFEBIFNjaGVkdWxlIHRoZSBjdXJyZW50bHkgZXh0ZXJuYWxseS1wcm9wb3NlZCBtYWpvcml0eS1jYXJyaWVzIHJlZmVyZW5kdW0gdG8gYmUgdGFibGVkZQEgaW1tZWRpYXRlbHkuIElmIHRoZXJlIGlzIG5vIGV4dGVybmFsbHktcHJvcG9zZWQgcmVmZXJlbmR1bSBjdXJyZW50bHksIG9yIGlmIHRoZXJlIGlzIG9uZewgYnV0IGl0IGlzIG5vdCBhIG1ham9yaXR5LWNhcnJpZXMgcmVmZXJlbmR1bSB0aGVuIGl0IGZhaWxzLgD4IC0gYHByb3Bvc2FsX2hhc2hgOiBUaGUgaGFzaCBvZiB0aGUgY3VycmVudCBleHRlcm5hbCBwcm9wb3NhbC4tASAtIGB2b3RpbmdfcGVyaW9kYDogVGhlIHBlcmlvZCB0aGF0IGlzIGFsbG93ZWQgZm9yIHZvdGluZyBvbiB0aGlzIHByb3Bvc2FsLlUBIC0gYGRlbGF5YDogVGhlIG51bWJlciBvZiBibG9jayBhZnRlciB2b3RpbmcgaGFzIGVuZGVkIGluIGFwcHJvdmFsIGFuZCB0aGlzIHNob3VsZCBiZfAgICBlbmFjdGVkLiBJbmNyZWFzZWQgdG8gYEVtZXJnZW5jeVZvdGluZ1BlcmlvZGAgaWYgdG9vIGxvdy40dmV0b19leHRlcm5hbAQ0cHJvcG9zYWxfaGFzaBBIYXNoBLwgVmV0byBhbmQgYmxhY2tsaXN0IHRoZSBleHRlcm5hbCBwcm9wb3NhbCBoYXNoLkRjYW5jZWxfcmVmZXJlbmR1bQQkcmVmX2luZGV4YENvbXBhY3Q8UmVmZXJlbmR1bUluZGV4PgRUIFJlbW92ZSBhIHJlZmVyZW5kdW0uNGNhbmNlbF9xdWV1ZWQMEHdoZW5QQ29tcGFjdDxCbG9ja051bWJlcj4Ud2hpY2gwQ29tcGFjdDx1MzI+EHdoYXRgQ29tcGFjdDxSZWZlcmVuZHVtSW5kZXg+BKAgQ2FuY2VsIGEgcHJvcG9zYWwgcXVldWVkIGZvciBlbmFjdG1lbnQuJHNldF9wcm94eQQUcHJveHkkQWNjb3VudElkFJggU3BlY2lmeSBhIHByb3h5LiBDYWxsZWQgYnkgdGhlIHN0YXNoLgAsICMgPHdlaWdodD5YIC0gT25lIGV4dHJhIERCIGVudHJ5LjAgIyA8L3dlaWdodD4wcmVzaWduX3Byb3h5ABSYIENsZWFyIHRoZSBwcm94eS4gQ2FsbGVkIGJ5IHRoZSBwcm94eS4ALCAjIDx3ZWlnaHQ+QCAtIE9uZSBEQiBjbGVhci4wICMgPC93ZWlnaHQ+MHJlbW92ZV9wcm94eQQUcHJveHkkQWNjb3VudElkFJggQ2xlYXIgdGhlIHByb3h5LiBDYWxsZWQgYnkgdGhlIHN0YXNoLgAsICMgPHdlaWdodD5AIC0gT25lIERCIGNsZWFyLjAgIyA8L3dlaWdodD4gZGVsZWdhdGUICHRvJEFjY291bnRJZChjb252aWN0aW9uKENvbnZpY3Rpb24UPCBEZWxlZ2F0ZSB2b3RlLgAsICMgPHdlaWdodD5YIC0gT25lIGV4dHJhIERCIGVudHJ5LjAgIyA8L3dlaWdodD4odW5kZWxlZ2F0ZQAURCBVbmRlbGVnYXRlIHZvdGUuACwgIyA8d2VpZ2h0PiAgLSBPKDEpLjAgIyA8L3dlaWdodD4AABxDb3VuY2lsAAEQLHNldF9tZW1iZXJzBCxuZXdfbWVtYmVyczhWZWM8QWNjb3VudElkPhBRASBTZXQgdGhlIGNvbGxlY3RpdmUncyBtZW1iZXJzaGlwIG1hbnVhbGx5IHRvIGBuZXdfbWVtYmVyc2AuIEJlIG5pY2UgdG8gdGhlIGNoYWluIGFuZFwgcHJvdmlkZSBpdCBwcmUtc29ydGVkLgBYIFJlcXVpcmVzIHJvb3Qgb3JpZ2luLhxleGVjdXRlBCBwcm9wb3NhbCBQcm9wb3NhbAz0IERpc3BhdGNoIGEgcHJvcG9zYWwgZnJvbSBhIG1lbWJlciB1c2luZyB0aGUgYE1lbWJlcmAgb3JpZ2luLgCsIE9yaWdpbiBtdXN0IGJlIGEgbWVtYmVyIG9mIHRoZSBjb2xsZWN0aXZlLhxwcm9wb3NlCCR0aHJlc2hvbGRQQ29tcGFjdDxNZW1iZXJDb3VudD4gcHJvcG9zYWwgUHJvcG9zYWwQLCAjIDx3ZWlnaHQ+kCAtIEJvdW5kZWQgc3RvcmFnZSByZWFkcyBhbmQgd3JpdGVzLrggLSBBcmd1bWVudCBgdGhyZXNob2xkYCBoYXMgYmVhcmluZyBvbiB3ZWlnaHQuMCAjIDwvd2VpZ2h0PhB2b3RlDCBwcm9wb3NhbBBIYXNoFGluZGV4WENvbXBhY3Q8UHJvcG9zYWxJbmRleD4cYXBwcm92ZRBib29sECwgIyA8d2VpZ2h0PowgLSBCb3VuZGVkIHN0b3JhZ2UgcmVhZCBhbmQgd3JpdGVzLlUBIC0gV2lsbCBiZSBzbGlnaHRseSBoZWF2aWVyIGlmIHRoZSBwcm9wb3NhbCBpcyBhcHByb3ZlZCAvIGRpc2FwcHJvdmVkIGFmdGVyIHRoZSB2b3RlLjAgIyA8L3dlaWdodD4AAEhUZWNobmljYWxDb21taXR0ZWUAARAsc2V0X21lbWJlcnMELG5ld19tZW1iZXJzOFZlYzxBY2NvdW50SWQ+EFEBIFNldCB0aGUgY29sbGVjdGl2ZSdzIG1lbWJlcnNoaXAgbWFudWFsbHkgdG8gYG5ld19tZW1iZXJzYC4gQmUgbmljZSB0byB0aGUgY2hhaW4gYW5kXCBwcm92aWRlIGl0IHByZS1zb3J0ZWQuAFggUmVxdWlyZXMgcm9vdCBvcmlnaW4uHGV4ZWN1dGUEIHByb3Bvc2FsIFByb3Bvc2FsDPQgRGlzcGF0Y2ggYSBwcm9wb3NhbCBmcm9tIGEgbWVtYmVyIHVzaW5nIHRoZSBgTWVtYmVyYCBvcmlnaW4uAKwgT3JpZ2luIG11c3QgYmUgYSBtZW1iZXIgb2YgdGhlIGNvbGxlY3RpdmUuHHByb3Bvc2UIJHRocmVzaG9sZFBDb21wYWN0PE1lbWJlckNvdW50PiBwcm9wb3NhbCBQcm9wb3NhbBAsICMgPHdlaWdodD6QIC0gQm91bmRlZCBzdG9yYWdlIHJlYWRzIGFuZCB3cml0ZXMuuCAtIEFyZ3VtZW50IGB0aHJlc2hvbGRgIGhhcyBiZWFyaW5nIG9uIHdlaWdodC4wICMgPC93ZWlnaHQ+EHZvdGUMIHByb3Bvc2FsEEhhc2gUaW5kZXhYQ29tcGFjdDxQcm9wb3NhbEluZGV4PhxhcHByb3ZlEGJvb2wQLCAjIDx3ZWlnaHQ+jCAtIEJvdW5kZWQgc3RvcmFnZSByZWFkIGFuZCB3cml0ZXMuVQEgLSBXaWxsIGJlIHNsaWdodGx5IGhlYXZpZXIgaWYgdGhlIHByb3Bvc2FsIGlzIGFwcHJvdmVkIC8gZGlzYXBwcm92ZWQgYWZ0ZXIgdGhlIHZvdGUuMCAjIDwvd2VpZ2h0PgAAJEVsZWN0aW9ucwABKDRzZXRfYXBwcm92YWxzEBR2b3RlcyRWZWM8Ym9vbD4UaW5kZXhIQ29tcGFjdDxWb3RlSW5kZXg+EGhpbnQgU2V0SW5kZXgUdmFsdWUkQmFsYW5jZU9mYGEBIFNldCBjYW5kaWRhdGUgYXBwcm92YWxzLiBBcHByb3ZhbCBzbG90cyBzdGF5IHZhbGlkIGFzIGxvbmcgYXMgY2FuZGlkYXRlcyBpbiB0aG9zZSBzbG90c0AgYXJlIHJlZ2lzdGVyZWQuAE0BIExvY2tzIGB2YWx1ZWAgZnJvbSB0aGUgYmFsYW5jZSBvZiBgb3JpZ2luYCBpbmRlZmluaXRlbHkuIE9ubHkgW2ByZXRyYWN0X3ZvdGVyYF0gb3LAIFtgcmVhcF9pbmFjdGl2ZV92b3RlcmBdIGNhbiB1bmxvY2sgdGhlIGJhbGFuY2UuANQgYGhpbnRgIGFyZ3VtZW50IGlzIGludGVycHJldGVkIGRpZmZlcmVudGx5IGJhc2VkIG9uOlUBIC0gaWYgYG9yaWdpbmAgaXMgc2V0dGluZyBhcHByb3ZhbHMgZm9yIHRoZSBmaXJzdCB0aW1lOiBUaGUgaW5kZXggd2lsbCBiZSBjaGVja2VkIGZvcqggICBiZWluZyBhIHZhbGlkIF9ob2xlXyBpbiB0aGUgdm90ZXIgbGlzdC5NASAgIC0gaWYgdGhlIGhpbnQgaXMgY29ycmVjdGx5IHBvaW50aW5nIHRvIGEgaG9sZSwgbm8gZmVlIGlzIGRlZHVjdGVkIGZyb20gYG9yaWdpbmAuXQEgICAtIE90aGVyd2lzZSwgdGhlIGNhbGwgd2lsbCBzdWNjZWVkIGJ1dCB0aGUgaW5kZXggaXMgaWdub3JlZCBhbmQgc2ltcGx5IGEgcHVzaCB0byB0aGVFASAgICAgbGFzdCBjaHVuayB3aXRoIGZyZWUgc3BhY2UgaGFwcGVucy4gSWYgdGhlIG5ldyBwdXNoIGNhdXNlcyBhIG5ldyBjaHVuayB0byBiZewgICAgIGNyZWF0ZWQsIGEgZmVlIGluZGljYXRlZCBieSBbYFZvdGluZ0ZlZWBdIGlzIGRlZHVjdGVkLl0BIC0gaWYgYG9yaWdpbmAgaXMgYWxyZWFkeSBhIHZvdGVyOiB0aGUgaW5kZXggX19tdXN0X18gYmUgdmFsaWQgYW5kIHBvaW50IHRvIHRoZSBjb3JyZWN03CAgIHBvc2l0aW9uIG9mIHRoZSBgb3JpZ2luYCBpbiB0aGUgY3VycmVudCB2b3RlcnMgbGlzdC4AUQEgTm90ZSB0aGF0IGFueSB0cmFpbGluZyBgZmFsc2VgIHZvdGVzIGluIGB2b3Rlc2AgaXMgaWdub3JlZDsgSW4gYXBwcm92YWwgdm90aW5nLCBub3TQIHZvdGluZyBmb3IgYSBjYW5kaWRhdGUgYW5kIHZvdGluZyBmYWxzZSwgYXJlIGVxdWFsLgAsICMgPHdlaWdodD4gIC0gTygxKS6cIC0gVHdvIGV4dHJhIERCIGVudHJpZXMsIG9uZSBEQiBjaGFuZ2UuBQEgLSBBcmd1bWVudCBgdm90ZXNgIGlzIGxpbWl0ZWQgaW4gbGVuZ3RoIHRvIG51bWJlciBvZiBjYW5kaWRhdGVzLjAgIyA8L3dlaWdodD5McHJveHlfc2V0X2FwcHJvdmFscxAUdm90ZXMkVmVjPGJvb2w+FGluZGV4SENvbXBhY3Q8Vm90ZUluZGV4PhBoaW50IFNldEluZGV4FHZhbHVlJEJhbGFuY2VPZhhlASBTZXQgY2FuZGlkYXRlIGFwcHJvdmFscyBmcm9tIGEgcHJveHkuIEFwcHJvdmFsIHNsb3RzIHN0YXkgdmFsaWQgYXMgbG9uZyBhcyBjYW5kaWRhdGVzIGlucCB0aG9zZSBzbG90cyBhcmUgcmVnaXN0ZXJlZC4ALCAjIDx3ZWlnaHQ+8CAtIFNhbWUgYXMgYHNldF9hcHByb3ZhbHNgIHdpdGggb25lIGFkZGl0aW9uYWwgc3RvcmFnZSByZWFkLjAgIyA8L3dlaWdodD5McmVhcF9pbmFjdGl2ZV92b3RlchA4cmVwb3J0ZXJfaW5kZXgwQ29tcGFjdDx1MzI+DHdobxxBZGRyZXNzJHdob19pbmRleDBDb21wYWN0PHUzMj5IYXNzdW1lZF92b3RlX2luZGV4SENvbXBhY3Q8Vm90ZUluZGV4PjBhASBSZW1vdmUgYSB2b3Rlci4gRm9yIGl0IG5vdCB0byBiZSBhIGJvbmQtY29uc3VtaW5nIG5vLW9wLCBhbGwgYXBwcm92ZWQgY2FuZGlkYXRlIGluZGljZXNZASBtdXN0IG5vdyBiZSBlaXRoZXIgdW5yZWdpc3RlcmVkIG9yIHJlZ2lzdGVyZWQgdG8gYSBjYW5kaWRhdGUgdGhhdCByZWdpc3RlcmVkIHRoZSBzbG90uCBhZnRlciB0aGUgdm90ZXIgZ2F2ZSB0aGVpciBsYXN0IGFwcHJvdmFsIHNldC4AFQEgQm90aCBpbmRpY2VzIG11c3QgYmUgcHJvdmlkZWQgYXMgZXhwbGFpbmVkIGluIFtgdm90ZXJfYXRgXSBmdW5jdGlvbi4AAQEgTWF5IGJlIGNhbGxlZCBieSBhbnlvbmUuIFJldHVybnMgdGhlIHZvdGVyIGRlcG9zaXQgdG8gYHNpZ25lZGAuACwgIyA8d2VpZ2h0PiAgLSBPKDEpLpwgLSBUd28gZmV3ZXIgREIgZW50cmllcywgb25lIERCIGNoYW5nZS4wICMgPC93ZWlnaHQ+NHJldHJhY3Rfdm90ZXIEFGluZGV4MENvbXBhY3Q8dTMyPigtASBSZW1vdmUgYSB2b3Rlci4gQWxsIHZvdGVzIGFyZSBjYW5jZWxsZWQgYW5kIHRoZSB2b3RlciBkZXBvc2l0IGlzIHJldHVybmVkLgAJASBUaGUgaW5kZXggbXVzdCBiZSBwcm92aWRlZCBhcyBleHBsYWluZWQgaW4gW2B2b3Rlcl9hdGBdIGZ1bmN0aW9uLgA9ASBBbHNvIHJlbW92ZXMgdGhlIGxvY2sgb24gdGhlIGJhbGFuY2Ugb2YgdGhlIHZvdGVyLiBTZWUgW2Bkb19zZXRfYXBwcm92YWxzKClgXS4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkunCAtIFR3byBmZXdlciBEQiBlbnRyaWVzLCBvbmUgREIgY2hhbmdlLjAgIyA8L3dlaWdodD5Ac3VibWl0X2NhbmRpZGFjeQQQc2xvdDBDb21wYWN0PHUzMj40eCBTdWJtaXQgb25lc2VsZiBmb3IgY2FuZGlkYWN5LgARASBBY2NvdW50IG11c3QgaGF2ZSBlbm91Z2ggdHJhbnNmZXJyYWJsZSBmdW5kcyBpbiBpdCB0byBwYXkgdGhlIGJvbmQuACEBIE5PVEU6IGlmIGBvcmlnaW5gIGhhcyBhbHJlYWR5IGFzc2lnbmVkIGFwcHJvdmFscyB2aWEgW2BzZXRfYXBwcm92YWxzYF0sRQEgaXQgd2lsbCBOT1QgaGF2ZSBhbnkgdXNhYmxlIGZ1bmRzIHRvIHBhc3MgY2FuZGlkYWN5IGJvbmQgYW5kIG11c3QgZmlyc3QgcmV0cmFjdC4xASBOb3RlIHRoYXQgc2V0dGluZyBhcHByb3ZhbHMgd2lsbCBsb2NrIHRoZSBlbnRpcmUgYmFsYW5jZSBvZiB0aGUgdm90ZXIgdW50aWx4IHJldHJhY3Rpb24gb3IgYmVpbmcgcmVwb3J0ZWQuACwgIyA8d2VpZ2h0PmAgLSBJbmRlcGVuZGVudCBvZiBpbnB1dC5QIC0gVGhyZWUgREIgY2hhbmdlcy4wICMgPC93ZWlnaHQ+OHByZXNlbnRfd2lubmVyDCRjYW5kaWRhdGUcQWRkcmVzcxR0b3RhbEhDb21wYWN0PEJhbGFuY2VPZj4UaW5kZXhIQ29tcGFjdDxWb3RlSW5kZXg+JGEBIENsYWltIHRoYXQgYGNhbmRpZGF0ZWAgaXMgb25lIG9mIHRoZSB0b3AgYGNhcnJ5X2NvdW50ICsgZGVzaXJlZF9zZWF0c2AgY2FuZGlkYXRlcy4gT25seWEBIHdvcmtzIGlmZiB0aGUgcHJlc2VudGF0aW9uIHBlcmlvZCBpcyBhY3RpdmUuIGBjYW5kaWRhdGVgIHNob3VsZCBoYXZlIGF0IGxlYXN0IGNvbGxlY3RlZF0BIHNvbWUgbm9uLXplcm8gYHRvdGFsYCB2b3RlcyBhbmQgYG9yaWdpbmAgbXVzdCBoYXZlIGVub3VnaCBmdW5kcyB0byBwYXkgZm9yIGEgcG90ZW50aWFsHCBzbGFzaC4ALCAjIDx3ZWlnaHQ+VCAtIE8odm90ZXJzKSBjb21wdXRlLkQgLSBPbmUgREIgY2hhbmdlLjAgIyA8L3dlaWdodD5Ec2V0X2Rlc2lyZWRfc2VhdHMEFGNvdW50MENvbXBhY3Q8dTMyPgxlASBTZXQgdGhlIGRlc2lyZWQgbWVtYmVyIGNvdW50OyBpZiBsb3dlciB0aGFuIHRoZSBjdXJyZW50IGNvdW50LCB0aGVuIHNlYXRzIHdpbGwgbm90IGJlIHVwSQEgZWxlY3Rpb24gd2hlbiB0aGV5IGV4cGlyZS4gSWYgbW9yZSwgdGhlbiBhIG5ldyB2b3RlIHdpbGwgYmUgc3RhcnRlZCBpZiBvbmUgaXMgbm90VCBhbHJlYWR5IGluIHByb2dyZXNzLjRyZW1vdmVfbWVtYmVyBAx3aG8cQWRkcmVzcxAhASBSZW1vdmUgYSBwYXJ0aWN1bGFyIG1lbWJlciBmcm9tIHRoZSBzZXQuIFRoaXMgaXMgZWZmZWN0aXZlIGltbWVkaWF0ZWx5LgAhASBOb3RlOiBBIHRhbGx5IHNob3VsZCBoYXBwZW4gaW5zdGFudGx5IChpZiBub3QgYWxyZWFkeSBpbiBhIHByZXNlbnRhdGlvbkEBIHBlcmlvZCkgdG8gZmlsbCB0aGUgc2VhdCBpZiByZW1vdmFsIG1lYW5zIHRoYXQgdGhlIGRlc2lyZWQgbWVtYmVycyBhcmUgbm90IG1ldC5kc2V0X3ByZXNlbnRhdGlvbl9kdXJhdGlvbgQUY291bnRQQ29tcGFjdDxCbG9ja051bWJlcj4IWQEgU2V0IHRoZSBwcmVzZW50YXRpb24gZHVyYXRpb24uIElmIHRoZXJlIGlzIGN1cnJlbnRseSBhIHZvdGUgYmVpbmcgcHJlc2VudGVkIGZvciwgd2lsbGAgaW52b2tlIGBmaW5hbGl6ZV92b3RlYC5Ec2V0X3Rlcm1fZHVyYXRpb24EFGNvdW50UENvbXBhY3Q8QmxvY2tOdW1iZXI+CFEBIFNldCB0aGUgcHJlc2VudGF0aW9uIGR1cmF0aW9uLiBJZiB0aGVyZSBpcyBjdXJyZW50IGEgdm90ZSBiZWluZyBwcmVzZW50ZWQgZm9yLCB3aWxsYCBpbnZva2UgYGZpbmFsaXplX3ZvdGVgLgAATFRlY2huaWNhbE1lbWJlcnNoaXAAARAoYWRkX21lbWJlcgQMd2hvJEFjY291bnRJZAx8IEFkZCBhIG1lbWJlciBgd2hvYCB0byB0aGUgc2V0LgC0IE1heSBvbmx5IGJlIGNhbGxlZCBmcm9tIGBBZGRPcmlnaW5gIG9yIHJvb3QuNHJlbW92ZV9tZW1iZXIEDHdobyRBY2NvdW50SWQMkCBSZW1vdmUgYSBtZW1iZXIgYHdob2AgZnJvbSB0aGUgc2V0LgDAIE1heSBvbmx5IGJlIGNhbGxlZCBmcm9tIGBSZW1vdmVPcmlnaW5gIG9yIHJvb3QuLHN3YXBfbWVtYmVyCBhyZW1vdmUkQWNjb3VudElkDGFkZCRBY2NvdW50SWQMwCBTd2FwIG91dCBvbmUgbWVtYmVyIGByZW1vdmVgIGZvciBhbm90aGVyIGBhZGRgLgC4IE1heSBvbmx5IGJlIGNhbGxlZCBmcm9tIGBTd2FwT3JpZ2luYCBvciByb290LjRyZXNldF9tZW1iZXJzBBxtZW1iZXJzOFZlYzxBY2NvdW50SWQ+EFkBIENoYW5nZSB0aGUgbWVtYmVyc2hpcCB0byBhIG5ldyBzZXQsIGRpc3JlZ2FyZGluZyB0aGUgZXhpc3RpbmcgbWVtYmVyc2hpcC4gQmUgbmljZSBhbmRsIHBhc3MgYG1lbWJlcnNgIHByZS1zb3J0ZWQuALwgTWF5IG9ubHkgYmUgY2FsbGVkIGZyb20gYFJlc2V0T3JpZ2luYCBvciByb290LgAAIFRyZWFzdXJ5AAEMNHByb3Bvc2Vfc3BlbmQIFHZhbHVlSENvbXBhY3Q8QmFsYW5jZU9mPixiZW5lZmljaWFyeRxBZGRyZXNzJC0BIFB1dCBmb3J3YXJkIGEgc3VnZ2VzdGlvbiBmb3Igc3BlbmRpbmcuIEEgZGVwb3NpdCBwcm9wb3J0aW9uYWwgdG8gdGhlIHZhbHVlNQEgaXMgcmVzZXJ2ZWQgYW5kIHNsYXNoZWQgaWYgdGhlIHByb3Bvc2FsIGlzIHJlamVjdGVkLiBJdCBpcyByZXR1cm5lZCBvbmNlIHRoZVQgcHJvcG9zYWwgaXMgYXdhcmRlZC4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkuZCAtIExpbWl0ZWQgc3RvcmFnZSByZWFkcy6UIC0gT25lIERCIGNoYW5nZSwgb25lIGV4dHJhIERCIGVudHJ5LjAgIyA8L3dlaWdodD48cmVqZWN0X3Byb3Bvc2FsBCxwcm9wb3NhbF9pZFhDb21wYWN0PFByb3Bvc2FsSW5kZXg+HPwgUmVqZWN0IGEgcHJvcG9zZWQgc3BlbmQuIFRoZSBvcmlnaW5hbCBkZXBvc2l0IHdpbGwgYmUgc2xhc2hlZC4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkuZCAtIExpbWl0ZWQgc3RvcmFnZSByZWFkcy5AIC0gT25lIERCIGNsZWFyLjAgIyA8L3dlaWdodD5AYXBwcm92ZV9wcm9wb3NhbAQscHJvcG9zYWxfaWRYQ29tcGFjdDxQcm9wb3NhbEluZGV4PiBdASBBcHByb3ZlIGEgcHJvcG9zYWwuIEF0IGEgbGF0ZXIgdGltZSwgdGhlIHByb3Bvc2FsIHdpbGwgYmUgYWxsb2NhdGVkIHRvIHRoZSBiZW5lZmljaWFyeawgYW5kIHRoZSBvcmlnaW5hbCBkZXBvc2l0IHdpbGwgYmUgcmV0dXJuZWQuACwgIyA8d2VpZ2h0PiAgLSBPKDEpLmQgLSBMaW1pdGVkIHN0b3JhZ2UgcmVhZHMuRCAtIE9uZSBEQiBjaGFuZ2UuMCAjIDwvd2VpZ2h0PgAAGENsYWltcwABBBRjbGFpbQgQZGVzdCRBY2NvdW50SWRIZXRoZXJldW1fc2lnbmF0dXJlOEVjZHNhU2lnbmF0dXJlBDggTWFrZSBhIGNsYWltLgAAKFBhcmFjaGFpbnMAAQwkc2V0X2hlYWRzBBRoZWFkc1hWZWM8QXR0ZXN0ZWRDYW5kaWRhdGU+BBUBIFByb3ZpZGUgY2FuZGlkYXRlIHJlY2VpcHRzIGZvciBwYXJhY2hhaW5zLCBpbiBhc2NlbmRpbmcgb3JkZXIgYnkgaWQuSHJlZ2lzdGVyX3BhcmFjaGFpbgwIaWQYUGFyYUlkEGNvZGUUQnl0ZXNEaW5pdGlhbF9oZWFkX2RhdGEUQnl0ZXMImCBSZWdpc3RlciBhIHBhcmFjaGFpbiB3aXRoIGdpdmVuIGNvZGUujCBGYWlscyBpZiBnaXZlbiBJRCBpcyBhbHJlYWR5IHVzZWQuUGRlcmVnaXN0ZXJfcGFyYWNoYWluBAhpZBhQYXJhSWQElCBEZXJlZ2lzdGVyIGEgcGFyYWNoYWluIHdpdGggZ2l2ZW4gaWQAADBBdHRlc3RhdGlvbnMAAQREbW9yZV9hdHRlc3RhdGlvbnMEFF9tb3JlQE1vcmVBdHRlc3RhdGlvbnMEFQEgUHJvdmlkZSBjYW5kaWRhdGUgcmVjZWlwdHMgZm9yIHBhcmFjaGFpbnMsIGluIGFzY2VuZGluZyBvcmRlciBieSBpZC4AABRTbG90cwABGCxuZXdfYXVjdGlvbgggZHVyYXRpb25QQ29tcGFjdDxCbG9ja051bWJlcj5IbGVhc2VfcGVyaW9kX2luZGV4WENvbXBhY3Q8TGVhc2VQZXJpb2RPZj4UWCBDcmVhdGUgYSBuZXcgYXVjdGlvbi4AVQEgVGhpcyBjYW4gb25seSBoYXBwZW4gd2hlbiB0aGVyZSBpc24ndCBhbHJlYWR5IGFuIGF1Y3Rpb24gaW4gcHJvZ3Jlc3MgYW5kIG1heSBvbmx5IGJlKQEgY2FsbGVkIGJ5IHRoZSByb290IG9yaWdpbi4gQWNjZXB0cyB0aGUgYGR1cmF0aW9uYCBvZiB0aGlzIGF1Y3Rpb24gYW5kIHRoZV0BIGBsZWFzZV9wZXJpb2RfaW5kZXhgIG9mIHRoZSBpbml0aWFsIGxlYXNlIHBlcmlvZCBvZiB0aGUgZm91ciB0aGF0IGFyZSB0byBiZSBhdWN0aW9uZWQuDGJpZBQMc3ViOENvbXBhY3Q8U3ViSWQ+NGF1Y3Rpb25faW5kZXhUQ29tcGFjdDxBdWN0aW9uSW5kZXg+KGZpcnN0X3Nsb3RYQ29tcGFjdDxMZWFzZVBlcmlvZE9mPiRsYXN0X3Nsb3RYQ29tcGFjdDxMZWFzZVBlcmlvZE9mPhhhbW91bnRIQ29tcGFjdDxCYWxhbmNlT2Y+QE0BIE1ha2UgYSBuZXcgYmlkIGZyb20gYW4gYWNjb3VudCAoaW5jbHVkaW5nIGEgcGFyYWNoYWluIGFjY291bnQpIGZvciBkZXBsb3lpbmcgYSBuZXcsIHBhcmFjaGFpbi4AXQEgTXVsdGlwbGUgc2ltdWx0YW5lb3VzIGJpZHMgZnJvbSB0aGUgc2FtZSBiaWRkZXIgYXJlIGFsbG93ZWQgb25seSBhcyBsb25nIGFzIGFsbCBhY3RpdmVBASBiaWRzIG92ZXJsYXAgZWFjaCBvdGhlciAoaS5lLiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlKS4gQmlkcyBjYW5ub3QgYmUgcmVkYWN0ZWQuAFkBIC0gYHN1YmAgaXMgdGhlIHN1Yi1iaWRkZXIgSUQsIGFsbG93aW5nIGZvciBtdWx0aXBsZSBjb21wZXRpbmcgYmlkcyB0byBiZSBtYWRlIGJ5IChhbmR0IGZ1bmRlZCBieSkgdGhlIHNhbWUgYWNjb3VudC5RASAtIGBhdWN0aW9uX2luZGV4YCBpcyB0aGUgaW5kZXggb2YgdGhlIGF1Y3Rpb24gdG8gYmlkIG9uLiBTaG91bGQganVzdCBiZSB0aGUgcHJlc2VudGwgdmFsdWUgb2YgYEF1Y3Rpb25Db3VudGVyYC5NASAtIGBmaXJzdF9zbG90YCBpcyB0aGUgZmlyc3QgbGVhc2UgcGVyaW9kIGluZGV4IG9mIHRoZSByYW5nZSB0byBiaWQgb24uIFRoaXMgaXMgdGhlDQEgYWJzb2x1dGUgbGVhc2UgcGVyaW9kIGluZGV4IHZhbHVlLCBub3QgYW4gYXVjdGlvbi1zcGVjaWZpYyBvZmZzZXQuRQEgLSBgbGFzdF9zbG90YCBpcyB0aGUgbGFzdCBsZWFzZSBwZXJpb2QgaW5kZXggb2YgdGhlIHJhbmdlIHRvIGJpZCBvbi4gVGhpcyBpcyB0aGUNASBhYnNvbHV0ZSBsZWFzZSBwZXJpb2QgaW5kZXggdmFsdWUsIG5vdCBhbiBhdWN0aW9uLXNwZWNpZmljIG9mZnNldC5NASAtIGBhbW91bnRgIGlzIHRoZSBhbW91bnQgdG8gYmlkIHRvIGJlIGhlbGQgYXMgZGVwb3NpdCBmb3IgdGhlIHBhcmFjaGFpbiBzaG91bGQgdGhlzCBiaWQgd2luLiBUaGlzIGFtb3VudCBpcyBoZWxkIHRocm91Z2hvdXQgdGhlIHJhbmdlLiRiaWRfcmVuZXcQNGF1Y3Rpb25faW5kZXhUQ29tcGFjdDxBdWN0aW9uSW5kZXg+KGZpcnN0X3Nsb3RYQ29tcGFjdDxMZWFzZVBlcmlvZE9mPiRsYXN0X3Nsb3RYQ29tcGFjdDxMZWFzZVBlcmlvZE9mPhhhbW91bnRIQ29tcGFjdDxCYWxhbmNlT2Y+PFEBIE1ha2UgYSBuZXcgYmlkIGZyb20gYSBwYXJhY2hhaW4gYWNjb3VudCBmb3IgcmVuZXdpbmcgdGhhdCAocHJlLWV4aXN0aW5nKSBwYXJhY2hhaW4uAKggVGhlIG9yaWdpbiAqbXVzdCogYmUgYSBwYXJhY2hhaW4gYWNjb3VudC4AXQEgTXVsdGlwbGUgc2ltdWx0YW5lb3VzIGJpZHMgZnJvbSB0aGUgc2FtZSBiaWRkZXIgYXJlIGFsbG93ZWQgb25seSBhcyBsb25nIGFzIGFsbCBhY3RpdmVBASBiaWRzIG92ZXJsYXAgZWFjaCBvdGhlciAoaS5lLiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlKS4gQmlkcyBjYW5ub3QgYmUgcmVkYWN0ZWQuAFEBIC0gYGF1Y3Rpb25faW5kZXhgIGlzIHRoZSBpbmRleCBvZiB0aGUgYXVjdGlvbiB0byBiaWQgb24uIFNob3VsZCBqdXN0IGJlIHRoZSBwcmVzZW50bCB2YWx1ZSBvZiBgQXVjdGlvbkNvdW50ZXJgLk0BIC0gYGZpcnN0X3Nsb3RgIGlzIHRoZSBmaXJzdCBsZWFzZSBwZXJpb2QgaW5kZXggb2YgdGhlIHJhbmdlIHRvIGJpZCBvbi4gVGhpcyBpcyB0aGUNASBhYnNvbHV0ZSBsZWFzZSBwZXJpb2QgaW5kZXggdmFsdWUsIG5vdCBhbiBhdWN0aW9uLXNwZWNpZmljIG9mZnNldC5FASAtIGBsYXN0X3Nsb3RgIGlzIHRoZSBsYXN0IGxlYXNlIHBlcmlvZCBpbmRleCBvZiB0aGUgcmFuZ2UgdG8gYmlkIG9uLiBUaGlzIGlzIHRoZQ0BIGFic29sdXRlIGxlYXNlIHBlcmlvZCBpbmRleCB2YWx1ZSwgbm90IGFuIGF1Y3Rpb24tc3BlY2lmaWMgb2Zmc2V0Lk0BIC0gYGFtb3VudGAgaXMgdGhlIGFtb3VudCB0byBiaWQgdG8gYmUgaGVsZCBhcyBkZXBvc2l0IGZvciB0aGUgcGFyYWNoYWluIHNob3VsZCB0aGXMIGJpZCB3aW4uIFRoaXMgYW1vdW50IGlzIGhlbGQgdGhyb3VnaG91dCB0aGUgcmFuZ2UuPHNldF9vZmZib2FyZGluZwQQZGVzdBxBZGRyZXNzFMggU2V0IHRoZSBvZmYtYm9hcmRpbmcgaW5mb3JtYXRpb24gZm9yIGEgcGFyYWNoYWluLgCoIFRoZSBvcmlnaW4gKm11c3QqIGJlIGEgcGFyYWNoYWluIGFjY291bnQuACEBIC0gYGRlc3RgIGlzIHRoZSBkZXN0aW5hdGlvbiBhY2NvdW50IHRvIHJlY2VpdmUgdGhlIHBhcmFjaGFpbidzIGRlcG9zaXQuPGZpeF9kZXBsb3lfZGF0YRAMc3ViOENvbXBhY3Q8U3ViSWQ+HHBhcmFfaWREQ29tcGFjdDxQYXJhSWRPZj4kY29kZV9oYXNoEEhhc2hEaW5pdGlhbF9oZWFkX2RhdGEUQnl0ZXMcLQEgU2V0IHRoZSBkZXBsb3kgaW5mb3JtYXRpb24gZm9yIGEgc3VjY2Vzc2Z1bCBiaWQgdG8gZGVwbG95IGEgbmV3IHBhcmFjaGFpbi4AyCAtIGBvcmlnaW5gIG11c3QgYmUgdGhlIHN1Y2Nlc3NmdWwgYmlkZGVyIGFjY291bnQusCAtIGBzdWJgIGlzIHRoZSBzdWItYmlkZGVyIElEIG9mIHRoZSBiaWRkZXIuAQEgLSBgcGFyYV9pZGAgaXMgdGhlIHBhcmFjaGFpbiBJRCBhbGxvdHRlZCB0byB0aGUgd2lubmluZyBiaWRkZXIuHQEgLSBgY29kZV9oYXNoYCBpcyB0aGUgaGFzaCBvZiB0aGUgcGFyYWNoYWluJ3MgV2FzbSB2YWxpZGF0aW9uIGZ1bmN0aW9uLvAgLSBgaW5pdGlhbF9oZWFkX2RhdGFgIGlzIHRoZSBwYXJhY2hhaW4ncyBpbml0aWFsIGhlYWQgZGF0YS5UZWxhYm9yYXRlX2RlcGxveV9kYXRhCBxwYXJhX2lkRENvbXBhY3Q8UGFyYUlkT2Y+EGNvZGUUQnl0ZXMwdCBOb3RlIGEgbmV3IHBhcmFjaGFpbidzIGNvZGUuAE0BIFRoaXMgbXVzdCBiZSBjYWxsZWQgYWZ0ZXIgYGZpeF9kZXBsb3lfZGF0YWAgYW5kIGBjb2RlYCBtdXN0IGJlIHRoZSBwcmVpbWFnZSBvZiB0aGXEIGBjb2RlX2hhc2hgIHBhc3NlZCB0aGVyZSBmb3IgdGhlIHNhbWUgYHBhcmFfaWRgLgBhASBUaGlzIG1heSBiZSBjYWxsZWQgYmVmb3JlIG9yIGFmdGVyIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHBhcmFjaGFpbidzIGZpcnN0IGxlYXNlIHBlcmlvZC5FASBJZiBjYWxsZWQgYmVmb3JlIHRoZW4gdGhlIHBhcmFjaGFpbiB3aWxsIGJlY29tZSBhY3RpdmUgYXQgdGhlIGZpcnN0IGJsb2NrIG9mIGl0c2UBIHN0YXJ0aW5nIGxlYXNlIHBlcmlvZC4gSWYgYWZ0ZXIsIHRoZW4gaXQgd2lsbCBiZWNvbWUgYWN0aXZlIGltbWVkaWF0ZWx5IGFmdGVyIHRoaXMgY2FsbC4AbCAtIGBfb3JpZ2luYCBpcyBpcnJlbGV2YW50LvwgLSBgcGFyYV9pZGAgaXMgdGhlIHBhcmFjaGFpbiBJRCB3aG9zZSBjb2RlIHdpbGwgYmUgZWxhYm9yYXRlZC4VASAtIGBjb2RlYCBpcyB0aGUgcHJlaW1hZ2Ugb2YgdGhlIHJlZ2lzdGVyZWQgYGNvZGVfaGFzaGAgb2YgYHBhcmFfaWRgLgAAEFN1ZG8AAQwQc3VkbwQgcHJvcG9zYWwgUHJvcG9zYWwoOQEgQXV0aGVudGljYXRlcyB0aGUgc3VkbyBrZXkgYW5kIGRpc3BhdGNoZXMgYSBmdW5jdGlvbiBjYWxsIHdpdGggYFJvb3RgIG9yaWdpbi4A0CBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfU2lnbmVkXy4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkuZCAtIExpbWl0ZWQgc3RvcmFnZSByZWFkcy5gIC0gT25lIERCIHdyaXRlIChldmVudCku1CAtIFVua25vd24gd2VpZ2h0IG9mIGRlcml2YXRpdmUgYHByb3Bvc2FsYCBleGVjdXRpb24uMCAjIDwvd2VpZ2h0PhxzZXRfa2V5BAxuZXccQWRkcmVzcyR1ASBBdXRoZW50aWNhdGVzIHRoZSBjdXJyZW50IHN1ZG8ga2V5IGFuZCBzZXRzIHRoZSBnaXZlbiBBY2NvdW50SWQgKGBuZXdgKSBhcyB0aGUgbmV3IHN1ZG8ga2V5LgDQIFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBtdXN0IGJlIF9TaWduZWRfLgAsICMgPHdlaWdodD4gIC0gTygxKS5kIC0gTGltaXRlZCBzdG9yYWdlIHJlYWRzLkQgLSBPbmUgREIgY2hhbmdlLjAgIyA8L3dlaWdodD4cc3Vkb19hcwgMd2hvHEFkZHJlc3MgcHJvcG9zYWwgUHJvcG9zYWwsUQEgQXV0aGVudGljYXRlcyB0aGUgc3VkbyBrZXkgYW5kIGRpc3BhdGNoZXMgYSBmdW5jdGlvbiBjYWxsIHdpdGggYFNpZ25lZGAgb3JpZ2luIGZyb21EIGEgZ2l2ZW4gYWNjb3VudC4A0CBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfU2lnbmVkXy4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkuZCAtIExpbWl0ZWQgc3RvcmFnZSByZWFkcy5gIC0gT25lIERCIHdyaXRlIChldmVudCku1CAtIFVua25vd24gd2VpZ2h0IG9mIGRlcml2YXRpdmUgYHByb3Bvc2FsYCBleGVjdXRpb24uMCAjIDwvd2VpZ2h0PgAA' -}; diff --git a/packages/extension-chains/src/kusama-cc3.ts b/packages/extension-chains/src/kusama-cc3.ts new file mode 100644 index 00000000..88ead42c --- /dev/null +++ b/packages/extension-chains/src/kusama-cc3.ts @@ -0,0 +1,19 @@ +// Copyright 2019 @polkadot/extension-chains authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +// Generated via 'yarn run chain:info ws://127.0.0.1:9944' + +export default { + chain: 'Kusama CC3', + genesisHash: '0xb0a8d493285c2df73290dfb7e61f870f17b41801197a149ca93654499ea3dafe', + icon: 'polkadot', + specVersion: 1028, + ss58Format: 2, + tokenDecimals: 12, + tokenSymbol: 'KSM', + types: { + Keys: 'SessionKeys5' + }, + metaCalls: 'bWV0YQlsGFN5c3RlbQABHChmaWxsX2Jsb2NrAAQhASBBIGJpZyBkaXNwYXRjaCB0aGF0IHdpbGwgZGlzYWxsb3cgYW55IG90aGVyIHRyYW5zYWN0aW9uIHRvIGJlIGluY2x1ZGVkLhhyZW1hcmsEHF9yZW1hcmsUQnl0ZXMEbCBNYWtlIHNvbWUgb24tY2hhaW4gcmVtYXJrLjhzZXRfaGVhcF9wYWdlcwQUcGFnZXMMdTY0BPwgU2V0IHRoZSBudW1iZXIgb2YgcGFnZXMgaW4gdGhlIFdlYkFzc2VtYmx5IGVudmlyb25tZW50J3MgaGVhcC4gc2V0X2NvZGUEDG5ldxRCeXRlcwRIIFNldCB0aGUgbmV3IGNvZGUuLHNldF9zdG9yYWdlBBRpdGVtczRWZWM8S2V5VmFsdWU+BGwgU2V0IHNvbWUgaXRlbXMgb2Ygc3RvcmFnZS4wa2lsbF9zdG9yYWdlBBBrZXlzIFZlYzxLZXk+BHggS2lsbCBzb21lIGl0ZW1zIGZyb20gc3RvcmFnZS4sa2lsbF9wcmVmaXgEGHByZWZpeAxLZXkEFQEgS2lsbCBhbGwgc3RvcmFnZSBpdGVtcyB3aXRoIGEga2V5IHRoYXQgc3RhcnRzIHdpdGggdGhlIGdpdmVuIHByZWZpeC4AAABgUmFuZG9tbmVzc0NvbGxlY3RpdmVGbGlwAAAAAAAQQmFiZQABAAAAACRUaW1lc3RhbXAAAQQMc2V0BAxub3c8Q29tcGFjdDxNb21lbnQ+JFggU2V0IHRoZSBjdXJyZW50IHRpbWUuAFkBIFRoaXMgY2FsbCBzaG91bGQgYmUgaW52b2tlZCBleGFjdGx5IG9uY2UgcGVyIGJsb2NrLiBJdCB3aWxsIHBhbmljIGF0IHRoZSBmaW5hbGl6YXRpb27YIHBoYXNlLCBpZiB0aGlzIGNhbGwgaGFzbid0IGJlZW4gaW52b2tlZCBieSB0aGF0IHRpbWUuAEUBIFRoZSB0aW1lc3RhbXAgc2hvdWxkIGJlIGdyZWF0ZXIgdGhhbiB0aGUgcHJldmlvdXMgb25lIGJ5IHRoZSBhbW91bnQgc3BlY2lmaWVkIGJ5RCBgTWluaW11bVBlcmlvZGAuANggVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgYEluaGVyZW50YC4AAAAcSW5kaWNlcwABAAAAACBCYWxhbmNlcwABECB0cmFuc2ZlcggQZGVzdBxBZGRyZXNzFHZhbHVlQENvbXBhY3Q8QmFsYW5jZT5k2CBUcmFuc2ZlciBzb21lIGxpcXVpZCBmcmVlIGJhbGFuY2UgdG8gYW5vdGhlciBhY2NvdW50LgAJASBgdHJhbnNmZXJgIHdpbGwgc2V0IHRoZSBgRnJlZUJhbGFuY2VgIG9mIHRoZSBzZW5kZXIgYW5kIHJlY2VpdmVyLiEBIEl0IHdpbGwgZGVjcmVhc2UgdGhlIHRvdGFsIGlzc3VhbmNlIG9mIHRoZSBzeXN0ZW0gYnkgdGhlIGBUcmFuc2ZlckZlZWAuFQEgSWYgdGhlIHNlbmRlcidzIGFjY291bnQgaXMgYmVsb3cgdGhlIGV4aXN0ZW50aWFsIGRlcG9zaXQgYXMgYSByZXN1bHS0IG9mIHRoZSB0cmFuc2ZlciwgdGhlIGFjY291bnQgd2lsbCBiZSByZWFwZWQuABkBIFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBtdXN0IGJlIGBTaWduZWRgIGJ5IHRoZSB0cmFuc2FjdG9yLgAsICMgPHdlaWdodD4xASAtIERlcGVuZGVudCBvbiBhcmd1bWVudHMgYnV0IG5vdCBjcml0aWNhbCwgZ2l2ZW4gcHJvcGVyIGltcGxlbWVudGF0aW9ucyBmb3LMICAgaW5wdXQgY29uZmlnIHR5cGVzLiBTZWUgcmVsYXRlZCBmdW5jdGlvbnMgYmVsb3cuaQEgLSBJdCBjb250YWlucyBhIGxpbWl0ZWQgbnVtYmVyIG9mIHJlYWRzIGFuZCB3cml0ZXMgaW50ZXJuYWxseSBhbmQgbm8gY29tcGxleCBjb21wdXRhdGlvbi4ATCBSZWxhdGVkIGZ1bmN0aW9uczoAUQEgICAtIGBlbnN1cmVfY2FuX3dpdGhkcmF3YCBpcyBhbHdheXMgY2FsbGVkIGludGVybmFsbHkgYnV0IGhhcyBhIGJvdW5kZWQgY29tcGxleGl0eS4tASAgIC0gVHJhbnNmZXJyaW5nIGJhbGFuY2VzIHRvIGFjY291bnRzIHRoYXQgZGlkIG5vdCBleGlzdCBiZWZvcmUgd2lsbCBjYXVzZdQgICAgICBgVDo6T25OZXdBY2NvdW50Ojpvbl9uZXdfYWNjb3VudGAgdG8gYmUgY2FsbGVkLtwgICAtIFJlbW92aW5nIGVub3VnaCBmdW5kcyBmcm9tIGFuIGFjY291bnQgd2lsbCB0cmlnZ2VyWQEgICAgIGBUOjpEdXN0UmVtb3ZhbDo6b25fdW5iYWxhbmNlZGAgYW5kIGBUOjpPbkZyZWVCYWxhbmNlWmVybzo6b25fZnJlZV9iYWxhbmNlX3plcm9gLkkBICAgLSBgdHJhbnNmZXJfa2VlcF9hbGl2ZWAgd29ya3MgdGhlIHNhbWUgd2F5IGFzIGB0cmFuc2ZlcmAsIGJ1dCBoYXMgYW4gYWRkaXRpb25hbPggICAgIGNoZWNrIHRoYXQgdGhlIHRyYW5zZmVyIHdpbGwgbm90IGtpbGwgdGhlIG9yaWdpbiBhY2NvdW50LgAwICMgPC93ZWlnaHQ+LHNldF9iYWxhbmNlDAx3aG8cQWRkcmVzcyBuZXdfZnJlZUBDb21wYWN0PEJhbGFuY2U+MG5ld19yZXNlcnZlZEBDb21wYWN0PEJhbGFuY2U+NJQgU2V0IHRoZSBiYWxhbmNlcyBvZiBhIGdpdmVuIGFjY291bnQuACEBIFRoaXMgd2lsbCBhbHRlciBgRnJlZUJhbGFuY2VgIGFuZCBgUmVzZXJ2ZWRCYWxhbmNlYCBpbiBzdG9yYWdlLiBpdCB3aWxsCQEgYWxzbyBkZWNyZWFzZSB0aGUgdG90YWwgaXNzdWFuY2Ugb2YgdGhlIHN5c3RlbSAoYFRvdGFsSXNzdWFuY2VgKS4ZASBJZiB0aGUgbmV3IGZyZWUgb3IgcmVzZXJ2ZWQgYmFsYW5jZSBpcyBiZWxvdyB0aGUgZXhpc3RlbnRpYWwgZGVwb3NpdCzoIGl0IHdpbGwgcmVzZXQgdGhlIGFjY291bnQgbm9uY2UgKGBzeXN0ZW06OkFjY291bnROb25jZWApLgC0IFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBpcyBgcm9vdGAuACwgIyA8d2VpZ2h0PoAgLSBJbmRlcGVuZGVudCBvZiB0aGUgYXJndW1lbnRzLsQgLSBDb250YWlucyBhIGxpbWl0ZWQgbnVtYmVyIG9mIHJlYWRzIGFuZCB3cml0ZXMuMCAjIDwvd2VpZ2h0Pjhmb3JjZV90cmFuc2ZlcgwYc291cmNlHEFkZHJlc3MQZGVzdBxBZGRyZXNzFHZhbHVlQENvbXBhY3Q8QmFsYW5jZT4IUQEgRXhhY3RseSBhcyBgdHJhbnNmZXJgLCBleGNlcHQgdGhlIG9yaWdpbiBtdXN0IGJlIHJvb3QgYW5kIHRoZSBzb3VyY2UgYWNjb3VudCBtYXkgYmUsIHNwZWNpZmllZC5MdHJhbnNmZXJfa2VlcF9hbGl2ZQgQZGVzdBxBZGRyZXNzFHZhbHVlQENvbXBhY3Q8QmFsYW5jZT4YUQEgU2FtZSBhcyB0aGUgW2B0cmFuc2ZlcmBdIGNhbGwsIGJ1dCB3aXRoIGEgY2hlY2sgdGhhdCB0aGUgdHJhbnNmZXIgd2lsbCBub3Qga2lsbCB0aGVAIG9yaWdpbiBhY2NvdW50LgC8IDk5JSBvZiB0aGUgdGltZSB5b3Ugd2FudCBbYHRyYW5zZmVyYF0gaW5zdGVhZC4AxCBbYHRyYW5zZmVyYF06IHN0cnVjdC5Nb2R1bGUuaHRtbCNtZXRob2QudHJhbnNmZXIAAABIVHJhbnNhY3Rpb25QYXltZW50AAAAAAAoQXV0aG9yc2hpcAABBChzZXRfdW5jbGVzBChuZXdfdW5jbGVzLFZlYzxIZWFkZXI+BGQgUHJvdmlkZSBhIHNldCBvZiB1bmNsZXMuAAAAHFN0YWtpbmcAAUAQYm9uZAwoY29udHJvbGxlchxBZGRyZXNzFHZhbHVlSENvbXBhY3Q8QmFsYW5jZU9mPhRwYXllZURSZXdhcmREZXN0aW5hdGlvbjxlASBUYWtlIHRoZSBvcmlnaW4gYWNjb3VudCBhcyBhIHN0YXNoIGFuZCBsb2NrIHVwIGB2YWx1ZWAgb2YgaXRzIGJhbGFuY2UuIGBjb250cm9sbGVyYCB3aWxshCBiZSB0aGUgYWNjb3VudCB0aGF0IGNvbnRyb2xzIGl0LgAxASBgdmFsdWVgIG11c3QgYmUgbW9yZSB0aGFuIHRoZSBgbWluaW11bV9iYWxhbmNlYCBzcGVjaWZpZWQgYnkgYFQ6OkN1cnJlbmN5YC4AJQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8gYnkgdGhlIHN0YXNoIGFjY291bnQuACwgIyA8d2VpZ2h0PtQgLSBJbmRlcGVuZGVudCBvZiB0aGUgYXJndW1lbnRzLiBNb2RlcmF0ZSBjb21wbGV4aXR5LiAgLSBPKDEpLmggLSBUaHJlZSBleHRyYSBEQiBlbnRyaWVzLgBtASBOT1RFOiBUd28gb2YgdGhlIHN0b3JhZ2Ugd3JpdGVzIChgU2VsZjo6Ym9uZGVkYCwgYFNlbGY6OnBheWVlYCkgYXJlIF9uZXZlcl8gY2xlYW5lZCB1bmxlc3MlASB0aGUgYG9yaWdpbmAgZmFsbHMgYmVsb3cgX2V4aXN0ZW50aWFsIGRlcG9zaXRfIGFuZCBnZXRzIHJlbW92ZWQgYXMgZHVzdC4wICMgPC93ZWlnaHQ+KGJvbmRfZXh0cmEEOG1heF9hZGRpdGlvbmFsSENvbXBhY3Q8QmFsYW5jZU9mPjhlASBBZGQgc29tZSBleHRyYSBhbW91bnQgdGhhdCBoYXZlIGFwcGVhcmVkIGluIHRoZSBzdGFzaCBgZnJlZV9iYWxhbmNlYCBpbnRvIHRoZSBiYWxhbmNlIHVwNCBmb3Igc3Rha2luZy4AUQEgVXNlIHRoaXMgaWYgdGhlcmUgYXJlIGFkZGl0aW9uYWwgZnVuZHMgaW4geW91ciBzdGFzaCBhY2NvdW50IHRoYXQgeW91IHdpc2ggdG8gYm9uZC5lASBVbmxpa2UgW2Bib25kYF0gb3IgW2B1bmJvbmRgXSB0aGlzIGZ1bmN0aW9uIGRvZXMgbm90IGltcG9zZSBhbnkgbGltaXRhdGlvbiBvbiB0aGUgYW1vdW50TCB0aGF0IGNhbiBiZSBhZGRlZC4AVQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8gYnkgdGhlIHN0YXNoLCBub3QgdGhlIGNvbnRyb2xsZXIuACwgIyA8d2VpZ2h0PuggLSBJbmRlcGVuZGVudCBvZiB0aGUgYXJndW1lbnRzLiBJbnNpZ25pZmljYW50IGNvbXBsZXhpdHkuICAtIE8oMSkuQCAtIE9uZSBEQiBlbnRyeS4wICMgPC93ZWlnaHQ+GHVuYm9uZAQUdmFsdWVIQ29tcGFjdDxCYWxhbmNlT2Y+XFUBIFNjaGVkdWxlIGEgcG9ydGlvbiBvZiB0aGUgc3Rhc2ggdG8gYmUgdW5sb2NrZWQgcmVhZHkgZm9yIHRyYW5zZmVyIG91dCBhZnRlciB0aGUgYm9uZAEBIHBlcmlvZCBlbmRzLiBJZiB0aGlzIGxlYXZlcyBhbiBhbW91bnQgYWN0aXZlbHkgYm9uZGVkIGxlc3MgdGhhbiUBIFQ6OkN1cnJlbmN5OjptaW5pbXVtX2JhbGFuY2UoKSwgdGhlbiBpdCBpcyBpbmNyZWFzZWQgdG8gdGhlIGZ1bGwgYW1vdW50LgBJASBPbmNlIHRoZSB1bmxvY2sgcGVyaW9kIGlzIGRvbmUsIHlvdSBjYW4gY2FsbCBgd2l0aGRyYXdfdW5ib25kZWRgIHRvIGFjdHVhbGx5IG1vdmXAIHRoZSBmdW5kcyBvdXQgb2YgbWFuYWdlbWVudCByZWFkeSBmb3IgdHJhbnNmZXIuAD0BIE5vIG1vcmUgdGhhbiBhIGxpbWl0ZWQgbnVtYmVyIG9mIHVubG9ja2luZyBjaHVua3MgKHNlZSBgTUFYX1VOTE9DS0lOR19DSFVOS1NgKT0BIGNhbiBjby1leGlzdHMgYXQgdGhlIHNhbWUgdGltZS4gSW4gdGhhdCBjYXNlLCBbYENhbGw6OndpdGhkcmF3X3VuYm9uZGVkYF0gbmVlZPwgdG8gYmUgY2FsbGVkIGZpcnN0IHRvIHJlbW92ZSBzb21lIG9mIHRoZSBjaHVua3MgKGlmIHBvc3NpYmxlKS4AVQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8gYnkgdGhlIGNvbnRyb2xsZXIsIG5vdCB0aGUgc3Rhc2guAJggU2VlIGFsc28gW2BDYWxsOjp3aXRoZHJhd191bmJvbmRlZGBdLgAsICMgPHdlaWdodD5BASAtIEluZGVwZW5kZW50IG9mIHRoZSBhcmd1bWVudHMuIExpbWl0ZWQgYnV0IHBvdGVudGlhbGx5IGV4cGxvaXRhYmxlIGNvbXBsZXhpdHkumCAtIENvbnRhaW5zIGEgbGltaXRlZCBudW1iZXIgb2YgcmVhZHMuZQEgLSBFYWNoIGNhbGwgKHJlcXVpcmVzIHRoZSByZW1haW5kZXIgb2YgdGhlIGJvbmRlZCBiYWxhbmNlIHRvIGJlIGFib3ZlIGBtaW5pbXVtX2JhbGFuY2VgKXEBICAgd2lsbCBjYXVzZSBhIG5ldyBlbnRyeSB0byBiZSBpbnNlcnRlZCBpbnRvIGEgdmVjdG9yIChgTGVkZ2VyLnVubG9ja2luZ2ApIGtlcHQgaW4gc3RvcmFnZS6lASAgIFRoZSBvbmx5IHdheSB0byBjbGVhbiB0aGUgYWZvcmVtZW50aW9uZWQgc3RvcmFnZSBpdGVtIGlzIGFsc28gdXNlci1jb250cm9sbGVkIHZpYSBgd2l0aGRyYXdfdW5ib25kZWRgLkAgLSBPbmUgREIgZW50cnkuKCA8L3dlaWdodD5Ed2l0aGRyYXdfdW5ib25kZWQAQC0BIFJlbW92ZSBhbnkgdW5sb2NrZWQgY2h1bmtzIGZyb20gdGhlIGB1bmxvY2tpbmdgIHF1ZXVlIGZyb20gb3VyIG1hbmFnZW1lbnQuADUBIFRoaXMgZXNzZW50aWFsbHkgZnJlZXMgdXAgdGhhdCBiYWxhbmNlIHRvIGJlIHVzZWQgYnkgdGhlIHN0YXNoIGFjY291bnQgdG8gZG9MIHdoYXRldmVyIGl0IHdhbnRzLgBVASBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfU2lnbmVkXyBieSB0aGUgY29udHJvbGxlciwgbm90IHRoZSBzdGFzaC4AbCBTZWUgYWxzbyBbYENhbGw6OnVuYm9uZGBdLgAsICMgPHdlaWdodD5VASAtIENvdWxkIGJlIGRlcGVuZGVudCBvbiB0aGUgYG9yaWdpbmAgYXJndW1lbnQgYW5kIGhvdyBtdWNoIGB1bmxvY2tpbmdgIGNodW5rcyBleGlzdC5FASAgSXQgaW1wbGllcyBgY29uc29saWRhdGVfdW5sb2NrZWRgIHdoaWNoIGxvb3BzIG92ZXIgYExlZGdlci51bmxvY2tpbmdgLCB3aGljaCBpc/QgIGluZGlyZWN0bHkgdXNlci1jb250cm9sbGVkLiBTZWUgW2B1bmJvbmRgXSBmb3IgbW9yZSBkZXRhaWwueQEgLSBDb250YWlucyBhIGxpbWl0ZWQgbnVtYmVyIG9mIHJlYWRzLCB5ZXQgdGhlIHNpemUgb2Ygd2hpY2ggY291bGQgYmUgbGFyZ2UgYmFzZWQgb24gYGxlZGdlcmAuyCAtIFdyaXRlcyBhcmUgbGltaXRlZCB0byB0aGUgYG9yaWdpbmAgYWNjb3VudCBrZXkuMCAjIDwvd2VpZ2h0PiB2YWxpZGF0ZQQUcHJlZnM4VmFsaWRhdG9yUHJlZnMs6CBEZWNsYXJlIHRoZSBkZXNpcmUgdG8gdmFsaWRhdGUgZm9yIHRoZSBvcmlnaW4gY29udHJvbGxlci4A3CBFZmZlY3RzIHdpbGwgYmUgZmVsdCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBuZXh0IGVyYS4AVQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8gYnkgdGhlIGNvbnRyb2xsZXIsIG5vdCB0aGUgc3Rhc2guACwgIyA8d2VpZ2h0PuggLSBJbmRlcGVuZGVudCBvZiB0aGUgYXJndW1lbnRzLiBJbnNpZ25pZmljYW50IGNvbXBsZXhpdHkumCAtIENvbnRhaW5zIGEgbGltaXRlZCBudW1iZXIgb2YgcmVhZHMuyCAtIFdyaXRlcyBhcmUgbGltaXRlZCB0byB0aGUgYG9yaWdpbmAgYWNjb3VudCBrZXkuMCAjIDwvd2VpZ2h0PiBub21pbmF0ZQQcdGFyZ2V0czBWZWM8QWRkcmVzcz4sEQEgRGVjbGFyZSB0aGUgZGVzaXJlIHRvIG5vbWluYXRlIGB0YXJnZXRzYCBmb3IgdGhlIG9yaWdpbiBjb250cm9sbGVyLgDcIEVmZmVjdHMgd2lsbCBiZSBmZWx0IGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIG5leHQgZXJhLgBVASBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfU2lnbmVkXyBieSB0aGUgY29udHJvbGxlciwgbm90IHRoZSBzdGFzaC4ALCAjIDx3ZWlnaHQ+JQEgLSBUaGUgdHJhbnNhY3Rpb24ncyBjb21wbGV4aXR5IGlzIHByb3BvcnRpb25hbCB0byB0aGUgc2l6ZSBvZiBgdGFyZ2V0c2AsmCB3aGljaCBpcyBjYXBwZWQgYXQgYE1BWF9OT01JTkFUSU9OU2Au2CAtIEJvdGggdGhlIHJlYWRzIGFuZCB3cml0ZXMgZm9sbG93IGEgc2ltaWxhciBwYXR0ZXJuLjAgIyA8L3dlaWdodD4UY2hpbGwALMggRGVjbGFyZSBubyBkZXNpcmUgdG8gZWl0aGVyIHZhbGlkYXRlIG9yIG5vbWluYXRlLgDcIEVmZmVjdHMgd2lsbCBiZSBmZWx0IGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIG5leHQgZXJhLgBVASBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfU2lnbmVkXyBieSB0aGUgY29udHJvbGxlciwgbm90IHRoZSBzdGFzaC4ALCAjIDx3ZWlnaHQ+6CAtIEluZGVwZW5kZW50IG9mIHRoZSBhcmd1bWVudHMuIEluc2lnbmlmaWNhbnQgY29tcGxleGl0eS5UIC0gQ29udGFpbnMgb25lIHJlYWQuyCAtIFdyaXRlcyBhcmUgbGltaXRlZCB0byB0aGUgYG9yaWdpbmAgYWNjb3VudCBrZXkuMCAjIDwvd2VpZ2h0PiRzZXRfcGF5ZWUEFHBheWVlRFJld2FyZERlc3RpbmF0aW9uLLggKFJlLSlzZXQgdGhlIHBheW1lbnQgdGFyZ2V0IGZvciBhIGNvbnRyb2xsZXIuANwgRWZmZWN0cyB3aWxsIGJlIGZlbHQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgbmV4dCBlcmEuAFUBIFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBtdXN0IGJlIF9TaWduZWRfIGJ5IHRoZSBjb250cm9sbGVyLCBub3QgdGhlIHN0YXNoLgAsICMgPHdlaWdodD7oIC0gSW5kZXBlbmRlbnQgb2YgdGhlIGFyZ3VtZW50cy4gSW5zaWduaWZpY2FudCBjb21wbGV4aXR5LpggLSBDb250YWlucyBhIGxpbWl0ZWQgbnVtYmVyIG9mIHJlYWRzLsggLSBXcml0ZXMgYXJlIGxpbWl0ZWQgdG8gdGhlIGBvcmlnaW5gIGFjY291bnQga2V5LjAgIyA8L3dlaWdodD44c2V0X2NvbnRyb2xsZXIEKGNvbnRyb2xsZXIcQWRkcmVzcyyQIChSZS0pc2V0IHRoZSBjb250cm9sbGVyIG9mIGEgc3Rhc2guANwgRWZmZWN0cyB3aWxsIGJlIGZlbHQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgbmV4dCBlcmEuAFUBIFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBtdXN0IGJlIF9TaWduZWRfIGJ5IHRoZSBzdGFzaCwgbm90IHRoZSBjb250cm9sbGVyLgAsICMgPHdlaWdodD7oIC0gSW5kZXBlbmRlbnQgb2YgdGhlIGFyZ3VtZW50cy4gSW5zaWduaWZpY2FudCBjb21wbGV4aXR5LpggLSBDb250YWlucyBhIGxpbWl0ZWQgbnVtYmVyIG9mIHJlYWRzLsggLSBXcml0ZXMgYXJlIGxpbWl0ZWQgdG8gdGhlIGBvcmlnaW5gIGFjY291bnQga2V5LjAgIyA8L3dlaWdodD5Mc2V0X3ZhbGlkYXRvcl9jb3VudAQMbmV3MENvbXBhY3Q8dTMyPgSAIFRoZSBpZGVhbCBudW1iZXIgb2YgdmFsaWRhdG9ycy40Zm9yY2Vfbm9fZXJhcwAUsCBGb3JjZSB0aGVyZSB0byBiZSBubyBuZXcgZXJhcyBpbmRlZmluaXRlbHkuACwgIyA8d2VpZ2h0PkAgLSBObyBhcmd1bWVudHMuMCAjIDwvd2VpZ2h0PjRmb3JjZV9uZXdfZXJhABhNASBGb3JjZSB0aGVyZSB0byBiZSBhIG5ldyBlcmEgYXQgdGhlIGVuZCBvZiB0aGUgbmV4dCBzZXNzaW9uLiBBZnRlciB0aGlzLCBpdCB3aWxsIGJloCByZXNldCB0byBub3JtYWwgKG5vbi1mb3JjZWQpIGJlaGF2aW91ci4ALCAjIDx3ZWlnaHQ+QCAtIE5vIGFyZ3VtZW50cy4wICMgPC93ZWlnaHQ+RHNldF9pbnZ1bG5lcmFibGVzBCh2YWxpZGF0b3JzOFZlYzxBY2NvdW50SWQ+BMwgU2V0IHRoZSB2YWxpZGF0b3JzIHdobyBjYW5ub3QgYmUgc2xhc2hlZCAoaWYgYW55KS40Zm9yY2VfdW5zdGFrZQQUc3Rhc2gkQWNjb3VudElkBA0BIEZvcmNlIGEgY3VycmVudCBzdGFrZXIgdG8gYmVjb21lIGNvbXBsZXRlbHkgdW5zdGFrZWQsIGltbWVkaWF0ZWx5LlBmb3JjZV9uZXdfZXJhX2Fsd2F5cwAUBQEgRm9yY2UgdGhlcmUgdG8gYmUgYSBuZXcgZXJhIGF0IHRoZSBlbmQgb2Ygc2Vzc2lvbnMgaW5kZWZpbml0ZWx5LgAsICMgPHdlaWdodD5QIC0gT25lIHN0b3JhZ2Ugd3JpdGUwICMgPC93ZWlnaHQ+VGNhbmNlbF9kZWZlcnJlZF9zbGFzaAgMZXJhIEVyYUluZGV4NHNsYXNoX2luZGljZXMgVmVjPHUzMj4cRQEgQ2FuY2VsIGVuYWN0bWVudCBvZiBhIGRlZmVycmVkIHNsYXNoLiBDYW4gYmUgY2FsbGVkIGJ5IGVpdGhlciB0aGUgcm9vdCBvcmlnaW4gb3JwIHRoZSBgVDo6U2xhc2hDYW5jZWxPcmlnaW5gLgUBIHBhc3NpbmcgdGhlIGVyYSBhbmQgaW5kaWNlcyBvZiB0aGUgc2xhc2hlcyBmb3IgdGhhdCBlcmEgdG8ga2lsbC4ALCAjIDx3ZWlnaHQ+VCAtIE9uZSBzdG9yYWdlIHdyaXRlLjAgIyA8L3dlaWdodD4AAAAgT2ZmZW5jZXMAAQAAAAAcU2Vzc2lvbgABBCBzZXRfa2V5cwgQa2V5cxBLZXlzFHByb29mFEJ5dGVzKOQgU2V0cyB0aGUgc2Vzc2lvbiBrZXkocykgb2YgdGhlIGZ1bmN0aW9uIGNhbGxlciB0byBga2V5YC4hASBBbGxvd3MgYW4gYWNjb3VudCB0byBzZXQgaXRzIHNlc3Npb24ga2V5IHByaW9yIHRvIGJlY29taW5nIGEgdmFsaWRhdG9yLsQgVGhpcyBkb2Vzbid0IHRha2UgZWZmZWN0IHVudGlsIHRoZSBuZXh0IHNlc3Npb24uANQgVGhlIGRpc3BhdGNoIG9yaWdpbiBvZiB0aGlzIGZ1bmN0aW9uIG11c3QgYmUgc2lnbmVkLgAsICMgPHdlaWdodD6IIC0gTyhsb2cgbikgaW4gbnVtYmVyIG9mIGFjY291bnRzLlggLSBPbmUgZXh0cmEgREIgZW50cnkuMCAjIDwvd2VpZ2h0PgAAADxGaW5hbGl0eVRyYWNrZXIAAQQoZmluYWxfaGludAQQaGludFBDb21wYWN0PEJsb2NrTnVtYmVyPgj0IEhpbnQgdGhhdCB0aGUgYXV0aG9yIG9mIHRoaXMgYmxvY2sgdGhpbmtzIHRoZSBiZXN0IGZpbmFsaXplZGwgYmxvY2sgaXMgdGhlIGdpdmVuIG51bWJlci4AAAAcR3JhbmRwYQABBEhyZXBvcnRfbWlzYmVoYXZpb3IEHF9yZXBvcnQUQnl0ZXMEZCBSZXBvcnQgc29tZSBtaXNiZWhhdmlvci4AAAAgSW1PbmxpbmUAAQQkaGVhcnRiZWF0CCRoZWFydGJlYXQkSGVhcnRiZWF0KF9zaWduYXR1cmUkU2lnbmF0dXJlAAAAAEhBdXRob3JpdHlEaXNjb3ZlcnkAAQAAAAAkRGVtb2NyYWN5AAFUHHByb3Bvc2UINHByb3Bvc2FsX2hhc2gQSGFzaBR2YWx1ZUhDb21wYWN0PEJhbGFuY2VPZj4YoCBQcm9wb3NlIGEgc2Vuc2l0aXZlIGFjdGlvbiB0byBiZSB0YWtlbi4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkugCAtIFR3byBEQiBjaGFuZ2VzLCBvbmUgREIgZW50cnkuMCAjIDwvd2VpZ2h0PhhzZWNvbmQEIHByb3Bvc2FsSENvbXBhY3Q8UHJvcEluZGV4PhigIFByb3Bvc2UgYSBzZW5zaXRpdmUgYWN0aW9uIHRvIGJlIHRha2VuLgAsICMgPHdlaWdodD4gIC0gTygxKS5AIC0gT25lIERCIGVudHJ5LjAgIyA8L3dlaWdodD4Qdm90ZQgkcmVmX2luZGV4YENvbXBhY3Q8UmVmZXJlbmR1bUluZGV4PhB2b3RlEFZvdGUcNQEgVm90ZSBpbiBhIHJlZmVyZW5kdW0uIElmIGB2b3RlLmlzX2F5ZSgpYCwgdGhlIHZvdGUgaXMgdG8gZW5hY3QgdGhlIHByb3Bvc2FsO7wgb3RoZXJ3aXNlIGl0IGlzIGEgdm90ZSB0byBrZWVwIHRoZSBzdGF0dXMgcXVvLgAsICMgPHdlaWdodD4gIC0gTygxKS58IC0gT25lIERCIGNoYW5nZSwgb25lIERCIGVudHJ5LjAgIyA8L3dlaWdodD4ocHJveHlfdm90ZQgkcmVmX2luZGV4YENvbXBhY3Q8UmVmZXJlbmR1bUluZGV4PhB2b3RlEFZvdGUcUQEgVm90ZSBpbiBhIHJlZmVyZW5kdW0gb24gYmVoYWxmIG9mIGEgc3Rhc2guIElmIGB2b3RlLmlzX2F5ZSgpYCwgdGhlIHZvdGUgaXMgdG8gZW5hY3T4IHRoZSBwcm9wb3NhbDsgIG90aGVyd2lzZSBpdCBpcyBhIHZvdGUgdG8ga2VlcCB0aGUgc3RhdHVzIHF1by4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkufCAtIE9uZSBEQiBjaGFuZ2UsIG9uZSBEQiBlbnRyeS4wICMgPC93ZWlnaHQ+QGVtZXJnZW5jeV9jYW5jZWwEJHJlZl9pbmRleDxSZWZlcmVuZHVtSW5kZXgIUQEgU2NoZWR1bGUgYW4gZW1lcmdlbmN5IGNhbmNlbGxhdGlvbiBvZiBhIHJlZmVyZW5kdW0uIENhbm5vdCBoYXBwZW4gdHdpY2UgdG8gdGhlIHNhbWUwIHJlZmVyZW5kdW0uQGV4dGVybmFsX3Byb3Bvc2UENHByb3Bvc2FsX2hhc2gQSGFzaAgxASBTY2hlZHVsZSBhIHJlZmVyZW5kdW0gdG8gYmUgdGFibGVkIG9uY2UgaXQgaXMgbGVnYWwgdG8gc2NoZWR1bGUgYW4gZXh0ZXJuYWwwIHJlZmVyZW5kdW0uZGV4dGVybmFsX3Byb3Bvc2VfbWFqb3JpdHkENHByb3Bvc2FsX2hhc2gQSGFzaBRZASBTY2hlZHVsZSBhIG1ham9yaXR5LWNhcnJpZXMgcmVmZXJlbmR1bSB0byBiZSB0YWJsZWQgbmV4dCBvbmNlIGl0IGlzIGxlZ2FsIHRvIHNjaGVkdWxlYCBhbiBleHRlcm5hbCByZWZlcmVuZHVtLgBNASBVbmxpa2UgYGV4dGVybmFsX3Byb3Bvc2VgLCBibGFja2xpc3RpbmcgaGFzIG5vIGVmZmVjdCBvbiB0aGlzIGFuZCBpdCBtYXkgcmVwbGFjZSBhnCBwcmUtc2NoZWR1bGVkIGBleHRlcm5hbF9wcm9wb3NlYCBjYWxsLmBleHRlcm5hbF9wcm9wb3NlX2RlZmF1bHQENHByb3Bvc2FsX2hhc2gQSGFzaBRJASBTY2hlZHVsZSBhIG5lZ2F0aXZlLXR1cm5vdXQtYmlhcyByZWZlcmVuZHVtIHRvIGJlIHRhYmxlZCBuZXh0IG9uY2UgaXQgaXMgbGVnYWwgdG+EIHNjaGVkdWxlIGFuIGV4dGVybmFsIHJlZmVyZW5kdW0uAE0BIFVubGlrZSBgZXh0ZXJuYWxfcHJvcG9zZWAsIGJsYWNrbGlzdGluZyBoYXMgbm8gZWZmZWN0IG9uIHRoaXMgYW5kIGl0IG1heSByZXBsYWNlIGGcIHByZS1zY2hlZHVsZWQgYGV4dGVybmFsX3Byb3Bvc2VgIGNhbGwuKGZhc3RfdHJhY2sMNHByb3Bvc2FsX2hhc2gQSGFzaDR2b3RpbmdfcGVyaW9kLEJsb2NrTnVtYmVyFGRlbGF5LEJsb2NrTnVtYmVyJFEBIFNjaGVkdWxlIHRoZSBjdXJyZW50bHkgZXh0ZXJuYWxseS1wcm9wb3NlZCBtYWpvcml0eS1jYXJyaWVzIHJlZmVyZW5kdW0gdG8gYmUgdGFibGVkZQEgaW1tZWRpYXRlbHkuIElmIHRoZXJlIGlzIG5vIGV4dGVybmFsbHktcHJvcG9zZWQgcmVmZXJlbmR1bSBjdXJyZW50bHksIG9yIGlmIHRoZXJlIGlzIG9uZewgYnV0IGl0IGlzIG5vdCBhIG1ham9yaXR5LWNhcnJpZXMgcmVmZXJlbmR1bSB0aGVuIGl0IGZhaWxzLgD4IC0gYHByb3Bvc2FsX2hhc2hgOiBUaGUgaGFzaCBvZiB0aGUgY3VycmVudCBleHRlcm5hbCBwcm9wb3NhbC5hASAtIGB2b3RpbmdfcGVyaW9kYDogVGhlIHBlcmlvZCB0aGF0IGlzIGFsbG93ZWQgZm9yIHZvdGluZyBvbiB0aGlzIHByb3Bvc2FsLiBJbmNyZWFzZWQgdG+YICAgYEVtZXJnZW5jeVZvdGluZ1BlcmlvZGAgaWYgdG9vIGxvdy5VASAtIGBkZWxheWA6IFRoZSBudW1iZXIgb2YgYmxvY2sgYWZ0ZXIgdm90aW5nIGhhcyBlbmRlZCBpbiBhcHByb3ZhbCBhbmQgdGhpcyBzaG91bGQgYmW8ICAgZW5hY3RlZC4gVGhpcyBkb2Vzbid0IGhhdmUgYSBtaW5pbXVtIGFtb3VudC40dmV0b19leHRlcm5hbAQ0cHJvcG9zYWxfaGFzaBBIYXNoBLwgVmV0byBhbmQgYmxhY2tsaXN0IHRoZSBleHRlcm5hbCBwcm9wb3NhbCBoYXNoLkRjYW5jZWxfcmVmZXJlbmR1bQQkcmVmX2luZGV4YENvbXBhY3Q8UmVmZXJlbmR1bUluZGV4PgRUIFJlbW92ZSBhIHJlZmVyZW5kdW0uNGNhbmNlbF9xdWV1ZWQMEHdoZW5QQ29tcGFjdDxCbG9ja051bWJlcj4Ud2hpY2gwQ29tcGFjdDx1MzI+EHdoYXRgQ29tcGFjdDxSZWZlcmVuZHVtSW5kZXg+BKAgQ2FuY2VsIGEgcHJvcG9zYWwgcXVldWVkIGZvciBlbmFjdG1lbnQuJHNldF9wcm94eQQUcHJveHkkQWNjb3VudElkFJggU3BlY2lmeSBhIHByb3h5LiBDYWxsZWQgYnkgdGhlIHN0YXNoLgAsICMgPHdlaWdodD5YIC0gT25lIGV4dHJhIERCIGVudHJ5LjAgIyA8L3dlaWdodD4wcmVzaWduX3Byb3h5ABSYIENsZWFyIHRoZSBwcm94eS4gQ2FsbGVkIGJ5IHRoZSBwcm94eS4ALCAjIDx3ZWlnaHQ+QCAtIE9uZSBEQiBjbGVhci4wICMgPC93ZWlnaHQ+MHJlbW92ZV9wcm94eQQUcHJveHkkQWNjb3VudElkFJggQ2xlYXIgdGhlIHByb3h5LiBDYWxsZWQgYnkgdGhlIHN0YXNoLgAsICMgPHdlaWdodD5AIC0gT25lIERCIGNsZWFyLjAgIyA8L3dlaWdodD4gZGVsZWdhdGUICHRvJEFjY291bnRJZChjb252aWN0aW9uKENvbnZpY3Rpb24UPCBEZWxlZ2F0ZSB2b3RlLgAsICMgPHdlaWdodD5YIC0gT25lIGV4dHJhIERCIGVudHJ5LjAgIyA8L3dlaWdodD4odW5kZWxlZ2F0ZQAURCBVbmRlbGVnYXRlIHZvdGUuACwgIyA8d2VpZ2h0PiAgLSBPKDEpLjAgIyA8L3dlaWdodD5YY2xlYXJfcHVibGljX3Byb3Bvc2FscwAEAQEgVmV0byBhbmQgYmxhY2tsaXN0IHRoZSBwcm9wb3NhbCBoYXNoLiBNdXN0IGJlIGZyb20gUm9vdCBvcmlnaW4uNG5vdGVfcHJlaW1hZ2UEQGVuY29kZWRfcHJvcG9zYWwUQnl0ZXMIYQEgUmVnaXN0ZXIgdGhlIHByZWltYWdlIGZvciBhbiB1cGNvbWluZyBwcm9wb3NhbC4gVGhpcyBkb2Vzbid0IHJlcXVpcmUgdGhlIHByb3Bvc2FsIHRvIGJlJQEgaW4gdGhlIGRpc3BhdGNoIHF1ZXVlIGJ1dCBkb2VzIHJlcXVpcmUgYSBkZXBvc2l0LCByZXR1cm5lZCBvbmNlIGVuYWN0ZWQuWG5vdGVfaW1taW5lbnRfcHJlaW1hZ2UMQGVuY29kZWRfcHJvcG9zYWwUQnl0ZXMQd2hlbixCbG9ja051bWJlchR3aGljaAx1MzIIRQEgUmVnaXN0ZXIgdGhlIHByZWltYWdlIGZvciBhbiB1cGNvbWluZyBwcm9wb3NhbC4gVGhpcyByZXF1aXJlcyB0aGUgcHJvcG9zYWwgdG8gYmW0IGluIHRoZSBkaXNwYXRjaCBxdWV1ZS4gTm8gZGVwb3NpdCBpcyBuZWVkZWQuNHJlYXBfcHJlaW1hZ2UENHByb3Bvc2FsX2hhc2gQSGFzaAT0IFJlbW92ZSBhbiBleHBpcmVkIHByb3Bvc2FsIHByZWltYWdlIGFuZCBjb2xsZWN0IHRoZSBkZXBvc2l0LgAAABxDb3VuY2lsAAEQLHNldF9tZW1iZXJzBCxuZXdfbWVtYmVyczhWZWM8QWNjb3VudElkPhBRASBTZXQgdGhlIGNvbGxlY3RpdmUncyBtZW1iZXJzaGlwIG1hbnVhbGx5IHRvIGBuZXdfbWVtYmVyc2AuIEJlIG5pY2UgdG8gdGhlIGNoYWluIGFuZFwgcHJvdmlkZSBpdCBwcmUtc29ydGVkLgBYIFJlcXVpcmVzIHJvb3Qgb3JpZ2luLhxleGVjdXRlBCBwcm9wb3NhbCBQcm9wb3NhbAz0IERpc3BhdGNoIGEgcHJvcG9zYWwgZnJvbSBhIG1lbWJlciB1c2luZyB0aGUgYE1lbWJlcmAgb3JpZ2luLgCsIE9yaWdpbiBtdXN0IGJlIGEgbWVtYmVyIG9mIHRoZSBjb2xsZWN0aXZlLhxwcm9wb3NlCCR0aHJlc2hvbGRQQ29tcGFjdDxNZW1iZXJDb3VudD4gcHJvcG9zYWwgUHJvcG9zYWwQLCAjIDx3ZWlnaHQ+kCAtIEJvdW5kZWQgc3RvcmFnZSByZWFkcyBhbmQgd3JpdGVzLrggLSBBcmd1bWVudCBgdGhyZXNob2xkYCBoYXMgYmVhcmluZyBvbiB3ZWlnaHQuMCAjIDwvd2VpZ2h0PhB2b3RlDCBwcm9wb3NhbBBIYXNoFGluZGV4WENvbXBhY3Q8UHJvcG9zYWxJbmRleD4cYXBwcm92ZRBib29sECwgIyA8d2VpZ2h0PowgLSBCb3VuZGVkIHN0b3JhZ2UgcmVhZCBhbmQgd3JpdGVzLlUBIC0gV2lsbCBiZSBzbGlnaHRseSBoZWF2aWVyIGlmIHRoZSBwcm9wb3NhbCBpcyBhcHByb3ZlZCAvIGRpc2FwcHJvdmVkIGFmdGVyIHRoZSB2b3RlLjAgIyA8L3dlaWdodD4AAABIVGVjaG5pY2FsQ29tbWl0dGVlAAEQLHNldF9tZW1iZXJzBCxuZXdfbWVtYmVyczhWZWM8QWNjb3VudElkPhBRASBTZXQgdGhlIGNvbGxlY3RpdmUncyBtZW1iZXJzaGlwIG1hbnVhbGx5IHRvIGBuZXdfbWVtYmVyc2AuIEJlIG5pY2UgdG8gdGhlIGNoYWluIGFuZFwgcHJvdmlkZSBpdCBwcmUtc29ydGVkLgBYIFJlcXVpcmVzIHJvb3Qgb3JpZ2luLhxleGVjdXRlBCBwcm9wb3NhbCBQcm9wb3NhbAz0IERpc3BhdGNoIGEgcHJvcG9zYWwgZnJvbSBhIG1lbWJlciB1c2luZyB0aGUgYE1lbWJlcmAgb3JpZ2luLgCsIE9yaWdpbiBtdXN0IGJlIGEgbWVtYmVyIG9mIHRoZSBjb2xsZWN0aXZlLhxwcm9wb3NlCCR0aHJlc2hvbGRQQ29tcGFjdDxNZW1iZXJDb3VudD4gcHJvcG9zYWwgUHJvcG9zYWwQLCAjIDx3ZWlnaHQ+kCAtIEJvdW5kZWQgc3RvcmFnZSByZWFkcyBhbmQgd3JpdGVzLrggLSBBcmd1bWVudCBgdGhyZXNob2xkYCBoYXMgYmVhcmluZyBvbiB3ZWlnaHQuMCAjIDwvd2VpZ2h0PhB2b3RlDCBwcm9wb3NhbBBIYXNoFGluZGV4WENvbXBhY3Q8UHJvcG9zYWxJbmRleD4cYXBwcm92ZRBib29sECwgIyA8d2VpZ2h0PowgLSBCb3VuZGVkIHN0b3JhZ2UgcmVhZCBhbmQgd3JpdGVzLlUBIC0gV2lsbCBiZSBzbGlnaHRseSBoZWF2aWVyIGlmIHRoZSBwcm9wb3NhbCBpcyBhcHByb3ZlZCAvIGRpc2FwcHJvdmVkIGFmdGVyIHRoZSB2b3RlLjAgIyA8L3dlaWdodD4AAABERWxlY3Rpb25zUGhyYWdtZW4AARgQdm90ZQgUdm90ZXM4VmVjPEFjY291bnRJZD4UdmFsdWVIQ29tcGFjdDxCYWxhbmNlT2Y+PAUBIFZvdGUgZm9yIGEgc2V0IG9mIGNhbmRpZGF0ZXMgZm9yIHRoZSB1cGNvbWluZyByb3VuZCBvZiBlbGVjdGlvbi4AUCBUaGUgYHZvdGVzYCBzaG91bGQ6SCAgIC0gbm90IGJlIGVtcHR5LqwgICAtIGJlIGxlc3MgdGhhbiB0aGUgbnVtYmVyIG9mIGNhbmRpZGF0ZXMuAF0BIFVwb24gdm90aW5nLCBgdmFsdWVgIHVuaXRzIG9mIGB3aG9gJ3MgYmFsYW5jZSBpcyBsb2NrZWQgYW5kIGEgYm9uZCBhbW91bnQgaXMgcmVzZXJ2ZWQuXQEgSXQgaXMgdGhlIHJlc3BvbnNpYmlsaXR5IG9mIHRoZSBjYWxsZXIgdG8gbm90IHBsYWNlIGFsbCBvZiB0aGVpciBiYWxhbmNlIGludG8gdGhlIGxvY2ugIGFuZCBrZWVwIHNvbWUgZm9yIGZ1cnRoZXIgdHJhbnNhY3Rpb25zLgAsICMgPHdlaWdodD4sICMjIyMgU3RhdGUwIFJlYWRzOiBPKDEpyCBXcml0ZXM6IE8oVikgZ2l2ZW4gYFZgIHZvdGVzLiBWIGlzIGJvdW5kZWQgYnkgMTYuMCAjIDwvd2VpZ2h0PjByZW1vdmVfdm90ZXIAHCEBIFJlbW92ZSBgb3JpZ2luYCBhcyBhIHZvdGVyLiBUaGlzIHJlbW92ZXMgdGhlIGxvY2sgYW5kIHJldHVybnMgdGhlIGJvbmQuACwgIyA8d2VpZ2h0PiwgIyMjIyBTdGF0ZTAgUmVhZHM6IE8oMSk0IFdyaXRlczogTygxKTAgIyA8L3dlaWdodD5QcmVwb3J0X2RlZnVuY3Rfdm90ZXIEGHRhcmdldBxBZGRyZXNzNF0BIFJlcG9ydCBgdGFyZ2V0YCBmb3IgYmVpbmcgYW4gZGVmdW5jdCB2b3Rlci4gSW4gY2FzZSBvZiBhIHZhbGlkIHJlcG9ydCwgdGhlIHJlcG9ydGVyIGlzXQEgcmV3YXJkZWQgYnkgdGhlIGJvbmQgYW1vdW50IG9mIGB0YXJnZXRgLiBPdGhlcndpc2UsIHRoZSByZXBvcnRlciBpdHNlbGYgaXMgcmVtb3ZlZCBhbmRcIHRoZWlyIGJvbmQgaXMgc2xhc2hlZC4AiCBBIGRlZnVuY3Qgdm90ZXIgaXMgZGVmaW5lZCB0byBiZTpNASAgIC0gYSB2b3RlciB3aG9zZSBjdXJyZW50IHN1Ym1pdHRlZCB2b3RlcyBhcmUgYWxsIGludmFsaWQuIGkuZS4gYWxsIG9mIHRoZW0gYXJlIG5vtCAgICAgbG9uZ2VyIGEgY2FuZGlkYXRlIG5vciBhbiBhY3RpdmUgbWVtYmVyLgAsICMgPHdlaWdodD4sICMjIyMgU3RhdGUVASBSZWFkczogTyhOTG9nTSkgZ2l2ZW4gTSBjdXJyZW50IGNhbmRpZGF0ZXMgYW5kIE4gdm90ZXMgZm9yIGB0YXJnZXRgLjQgV3JpdGVzOiBPKDEpMCAjIDwvd2VpZ2h0PkBzdWJtaXRfY2FuZGlkYWN5ADR4IFN1Ym1pdCBvbmVzZWxmIGZvciBjYW5kaWRhY3kuAGQgQSBjYW5kaWRhdGUgd2lsbCBlaXRoZXI67CAgIC0gTG9zZSBhdCB0aGUgZW5kIG9mIHRoZSB0ZXJtIGFuZCBmb3JmZWl0IHRoZWlyIGRlcG9zaXQuLQEgICAtIFdpbiBhbmQgYmVjb21lIGEgbWVtYmVyLiBNZW1iZXJzIHdpbGwgZXZlbnR1YWxseSBnZXQgdGhlaXIgc3Rhc2ggYmFjay5VASAgIC0gQmVjb21lIGEgcnVubmVyLXVwLiBSdW5uZXJzLXVwcyBhcmUgcmVzZXJ2ZWQgbWVtYmVycyBpbiBjYXNlIG9uZSBnZXRzIGZvcmNlZnVsbHk0ICAgICByZW1vdmVkLgAsICMgPHdlaWdodD4sICMjIyMgU3RhdGWMIFJlYWRzOiBPKExvZ04pIEdpdmVuIE4gY2FuZGlkYXRlcy40IFdyaXRlczogTygxKTAgIyA8L3dlaWdodD5IcmVub3VuY2VfY2FuZGlkYWN5ACRRASBSZW5vdW5jZSBvbmUncyBpbnRlbnRpb24gdG8gYmUgYSBjYW5kaWRhdGUgZm9yIHRoZSBuZXh0IGVsZWN0aW9uIHJvdW5kLiAzIHBvdGVudGlhbEAgb3V0Y29tZXMgZXhpc3Q6QQEgLSBgb3JpZ2luYCBpcyBhIGNhbmRpZGF0ZSBhbmQgbm90IGVsZWN0ZWQgaW4gYW55IHNldC4gSW4gdGhpcyBjYXNlLCB0aGUgYm9uZCBpc/QgICB1bnJlc2VydmVkLCByZXR1cm5lZCBhbmQgb3JpZ2luIGlzIHJlbW92ZWQgYXMgYSBjYW5kaWRhdGUuWQEgLSBgb3JpZ2luYCBpcyBhIGN1cnJlbnQgcnVubmVyIHVwLiBJbiB0aGlzIGNhc2UsIHRoZSBib25kIGlzIHVucmVzZXJ2ZWQsIHJldHVybmVkIGFuZIQgICBvcmlnaW4gaXMgcmVtb3ZlZCBhcyBhIHJ1bm5lci5NASAtIGBvcmlnaW5gIGlzIGEgY3VycmVudCBtZW1iZXIuIEluIHRoaXMgY2FzZSwgdGhlIGJvbmQgaXMgdW5yZXNlcnZlZCBhbmQgb3JpZ2luIGlzWQEgICByZW1vdmVkIGFzIGEgbWVtYmVyLCBjb25zZXF1ZW50bHkgbm90IGJlaW5nIGEgY2FuZGlkYXRlIGZvciB0aGUgbmV4dCByb3VuZCBhbnltb3JlLmUBICAgU2ltaWxhciB0byBbYHJlbW92ZV92b3RlcmBdLCBpZiByZXBsYWNlbWVudCBydW5uZXJzIGV4aXN0cywgdGhleSBhcmUgaW1tZWRpYXRlbHkgdXNlZC40cmVtb3ZlX21lbWJlcgQMd2hvHEFkZHJlc3M0XQEgUmVtb3ZlIGEgcGFydGljdWxhciBtZW1iZXIgZnJvbSB0aGUgc2V0LiBUaGlzIGlzIGVmZmVjdGl2ZSBpbW1lZGlhdGVseSBhbmQgdGhlIGJvbmQgb2aAIHRoZSBvdXRnb2luZyBtZW1iZXIgaXMgc2xhc2hlZC4AWQEgSWYgYSBydW5uZXItdXAgaXMgYXZhaWxhYmxlLCB0aGVuIHRoZSBiZXN0IHJ1bm5lci11cCB3aWxsIGJlIHJlbW92ZWQgYW5kIHJlcGxhY2VzIHRoZfQgb3V0Z29pbmcgbWVtYmVyLiBPdGhlcndpc2UsIGEgbmV3IHBocmFnbWVuIHJvdW5kIGlzIHN0YXJ0ZWQuAEUBIE5vdGUgdGhhdCB0aGlzIGRvZXMgbm90IGFmZmVjdCB0aGUgZGVzaWduYXRlZCBibG9jayBudW1iZXIgb2YgdGhlIG5leHQgZWxlY3Rpb24uACwgIyA8d2VpZ2h0PiwgIyMjIyBTdGF0ZVggUmVhZHM6IE8oZG9fcGhyYWdtZW4pXCBXcml0ZXM6IE8oZG9fcGhyYWdtZW4pMCAjIDwvd2VpZ2h0PgAAAExUZWNobmljYWxNZW1iZXJzaGlwAAEQKGFkZF9tZW1iZXIEDHdobyRBY2NvdW50SWQMfCBBZGQgYSBtZW1iZXIgYHdob2AgdG8gdGhlIHNldC4AtCBNYXkgb25seSBiZSBjYWxsZWQgZnJvbSBgQWRkT3JpZ2luYCBvciByb290LjRyZW1vdmVfbWVtYmVyBAx3aG8kQWNjb3VudElkDJAgUmVtb3ZlIGEgbWVtYmVyIGB3aG9gIGZyb20gdGhlIHNldC4AwCBNYXkgb25seSBiZSBjYWxsZWQgZnJvbSBgUmVtb3ZlT3JpZ2luYCBvciByb290Lixzd2FwX21lbWJlcggYcmVtb3ZlJEFjY291bnRJZAxhZGQkQWNjb3VudElkDMAgU3dhcCBvdXQgb25lIG1lbWJlciBgcmVtb3ZlYCBmb3IgYW5vdGhlciBgYWRkYC4AuCBNYXkgb25seSBiZSBjYWxsZWQgZnJvbSBgU3dhcE9yaWdpbmAgb3Igcm9vdC40cmVzZXRfbWVtYmVycwQcbWVtYmVyczhWZWM8QWNjb3VudElkPhBZASBDaGFuZ2UgdGhlIG1lbWJlcnNoaXAgdG8gYSBuZXcgc2V0LCBkaXNyZWdhcmRpbmcgdGhlIGV4aXN0aW5nIG1lbWJlcnNoaXAuIEJlIG5pY2UgYW5kbCBwYXNzIGBtZW1iZXJzYCBwcmUtc29ydGVkLgC8IE1heSBvbmx5IGJlIGNhbGxlZCBmcm9tIGBSZXNldE9yaWdpbmAgb3Igcm9vdC4AAAAgVHJlYXN1cnkAAQw0cHJvcG9zZV9zcGVuZAgUdmFsdWVIQ29tcGFjdDxCYWxhbmNlT2Y+LGJlbmVmaWNpYXJ5HEFkZHJlc3MkLQEgUHV0IGZvcndhcmQgYSBzdWdnZXN0aW9uIGZvciBzcGVuZGluZy4gQSBkZXBvc2l0IHByb3BvcnRpb25hbCB0byB0aGUgdmFsdWU1ASBpcyByZXNlcnZlZCBhbmQgc2xhc2hlZCBpZiB0aGUgcHJvcG9zYWwgaXMgcmVqZWN0ZWQuIEl0IGlzIHJldHVybmVkIG9uY2UgdGhlVCBwcm9wb3NhbCBpcyBhd2FyZGVkLgAsICMgPHdlaWdodD4gIC0gTygxKS5kIC0gTGltaXRlZCBzdG9yYWdlIHJlYWRzLpQgLSBPbmUgREIgY2hhbmdlLCBvbmUgZXh0cmEgREIgZW50cnkuMCAjIDwvd2VpZ2h0PjxyZWplY3RfcHJvcG9zYWwELHByb3Bvc2FsX2lkWENvbXBhY3Q8UHJvcG9zYWxJbmRleD4c/CBSZWplY3QgYSBwcm9wb3NlZCBzcGVuZC4gVGhlIG9yaWdpbmFsIGRlcG9zaXQgd2lsbCBiZSBzbGFzaGVkLgAsICMgPHdlaWdodD4gIC0gTygxKS5kIC0gTGltaXRlZCBzdG9yYWdlIHJlYWRzLkAgLSBPbmUgREIgY2xlYXIuMCAjIDwvd2VpZ2h0PkBhcHByb3ZlX3Byb3Bvc2FsBCxwcm9wb3NhbF9pZFhDb21wYWN0PFByb3Bvc2FsSW5kZXg+IF0BIEFwcHJvdmUgYSBwcm9wb3NhbC4gQXQgYSBsYXRlciB0aW1lLCB0aGUgcHJvcG9zYWwgd2lsbCBiZSBhbGxvY2F0ZWQgdG8gdGhlIGJlbmVmaWNpYXJ5rCBhbmQgdGhlIG9yaWdpbmFsIGRlcG9zaXQgd2lsbCBiZSByZXR1cm5lZC4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSkuZCAtIExpbWl0ZWQgc3RvcmFnZSByZWFkcy5EIC0gT25lIERCIGNoYW5nZS4wICMgPC93ZWlnaHQ+AAAAGENsYWltcwABCBRjbGFpbQgQZGVzdCRBY2NvdW50SWRIZXRoZXJldW1fc2lnbmF0dXJlOEVjZHNhU2lnbmF0dXJlBDggTWFrZSBhIGNsYWltLihtaW50X2NsYWltDAx3aG88RXRoZXJldW1BZGRyZXNzFHZhbHVlJEJhbGFuY2VPZkB2ZXN0aW5nX3NjaGVkdWxlpE9wdGlvbjwoQmFsYW5jZU9mLEJhbGFuY2VPZixCbG9ja051bWJlcik+BIggQWRkIGEgbmV3IGNsYWltLCBpZiB5b3UgYXJlIHJvb3QuAAAAKFBhcmFjaGFpbnMAAQQkc2V0X2hlYWRzBBRoZWFkc1hWZWM8QXR0ZXN0ZWRDYW5kaWRhdGU+BBUBIFByb3ZpZGUgY2FuZGlkYXRlIHJlY2VpcHRzIGZvciBwYXJhY2hhaW5zLCBpbiBhc2NlbmRpbmcgb3JkZXIgYnkgaWQuAAAAMEF0dGVzdGF0aW9ucwABBERtb3JlX2F0dGVzdGF0aW9ucwQUX21vcmVATW9yZUF0dGVzdGF0aW9ucwQVASBQcm92aWRlIGNhbmRpZGF0ZSByZWNlaXB0cyBmb3IgcGFyYWNoYWlucywgaW4gYXNjZW5kaW5nIG9yZGVyIGJ5IGlkLgAAABRTbG90cwABGCxuZXdfYXVjdGlvbgggZHVyYXRpb25QQ29tcGFjdDxCbG9ja051bWJlcj5IbGVhc2VfcGVyaW9kX2luZGV4WENvbXBhY3Q8TGVhc2VQZXJpb2RPZj4UWCBDcmVhdGUgYSBuZXcgYXVjdGlvbi4AVQEgVGhpcyBjYW4gb25seSBoYXBwZW4gd2hlbiB0aGVyZSBpc24ndCBhbHJlYWR5IGFuIGF1Y3Rpb24gaW4gcHJvZ3Jlc3MgYW5kIG1heSBvbmx5IGJlKQEgY2FsbGVkIGJ5IHRoZSByb290IG9yaWdpbi4gQWNjZXB0cyB0aGUgYGR1cmF0aW9uYCBvZiB0aGlzIGF1Y3Rpb24gYW5kIHRoZV0BIGBsZWFzZV9wZXJpb2RfaW5kZXhgIG9mIHRoZSBpbml0aWFsIGxlYXNlIHBlcmlvZCBvZiB0aGUgZm91ciB0aGF0IGFyZSB0byBiZSBhdWN0aW9uZWQuDGJpZBQMc3ViOENvbXBhY3Q8U3ViSWQ+NGF1Y3Rpb25faW5kZXhUQ29tcGFjdDxBdWN0aW9uSW5kZXg+KGZpcnN0X3Nsb3RYQ29tcGFjdDxMZWFzZVBlcmlvZE9mPiRsYXN0X3Nsb3RYQ29tcGFjdDxMZWFzZVBlcmlvZE9mPhhhbW91bnRIQ29tcGFjdDxCYWxhbmNlT2Y+QE0BIE1ha2UgYSBuZXcgYmlkIGZyb20gYW4gYWNjb3VudCAoaW5jbHVkaW5nIGEgcGFyYWNoYWluIGFjY291bnQpIGZvciBkZXBsb3lpbmcgYSBuZXcsIHBhcmFjaGFpbi4AXQEgTXVsdGlwbGUgc2ltdWx0YW5lb3VzIGJpZHMgZnJvbSB0aGUgc2FtZSBiaWRkZXIgYXJlIGFsbG93ZWQgb25seSBhcyBsb25nIGFzIGFsbCBhY3RpdmVBASBiaWRzIG92ZXJsYXAgZWFjaCBvdGhlciAoaS5lLiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlKS4gQmlkcyBjYW5ub3QgYmUgcmVkYWN0ZWQuAFkBIC0gYHN1YmAgaXMgdGhlIHN1Yi1iaWRkZXIgSUQsIGFsbG93aW5nIGZvciBtdWx0aXBsZSBjb21wZXRpbmcgYmlkcyB0byBiZSBtYWRlIGJ5IChhbmR0IGZ1bmRlZCBieSkgdGhlIHNhbWUgYWNjb3VudC5RASAtIGBhdWN0aW9uX2luZGV4YCBpcyB0aGUgaW5kZXggb2YgdGhlIGF1Y3Rpb24gdG8gYmlkIG9uLiBTaG91bGQganVzdCBiZSB0aGUgcHJlc2VudGwgdmFsdWUgb2YgYEF1Y3Rpb25Db3VudGVyYC5NASAtIGBmaXJzdF9zbG90YCBpcyB0aGUgZmlyc3QgbGVhc2UgcGVyaW9kIGluZGV4IG9mIHRoZSByYW5nZSB0byBiaWQgb24uIFRoaXMgaXMgdGhlDQEgYWJzb2x1dGUgbGVhc2UgcGVyaW9kIGluZGV4IHZhbHVlLCBub3QgYW4gYXVjdGlvbi1zcGVjaWZpYyBvZmZzZXQuRQEgLSBgbGFzdF9zbG90YCBpcyB0aGUgbGFzdCBsZWFzZSBwZXJpb2QgaW5kZXggb2YgdGhlIHJhbmdlIHRvIGJpZCBvbi4gVGhpcyBpcyB0aGUNASBhYnNvbHV0ZSBsZWFzZSBwZXJpb2QgaW5kZXggdmFsdWUsIG5vdCBhbiBhdWN0aW9uLXNwZWNpZmljIG9mZnNldC5NASAtIGBhbW91bnRgIGlzIHRoZSBhbW91bnQgdG8gYmlkIHRvIGJlIGhlbGQgYXMgZGVwb3NpdCBmb3IgdGhlIHBhcmFjaGFpbiBzaG91bGQgdGhlzCBiaWQgd2luLiBUaGlzIGFtb3VudCBpcyBoZWxkIHRocm91Z2hvdXQgdGhlIHJhbmdlLiRiaWRfcmVuZXcQNGF1Y3Rpb25faW5kZXhUQ29tcGFjdDxBdWN0aW9uSW5kZXg+KGZpcnN0X3Nsb3RYQ29tcGFjdDxMZWFzZVBlcmlvZE9mPiRsYXN0X3Nsb3RYQ29tcGFjdDxMZWFzZVBlcmlvZE9mPhhhbW91bnRIQ29tcGFjdDxCYWxhbmNlT2Y+PFEBIE1ha2UgYSBuZXcgYmlkIGZyb20gYSBwYXJhY2hhaW4gYWNjb3VudCBmb3IgcmVuZXdpbmcgdGhhdCAocHJlLWV4aXN0aW5nKSBwYXJhY2hhaW4uAKggVGhlIG9yaWdpbiAqbXVzdCogYmUgYSBwYXJhY2hhaW4gYWNjb3VudC4AXQEgTXVsdGlwbGUgc2ltdWx0YW5lb3VzIGJpZHMgZnJvbSB0aGUgc2FtZSBiaWRkZXIgYXJlIGFsbG93ZWQgb25seSBhcyBsb25nIGFzIGFsbCBhY3RpdmVBASBiaWRzIG92ZXJsYXAgZWFjaCBvdGhlciAoaS5lLiBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlKS4gQmlkcyBjYW5ub3QgYmUgcmVkYWN0ZWQuAFEBIC0gYGF1Y3Rpb25faW5kZXhgIGlzIHRoZSBpbmRleCBvZiB0aGUgYXVjdGlvbiB0byBiaWQgb24uIFNob3VsZCBqdXN0IGJlIHRoZSBwcmVzZW50bCB2YWx1ZSBvZiBgQXVjdGlvbkNvdW50ZXJgLk0BIC0gYGZpcnN0X3Nsb3RgIGlzIHRoZSBmaXJzdCBsZWFzZSBwZXJpb2QgaW5kZXggb2YgdGhlIHJhbmdlIHRvIGJpZCBvbi4gVGhpcyBpcyB0aGUNASBhYnNvbHV0ZSBsZWFzZSBwZXJpb2QgaW5kZXggdmFsdWUsIG5vdCBhbiBhdWN0aW9uLXNwZWNpZmljIG9mZnNldC5FASAtIGBsYXN0X3Nsb3RgIGlzIHRoZSBsYXN0IGxlYXNlIHBlcmlvZCBpbmRleCBvZiB0aGUgcmFuZ2UgdG8gYmlkIG9uLiBUaGlzIGlzIHRoZQ0BIGFic29sdXRlIGxlYXNlIHBlcmlvZCBpbmRleCB2YWx1ZSwgbm90IGFuIGF1Y3Rpb24tc3BlY2lmaWMgb2Zmc2V0Lk0BIC0gYGFtb3VudGAgaXMgdGhlIGFtb3VudCB0byBiaWQgdG8gYmUgaGVsZCBhcyBkZXBvc2l0IGZvciB0aGUgcGFyYWNoYWluIHNob3VsZCB0aGXMIGJpZCB3aW4uIFRoaXMgYW1vdW50IGlzIGhlbGQgdGhyb3VnaG91dCB0aGUgcmFuZ2UuPHNldF9vZmZib2FyZGluZwQQZGVzdBxBZGRyZXNzFMggU2V0IHRoZSBvZmYtYm9hcmRpbmcgaW5mb3JtYXRpb24gZm9yIGEgcGFyYWNoYWluLgCoIFRoZSBvcmlnaW4gKm11c3QqIGJlIGEgcGFyYWNoYWluIGFjY291bnQuACEBIC0gYGRlc3RgIGlzIHRoZSBkZXN0aW5hdGlvbiBhY2NvdW50IHRvIHJlY2VpdmUgdGhlIHBhcmFjaGFpbidzIGRlcG9zaXQuPGZpeF9kZXBsb3lfZGF0YRAMc3ViOENvbXBhY3Q8U3ViSWQ+HHBhcmFfaWQ8Q29tcGFjdDxQYXJhSWQ+JGNvZGVfaGFzaBBIYXNoRGluaXRpYWxfaGVhZF9kYXRhFEJ5dGVzHC0BIFNldCB0aGUgZGVwbG95IGluZm9ybWF0aW9uIGZvciBhIHN1Y2Nlc3NmdWwgYmlkIHRvIGRlcGxveSBhIG5ldyBwYXJhY2hhaW4uAMggLSBgb3JpZ2luYCBtdXN0IGJlIHRoZSBzdWNjZXNzZnVsIGJpZGRlciBhY2NvdW50LrAgLSBgc3ViYCBpcyB0aGUgc3ViLWJpZGRlciBJRCBvZiB0aGUgYmlkZGVyLgEBIC0gYHBhcmFfaWRgIGlzIHRoZSBwYXJhY2hhaW4gSUQgYWxsb3R0ZWQgdG8gdGhlIHdpbm5pbmcgYmlkZGVyLh0BIC0gYGNvZGVfaGFzaGAgaXMgdGhlIGhhc2ggb2YgdGhlIHBhcmFjaGFpbidzIFdhc20gdmFsaWRhdGlvbiBmdW5jdGlvbi7wIC0gYGluaXRpYWxfaGVhZF9kYXRhYCBpcyB0aGUgcGFyYWNoYWluJ3MgaW5pdGlhbCBoZWFkIGRhdGEuVGVsYWJvcmF0ZV9kZXBsb3lfZGF0YQgccGFyYV9pZDxDb21wYWN0PFBhcmFJZD4QY29kZRRCeXRlczB0IE5vdGUgYSBuZXcgcGFyYWNoYWluJ3MgY29kZS4ATQEgVGhpcyBtdXN0IGJlIGNhbGxlZCBhZnRlciBgZml4X2RlcGxveV9kYXRhYCBhbmQgYGNvZGVgIG11c3QgYmUgdGhlIHByZWltYWdlIG9mIHRoZcQgYGNvZGVfaGFzaGAgcGFzc2VkIHRoZXJlIGZvciB0aGUgc2FtZSBgcGFyYV9pZGAuAGEBIFRoaXMgbWF5IGJlIGNhbGxlZCBiZWZvcmUgb3IgYWZ0ZXIgdGhlIGJlZ2lubmluZyBvZiB0aGUgcGFyYWNoYWluJ3MgZmlyc3QgbGVhc2UgcGVyaW9kLkUBIElmIGNhbGxlZCBiZWZvcmUgdGhlbiB0aGUgcGFyYWNoYWluIHdpbGwgYmVjb21lIGFjdGl2ZSBhdCB0aGUgZmlyc3QgYmxvY2sgb2YgaXRzZQEgc3RhcnRpbmcgbGVhc2UgcGVyaW9kLiBJZiBhZnRlciwgdGhlbiBpdCB3aWxsIGJlY29tZSBhY3RpdmUgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhpcyBjYWxsLgBsIC0gYF9vcmlnaW5gIGlzIGlycmVsZXZhbnQu/CAtIGBwYXJhX2lkYCBpcyB0aGUgcGFyYWNoYWluIElEIHdob3NlIGNvZGUgd2lsbCBiZSBlbGFib3JhdGVkLhUBIC0gYGNvZGVgIGlzIHRoZSBwcmVpbWFnZSBvZiB0aGUgcmVnaXN0ZXJlZCBgY29kZV9oYXNoYCBvZiBgcGFyYV9pZGAuAAAAJFJlZ2lzdHJhcgABHDRyZWdpc3Rlcl9wYXJhEAhpZDxDb21wYWN0PFBhcmFJZD4QaW5mbyBQYXJhSW5mbxBjb2RlFEJ5dGVzRGluaXRpYWxfaGVhZF9kYXRhFEJ5dGVzCJggUmVnaXN0ZXIgYSBwYXJhY2hhaW4gd2l0aCBnaXZlbiBjb2RlLowgRmFpbHMgaWYgZ2l2ZW4gSUQgaXMgYWxyZWFkeSB1c2VkLjxkZXJlZ2lzdGVyX3BhcmEECGlkPENvbXBhY3Q8UGFyYUlkPgSUIERlcmVnaXN0ZXIgYSBwYXJhY2hhaW4gd2l0aCBnaXZlbiBpZEBzZXRfdGhyZWFkX2NvdW50BBRjb3VudAx1MzIUQQEgUmVzZXQgdGhlIG51bWJlciBvZiBwYXJhdGhyZWFkcyB0aGF0IGNhbiBwYXkgdG8gYmUgc2NoZWR1bGVkIGluIGEgc2luZ2xlIGJsb2NrLgCYIC0gYGNvdW50YDogVGhlIG51bWJlciBvZiBwYXJhdGhyZWFkcy4AhCBNdXN0IGJlIGNhbGxlZCBmcm9tIFJvb3Qgb3JpZ2luLkxyZWdpc3Rlcl9wYXJhdGhyZWFkCBBjb2RlFEJ5dGVzRGluaXRpYWxfaGVhZF9kYXRhFEJ5dGVzEKQgUmVnaXN0ZXIgYSBwYXJhdGhyZWFkIGZvciBpbW1lZGlhdGUgdXNlLgBNASBNdXN0IGJlIHNlbnQgZnJvbSBhIFNpZ25lZCBvcmlnaW4gdGhhdCBpcyBhYmxlIHRvIGhhdmUgUGFyYXRocmVhZERlcG9zaXQgcmVzZXJ2ZWQuOQEgYGNvZGVgIGFuZCBgaW5pdGlhbF9oZWFkX2RhdGFgIGFyZSB1c2VkIHRvIGluaXRpYWxpemUgdGhlIHBhcmF0aHJlYWQncyBzdGF0ZS5Ec2VsZWN0X3BhcmF0aHJlYWQMDF9pZDxDb21wYWN0PFBhcmFJZD4kX2NvbGxhdG9yKENvbGxhdG9ySWQoX2hlYWRfaGFzaBBIYXNoFAUBIFBsYWNlIGEgYmlkIGZvciBhIHBhcmF0aHJlYWQgdG8gYmUgcHJvZ3Jlc3NlZCBpbiB0aGUgbmV4dCBibG9jay4AQQEgVGhpcyBpcyBhIGtpbmQgb2Ygc3BlY2lhbCB0cmFuc2FjdGlvbiB0aGF0IHNob3VsZCBieSBoZWF2aWx5IHByaW9yaXRpemVkIGluIHRoZV0BIHRyYW5zYWN0aW9uIHBvb2wgYWNjb3JkaW5nIHRvIHRoZSBgdmFsdWVgOyBvbmx5IGBUaHJlYWRDb3VudGAgb2YgdGhlbSBtYXkgYmUgcHJlc2VudGVkVCBpbiBhbnkgc2luZ2xlIGJsb2NrLlRkZXJlZ2lzdGVyX3BhcmF0aHJlYWQAHMggRGVyZWdpc3RlciBhIHBhcmF0aHJlYWQgYW5kIHJldHJpZXZlIHRoZSBkZXBvc2l0LgAhASBNdXN0IGJlIHNlbnQgZnJvbSBhIGBQYXJhY2hhaW5gIG9yaWdpbiB3aGljaCBpcyBjdXJyZW50bHkgYSBwYXJhdGhyZWFkLgBZASBFbnN1cmUgdGhhdCBiZWZvcmUgY2FsbGluZyB0aGlzIHRoYXQgYW55IGZ1bmRzIHlvdSB3YW50IGVtcHRpZWQgZnJvbSB0aGUgcGFyYXRocmVhZCdzRQEgYWNjb3VudCBpcyBtb3ZlZCBvdXQ7IGFmdGVyIHRoaXMgaXQgd2lsbCBiZSBpbXBvc3NpYmxlIHRvIHJldHJpZXZlIHRoZW0gKHdpdGhvdXRoIGdvdmVybmFuY2UgaW50ZXJ2ZW50aW9uKS4Qc3dhcAQUb3RoZXI8Q29tcGFjdDxQYXJhSWQ+IGUBIFN3YXAgYSBwYXJhY2hhaW4gd2l0aCBhbm90aGVyIHBhcmFjaGFpbiBvciBwYXJhdGhyZWFkLiBUaGUgb3JpZ2luIG11c3QgYmUgYSBgUGFyYWNoYWluYC5lASBUaGUgc3dhcCB3aWxsIGhhcHBlbiBvbmx5IGlmIHRoZXJlIGlzIGFscmVhZHkgYW4gb3Bwb3NpdGUgc3dhcCBwZW5kaW5nLiBJZiB0aGVyZSBpcyBub3QsXQEgdGhlIHN3YXAgd2lsbCBiZSBzdG9yZWQgaW4gdGhlIHBlbmRpbmcgc3dhcHMgbWFwLCByZWFkeSBmb3IgYSBsYXRlciBjb25maXJtYXRvcnkgc3dhcC4AYQEgVGhlIGBQYXJhSWRgcyByZW1haW4gbWFwcGVkIHRvIHRoZSBzYW1lIGhlYWQgZGF0YSBhbmQgY29kZSBzbyBleHRlcm5hbCBjb2RlIGNhbiByZWx5IG9uQQEgYFBhcmFJZGAgdG8gYmUgYSBsb25nLXRlcm0gaWRlbnRpZmllciBvZiBhIG5vdGlvbmFsICJwYXJhY2hhaW4iLiBIb3dldmVyLCB0aGVpclkBIHNjaGVkdWxpbmcgaW5mbyAoaS5lLiB3aGV0aGVyIHRoZXkncmUgYSBwYXJhdGhyZWFkIG9yIHBhcmFjaGFpbiksIGF1Y3Rpb24gaW5mb3JtYXRpb26YIGFuZCB0aGUgYXVjdGlvbiBkZXBvc2l0IGFyZSBzd2l0Y2hlZC4AAAAUTmlja3MAARAgc2V0X25hbWUEEG5hbWUUQnl0ZXNAXQEgU2V0IGFuIGFjY291bnQncyBuYW1lLiBUaGUgbmFtZSBzaG91bGQgYmUgYSBVVEYtOC1lbmNvZGVkIHN0cmluZyBieSBjb252ZW50aW9uLCB0aG91Z2hMIHdlIGRvbid0IGNoZWNrIGl0LgBhASBUaGUgbmFtZSBtYXkgbm90IGJlIG1vcmUgdGhhbiBgVDo6TWF4TGVuZ3RoYCBieXRlcywgbm9yIGxlc3MgdGhhbiBgVDo6TWluTGVuZ3RoYCBieXRlcy4AXQEgSWYgdGhlIGFjY291bnQgZG9lc24ndCBhbHJlYWR5IGhhdmUgYSBuYW1lLCB0aGVuIGEgZmVlIG9mIGBSZXNlcnZhdGlvbkZlZWAgaXMgcmVzZXJ2ZWRAIGluIHRoZSBhY2NvdW50LgDQIFRoZSBkaXNwYXRjaCBvcmlnaW4gZm9yIHRoaXMgY2FsbCBtdXN0IGJlIF9TaWduZWRfLgAsICMgPHdlaWdodD4gIC0gTygxKS6EIC0gQXQgbW9zdCBvbmUgYmFsYW5jZSBvcGVyYXRpb24uaCAtIE9uZSBzdG9yYWdlIHJlYWQvd3JpdGUuNCAtIE9uZSBldmVudC4wICMgPC93ZWlnaHQ+KGNsZWFyX25hbWUAKFEBIENsZWFyIGFuIGFjY291bnQncyBuYW1lIGFuZCByZXR1cm4gdGhlIGRlcG9zaXQuIEZhaWxzIGlmIHRoZSBhY2NvdW50IHdhcyBub3QgbmFtZWQuANAgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1NpZ25lZF8uACwgIyA8d2VpZ2h0PiAgLSBPKDEpLmQgLSBPbmUgYmFsYW5jZSBvcGVyYXRpb24uaCAtIE9uZSBzdG9yYWdlIHJlYWQvd3JpdGUuNCAtIE9uZSBldmVudC4wICMgPC93ZWlnaHQ+JGtpbGxfbmFtZQQYdGFyZ2V0HEFkZHJlc3M05CBSZW1vdmUgYW4gYWNjb3VudCdzIG5hbWUgYW5kIHRha2UgY2hhcmdlIG9mIHRoZSBkZXBvc2l0LgBJASBGYWlscyBpZiBgd2hvYCBoYXMgbm90IGJlZW4gbmFtZWQuIFRoZSBkZXBvc2l0IGlzIGRlYWx0IHdpdGggdGhyb3VnaCBgVDo6U2xhc2hlZGBMIGltYmFsYW5jZSBoYW5kbGVyLgAxASBUaGUgZGlzcGF0Y2ggb3JpZ2luIGZvciB0aGlzIGNhbGwgbXVzdCBiZSBfUm9vdF8gb3IgbWF0Y2ggYFQ6OkZvcmNlT3JpZ2luYC4ALCAjIDx3ZWlnaHQ+ICAtIE8oMSku3CAtIE9uZSB1bmJhbGFuY2VkIGhhbmRsZXIgKHByb2JhYmx5IGEgYmFsYW5jZSB0cmFuc2ZlciloIC0gT25lIHN0b3JhZ2UgcmVhZC93cml0ZS40IC0gT25lIGV2ZW50LjAgIyA8L3dlaWdodD4oZm9yY2VfbmFtZQgYdGFyZ2V0HEFkZHJlc3MQbmFtZRRCeXRlczDIIFNldCBhIHRoaXJkLXBhcnR5IGFjY291bnQncyBuYW1lIHdpdGggbm8gZGVwb3NpdC4AoCBObyBsZW5ndGggY2hlY2tpbmcgaXMgZG9uZSBvbiB0aGUgbmFtZS4AMQEgVGhlIGRpc3BhdGNoIG9yaWdpbiBmb3IgdGhpcyBjYWxsIG11c3QgYmUgX1Jvb3RfIG9yIG1hdGNoIGBUOjpGb3JjZU9yaWdpbmAuACwgIyA8d2VpZ2h0PiAgLSBPKDEpLoQgLSBBdCBtb3N0IG9uZSBiYWxhbmNlIG9wZXJhdGlvbi5oIC0gT25lIHN0b3JhZ2UgcmVhZC93cml0ZS40IC0gT25lIGV2ZW50LjAgIyA8L3dlaWdodD4AAAA=' +}; diff --git a/packages/extension-ui/package.json b/packages/extension-ui/package.json index 45b9f50e..76c10123 100644 --- a/packages/extension-ui/package.json +++ b/packages/extension-ui/package.json @@ -6,8 +6,8 @@ "license": "Apache-2", "dependencies": { "@babel/runtime": "^7.7.4", - "@polkadot/react-identicon": "^0.47.0-beta.11", - "@polkadot/react-qr": "^0.47.0-beta.11", + "@polkadot/react-identicon": "^0.48.0-beta.0", + "@polkadot/react-qr": "^0.48.0-beta.0", "@types/react-router": "^5.1.3", "@types/react-router-dom": "^5.1.3", "react-router": "^5.1.2", diff --git a/packages/extension-ui/src/components/contexts.tsx b/packages/extension-ui/src/components/contexts.tsx index dbe3605f..4ee5de54 100644 --- a/packages/extension-ui/src/components/contexts.tsx +++ b/packages/extension-ui/src/components/contexts.tsx @@ -7,7 +7,7 @@ import { AccountJson, AuthorizeRequest, SigningRequest } from '@polkadot/extensi import React from 'react'; // eslint-disable-next-line @typescript-eslint/no-unused-vars -const noop = (to?: string): void => {}; +const noop = (to?: string): void => undefined; const AccountContext = React.createContext([]); const ActionContext = React.createContext<(to?: string) => void>(noop); diff --git a/packages/extension/package.json b/packages/extension/package.json index 48fb6b3b..7e95d47b 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -5,13 +5,13 @@ "author": "Jaco Greeff ", "license": "Apache-2", "dependencies": { - "@polkadot/api": "^0.97.0-beta.33", + "@polkadot/api": "^0.99.0-beta.1", "@polkadot/extension-ui": "^0.14.0-beta.6", - "@polkadot/ui-keyring": "^0.47.0-beta.11" + "@polkadot/ui-keyring": "^0.48.0-beta.0" }, "devDependencies": { "@babel/runtime": "^7.7.4", - "@polkadot/keyring": "^1.7.0-beta.8", + "@polkadot/keyring": "^1.7.1", "@types/chrome": "^0.0.91", "@types/firefox-webext-browser": "^70.0.1", "extensionizer": "^1.0.1", diff --git a/yarn.lock b/yarn.lock index d4d1a8c5..89ec7305 100644 --- a/yarn.lock +++ b/yarn.lock @@ -303,6 +303,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-json-strings" "^7.7.4" +"@babel/plugin-proposal-numeric-separator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.7.4.tgz#7819a17445f4197bb9575e5750ed349776da858a" + integrity sha512-CG605v7lLpVgVldSY6kxsN9ui1DxFOyepBfuX2AzU2TNriMAYApoU55mrGw9Jr4TlrTzPCG10CL8YXyi+E/iPw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-numeric-separator" "^7.7.4" + "@babel/plugin-proposal-object-rest-spread@^7.3.4", "@babel/plugin-proposal-object-rest-spread@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.7.4.tgz#cc57849894a5c774214178c8ab64f6334ec8af71" @@ -378,6 +386,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" +"@babel/plugin-syntax-numeric-separator@^7.7.4": + version "7.7.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.7.4.tgz#39818f8042a09d4c6248d85d82555369da4da5c4" + integrity sha512-vmlUUBlLuFnbpaR+1kKIdo62xQEN+THWbtAHSEilo+0rHl2dKKCn6GLUVKpI848wL/T0ZPQgAy8asRJ9yYEjog== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.2.0", "@babel/plugin-syntax-object-rest-spread@^7.7.4": version "7.7.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.7.4.tgz#47cf220d19d6d0d7b154304701f468fc1cc6ff46" @@ -1178,72 +1193,72 @@ "@types/istanbul-reports" "^1.1.1" "@types/yargs" "^13.0.0" -"@ledgerhq/devices@^4.74.2": - version "4.74.2" - resolved "https://registry.yarnpkg.com/@ledgerhq/devices/-/devices-4.74.2.tgz#f7042c31b491ba3d9fad506ec6519674fd9c7474" - integrity sha512-EUA2S28DWWKvUs9XOIpdNZMU5HGyXIZU2nVr6Rr0yYvYTEuItuBSvtfot17rSoyYLwClOoNPHMqXAvrCmr/6hg== +"@ledgerhq/devices@^4.78.0": + version "4.78.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/devices/-/devices-4.78.0.tgz#149b572f0616096e2bd5eb14ce14d0061c432be6" + integrity sha512-tWKS5WM/UU82czihnVjRwz9SXNTQzWjGJ/7+j/xZ70O86nlnGJ1aaFbs5/WTzfrVKpOKgj1ZoZkAswX67i/JTw== dependencies: - "@ledgerhq/errors" "^4.74.2" + "@ledgerhq/errors" "^4.78.0" "@ledgerhq/logs" "^4.72.0" rxjs "^6.5.3" -"@ledgerhq/errors@^4.74.2": - version "4.74.2" - resolved "https://registry.yarnpkg.com/@ledgerhq/errors/-/errors-4.74.2.tgz#586cfaed135354e94afda4e7ab2334abcdce187a" - integrity sha512-Y42pWQlxP0cD5av/UKXM0PXCL4knylP4lZ0BFMPDDqU8VTOWKhj92sWJJgb4beqU19i7uuEqqAeYbMMt1ubwpg== +"@ledgerhq/errors@^4.78.0": + version "4.78.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/errors/-/errors-4.78.0.tgz#23daf3af54d03b1bda3e616002b555da1bdb705a" + integrity sha512-FX6zHZeiNtegBvXabK6M5dJ+8OV8kQGGaGtuXDeK/Ss5EmG4Ltxc6Lnhe8hiHpm9pCHtktOsnUVL7IFBdHhYUg== -"@ledgerhq/hw-transport-node-hid-noevents@^4.74.2": - version "4.74.2" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-node-hid-noevents/-/hw-transport-node-hid-noevents-4.74.2.tgz#a1b49562bdb781b07ec85072e1eb80b648078fa3" - integrity sha512-ed2dApJWGEZFdLX4Z3wRAWKXiPloNpqE22KkehiBgDCMtiJBTCtI7cH97OgsjqAac9fEelUXplQIPLbYjiWlJQ== +"@ledgerhq/hw-transport-node-hid-noevents@^4.78.0": + version "4.78.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-node-hid-noevents/-/hw-transport-node-hid-noevents-4.78.0.tgz#6f0dbe1bbfad6516b42ad2d6b6b34a8b07e4cd46" + integrity sha512-CJPVR4wksq+apiXH2GnsttguBxmj9zdM2HjqZ3dHZN8SFW/9Xj3k+baS+pYoUISkECVxDrdfaW3Bd5dWv+jPUg== dependencies: - "@ledgerhq/devices" "^4.74.2" - "@ledgerhq/errors" "^4.74.2" - "@ledgerhq/hw-transport" "^4.74.2" + "@ledgerhq/devices" "^4.78.0" + "@ledgerhq/errors" "^4.78.0" + "@ledgerhq/hw-transport" "^4.78.0" "@ledgerhq/logs" "^4.72.0" node-hid "^0.7.9" "@ledgerhq/hw-transport-node-hid@^4.73.7": - version "4.74.2" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-node-hid/-/hw-transport-node-hid-4.74.2.tgz#4880f5dada00b6af507275234086d198540d290a" - integrity sha512-wdNdr7oojIEj7EZjoJ5L+R7rdm1wTEMB7Sy+/cR2CwgEIn2L+qKhgUrBcpMeiU+SN3tKrTAzUZ2+ZcTSpY4GZA== + version "4.78.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-node-hid/-/hw-transport-node-hid-4.78.0.tgz#abd99e0f918b810a61c035e5ab8c2bd8807aff55" + integrity sha512-OMrY2ecfQ1XjMAuuHqu3n3agMPR06HN1s0ENrKc+Twbb5A17jujpv07WzjxfTN2V1G7vgeZpRqrg2ulhowWbdg== dependencies: - "@ledgerhq/devices" "^4.74.2" - "@ledgerhq/errors" "^4.74.2" - "@ledgerhq/hw-transport" "^4.74.2" - "@ledgerhq/hw-transport-node-hid-noevents" "^4.74.2" + "@ledgerhq/devices" "^4.78.0" + "@ledgerhq/errors" "^4.78.0" + "@ledgerhq/hw-transport" "^4.78.0" + "@ledgerhq/hw-transport-node-hid-noevents" "^4.78.0" "@ledgerhq/logs" "^4.72.0" lodash "^4.17.15" node-hid "^0.7.9" usb "^1.6.0" "@ledgerhq/hw-transport-u2f@^4.73.7": - version "4.74.2" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-u2f/-/hw-transport-u2f-4.74.2.tgz#20946865204113eb4a586b2ac8d721730ee35bad" - integrity sha512-islCIL1HTnmSEj6V9U/f9TT9HHe9sviDuN3Ra0zK65cGaWqQa3Ni6wQil2wl7vNrEN7inwqAq5QOf3LzEFTOtg== + version "4.78.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-u2f/-/hw-transport-u2f-4.78.0.tgz#0ba67cbe2eb813da18c55f24f7215d552eff5938" + integrity sha512-+0Gw5cIr8zCHM+HCS3ACgxmCLZMvJKepFplsjNq7AnRzlXcrMnReiPwt4kw+wXizIDvNQpzi7QFSYtfxa/Gdng== dependencies: - "@ledgerhq/errors" "^4.74.2" - "@ledgerhq/hw-transport" "^4.74.2" + "@ledgerhq/errors" "^4.78.0" + "@ledgerhq/hw-transport" "^4.78.0" "@ledgerhq/logs" "^4.72.0" u2f-api "0.2.7" "@ledgerhq/hw-transport-webusb@^4.73.7": - version "4.74.2" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-webusb/-/hw-transport-webusb-4.74.2.tgz#1aafa38a02d69d65ec5a481cae01d875f3de4e92" - integrity sha512-UAdkUx0kDy4mVE+tDq/m5W1j4r5r9+wrCFkLedLpkpJoRPQaVJF5zmYwPaPv8RHk/jzWcOVxAEB4xAE7xSJWlg== + version "4.78.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-webusb/-/hw-transport-webusb-4.78.0.tgz#821903d7f0366ee599235e6ef5730cdd754f63d6" + integrity sha512-od5dp15PDYamlcJci5mD1TgjN0gva3ed1eZ0oXd4/CJwAz5Q+IoyTZnVq03UX1U+0ShF5QqnqAMxsK4YWkVwsw== dependencies: - "@ledgerhq/devices" "^4.74.2" - "@ledgerhq/errors" "^4.74.2" - "@ledgerhq/hw-transport" "^4.74.2" + "@ledgerhq/devices" "^4.78.0" + "@ledgerhq/errors" "^4.78.0" + "@ledgerhq/hw-transport" "^4.78.0" "@ledgerhq/logs" "^4.72.0" -"@ledgerhq/hw-transport@^4.35.0", "@ledgerhq/hw-transport@^4.74.2": - version "4.74.2" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport/-/hw-transport-4.74.2.tgz#dc4874b77616b63419cee5eed746dc23183ab6ce" - integrity sha512-83SiHd7wuif/epq58n9kPFhqr/1zv9a13nDYFLinaUGvRrx5jGFvCq9HiS/WIPOeIHsnuStpqKQbpUDvlRlHKg== +"@ledgerhq/hw-transport@^4.35.0", "@ledgerhq/hw-transport@^4.78.0": + version "4.78.0" + resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport/-/hw-transport-4.78.0.tgz#714786658e1f2fbc0569e06e2abf8d15d310d931" + integrity sha512-xQu16OMPQjFYLjqCysij+8sXtdWv2YLxPrB6FoLvEWGTlQ7yL1nUBRQyzyQtWIYqZd4THQowQmzm1VjxuN6SZw== dependencies: - "@ledgerhq/devices" "^4.74.2" - "@ledgerhq/errors" "^4.74.2" + "@ledgerhq/devices" "^4.78.0" + "@ledgerhq/errors" "^4.78.0" events "^3.0.0" "@ledgerhq/logs@^4.72.0": @@ -2011,50 +2026,50 @@ dependencies: "@types/node" ">= 8" -"@polkadot/api-derive@^0.97.0-beta.33": - version "0.97.0-beta.33" - resolved "https://registry.yarnpkg.com/@polkadot/api-derive/-/api-derive-0.97.0-beta.33.tgz#19f6b94adb677c09e27f3a066517189059f88254" - integrity sha512-jVzBrdp8o3My3yhU7+ip7KI06SL0uYAY7VlvbYmIy3iPkttm0cbp1HD9sZhqbntQo15w8TT6KkgE16tm8xHr+w== +"@polkadot/api-derive@^0.99.0-beta.1": + version "0.99.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/api-derive/-/api-derive-0.99.0-beta.1.tgz#46e9b3ae0f64397063a809fe9286a4b52621445a" + integrity sha512-63vreDn1NcTYawLYQmsiS/xKcQVFWSQQDNmGtnGDg+K6T2X5pdvCzhT1+vuvmepUauWWfPTZgW50ygN/erJS6Q== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/api" "^0.97.0-beta.33" - "@polkadot/types" "^0.97.0-beta.33" + "@polkadot/api" "^0.99.0-beta.1" + "@polkadot/types" "^0.99.0-beta.1" -"@polkadot/api@^0.97.0-beta.33": - version "0.97.0-beta.33" - resolved "https://registry.yarnpkg.com/@polkadot/api/-/api-0.97.0-beta.33.tgz#0edc5cf5047fcfa018f3c1b75b73a5cacb515f65" - integrity sha512-FMOprhm7sNUiX1hepFZftoBm+8DgBg4IByqhKfNLOhAXPpYvU7owwGxQIyZ9EXCUsT8LxMxhCArh4TcE/pKQGQ== +"@polkadot/api@^0.99.0-beta.1": + version "0.99.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/api/-/api-0.99.0-beta.1.tgz#fdaa4876df7ee58ca5d0f00e54ee23d26f9c2623" + integrity sha512-grzBfN4QI0syzGkvGZb0RIOznu7mdoLM9lfDDM3be5glyVYQd5tSAnaTPZ1O/QsaKK9c4j12j7goRBpjr0VRBw== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/api-derive" "^0.97.0-beta.33" - "@polkadot/keyring" "^1.7.0-beta.8" - "@polkadot/metadata" "^0.97.0-beta.33" - "@polkadot/rpc-core" "^0.97.0-beta.33" - "@polkadot/rpc-provider" "^0.97.0-beta.33" - "@polkadot/types" "^0.97.0-beta.33" - "@polkadot/util-crypto" "^1.7.0-beta.8" + "@polkadot/api-derive" "^0.99.0-beta.1" + "@polkadot/keyring" "^1.7.1" + "@polkadot/metadata" "^0.99.0-beta.1" + "@polkadot/rpc-core" "^0.99.0-beta.1" + "@polkadot/rpc-provider" "^0.99.0-beta.1" + "@polkadot/types" "^0.99.0-beta.1" + "@polkadot/util-crypto" "^1.7.1" -"@polkadot/dev-react@^0.32.0-beta.15": - version "0.32.0-beta.15" - resolved "https://registry.yarnpkg.com/@polkadot/dev-react/-/dev-react-0.32.0-beta.15.tgz#20433927ab30b9a94c0e258ebf9b81e1a1e46f0e" - integrity sha512-t/SdpCEVbkKRGOTU62JW45+aqa0IUL4FAd4gkg9bm9eNJnkY9S+qC7RyyZG6lk+MbMdyxNNTLE5eyPBR4ypDYw== +"@polkadot/dev-react@^0.32.0-beta.16": + version "0.32.0-beta.16" + resolved "https://registry.yarnpkg.com/@polkadot/dev-react/-/dev-react-0.32.0-beta.16.tgz#f60a23dfcce788e157c7f1e485d6433608005da7" + integrity sha512-tGOqWoW3FiCMt0hZOHuSZIHHqfrRsEkIn0Z6jdMQfY16bRF5uRUYI9YoaXXdhTbCM4ukVScw8+Ho8+QHAfrgSw== dependencies: "@babel/core" "^7.7.4" "@babel/plugin-syntax-dynamic-import" "^7.2.0" "@babel/preset-react" "^7.7.0" - "@polkadot/dev" "^0.32.0-beta.15" - "@types/react" "^16.9.13" + "@polkadot/dev" "^0.32.0-beta.16" + "@types/react" "^16.9.15" "@types/react-dom" "^16.9.4" "@types/react-native" "^0.60.23" "@types/styled-components" "^4.4.0" babel-loader "^8.0.6" babel-plugin-styled-components "^1.10.6" - browserslist "^4.7.3" + browserslist "^4.8.0" copy-webpack-plugin "^5.0.5" - css-loader "^3.2.0" + css-loader "^3.2.1" enzyme "^3.10.0" enzyme-adapter-react-16 "^1.15.1" - eslint-plugin-react "^7.16.0" + eslint-plugin-react "^7.17.0" eslint-plugin-react-hooks "^2.3.0" file-loader "^4.2.0" html-webpack-plugin "^3.2.0" @@ -2062,7 +2077,7 @@ react "^16.12.0" react-dom "^16.12.0" react-hot-loader "^4.12.18" - style-loader "^1.0.0" + style-loader "^1.0.1" styled-components "^4.4.1" thread-loader "^2.1.3" url-loader "^2.3.0" @@ -2072,15 +2087,16 @@ webpack-serve "^3.2.0" worker-loader "^2.0.0" -"@polkadot/dev@^0.32.0-beta.15": - version "0.32.0-beta.15" - resolved "https://registry.yarnpkg.com/@polkadot/dev/-/dev-0.32.0-beta.15.tgz#d806c349e30d0eb9883fe7779f5c01c062df9b27" - integrity sha512-eth7xiMnBpAyPZrlPZpYynOXnHe1JKPiU+QELduuoMRlWEQ0Cw1ADhwrgw9e1BFt5Mh35HxrRee9MA+QR7HgIw== +"@polkadot/dev@^0.32.0-beta.16": + version "0.32.0-beta.16" + resolved "https://registry.yarnpkg.com/@polkadot/dev/-/dev-0.32.0-beta.16.tgz#a58e90fdaf8616b50d50ea39e7da084039706e13" + integrity sha512-vtzKA9brAj7ozwDHn+YKDhOJvjTD/9n0lyrcEXYLbPljFE92DvhieCkat8B2SgztGpXGaOfDIZwHWzGVWI+Y3A== dependencies: "@babel/cli" "^7.7.4" "@babel/core" "^7.7.4" "@babel/plugin-proposal-class-properties" "^7.7.4" "@babel/plugin-proposal-decorators" "^7.7.4" + "@babel/plugin-proposal-numeric-separator" "^7.7.4" "@babel/plugin-proposal-object-rest-spread" "^7.7.4" "@babel/plugin-proposal-optional-chaining" "^7.7.4" "@babel/plugin-proposal-pipeline-operator" "^7.7.4" @@ -2091,15 +2107,15 @@ "@babel/runtime" "^7.7.4" "@types/jest" "^24.0.23" "@types/node" "^12.12.14" - "@typescript-eslint/eslint-plugin" "2.9.0" - "@typescript-eslint/parser" "2.9.0" + "@typescript-eslint/eslint-plugin" "2.10.0" + "@typescript-eslint/parser" "2.10.0" babel-core "^7.0.0-bridge.0" babel-jest "^24.9.0" babel-plugin-module-resolver "^3.2.0" chalk "^3.0.0" - coveralls "^3.0.8" + coveralls "^3.0.9" cpx "^1.5.0" - eslint "^6.7.1" + eslint "^6.7.2" eslint-config-semistandard "^15.0.0" eslint-config-standard "^14.1.0" eslint-plugin-import "^2.18.2" @@ -2115,45 +2131,45 @@ mkdirp "^0.5.1" rimraf "^3.0.0" typedoc "^0.15.3" - typedoc-plugin-markdown "^2.2.11" + typedoc-plugin-markdown "^2.2.14" typedoc-plugin-no-inherit "^1.1.10" - typescript "^3.7.2" + typescript "^3.7.3" vuepress "^1.2.0" -"@polkadot/jsonrpc@^0.97.0-beta.33": - version "0.97.0-beta.33" - resolved "https://registry.yarnpkg.com/@polkadot/jsonrpc/-/jsonrpc-0.97.0-beta.33.tgz#0ad64eeb395767dc0a0c226e68d5bf92771011fe" - integrity sha512-1kd+1YOqqaHhIMbGCCtYrAkEUblHERlZPQ7+eJy5qZIxYQPuCknMzG6McnUAtEqjhiEpfnlfxDRTVyOWlIEvFg== +"@polkadot/jsonrpc@^0.99.0-beta.1": + version "0.99.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/jsonrpc/-/jsonrpc-0.99.0-beta.1.tgz#32d4f2b5ff9244f4996b1a0931b2dd0c90471377" + integrity sha512-UNvn0TQSjO8AZc0Z//gTIfELzuRccBgV35M1x4j0U+HibhDkEyFrlkFvLLbV7gyAzevMk+0ETRhp/pW5Xu391A== dependencies: "@babel/runtime" "^7.7.4" -"@polkadot/keyring@^1.7.0-beta.8": - version "1.7.0-beta.8" - resolved "https://registry.yarnpkg.com/@polkadot/keyring/-/keyring-1.7.0-beta.8.tgz#dc6f15ea629df9dcc0b3e220171148647721701f" - integrity sha512-uv+XIcTeihApUs75gDnaQDaxiJ1LmJDfayRREn+1LKlJMgYhCOdNhISSTn/3hLp+hJLHvIVZ8QEg818Tz+G7WA== +"@polkadot/keyring@^1.7.1": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@polkadot/keyring/-/keyring-1.7.1.tgz#53a3dd87e547aaee0a877e4fc5fdfc4757e60a0d" + integrity sha512-CWCnU0zsaot0QvEiasKfhCiVlZCIVKOQGPzXiVE9JSjoqTQQJ0BEdaEfM4x0/bFFvvsn/8RcjLPpxBPSfe2eOg== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/util" "^1.7.0-beta.8" - "@polkadot/util-crypto" "^1.7.0-beta.8" + "@polkadot/util" "^1.7.1" + "@polkadot/util-crypto" "^1.7.1" -"@polkadot/metadata@^0.97.0-beta.33": - version "0.97.0-beta.33" - resolved "https://registry.yarnpkg.com/@polkadot/metadata/-/metadata-0.97.0-beta.33.tgz#53fd7f447aead53f226013c8cce6e4f3a6823b75" - integrity sha512-JRqbcsMEDso6vUa/mHS1Ri7kocbeKcyjHIBwW/QO1nr7aLLmTCv5RVq2xnFtbzGsvEg0sN0QVbbaNzp1MJ7INQ== +"@polkadot/metadata@^0.99.0-beta.1": + version "0.99.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/metadata/-/metadata-0.99.0-beta.1.tgz#270f2370d5755fa6e301c8215cb8ccdf7b691a17" + integrity sha512-5NwegTBsbsc9oovpbLXTMOfCUHF65iGS8SFFv1ReS4pf/DAJRJjWq/w9+hHILppsSS/Pvvj6Isxz8Harv8e9AA== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/types" "^0.97.0-beta.33" - "@polkadot/util" "^1.7.0-beta.8" - "@polkadot/util-crypto" "^1.7.0-beta.8" + "@polkadot/types" "^0.99.0-beta.1" + "@polkadot/util" "^1.7.1" + "@polkadot/util-crypto" "^1.7.1" -"@polkadot/react-identicon@^0.47.0-beta.11": - version "0.47.0-beta.11" - resolved "https://registry.yarnpkg.com/@polkadot/react-identicon/-/react-identicon-0.47.0-beta.11.tgz#d1f90bf6a3fc744cfeaeae418935af2bc3c4a428" - integrity sha512-1LXoCFQixRpUcgFueSzl7PQuVTtl6IIwpo73lqxlJQ+6MDAcIVIkT87mIJsmcYKuCOUwEEE3js4QNoGUb0C17w== +"@polkadot/react-identicon@^0.48.0-beta.0": + version "0.48.0-beta.0" + resolved "https://registry.yarnpkg.com/@polkadot/react-identicon/-/react-identicon-0.48.0-beta.0.tgz#0a467dc91097816c0926c3fb95ba9d1ff65df718" + integrity sha512-r1XT57TSm5MEi5B85NJwetQHwZ024Efz6sV5/3vpTikmfoFfHXhLLIf3epsLsoFiRgXeTDm8pINHf5/8xivc6g== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/ui-settings" "^0.47.0-beta.11" - "@polkadot/ui-shared" "^0.47.0-beta.11" + "@polkadot/ui-settings" "^0.48.0-beta.0" + "@polkadot/ui-shared" "^0.48.0-beta.0" "@types/color" "^3.0.0" "@types/react-copy-to-clipboard" "^4.3.0" color "^3.1.2" @@ -2161,63 +2177,64 @@ react-copy-to-clipboard "^5.0.2" styled-components "^4.4.1" -"@polkadot/react-qr@^0.47.0-beta.11": - version "0.47.0-beta.11" - resolved "https://registry.yarnpkg.com/@polkadot/react-qr/-/react-qr-0.47.0-beta.11.tgz#146ed835aae12850c60790cec0fd9f948624e586" - integrity sha512-w4EEYJAAWx/8cxhvyxmW45loqVM6M6hgnu4hyDCkPKtdVYnu44AyGzrtvV7iU+18GKCVRL0JU+IDUyPHML34sA== +"@polkadot/react-qr@^0.48.0-beta.0": + version "0.48.0-beta.0" + resolved "https://registry.yarnpkg.com/@polkadot/react-qr/-/react-qr-0.48.0-beta.0.tgz#d80ae084cae66ccfcc1e67bfc37ffa20e0ba6a48" + integrity sha512-HWvU9hgZ/K5kXLSdMiqIUYwKqS74WVkQP6FZTsw5upvVjKNjdrhH7rtJKB0ryZ9CuukBtdeyNPY7bghCUfPlPw== dependencies: "@babel/runtime" "^7.7.4" "@types/react-qr-reader" "^2.1.1" qrcode-generator "^1.4.4" react-qr-reader "^2.2.1" -"@polkadot/rpc-core@^0.97.0-beta.33": - version "0.97.0-beta.33" - resolved "https://registry.yarnpkg.com/@polkadot/rpc-core/-/rpc-core-0.97.0-beta.33.tgz#fa7bbf4cc65ca49ab8fc1f7eb1c360b935825b9f" - integrity sha512-HuU4yqKLUjiPFSxzx8TrMoX0OTbfch3sLfw9cFJ9Yqbei2shf7j8ndLjwAH5oUPEdN/qHqdsLjQ3m54lt5Qcfg== +"@polkadot/rpc-core@^0.99.0-beta.1": + version "0.99.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/rpc-core/-/rpc-core-0.99.0-beta.1.tgz#931e8344750d48d51b6b323ac5d6b1f941b186b3" + integrity sha512-SbX59TzfqjUzbaSx+xPZEXiMCag9Pq3rfCrDVSnTYEy92Xa/HM3AlB81GO/4kK1dpA8VKdo5vx0paeagR0BZig== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/jsonrpc" "^0.97.0-beta.33" - "@polkadot/rpc-provider" "^0.97.0-beta.33" - "@polkadot/types" "^0.97.0-beta.33" - "@polkadot/util" "^1.7.0-beta.8" + "@polkadot/jsonrpc" "^0.99.0-beta.1" + "@polkadot/rpc-provider" "^0.99.0-beta.1" + "@polkadot/types" "^0.99.0-beta.1" + "@polkadot/util" "^1.7.1" rxjs "^6.5.3" -"@polkadot/rpc-provider@^0.97.0-beta.33": - version "0.97.0-beta.33" - resolved "https://registry.yarnpkg.com/@polkadot/rpc-provider/-/rpc-provider-0.97.0-beta.33.tgz#af4055e0734e9349e2d33aa3b94a293eea553166" - integrity sha512-dbDa0rhWXEbi+/on8u/fl94tZxyt79wnNevxF+T8sAKrD5avZmKbcXOizsBml1Ax8y/EJjl34xPJpBMDx1uB/g== +"@polkadot/rpc-provider@^0.99.0-beta.1": + version "0.99.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/rpc-provider/-/rpc-provider-0.99.0-beta.1.tgz#8a6d237dcbba3bd1abca3bf65f0db88f327269a8" + integrity sha512-3TCUCX1RnwCU+fJ7DG9BXq3SkjhNzdqn2EOxhDutfKgTUkHsYe0yWoau+sroK+rDcfsorkPYnbocfPBLztUYfQ== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/metadata" "^0.97.0-beta.33" - "@polkadot/util" "^1.7.0-beta.8" - "@polkadot/util-crypto" "^1.7.0-beta.8" + "@polkadot/metadata" "^0.99.0-beta.1" + "@polkadot/util" "^1.7.1" + "@polkadot/util-crypto" "^1.7.1" eventemitter3 "^4.0.0" isomorphic-fetch "^2.2.1" websocket "^1.0.30" -"@polkadot/ts@^0.1.86": - version "0.1.86" - resolved "https://registry.yarnpkg.com/@polkadot/ts/-/ts-0.1.86.tgz#aee3880c0e90750f234dfa56d5bfc49b91836abb" - integrity sha512-mDbBfQ1YB6LZNVzRGKUIZp2l0pjpevH20EVgyo8XxHYJldIIax58z54PhTGYBGWMBjJxzcYgrefZmC4lUttgAg== +"@polkadot/ts@^0.1.87": + version "0.1.87" + resolved "https://registry.yarnpkg.com/@polkadot/ts/-/ts-0.1.87.tgz#8d479964baa0652b98b885bf27178059a964927e" + integrity sha512-866wuYfq4RUm4NBnx5dIoTF1SqMPFnbVv0ptyD8B7kpZ+Do3zDQO1/op6Ft5v1UbwPBJIbnV1ufkPkswIryYdw== dependencies: "@types/chrome" "^0.0.91" -"@polkadot/types@^0.97.0-beta.33": - version "0.97.0-beta.33" - resolved "https://registry.yarnpkg.com/@polkadot/types/-/types-0.97.0-beta.33.tgz#d83d46eabc7b6d5c496f21792bff42dc736eefc9" - integrity sha512-MWHxn9pdh7BCR7tZOPp90jnRdhh1T4GP6sctYYDpskTldneMB+URP38rUoCJuH0c/zJ5zl0z1RUiFksU8Qy7Gg== +"@polkadot/types@^0.99.0-beta.1": + version "0.99.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/types/-/types-0.99.0-beta.1.tgz#76d25a995b341d46912026725725fe12dc662ace" + integrity sha512-60QXt9e4CAK7MNMZNdLS0wJvvymR6cp5GChX2nA9N+lhB9liT8l6sRNyf1W4DDaT1hCnq7klyKNp2bjsOfnf4w== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/util" "^1.7.0-beta.8" - "@polkadot/util-crypto" "^1.7.0-beta.8" + "@polkadot/metadata" "^0.99.0-beta.1" + "@polkadot/util" "^1.7.1" + "@polkadot/util-crypto" "^1.7.1" "@types/memoizee" "^0.4.3" memoizee "^0.4.14" -"@polkadot/ui-keyring@^0.47.0-beta.11": - version "0.47.0-beta.11" - resolved "https://registry.yarnpkg.com/@polkadot/ui-keyring/-/ui-keyring-0.47.0-beta.11.tgz#e8d6f869072cc57521283aa681d9f3fee714a3db" - integrity sha512-FBTZT9wwqZKpBVa/x10aQKk42U8RGlWKFyVhjjCPRAxKwB1Kt94pf2VDB4bf7QhgAGHlvZAQYruUXgM5r40hlQ== +"@polkadot/ui-keyring@^0.48.0-beta.0": + version "0.48.0-beta.0" + resolved "https://registry.yarnpkg.com/@polkadot/ui-keyring/-/ui-keyring-0.48.0-beta.0.tgz#7610c54f864d335ef1e3f8f2d9404c1b63b19a2b" + integrity sha512-KOE3W+vB2OurifUfFyW3nZYnTgSl4llSTXMcFPqKRCcDonDedAz5A9V2+bw1SYMnBX64Y8OH51oKylw2HJnoQQ== dependencies: "@babel/runtime" "^7.7.4" "@ledgerhq/hw-transport-u2f" "^4.73.7" @@ -2233,31 +2250,31 @@ optionalDependencies: "@ledgerhq/hw-transport-node-hid" "^4.73.7" -"@polkadot/ui-settings@^0.47.0-beta.11": - version "0.47.0-beta.11" - resolved "https://registry.yarnpkg.com/@polkadot/ui-settings/-/ui-settings-0.47.0-beta.11.tgz#d531d64e9ce2d9cd8ed03bf00a5ac7a07f782400" - integrity sha512-BZzDf3YFzwedUAxXxPkNdHdnP0JGWMw9XBMWx5Q2fMiQR8XYaly00BY+34bwcmPXXoqOsr2a4B+I+wOYoMtbfg== +"@polkadot/ui-settings@^0.48.0-beta.0": + version "0.48.0-beta.0" + resolved "https://registry.yarnpkg.com/@polkadot/ui-settings/-/ui-settings-0.48.0-beta.0.tgz#129c6fec2e510d9877adf470e153a006bd78c108" + integrity sha512-8t2FZhIhRnIKUhDfqCCUXz1hYHx4Mb3fyK+boyAbwPLZ1tpaeXlFM3TwHuZc6ls2kamPRK5G31Ez7xwAdTXtVQ== dependencies: "@babel/runtime" "^7.7.4" "@types/store" "^2.0.2" store "^2.0.12" -"@polkadot/ui-shared@^0.47.0-beta.11": - version "0.47.0-beta.11" - resolved "https://registry.yarnpkg.com/@polkadot/ui-shared/-/ui-shared-0.47.0-beta.11.tgz#cfe293089c8013c0659c26e01820bffc69ee4c28" - integrity sha512-WOMe+a5MqqHOfxIefdgm/hjsoylHK9RKdYICj0LLZfY2BV87szFmDycW0heno9kz6BF9b5zmxRlpnCqrN0eeqA== +"@polkadot/ui-shared@^0.48.0-beta.0": + version "0.48.0-beta.0" + resolved "https://registry.yarnpkg.com/@polkadot/ui-shared/-/ui-shared-0.48.0-beta.0.tgz#5e53875b8ec19ece5dc3068bfc0b354d5419ed3b" + integrity sha512-PI6jldV0OdeOHLtVQLnFazT1v8vaV4fFblFGaeAcqPNrTtd90gFm/G+mkbyZwVeWB2g+QQYZI1lJbIVJ45d0lA== dependencies: "@babel/runtime" "^7.7.4" "@types/color" "^3.0.0" color "^3.1.2" -"@polkadot/util-crypto@^1.7.0-beta.8": - version "1.7.0-beta.8" - resolved "https://registry.yarnpkg.com/@polkadot/util-crypto/-/util-crypto-1.7.0-beta.8.tgz#900eb500a8fd02172590988872407bfb4dc612c6" - integrity sha512-bIhPp/l2e5zMVsDzb2FqXWlYFChkgZci2nF2skP5X/eD+XDOla5+iuGCvajpY3VIYm0SDu6OK5qmfXZ/gqs8OA== +"@polkadot/util-crypto@^1.7.1": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@polkadot/util-crypto/-/util-crypto-1.7.1.tgz#6cb1ed1f7ecbea3b41100231830817e7fd116dc6" + integrity sha512-g0JCciJLJXbkc/Q+2QuJgCgS0Xfl7tO97ALdsI00bgSDA7zlh2zhjpx03Ve47hMndmn7K8ClIGrj4nxHx/95Tw== dependencies: "@babel/runtime" "^7.7.4" - "@polkadot/util" "^1.7.0-beta.8" + "@polkadot/util" "^1.7.1" "@polkadot/wasm-crypto" "^0.14.1" "@types/bip39" "^2.4.2" "@types/bs58" "^4.0.0" @@ -2273,10 +2290,10 @@ tweetnacl "^1.0.1" xxhashjs "^0.2.2" -"@polkadot/util@^1.7.0-beta.8": - version "1.7.0-beta.8" - resolved "https://registry.yarnpkg.com/@polkadot/util/-/util-1.7.0-beta.8.tgz#cf7c42f37b141fb647030fd91a805207f691794b" - integrity sha512-Wk+/9ORJJE12pb0D4OadHQM77mUHaTl4Czf1dnWfge0J3pizV3tXojxunFnQwZbCqyJGnYOkbqu+TDPytVVipw== +"@polkadot/util@^1.7.1": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@polkadot/util/-/util-1.7.1.tgz#cb262fa5a441097c0c093532f70d0b7e0503fbb1" + integrity sha512-tWvh+vYDIiXDIWgAGd9zyJWlDKxQ5KYTKZ9uTlLxfuy1qXEdVOjlX9Qz5+FACU2742e8tTvtvM9KfK05VK5X/A== dependencies: "@babel/runtime" "^7.7.4" "@types/bn.js" "^4.11.5" @@ -2375,9 +2392,9 @@ base-x "^3.0.6" "@types/cheerio@*": - version "0.22.14" - resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.14.tgz#d150889891e7db892c6a0b16bd5583cc70b3fc44" - integrity sha512-SVtcP2fvPYrebTwpyqxjxb7K5v3ZOAdH409yAEWFPpZThCSGa1K2IFfx6Rg6ttvThCBQXP4fU9WF94sqLoiQGg== + version "0.22.15" + resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.15.tgz#69040ffa92c309beeeeb7e92db66ac3f80700c0b" + integrity sha512-UGiiVtJK5niCqMKYmLEFz1Wl/3L5zF/u78lu8CwoUywWXRr9LDimeYuOzXVLXBMO758fcTdFtgjvqlztMH90MA== dependencies: "@types/node" "*" @@ -2616,10 +2633,10 @@ "@types/history" "*" "@types/react" "*" -"@types/react@*", "@types/react@^16.9.13": - version "16.9.13" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.13.tgz#b3ea5dd443f4a680599e2abba8cc66f5e1ce0059" - integrity sha512-LikzRslbiufJYHyzbHSW0GrAiff8QYLMBFeZmSxzCYGXKxi8m/1PHX+rsVOwhr7mJNq+VIu2Dhf7U6mjFERK6w== +"@types/react@*", "@types/react@^16.9.15": + version "16.9.15" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.15.tgz#aeabb7a50f96c9e31a16079ada20ede9ed602977" + integrity sha512-WsmM1b6xQn1tG3X2Hx4F3bZwc2E82pJXt5OPs2YJgg71IzvUoKOSSSYOvLXYCg1ttipM+UuA4Lj3sfvqjVxyZw== dependencies: "@types/prop-types" "*" csstype "^2.2.0" @@ -2682,40 +2699,40 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@2.9.0": - version "2.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.9.0.tgz#fa810282c0e45f6c2310b9c0dfcd25bff97ab7e9" - integrity sha512-98rfOt3NYn5Gr9wekTB8TexxN6oM8ZRvYuphPs1Atfsy419SDLYCaE30aJkRiiTCwGEY98vOhFsEVm7Zs4toQQ== +"@typescript-eslint/eslint-plugin@2.10.0": + version "2.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.10.0.tgz#c4cb103275e555e8a7e9b3d14c5951eb6d431e70" + integrity sha512-rT51fNLW0u3fnDGnAHVC5nu+Das+y2CpW10yqvf6/j5xbuUV3FxA3mBaIbM24CXODXjbgUznNb4Kg9XZOUxKAw== dependencies: - "@typescript-eslint/experimental-utils" "2.9.0" + "@typescript-eslint/experimental-utils" "2.10.0" eslint-utils "^1.4.3" functional-red-black-tree "^1.0.1" regexpp "^3.0.0" tsutils "^3.17.1" -"@typescript-eslint/experimental-utils@2.9.0": - version "2.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.9.0.tgz#bbe99a8d9510240c055fc4b17230dd0192ba3c7f" - integrity sha512-0lOLFdpdJsCMqMSZT7l7W2ta0+GX8A3iefG3FovJjrX+QR8y6htFlFdU7aOVPL6pDvt6XcsOb8fxk5sq+girTw== +"@typescript-eslint/experimental-utils@2.10.0": + version "2.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.10.0.tgz#8db1656cdfd3d9dcbdbf360b8274dea76f0b2c2c" + integrity sha512-FZhWq6hWWZBP76aZ7bkrfzTMP31CCefVIImrwP3giPLcoXocmLTmr92NLZxuIcTL4GTEOE33jQMWy9PwelL+yQ== dependencies: "@types/json-schema" "^7.0.3" - "@typescript-eslint/typescript-estree" "2.9.0" + "@typescript-eslint/typescript-estree" "2.10.0" eslint-scope "^5.0.0" -"@typescript-eslint/parser@2.9.0": - version "2.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.9.0.tgz#2e9cf438de119b143f642a3a406e1e27eb70b7cd" - integrity sha512-fJ+dNs3CCvEsJK2/Vg5c2ZjuQ860ySOAsodDPwBaVlrGvRN+iCNC8kUfLFL8cT49W4GSiLPa/bHiMjYXA7EhKQ== +"@typescript-eslint/parser@2.10.0": + version "2.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.10.0.tgz#24b2e48384ab6d5a6121e4c4faf8892c79657ad3" + integrity sha512-wQNiBokcP5ZsTuB+i4BlmVWq6o+oAhd8en2eSm/EE9m7BgZUIfEeYFd6z3S+T7bgNuloeiHA1/cevvbBDLr98g== dependencies: "@types/eslint-visitor-keys" "^1.0.0" - "@typescript-eslint/experimental-utils" "2.9.0" - "@typescript-eslint/typescript-estree" "2.9.0" + "@typescript-eslint/experimental-utils" "2.10.0" + "@typescript-eslint/typescript-estree" "2.10.0" eslint-visitor-keys "^1.1.0" -"@typescript-eslint/typescript-estree@2.9.0", "@typescript-eslint/typescript-estree@^2.4.0": - version "2.9.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.9.0.tgz#09138daf8f47d0e494ba7db9e77394e928803017" - integrity sha512-v6btSPXEWCP594eZbM+JCXuFoXWXyF/z8kaSBSdCb83DF+Y7+xItW29SsKtSULgLemqJBT+LpT+0ZqdfH7QVmA== +"@typescript-eslint/typescript-estree@2.10.0", "@typescript-eslint/typescript-estree@^2.4.0": + version "2.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.10.0.tgz#89cdabd5e8c774e9d590588cb42fb9afd14dcbd9" + integrity sha512-oOYnplddQNm/LGVkqbkAwx4TIBuuZ36cAQq9v3nFIU9FmhemHuVzAesMSXNQDdAzCa5bFgCrfD3JWhYVKlRN2g== dependencies: debug "^4.1.1" eslint-visitor-keys "^1.1.0" @@ -3166,9 +3183,9 @@ acorn@^5.5.3: integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== acorn@^6.0.1, acorn@^6.2.1: - version "6.3.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e" - integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA== + version "6.4.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.0.tgz#b659d2ffbafa24baf5db1cdbb2c94a983ecd2784" + integrity sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw== acorn@^7.1.0: version "7.1.0" @@ -3589,12 +3606,12 @@ autocomplete.js@0.36.0: immediate "^3.2.3" autoprefixer@^9.5.1: - version "9.7.2" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.7.2.tgz#26cf729fbb709323b40171a874304884dcceffed" - integrity sha512-LCAfcdej1182uVvPOZnytbq61AhnOZ/4JelDaJGDeNwewyU1AMaNthcHsyz1NRjTmd2FkurMckLWfkHg3Z//KA== + version "9.7.3" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.7.3.tgz#fd42ed03f53de9beb4ca0d61fb4f7268a9bb50b4" + integrity sha512-8T5Y1C5Iyj6PgkPSFd0ODvK9DIleuPKUPYniNxybS47g2k2wFgLZ46lGQHlBuGKIAEV8fbCDfKCCRS1tvOgc3Q== dependencies: - browserslist "^4.7.3" - caniuse-lite "^1.0.30001010" + browserslist "^4.8.0" + caniuse-lite "^1.0.30001012" chalk "^2.4.2" normalize-range "^0.1.2" num2fraction "^1.2.2" @@ -3607,9 +3624,9 @@ aws-sign2@~0.7.0: integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= aws4@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" - integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== + version "1.9.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.0.tgz#24390e6ad61386b0a747265754d2a17219de862c" + integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A== babel-core@^7.0.0-bridge.0: version "7.0.0-bridge.0" @@ -3819,9 +3836,9 @@ blakejs@^1.1.0: integrity sha1-ad+S75U6qIylGjLfarHFShVfx6U= bluebird@^3.1.1, bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5: - version "3.7.1" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.1.tgz#df70e302b471d7473489acf26a93d63b53f874de" - integrity sha512-DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg== + version "3.7.2" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.11.8, bn.js@^4.4.0: version "4.11.8" @@ -3918,11 +3935,6 @@ browser-resolve@^1.11.3: dependencies: resolve "1.1.7" -browser-stdout@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" - integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== - browserify-aes@^1.0.0, browserify-aes@^1.0.4, browserify-aes@^1.0.6: version "1.2.0" resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" @@ -3982,14 +3994,14 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@^4.0.0, browserslist@^4.3.4, browserslist@^4.6.0, browserslist@^4.7.3: - version "4.7.3" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.3.tgz#02341f162b6bcc1e1028e30624815d4924442dc3" - integrity sha512-jWvmhqYpx+9EZm/FxcZSbUZyDEvDTLDi3nSAKbzEkyWvtI0mNSmUosey+5awDW1RUlrgXbQb5A6qY1xQH9U6MQ== +browserslist@^4.0.0, browserslist@^4.3.4, browserslist@^4.6.0, browserslist@^4.8.0: + version "4.8.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.0.tgz#6f06b0f974a7cc3a84babc2ccc56493668e3c789" + integrity sha512-HYnxc/oLRWvJ3TsGegR0SRL/UDnknGq2s/a8dYYEO+kOQ9m9apKoS5oiathLKZdh/e9uE+/J3j92qPlGD/vTqA== dependencies: - caniuse-lite "^1.0.30001010" - electron-to-chromium "^1.3.306" - node-releases "^1.1.40" + caniuse-lite "^1.0.30001012" + electron-to-chromium "^1.3.317" + node-releases "^1.1.41" bs58@^4.0.1: version "4.0.1" @@ -4219,10 +4231,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001010: - version "1.0.30001012" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001012.tgz#653ec635e815b9e0fb801890923b0c2079eb34ec" - integrity sha512-7RR4Uh04t9K1uYRWzOJmzplgEOAXbfK72oVNokCdMzA67trrhPzy93ahKk1AWHiA0c58tD2P+NHqxrA8FZ+Trg== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001012: + version "1.0.30001015" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001015.tgz#15a7ddf66aba786a71d99626bc8f2b91c6f0f5f0" + integrity sha512-/xL2AbW/XWHNu1gnIrO8UitBGoFthcsDgU9VLK1/dpsoxbaD5LscHozKze05R6WLsBvLhqv78dAPozMFQBYLbQ== canvas-renderer@~2.1.1: version "2.1.1" @@ -4447,14 +4459,6 @@ coa@^2.0.2: chalk "^2.4.1" q "^1.1.2" -cobertura-parse@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/cobertura-parse/-/cobertura-parse-1.0.5.tgz#3a8c5d30a97468496a2aabd04b8fa4fb7c3cd20e" - integrity sha512-uYJfkGhzw1wibe/8jqqHmSaPNWFguzq/IlSj83u3cSnZho/lUnfj0mLTmZGmB3AiKCOTYr22TYwpR1sXy2JEkg== - dependencies: - mocha "5.0.5" - xml2js "0.4.19" - code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" @@ -4523,11 +4527,6 @@ combined-stream@^1.0.6, combined-stream@~1.0.6: dependencies: delayed-stream "~1.0.0" -commander@2.11.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - integrity sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ== - commander@2.17.x: version "2.17.1" resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" @@ -4819,11 +4818,11 @@ copy-webpack-plugin@^5.0.2, copy-webpack-plugin@^5.0.5: webpack-log "^2.0.0" core-js-compat@^3.1.1: - version "3.4.2" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.4.2.tgz#652fa7c54652b7f6586a893e37001df55ea2ac37" - integrity sha512-W0Aj+LM3EAxxjD0Kp2o4be8UlnxIZHNupBv2znqrheR4aY2nOn91794k/xoSp+SxqqriiZpTsSwBtZr60cbkwQ== + version "3.4.7" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.4.7.tgz#39f8080b1d92a524d6d90505c42b9c5c1eb90611" + integrity sha512-57+mgz/P/xsGdjwQYkwtBZR3LuISaxD1dEwVDtbk8xJMqAmwqaxLOvnNT7kdJ7jYE/NjNptyzXi+IQFMi/2fCw== dependencies: - browserslist "^4.7.3" + browserslist "^4.8.0" semver "^6.3.0" core-js@^2.4.0, core-js@^2.6.5: @@ -4832,9 +4831,9 @@ core-js@^2.4.0, core-js@^2.6.5: integrity sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA== core-js@^3.1.4: - version "3.4.2" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.4.2.tgz#ee2b1a60b50388d8ddcda8cdb44a92c7a9ea76df" - integrity sha512-bUTfqFWtNKWp73oNIfRkqwYZJeNT3lstzZcAkhhiuvDraRSgOH1/+F9ZklbpR4zpdKuo4cpXN8tKP7s61yjX+g== + version "3.4.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.4.7.tgz#57c35937da80fe494fbc3adcf9cf3dc00eb86b34" + integrity sha512-qaPVGw30J1wQ0GR3GvoPqlGf9GZfKKF4kFC7kiHlcsPTqH3txrs9crCp3ZiMAXuSenhz89Jnl4GZs/67S5VOSg== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -4851,12 +4850,11 @@ cosmiconfig@^5.0.0, cosmiconfig@^5.1.0: js-yaml "^3.13.1" parse-json "^4.0.0" -coveralls@^3.0.8: - version "3.0.8" - resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.8.tgz#3ed8f0ebdcf8a87ff3f9f4bde220b86d998ebe64" - integrity sha512-lkQlg29RhV9zwB0gDaEAWoap8xPgFxtPsVIpTNiDDtWNrvtP1/RmGJRRAV/Loz2gihmppObkSL0wnptEGUXaOQ== +coveralls@^3.0.9: + version "3.0.9" + resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.9.tgz#8cfc5a5525f84884e2948a0bf0f1c0e90aac0420" + integrity sha512-nNBg3B1+4iDox5A5zqHKzUTiwl2ey4k2o0NEcVZYvl+GOSJdKBj4AJGKLv6h3SvWch7tABHePAQOSZWM9E2hMg== dependencies: - cobertura-parse "^1.0.5" js-yaml "^3.13.1" lcov-parse "^1.0.0" log-driver "^1.2.7" @@ -4983,23 +4981,23 @@ css-loader@^2.1.1: postcss-value-parser "^3.3.0" schema-utils "^1.0.0" -css-loader@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.2.0.tgz#bb570d89c194f763627fcf1f80059c6832d009b2" - integrity sha512-QTF3Ud5H7DaZotgdcJjGMvyDj5F3Pn1j/sC6VBEOVp94cbwqyIBdcs/quzj4MC1BKQSrTpQznegH/5giYbhnCQ== +css-loader@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.2.1.tgz#62849b45a414b7bde0bfba17325a026471040eae" + integrity sha512-q40kYdcBNzMvkIImCL2O+wk8dh+RGwPPV9Dfz3n7XtOYPXqe2Z6VgtvoxjkLHz02gmhepG9sOAJOUlx+3hHsBg== dependencies: camelcase "^5.3.1" cssesc "^3.0.0" icss-utils "^4.1.1" loader-utils "^1.2.3" normalize-path "^3.0.0" - postcss "^7.0.17" + postcss "^7.0.23" postcss-modules-extract-imports "^2.0.0" postcss-modules-local-by-default "^3.0.2" - postcss-modules-scope "^2.1.0" + postcss-modules-scope "^2.1.1" postcss-modules-values "^3.0.0" - postcss-value-parser "^4.0.0" - schema-utils "^2.0.0" + postcss-value-parser "^4.0.2" + schema-utils "^2.6.0" css-parse@~2.0.0: version "2.0.0" @@ -5432,13 +5430,13 @@ depd@~2.0.0: integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== dependency-tree@^7.0.2: - version "7.1.0" - resolved "https://registry.yarnpkg.com/dependency-tree/-/dependency-tree-7.1.0.tgz#7110af9a94ded4785c17d69e48b6968c214d9a49" - integrity sha512-emsssimgZFIsTL1d6eaDoipwIIjMENwUODjOwv0G7V5mwPMmeiTmvKpHjYes0/oH3PM7Yjl85D3jIzYHh7w31Q== + version "7.2.0" + resolved "https://registry.yarnpkg.com/dependency-tree/-/dependency-tree-7.2.0.tgz#1dc8ea13c5623f5eab99b28a4fd4f4eca0809168" + integrity sha512-41LepYuMZNfd/wk7ppfhaOp8dzzd37t9hLP8XKg9WDQZ3u2WmNCR3eZOF/6jDatV+3OL4ChOON9a/UIeC75bYw== dependencies: commander "^2.19.0" debug "^4.1.1" - filing-cabinet "^2.3.1" + filing-cabinet "^2.5.1" precinct "^6.2.0" deprecation@^2.0.0: @@ -5579,7 +5577,7 @@ diff-sequences@^24.9.0: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew== -diff@3.5.0, diff@^3.5.0: +diff@^3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== @@ -5787,19 +5785,19 @@ ecc-jsbn@~0.1.1: safer-buffer "^2.1.0" edgeware-node-types@^1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/edgeware-node-types/-/edgeware-node-types-1.0.10.tgz#eb40ef4308f84d64975edc99d12ac5da891ee6a3" - integrity sha512-iGMjkxtaT0FE5TR8DTucF+63IbtGHiieNxNkPTlsGYGt1JaPc6aP0ApnSQKYu2NiQaVcg1RB+BDMmGfFk1bnhw== + version "1.1.0" + resolved "https://registry.yarnpkg.com/edgeware-node-types/-/edgeware-node-types-1.1.0.tgz#ce6f773d6907fde929395347d997e21bc37afa87" + integrity sha512-0e56OWLDowEvEj30mJ+Sp72WlaGayRobxE7q3vSBTH1wNiPTafLQ53NMCO68j6V0aTycMzC373VR08iGKoDf5g== ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.306: - version "1.3.314" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.314.tgz#c186a499ed2c9057bce9eb8dca294d6d5450facc" - integrity sha512-IKDR/xCxKFhPts7h+VaSXS02Z1mznP3fli1BbXWXeN89i2gCzKraU8qLpEid8YzKcmZdZD3Mly3cn5/lY9xsBQ== +electron-to-chromium@^1.3.317: + version "1.3.322" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.322.tgz#a6f7e1c79025c2b05838e8e344f6e89eb83213a8" + integrity sha512-Tc8JQEfGQ1MzfSzI/bTlSr7btJv/FFO7Yh6tanqVmIWOuNCu6/D1MilIEgLtmWqIrsv+o4IjpLAhgMBr/ncNAA== elliptic@^6.0.0, elliptic@^6.4.1: version "6.5.2" @@ -5986,9 +5984,9 @@ error-inject@^1.0.0: integrity sha1-4rPZG1Su1nLzCdlQ0VSFD6EdTzc= es-abstract@^1.12.0, es-abstract@^1.13.0, es-abstract@^1.15.0, es-abstract@^1.5.1, es-abstract@^1.7.0: - version "1.16.2" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.2.tgz#4e874331645e9925edef141e74fc4bd144669d34" - integrity sha512-jYo/J8XU2emLXl3OLwfwtuFfuF2w6DYPs+xy9ZfVyPkDcrauu6LYrw/q2TyCtrbc/KUdCiC5e9UajRhgNkVopA== + version "1.16.3" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.3.tgz#52490d978f96ff9f89ec15b5cf244304a5bca161" + integrity sha512-WtY7Fx5LiOnSYgF5eg/1T+GONaGmpvpPdCpSnYij+U2gDTL0UPfWrhDw7b2IYb+9NQJsYpCA0wOQvZfsd6YwRw== dependencies: es-to-primitive "^1.2.1" function-bind "^1.1.1" @@ -6071,7 +6069,7 @@ escape-html@^1.0.3, escape-html@~1.0.3: resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= @@ -6122,6 +6120,11 @@ eslint-plugin-es@^2.0.0: eslint-utils "^1.4.2" regexpp "^3.0.0" +eslint-plugin-eslint-plugin@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-plugin/-/eslint-plugin-eslint-plugin-2.1.0.tgz#a7a00f15a886957d855feacaafee264f039e62d5" + integrity sha512-kT3A/ZJftt28gbl/Cv04qezb/NQ1dwYIbi8lyf806XMxkus7DvOVCLIfTXMrorp322Pnoez7+zabXH29tADIDg== + eslint-plugin-import@^2.18.2: version "2.18.2" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz#02f1180b90b077b33d447a17a2326ceb400aceb6" @@ -6161,20 +6164,21 @@ eslint-plugin-react-hooks@^2.3.0: resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-2.3.0.tgz#53e073961f1f5ccf8dd19558036c1fac8c29d99a" integrity sha512-gLKCa52G4ee7uXzdLiorca7JIQZPPXRAQDXV83J4bUEeUuc5pIEyZYAZ45Xnxe5IuupxEqHS+hUhSLIimK1EMw== -eslint-plugin-react@^7.16.0: - version "7.16.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.16.0.tgz#9928e4f3e2122ed3ba6a5b56d0303ba3e41d8c09" - integrity sha512-GacBAATewhhptbK3/vTP09CbFrgUJmBSaaRcWdbQLFvUZy9yVcQxigBNHGPU/KE2AyHpzj3AWXpxoMTsIDiHug== +eslint-plugin-react@^7.17.0: + version "7.17.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.17.0.tgz#a31b3e134b76046abe3cd278e7482bd35a1d12d7" + integrity sha512-ODB7yg6lxhBVMeiH1c7E95FLD4E/TwmFjltiU+ethv7KPdCwgiFuOZg9zNRHyufStTDLl/dEFqI2Q1VPmCd78A== dependencies: array-includes "^3.0.3" doctrine "^2.1.0" + eslint-plugin-eslint-plugin "^2.1.0" has "^1.0.3" - jsx-ast-utils "^2.2.1" + jsx-ast-utils "^2.2.3" object.entries "^1.1.0" - object.fromentries "^2.0.0" + object.fromentries "^2.0.1" object.values "^1.1.0" prop-types "^15.7.2" - resolve "^1.12.0" + resolve "^1.13.1" eslint-plugin-standard@^4.0.1: version "4.0.1" @@ -6209,10 +6213,10 @@ eslint-visitor-keys@^1.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== -eslint@^6.7.1: - version "6.7.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.7.1.tgz#269ccccec3ef60ab32358a44d147ac209154b919" - integrity sha512-UWzBS79pNcsDSxgxbdjkmzn/B6BhsXMfUaOHnNwyE8nD+Q6pyT96ow2MccVayUTV4yMid4qLhMiQaywctRkBLA== +eslint@^6.7.2: + version "6.7.2" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.7.2.tgz#c17707ca4ad7b2d8af986a33feba71e18a9fecd1" + integrity sha512-qMlSWJaCSxDFr8fBPvJM9kJwbazrhNcBU3+DszDW1OlEwKBBRWsJc7NJFelvwQpanHCR14cOLD41x8Eqvo3Nng== dependencies: "@babel/code-frame" "^7.0.0" ajv "^6.10.0" @@ -6469,9 +6473,9 @@ express@^4.17.1: vary "~1.1.2" ext@^1.1.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ext/-/ext-1.2.1.tgz#67e635e8d1c63a3250766a593aa8c3d6db332a32" - integrity sha512-x+OKKC57tNiLhDW26UmWtvQBpvO+2wxdC/A0jP7RkmjAc4gze9/U98hQyIYJUzo9A+o9ntMHpC+LH3pWMSbrVQ== + version "1.4.0" + resolved "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz#89ae7a07158f79d35517882904324077e4379244" + integrity sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A== dependencies: type "^2.0.0" @@ -6568,9 +6572,9 @@ fast-glob@^2.2.6: micromatch "^3.1.10" fast-glob@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.1.0.tgz#77375a7e3e6f6fc9b18f061cddd28b8d1eec75ae" - integrity sha512-TrUz3THiq2Vy3bjfQUB2wNyPdGBeGmdjbzzBLhfHN4YFurYptCKwGq/TfiRavbGywFRzY6U2CdmQ1zmsY5yYaw== + version "3.1.1" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.1.1.tgz#87ee30e9e9f3eb40d6f254a7997655da753d7c82" + integrity sha512-nTCREpBY8w8r+boyFYAx21iL6faSsQynliPHM4Uf56SbkyohCNxpVPEH9xrF5TXKy+IsjkPUHDKiUkzBVRXn9g== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" @@ -6700,10 +6704,10 @@ filenamify@^1.0.0: strip-outer "^1.0.0" trim-repeated "^1.0.0" -filing-cabinet@^2.3.1: - version "2.5.0" - resolved "https://registry.yarnpkg.com/filing-cabinet/-/filing-cabinet-2.5.0.tgz#325ac8acf6932597d589ef6bc37239fe57b8bc70" - integrity sha512-RUMWQT/Og4m4D7PFOqTZCTumg6QwlNnpV/adYGPUzWMaOnta/jDirp/4meXx+cwBKFrztEmZTPIkrZy0G1LwOA== +filing-cabinet@^2.5.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/filing-cabinet/-/filing-cabinet-2.5.1.tgz#f920976d46310710595ed995f033a301570ef6ab" + integrity sha512-GWOdObzou2L0HrJUk8MpJa01q0ZOwuTwTssM2+P+ABJWEGlVWd6ueEatANFdin94/3rdkVSdqpH14VqCNqp3RA== dependencies: app-module-path "^2.2.0" commander "^2.13.0" @@ -7201,18 +7205,6 @@ glob2base@^0.0.12: dependencies: find-index "^0.1.1" -glob@7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" - integrity sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== - dependencies: - 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" - glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" @@ -7368,11 +7360,6 @@ gray-matter@^4.0.1: section-matter "^1.0.0" strip-bom-string "^1.0.0" -growl@1.10.3: - version "1.10.3" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" - integrity sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q== - growly@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" @@ -7419,11 +7406,6 @@ has-ansi@^2.0.0: dependencies: ansi-regex "^2.0.0" -has-flag@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" - integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -7503,11 +7485,6 @@ hash.js@^1.0.0, hash.js@^1.0.3: inherits "^2.0.3" minimalistic-assert "^1.0.1" -he@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" - integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= - he@1.2.x, he@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" @@ -9068,7 +9045,7 @@ jsqr@^1.2.0: resolved "https://registry.yarnpkg.com/jsqr/-/jsqr-1.2.0.tgz#f93fc65fa7d1ded78b1bcb020fa044352b04261a" integrity sha512-wKcQS9QC2VHGk7aphWCp1RrFyC0CM6fMgC5prZZ2KV/Lk6OKNoCod9IR6bao+yx3KPY0gZFC5dc+h+KFzCI0Wg== -jsx-ast-utils@^2.2.1: +jsx-ast-utils@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz#8a9364e402448a3ce7f14d357738310d9248054f" integrity sha512-EdIHFMm+1BPynpKOpdPqiOsvnIrInRGJD7bzPZdPkjitQEqpdpUuFpq4T0npZFKTiB3RhWFdGN+oqOJIdhDhQA== @@ -9826,9 +9803,9 @@ meow@^5.0.0: yargs-parser "^10.0.0" merge-anything@^2.2.4: - version "2.4.2" - resolved "https://registry.yarnpkg.com/merge-anything/-/merge-anything-2.4.2.tgz#f7152fc4764ae02c024742afb14a989c1a0f1f27" - integrity sha512-/so+4seX7fdAhPI3m3bxwc60vhotzY9uM+1Z6C3GKeJBYzxt/lIrbs5uT9iwgM5aLi5kpJIPT7JzJfrrfloWHA== + version "2.4.4" + resolved "https://registry.yarnpkg.com/merge-anything/-/merge-anything-2.4.4.tgz#6226b2ac3d3d3fc5fb9e8d23aa400df25f98fdf0" + integrity sha512-l5XlriUDJKQT12bH+rVhAHjwIuXWdAIecGwsYjv2LJo+dA1AeRTmeQS+3QBpO6lEthBMDi2IUMpLC1yyRvGlwQ== dependencies: is-what "^3.3.1" @@ -10077,7 +10054,7 @@ mkdirp-promise@^5.0.1: dependencies: mkdirp "*" -mkdirp@*, mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1, mkdirp@~0.5.x: +mkdirp@*, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1, mkdirp@~0.5.x: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= @@ -10089,22 +10066,6 @@ mkdirp@0.3.0: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e" integrity sha1-G79asbqCevI1dRQ0kEJkVfSB/h4= -mocha@5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-5.0.5.tgz#e228e3386b9387a4710007a641f127b00be44b52" - integrity sha512-3MM3UjZ5p8EJrYpG7s+29HAI9G7sTzKEe4+w37Dg0QP7qL4XGsV+Q2xet2cE37AqdgN1OtYQB6Vl98YiPV3PgA== - dependencies: - browser-stdout "1.3.1" - commander "2.11.0" - debug "3.1.0" - diff "3.5.0" - escape-string-regexp "1.0.5" - glob "7.1.2" - growl "1.10.3" - he "1.1.1" - mkdirp "0.5.1" - supports-color "4.4.0" - modify-values@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" @@ -10310,9 +10271,9 @@ no-case@^2.2.0: lower-case "^1.1.1" node-abi@^2.7.0: - version "2.12.0" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.12.0.tgz#40e9cfabdda1837863fa825e7dfa0b15686adf6f" - integrity sha512-VhPBXCIcvmo/5K8HPmnWJyyhvgKxnHTUMXR/XwGHV68+wrgkzST4UmQrY/XszSWA5dtnXpNp528zkcyJ/pzVcw== + version "2.13.0" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.13.0.tgz#e2f2ec444d0aca3ea1b3874b6de41d1665828f63" + integrity sha512-9HrZGFVTR5SOu3PZAnAY2hLO36aW1wmA+FDsVkr85BTST32TLCA1H/AEcatVRAsWLyXS3bqUDYCAjq5/QGuSTA== dependencies: semver "^5.4.1" @@ -10435,10 +10396,10 @@ node-pre-gyp@^0.12.0: semver "^5.3.0" tar "^4" -node-releases@^1.1.40: - version "1.1.41" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.41.tgz#57674a82a37f812d18e3b26118aefaf53a00afed" - integrity sha512-+IctMa7wIs8Cfsa8iYzeaLTFwv5Y4r5jZud+4AnfymzeEXKBCavFX0KBgzVaPVqf0ywa6PrO8/b+bPqdwjGBSg== +node-releases@^1.1.41: + version "1.1.42" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.42.tgz#a999f6a62f8746981f6da90627a8d2fc090bbad7" + integrity sha512-OQ/ESmUqGawI2PRX+XIRao44qWYBBfN54ImQYdWVTQqUckuejOg76ysSqDBK8NG3zwySRVnX36JwDQ6x+9GxzA== dependencies: semver "^6.3.0" @@ -10690,7 +10651,7 @@ object.entries@^1.0.4, object.entries@^1.1.0: function-bind "^1.1.1" has "^1.0.3" -object.fromentries@^2.0.0, object.fromentries@^2.0.1: +object.fromentries@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.1.tgz#050f077855c7af8ae6649f45c80b16ee2d31e704" integrity sha512-PUQv8Hbg3j2QX0IQYv3iAGCbGcu4yY4KQ92/dhA4sFSixBmSmp13UpDLs6jGK8rBtbmhNNIK99LD2k293jpiGA== @@ -11509,10 +11470,10 @@ postcss-modules-local-by-default@^3.0.2: postcss-selector-parser "^6.0.2" postcss-value-parser "^4.0.0" -postcss-modules-scope@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.0.tgz#ad3f5bf7856114f6fcab901b0502e2a2bc39d4eb" - integrity sha512-91Rjps0JnmtUB0cujlc8KIKCsJXWjzuxGeT/+Q2i2HXKZ7nBUeF9YQTZZTNvHVoNYj1AthsjnGLtqDUE0Op79A== +postcss-modules-scope@^2.1.0, postcss-modules-scope@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.1.tgz#33d4fc946602eb5e9355c4165d68a10727689dba" + integrity sha512-OXRUPecnHCg8b9xWvldG/jUpRIGPNRka0r4D4j0ESUU2/5IOnpsjfPPmDprM3Ih8CgZ8FXjWqaniK5v4rWt3oQ== dependencies: postcss "^7.0.6" postcss-selector-parser "^6.0.0" @@ -11715,7 +11676,7 @@ postcss-values-parser@^1.5.0: indexes-of "^1.0.1" uniq "^1.0.1" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.23, postcss@^7.0.5, postcss@^7.0.6: +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.2, postcss@^7.0.23, postcss@^7.0.5, postcss@^7.0.6: version "7.0.23" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.23.tgz#9f9759fad661b15964f3cfc3140f66f1e05eadc1" integrity sha512-hOlMf3ouRIFXD+j2VJecwssTwbvsPGJVMzupptg+85WA+i7MwyrydmQAgY3R+m0Bc0exunhbJmijy8u8+vufuQ== @@ -11928,9 +11889,9 @@ pseudomap@^1.0.2: integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= psl@^1.1.24, psl@^1.1.28: - version "1.4.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.4.0.tgz#5dd26156cdb69fa1fdb8ab1991667d3f80ced7c2" - integrity sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw== + version "1.5.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.5.0.tgz#47fd1292def7fdb1e138cd78afa8814cebcf7b13" + integrity sha512-4vqUjKi2huMu1OJiLhi3jN6jeeKvMZdI1tYgi/njW5zV52jNLgSAZSdN16m9bJFe61/cT8ulmw4qFitV9QRsEA== public-encrypt@^4.0.0: version "4.0.3" @@ -12691,10 +12652,10 @@ resolve@1.1.7: resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= -resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.2.0, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1, resolve@^1.9.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.13.0.tgz#e879eb397efb40511056ede7300b6ac28c51290b" - integrity sha512-HHZ3hmOrk5SvybTb18xq4Ek2uLqLO5/goFCYUyvn26nWox4hdlKlfC/+dChIZ6qc4ZeYcN9ekTz0yyHsFgumMw== +resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.11.1, resolve@^1.13.1, resolve@^1.2.0, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1, resolve@^1.9.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.13.1.tgz#be0aa4c06acd53083505abb35f4d66932ab35d16" + integrity sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w== dependencies: path-parse "^1.0.6" @@ -12863,7 +12824,7 @@ sass-lookup@^3.0.0: dependencies: commander "^2.16.0" -sax@>=0.6.0, sax@^1.2.4, sax@~1.2.4: +sax@^1.2.4, sax@~1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== @@ -12893,10 +12854,10 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.0.0, schema-utils@^2.0.1, schema-utils@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.5.0.tgz#8f254f618d402cc80257486213c8970edfd7c22f" - integrity sha512-32ISrwW2scPXHUSusP8qMg5dLUawKkyV+/qIEV9JdXKx+rsM6mi8vZY8khg2M69Qom16rtroWXD3Ybtiws38gQ== +schema-utils@^2.0.1, schema-utils@^2.5.0, schema-utils@^2.6.0: + version "2.6.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.6.1.tgz#eb78f0b945c7bcfa2082b3565e8db3548011dc4f" + integrity sha512-0WXHDs1VDJyo+Zqs9TKLKyD/h7yDpHUhEFsM2CzkICFdoX1av+GBq/J2xRTFfsQO5kBfhZzANf2VcIm84jqDbg== dependencies: ajv "^6.10.2" ajv-keywords "^3.4.1" @@ -12985,9 +12946,9 @@ serialize-javascript@^1.3.0, serialize-javascript@^1.7.0: integrity sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A== serialize-javascript@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.0.tgz#9310276819efd0eb128258bb341957f6eb2fc570" - integrity sha512-a/mxFfU00QT88umAJQsNWOnUKckhNCqOl028N48e7wFmo2/EHpTo9Wso+iJJCMrQnmFvcjto5RJdAHEvVhcyUQ== + version "2.1.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.1.tgz#952907a04a3e3a75af7f73d92d15e233862048b2" + integrity sha512-MPLPRpD4FNqWq9tTIjYG5LesFouDhdyH0EPY3gVK4DRD5+g4aDqdNSzLIwceulo3Yj+PL1bPh6laE5+H6LTcrQ== serve-index@^1.9.1: version "1.9.1" @@ -13689,10 +13650,10 @@ strong-log-transformer@^2.0.0: minimist "^1.2.0" through "^2.3.4" -style-loader@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.0.0.tgz#1d5296f9165e8e2c85d24eee0b7caf9ec8ca1f82" - integrity sha512-B0dOCFwv7/eY31a5PCieNwMgMhVGFe9w+rh7s/Bx8kfFkrth9zfTZquoYvdw8URgiqxObQKcpW51Ugz1HjfdZw== +style-loader@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.0.1.tgz#aec6d4c61d0ed8d0a442faed741d4dfc6573888a" + integrity sha512-CnpEkSR1C+REjudiTWCv4+ssP7SCiuaQZJTZDWBRwTJoS90mdqkB8uOGMHKgVeUzpaU7IfLWoyQbvvs5Joj3Xw== dependencies: loader-utils "^1.2.3" schema-utils "^2.0.1" @@ -13773,13 +13734,6 @@ subarg@^1.0.0: dependencies: minimist "^1.1.0" -supports-color@4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" - integrity sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ== - dependencies: - has-flag "^2.0.0" - supports-color@6.1.0, supports-color@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" @@ -13922,9 +13876,9 @@ terser-webpack-plugin@^1.4.1: worker-farm "^1.7.0" terser@^4.1.2: - version "4.4.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.4.0.tgz#22c46b4817cf4c9565434bfe6ad47336af259ac3" - integrity sha512-oDG16n2WKm27JO8h4y/w3iqBGAOSCtq7k8dRmrn4Wf9NouL0b2WpMHGChFGZq4nFAQy1FsNJrVQHfurXOSTmOA== + version "4.4.2" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.4.2.tgz#448fffad0245f4c8a277ce89788b458bfd7706e8" + integrity sha512-Uufrsvhj9O1ikwgITGsZ5EZS6qPokUOkCegS7fYOdGTv+OA90vndUbU6PEjr5ePqHfNUbGyMO7xyIZv2MhsALQ== dependencies: commander "^2.20.0" source-map "~0.6.1" @@ -14278,12 +14232,13 @@ typedoc-default-themes@^0.6.1: lunr "^2.3.8" underscore "^1.9.1" -typedoc-plugin-markdown@^2.2.11: - version "2.2.11" - resolved "https://registry.yarnpkg.com/typedoc-plugin-markdown/-/typedoc-plugin-markdown-2.2.11.tgz#81ea607a7bc82cf3ae0bc6de4bbb7e8ea6b437f2" - integrity sha512-tzBJJjM23DZMbfV+wds+M/IH8xNUVX4iyvABWyL9+gQZY6Fwbf2xGur2Dg6jNXGn2OsuqjZRI3dvSeqw64MSMA== +typedoc-plugin-markdown@^2.2.14: + version "2.2.14" + resolved "https://registry.yarnpkg.com/typedoc-plugin-markdown/-/typedoc-plugin-markdown-2.2.14.tgz#30c9c51301a2bd1428463bc0b47d8a6228f9914e" + integrity sha512-MukndnFdFWMc24HpzvCPDRKMX8Fx92arfMvlAVFhPv8ClXyK7aQVPygHLB1iWXvev6TzggUSQf6IM3LHvoknCw== dependencies: fs-extra "^8.1.0" + handlebars "^4.5.3" typedoc-plugin-no-inherit@^1.1.10: version "1.1.10" @@ -14307,10 +14262,10 @@ typedoc@^0.15.3: typedoc-default-themes "^0.6.1" typescript "3.7.x" -typescript@3.7.x, typescript@^3.0.3, typescript@^3.6.4, typescript@^3.7.2: - version "3.7.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.2.tgz#27e489b95fa5909445e9fef5ee48d81697ad18fb" - integrity sha512-ml7V7JfiN2Xwvcer+XAf2csGO1bPBdRbFCkYBczNZggrBZ9c7G3riSUeJmqEU5uOtXNPMhE3n+R4FA/3YOAWOQ== +typescript@3.7.x, typescript@^3.0.3, typescript@^3.6.4, typescript@^3.7.3: + version "3.7.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.3.tgz#b36840668a16458a7025b9eabfad11b66ab85c69" + integrity sha512-Mcr/Qk7hXqFBXMN7p7Lusj1ktCBydylfQM/FZCk5glCNQJrCUKPkMHdo9R0MTFWsC/4kPFvDS0fDPvukfCkFsw== u2f-api@0.2.7: version "0.2.7" @@ -14331,9 +14286,9 @@ uglify-js@3.4.x: source-map "~0.6.1" uglify-js@^3.1.4: - version "3.7.0" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.7.0.tgz#14b854003386b7a7c045910f43afbc96d2aa5307" - integrity sha512-PC/ee458NEMITe1OufAjal65i6lB58R1HWMRcxwvdz1UopW0DYqlRL3xdu3IcTvTXsB02CRHykidkTRL+A3hQA== + version "3.7.1" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.7.1.tgz#35c7de17971a4aa7689cd2eae0a5b39bb838c0c5" + integrity sha512-pnOF7jY82wdIhATVn87uUY/FHU+MDUdPLkmGFvGoclQmeu229eTkbG5gjGGBi3R7UuYYSEeYXY/TTY5j2aym2g== dependencies: commander "~2.20.3" source-map "~0.6.1" @@ -14507,9 +14462,9 @@ url@^0.11.0: querystring "0.2.0" usb@^1.6.0: - version "1.6.1" - resolved "https://registry.yarnpkg.com/usb/-/usb-1.6.1.tgz#1cc6e82548f62135e2ddc13e0b351bb423d34e2a" - integrity sha512-iZRGRsdbCvhBpeufY+cpy7LS9OMrh1hobvHaxa6/HNr1mgqrfeNpfbzoRCBofkG9MpLsujKieBFzqdPWcMugYQ== + version "1.6.2" + resolved "https://registry.yarnpkg.com/usb/-/usb-1.6.2.tgz#4ed7f0d8631c70192b33635f6a4e700d9e6bfe62" + integrity sha512-KcovLXRQuH63iEtnqXyDQGOi5dXHpLM5lZBIUsqSJQToua8nL2sVCieQTkzQBfLe5mCuvk40MgKciI61lgevWw== dependencies: bindings "^1.4.0" nan "2.13.2" @@ -14698,9 +14653,9 @@ vuepress-html-webpack-plugin@^3.2.0: util.promisify "1.0.0" vuepress-plugin-container@^2.0.2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/vuepress-plugin-container/-/vuepress-plugin-container-2.1.1.tgz#1938f28c8244aa82fee60aa4741596129d1df01f" - integrity sha512-1hKZZ9DzVvgNZiSZfiTGiAzbq9bYww64kFz5yv3BRLKdEYX7rSIxKW6lFrbyaTCPQkT1qWgr95sM+GVetpcQFw== + version "2.1.2" + resolved "https://registry.yarnpkg.com/vuepress-plugin-container/-/vuepress-plugin-container-2.1.2.tgz#688c1e5a9709a1b8658605bcaee580b3abb19d16" + integrity sha512-Df5KoIDMYiFg45GTfFw2hIiLGSsjhms4f3ppl2UIBf5nWMxi2lfifcoo8MooMSfxboxRZjoDccqQfu0fypaKrQ== dependencies: markdown-it-container "^2.0.0" @@ -15211,19 +15166,6 @@ xml-name-validator@^3.0.0: resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== -xml2js@0.4.19: - version "0.4.19" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" - integrity sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q== - dependencies: - sax ">=0.6.0" - xmlbuilder "~9.0.1" - -xmlbuilder@~9.0.1: - version "9.0.7" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" - integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0= - xregexp@^4.2.4: version "4.2.4" resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.2.4.tgz#02a4aea056d65a42632c02f0233eab8e4d7e57ed"