From 462935b66930ce6a35110b97011b247f89736b3b Mon Sep 17 00:00:00 2001 From: kshitij01042002 Date: Fri, 19 Jan 2024 18:20:41 +0530 Subject: [PATCH 01/45] added xdc mainnet and testnet support --- app/images/xdc-token.png | Bin 0 -> 76017 bytes shared/constants/network.ts | 53 ++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 app/images/xdc-token.png diff --git a/app/images/xdc-token.png b/app/images/xdc-token.png new file mode 100644 index 0000000000000000000000000000000000000000..ec74f7ace1b1b84623fda87f141949b6daf6278d GIT binary patch literal 76017 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

RNrVot)W4|F8v37XXZU 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


w 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 G?)@J@UXW1$ literal 0 HcmV?d00001 diff --git a/shared/constants/network.ts b/shared/constants/network.ts index 4e408c2f846e..7331acf5ef87 100644 --- a/shared/constants/network.ts +++ b/shared/constants/network.ts @@ -145,6 +145,8 @@ export const CHAIN_IDS = { GNOSIS: '0x64', ZKSYNC_ERA: '0x144', TEST_ETH: '0x539', + XDC_NETWORK_MAINNET: '0x32', + XDC_APOTHEM_TESTNET: '0x33', } as const; const CHAINLIST_CHAIN_IDS_MAP = { @@ -232,6 +234,8 @@ export const GNOSIS_DISPLAY_NAME = 'Gnosis'; export const ZK_SYNC_ERA_DISPLAY_NAME = 'zkSync Era Mainnet'; export const BASE_DISPLAY_NAME = 'Base Mainnet'; export const AURORA_ETH_DISPLAY_NAME = 'Aurora'; +export const XDC_NETWORK_MAINNET_DISPLAY_NAME = 'XDC Network Mainnet'; +export const XDC_APOTHEM_TESTNET_DISPLAY_NAME = 'XDC Apothem Testnet'; export const infuraProjectId = process.env.INFURA_PROJECT_ID; export const getRpcUrl = ({ @@ -283,6 +287,8 @@ export const CURRENCY_SYMBOLS = { GLIMMER: 'GLMR', MOONRIVER: 'MOVR', ONE: 'ONE', + XDC_NETWORK_MAINNET: 'XDC', + XDC_APOTHEM_TESTNET: 'TXDC', } as const; const CHAINLIST_CURRENCY_SYMBOLS_MAP = { @@ -360,6 +366,7 @@ export const CELO_TOKEN_IMAGE_URL = './images/celo.svg'; export const GNOSIS_TOKEN_IMAGE_URL = './images/gnosis.svg'; export const ZK_SYNC_ERA_TOKEN_IMAGE_URL = './images/zk-sync.svg'; export const BASE_TOKEN_IMAGE_URL = './images/base.png'; +export const XDC_TOKEN_IMAGE_URL = './images/xdc-token.png'; export const INFURA_PROVIDER_TYPES = [ NETWORK_TYPES.MAINNET, @@ -574,6 +581,10 @@ export const CHAIN_ID_TO_CURRENCY_SYMBOL_MAP = { CHAINLIST_CURRENCY_SYMBOLS_MAP.HUOBI_ECO_CHAIN_MAINNET, [CHAINLIST_CHAIN_IDS_MAP.ACALA_NETWORK]: CHAINLIST_CURRENCY_SYMBOLS_MAP.ACALA_NETWORK, + [CHAINLIST_CHAIN_IDS_MAP.XDC_NETWORK_MAINNET]: + CHAINLIST_CURRENCY_SYMBOLS_MAP.XDC_NETWORK_MAINNET, + [CHAINLIST_CHAIN_IDS_MAP.XDC_APOTHEM_TESTNET]: + CHAINLIST_CURRENCY_SYMBOLS_MAP.XDC_APOTHEM_TESTNET, } as const; export const CHAIN_ID_TO_TYPE_MAP = { @@ -608,6 +619,8 @@ export const CHAIN_ID_TO_NETWORK_IMAGE_URL_MAP = { [CHAIN_IDS.PALM]: PALM_TOKEN_IMAGE_URL, [CHAIN_IDS.CELO]: CELO_TOKEN_IMAGE_URL, [CHAIN_IDS.GNOSIS]: GNOSIS_TOKEN_IMAGE_URL, + [CHAIN_IDS.XDC_NETWORK_MAINNET]: XDC_TOKEN_IMAGE_URL, + [CHAIN_IDS.XDC_APOTHEM_TESTNET]: XDC_TOKEN_IMAGE_URL, } as const; export const CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP = { @@ -627,6 +640,8 @@ export const CHAIN_ID_TOKEN_IMAGE_MAP = { [CHAIN_IDS.OPTIMISM]: ETH_TOKEN_IMAGE_URL, [CHAIN_IDS.CELO]: CELO_TOKEN_IMAGE_URL, [CHAIN_IDS.GNOSIS]: GNOSIS_TOKEN_IMAGE_URL, + [CHAIN_IDS.XDC_NETWORK_MAINNET]: XDC_TOKEN_IMAGE_URL, + [CHAIN_IDS.XDC_APOTHEM_TESTNET]: XDC_TOKEN_IMAGE_URL, } as const; export const INFURA_BLOCKED_KEY = 'countryBlocked'; @@ -718,6 +733,14 @@ export const ETHERSCAN_SUPPORTED_NETWORKS = { domain: 'gnosisscan.io', subdomain: `${defaultEtherscanSubdomainPrefix}-gnosis`, }, + [CHAIN_IDS.XDC_NETWORK_MAINNET]: { + domain: 'blocksscan.io', + subdomain: `${defaultEtherscanSubdomainPrefix}-xdc`, + }, + [CHAIN_IDS.XDC_APOTHEM_TESTNET]: { + domain: 'blocksscan.io', + subdomain: `${defaultEtherscanSubdomainPrefix}-apothem`, + }, }; export const CHAIN_ID_TO_GAS_LIMIT_BUFFER_MAP = { @@ -760,6 +783,8 @@ export const BUYABLE_CHAINS_MAP: { | typeof CHAIN_IDS.SEPOLIA | typeof CHAIN_IDS.GNOSIS | typeof CHAIN_IDS.AURORA + | typeof CHAIN_IDS.XDC_NETWORK_MAINNET + | typeof CHAIN_IDS.XDC_APOTHEM_TESTNET >]: BuyableChainSettings; } = { [CHAIN_IDS.MAINNET]: { @@ -822,6 +847,14 @@ export const BUYABLE_CHAINS_MAP: { nativeCurrency: CURRENCY_SYMBOLS.ETH, network: 'zksync', }, + [CHAIN_IDS.XDC_NETWORK_MAINNET]: { + nativeCurrency: CURRENCY_SYMBOLS.XDC_NETWORK_MAINNET, + network: 'xdc', + }, + [CHAIN_IDS.XDC_APOTHEM_TESTNET]: { + nativeCurrency: CURRENCY_SYMBOLS.XDC_APOTHEM_TESTNET, + network: 'xdc', + }, }; export const FEATURED_RPCS: RPCDefinition[] = [ @@ -915,6 +948,26 @@ export const FEATURED_RPCS: RPCDefinition[] = [ imageUrl: BASE_TOKEN_IMAGE_URL, }, }, + { + chainId: CHAIN_IDS.XDC_NETWORK_MAINNET, + nickname: XDC_NETWORK_MAINNET_DISPLAY_NAME, + rpcUrl: `https://erpc.xinfin.network`, + ticker: CURRENCY_SYMBOLS.XDC_NETWORK_MAINNET, + rpcPrefs: { + blockExplorerUrl: 'https://xdc.network/', + imageUrl: XDC_TOKEN_IMAGE_URL, + }, + }, + { + chainId: CHAIN_IDS.XDC_APOTHEM_TESTNET, + nickname: XDC_APOTHEM_TESTNET_DISPLAY_NAME, + rpcUrl: `https://rpc.apothem.network`, + ticker: CURRENCY_SYMBOLS.XDC_APOTHEM_TESTNET, + rpcPrefs: { + blockExplorerUrl: 'https://explorer.apothem.network/', + imageUrl: XDC_TOKEN_IMAGE_URL, + }, + }, ]; /** From 5e45a99e08b2a08b5b8ff52c837b0c627e2452e5 Mon Sep 17 00:00:00 2001 From: kshitij01042002 Date: Thu, 25 Jan 2024 09:40:06 +0530 Subject: [PATCH 02/45] removed tslint error --- shared/constants/network.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/shared/constants/network.ts b/shared/constants/network.ts index 7331acf5ef87..861077c40941 100644 --- a/shared/constants/network.ts +++ b/shared/constants/network.ts @@ -783,8 +783,6 @@ export const BUYABLE_CHAINS_MAP: { | typeof CHAIN_IDS.SEPOLIA | typeof CHAIN_IDS.GNOSIS | typeof CHAIN_IDS.AURORA - | typeof CHAIN_IDS.XDC_NETWORK_MAINNET - | typeof CHAIN_IDS.XDC_APOTHEM_TESTNET >]: BuyableChainSettings; } = { [CHAIN_IDS.MAINNET]: { From 94f10cc69d07143b66a21296b1a3091293fc89c7 Mon Sep 17 00:00:00 2001 From: kshitij01042002 Date: Thu, 25 Jan 2024 09:44:40 +0530 Subject: [PATCH 03/45] excluded testnet from buyable list --- shared/constants/network.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/shared/constants/network.ts b/shared/constants/network.ts index 861077c40941..9455a6531d8d 100644 --- a/shared/constants/network.ts +++ b/shared/constants/network.ts @@ -783,6 +783,7 @@ export const BUYABLE_CHAINS_MAP: { | typeof CHAIN_IDS.SEPOLIA | typeof CHAIN_IDS.GNOSIS | typeof CHAIN_IDS.AURORA + | typeof CHAIN_IDS.XDC_APOTHEM_TESTNET >]: BuyableChainSettings; } = { [CHAIN_IDS.MAINNET]: { @@ -849,10 +850,6 @@ export const BUYABLE_CHAINS_MAP: { nativeCurrency: CURRENCY_SYMBOLS.XDC_NETWORK_MAINNET, network: 'xdc', }, - [CHAIN_IDS.XDC_APOTHEM_TESTNET]: { - nativeCurrency: CURRENCY_SYMBOLS.XDC_APOTHEM_TESTNET, - network: 'xdc', - }, }; export const FEATURED_RPCS: RPCDefinition[] = [ From b67f734c1fc55119e6c8a20649c80e5aaf824754 Mon Sep 17 00:00:00 2001 From: Olusegun Akintayo Date: Thu, 25 Jan 2024 09:48:42 +0100 Subject: [PATCH 04/45] feat: Enable ppom on other chains (#22633) --- app/scripts/lib/createStreamSink.js | 4 +- app/scripts/lib/ppom/ppom-middleware.ts | 12 +- app/scripts/metamask-controller.js | 5 +- lavamoat/browserify/beta/policy.json | 20 +-- lavamoat/browserify/desktop/policy.json | 20 +-- lavamoat/browserify/flask/policy.json | 54 +++---- lavamoat/browserify/main/policy.json | 54 +++---- lavamoat/browserify/mmi/policy.json | 20 +-- lavamoat/build-system/policy.json | 6 +- package.json | 2 +- test/e2e/tests/errors.spec.js | 1 + ...rs-after-init-opt-in-background-state.json | 3 +- .../errors-after-init-opt-in-ui-state.json | 3 +- .../component-library/icon/icon.types.ts | 2 +- yarn.lock | 133 ++++++++++++++---- 15 files changed, 197 insertions(+), 142 deletions(-) diff --git a/app/scripts/lib/createStreamSink.js b/app/scripts/lib/createStreamSink.js index 84ad69db1813..a6d4895cd197 100644 --- a/app/scripts/lib/createStreamSink.js +++ b/app/scripts/lib/createStreamSink.js @@ -1,7 +1,7 @@ -import { Writable as WritableStream } from 'readable-stream'; +import { Writable } from 'readable-stream'; import promiseToCallback from 'promise-to-callback'; -class AsyncWritableStream extends WritableStream { +class AsyncWritableStream extends Writable { constructor(asyncWriteFn, _opts) { const opts = { objectMode: true, ..._opts }; super(opts); diff --git a/app/scripts/lib/ppom/ppom-middleware.ts b/app/scripts/lib/ppom/ppom-middleware.ts index 5dc027bf594b..7575b3c8fb46 100644 --- a/app/scripts/lib/ppom/ppom-middleware.ts +++ b/app/scripts/lib/ppom/ppom-middleware.ts @@ -22,6 +22,16 @@ const ConfirmationMethods = Object.freeze([ 'personal_sign', ]); +export const SUPPORTED_CHAIN_IDS: string[] = [ + CHAIN_IDS.MAINNET, + CHAIN_IDS.BSC, + CHAIN_IDS.POLYGON, + CHAIN_IDS.ARBITRUM, + CHAIN_IDS.OPTIMISM, + CHAIN_IDS.AVALANCHE, + CHAIN_IDS.LINEA_MAINNET, +]; + /** * Middleware function that handles JSON RPC requests. * This function will be called for every JSON RPC request. @@ -49,7 +59,7 @@ export function createPPOMMiddleware( if ( securityAlertsEnabled && ConfirmationMethods.includes(req.method) && - chainId === CHAIN_IDS.MAINNET + SUPPORTED_CHAIN_IDS.includes(chainId) ) { // eslint-disable-next-line require-atomic-updates req.securityAlertResponse = await ppomController.usePPOM( diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 05151debebc2..2f7fa803a69e 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -769,16 +769,13 @@ export default class MetamaskController extends EventEmitter { this.ppomController = new PPOMController({ messenger: this.controllerMessenger.getRestricted({ name: 'PPOMController', + allowedEvents: ['NetworkController:stateChange'], }), storageBackend: new IndexedDBPPOMStorage('PPOMDB', 1), provider: this.provider, ppomProvider: { PPOM: PPOMModule.PPOM, ppomInit: PPOMModule.default }, state: initState.PPOMController, chainId: this.networkController.state.providerConfig.chainId, - onNetworkChange: networkControllerMessenger.subscribe.bind( - networkControllerMessenger, - 'NetworkController:stateChange', - ), securityAlertsEnabled: this.preferencesController.store.getState().securityAlertsEnabled, onPreferencesChange: this.preferencesController.store.subscribe.bind( diff --git a/lavamoat/browserify/beta/policy.json b/lavamoat/browserify/beta/policy.json index c5d34a648bcd..562924a719cf 100644 --- a/lavamoat/browserify/beta/policy.json +++ b/lavamoat/browserify/beta/policy.json @@ -749,7 +749,7 @@ "packages": { "@metamask/address-book-controller>@metamask/controller-utils>@metamask/utils": true, "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, "eth-ens-namehash": true, @@ -1513,7 +1513,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -1521,6 +1521,12 @@ "ethereumjs-util": true } }, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": { + "packages": { + "@metamask/ethjs>number-to-bn": true, + "bn.js": true + } + }, "@metamask/message-manager>@metamask/eth-sig-util": { "packages": { "@ethereumjs/tx>@ethereumjs/util": true, @@ -1703,12 +1709,6 @@ "webpack>events": true } }, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": { - "packages": { - "@metamask/ethjs>number-to-bn": true, - "bn.js": true - } - }, "@metamask/ppom-validator>elliptic": { "packages": { "@metamask/ppom-validator>elliptic>brorand": true, @@ -1838,7 +1838,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -1883,7 +1883,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, diff --git a/lavamoat/browserify/desktop/policy.json b/lavamoat/browserify/desktop/policy.json index d5bbbd4b89a3..adbb7d8f0679 100644 --- a/lavamoat/browserify/desktop/policy.json +++ b/lavamoat/browserify/desktop/policy.json @@ -749,7 +749,7 @@ "packages": { "@metamask/address-book-controller>@metamask/controller-utils>@metamask/utils": true, "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, "eth-ens-namehash": true, @@ -1590,7 +1590,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -1598,6 +1598,12 @@ "ethereumjs-util": true } }, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": { + "packages": { + "@metamask/ethjs>number-to-bn": true, + "bn.js": true + } + }, "@metamask/message-manager>@metamask/eth-sig-util": { "packages": { "@ethereumjs/tx>@ethereumjs/util": true, @@ -1807,12 +1813,6 @@ "webpack>events": true } }, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": { - "packages": { - "@metamask/ethjs>number-to-bn": true, - "bn.js": true - } - }, "@metamask/ppom-validator>elliptic": { "packages": { "@metamask/ppom-validator>elliptic>brorand": true, @@ -1979,7 +1979,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -2024,7 +2024,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, diff --git a/lavamoat/browserify/flask/policy.json b/lavamoat/browserify/flask/policy.json index caa141248e0c..cc1cacd9cc1f 100644 --- a/lavamoat/browserify/flask/policy.json +++ b/lavamoat/browserify/flask/policy.json @@ -749,7 +749,7 @@ "packages": { "@metamask/address-book-controller>@metamask/controller-utils>@metamask/utils": true, "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, "eth-ens-namehash": true, @@ -1590,7 +1590,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -1598,6 +1598,12 @@ "ethereumjs-util": true } }, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": { + "packages": { + "@metamask/ethjs>number-to-bn": true, + "bn.js": true + } + }, "@metamask/message-manager>@metamask/eth-sig-util": { "packages": { "@ethereumjs/tx>@ethereumjs/util": true, @@ -1812,12 +1818,14 @@ "URL": true, "clearInterval": true, "console.error": true, + "crypto": true, "setInterval": true }, "packages": { + "@metamask/controller-utils": true, "@metamask/eth-query>json-rpc-random-id": true, "@metamask/ppom-validator>@metamask/base-controller": true, - "@metamask/ppom-validator>@metamask/controller-utils": true, + "@metamask/ppom-validator>crypto-js": true, "@metamask/ppom-validator>elliptic": true, "await-semaphore": true, "browserify>buffer": true @@ -1831,40 +1839,14 @@ "immer": true } }, - "@metamask/ppom-validator>@metamask/controller-utils": { + "@metamask/ppom-validator>crypto-js": { "globals": { - "URL": true, - "console.error": true, - "fetch": true, - "setTimeout": true - }, - "packages": { - "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>@metamask/utils": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, - "browserify>buffer": true, - "eslint>fast-deep-equal": true, - "eth-ens-namehash": true, - "ethereumjs-util": true - } - }, - "@metamask/ppom-validator>@metamask/controller-utils>@metamask/utils": { - "globals": { - "TextDecoder": true, - "TextEncoder": true + "crypto": true, + "define": true, + "msCrypto": true }, "packages": { - "@metamask/utils>@noble/hashes": true, - "browserify>buffer": true, - "nock>debug": true, - "semver": true, - "superstruct": true - } - }, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": { - "packages": { - "@metamask/ethjs>number-to-bn": true, - "bn.js": true + "browserify>browser-resolve": true } }, "@metamask/ppom-validator>elliptic": { @@ -2033,7 +2015,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -2078,7 +2060,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, diff --git a/lavamoat/browserify/main/policy.json b/lavamoat/browserify/main/policy.json index fc71925a23a8..71332c1776ca 100644 --- a/lavamoat/browserify/main/policy.json +++ b/lavamoat/browserify/main/policy.json @@ -749,7 +749,7 @@ "packages": { "@metamask/address-book-controller>@metamask/controller-utils>@metamask/utils": true, "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, "eth-ens-namehash": true, @@ -1513,7 +1513,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -1521,6 +1521,12 @@ "ethereumjs-util": true } }, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": { + "packages": { + "@metamask/ethjs>number-to-bn": true, + "bn.js": true + } + }, "@metamask/message-manager>@metamask/eth-sig-util": { "packages": { "@ethereumjs/tx>@ethereumjs/util": true, @@ -1735,12 +1741,14 @@ "URL": true, "clearInterval": true, "console.error": true, + "crypto": true, "setInterval": true }, "packages": { + "@metamask/controller-utils": true, "@metamask/eth-query>json-rpc-random-id": true, "@metamask/ppom-validator>@metamask/base-controller": true, - "@metamask/ppom-validator>@metamask/controller-utils": true, + "@metamask/ppom-validator>crypto-js": true, "@metamask/ppom-validator>elliptic": true, "await-semaphore": true, "browserify>buffer": true @@ -1754,40 +1762,14 @@ "immer": true } }, - "@metamask/ppom-validator>@metamask/controller-utils": { + "@metamask/ppom-validator>crypto-js": { "globals": { - "URL": true, - "console.error": true, - "fetch": true, - "setTimeout": true - }, - "packages": { - "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>@metamask/utils": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, - "browserify>buffer": true, - "eslint>fast-deep-equal": true, - "eth-ens-namehash": true, - "ethereumjs-util": true - } - }, - "@metamask/ppom-validator>@metamask/controller-utils>@metamask/utils": { - "globals": { - "TextDecoder": true, - "TextEncoder": true + "crypto": true, + "define": true, + "msCrypto": true }, "packages": { - "@metamask/utils>@noble/hashes": true, - "browserify>buffer": true, - "nock>debug": true, - "semver": true, - "superstruct": true - } - }, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": { - "packages": { - "@metamask/ethjs>number-to-bn": true, - "bn.js": true + "browserify>browser-resolve": true } }, "@metamask/ppom-validator>elliptic": { @@ -1956,7 +1938,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -2001,7 +1983,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, diff --git a/lavamoat/browserify/mmi/policy.json b/lavamoat/browserify/mmi/policy.json index 28fddac75a84..46dbf6ec2554 100644 --- a/lavamoat/browserify/mmi/policy.json +++ b/lavamoat/browserify/mmi/policy.json @@ -881,7 +881,7 @@ "packages": { "@metamask/address-book-controller>@metamask/controller-utils>@metamask/utils": true, "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, "eth-ens-namehash": true, @@ -1645,7 +1645,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -1653,6 +1653,12 @@ "ethereumjs-util": true } }, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": { + "packages": { + "@metamask/ethjs>number-to-bn": true, + "bn.js": true + } + }, "@metamask/message-manager>@metamask/eth-sig-util": { "packages": { "@ethereumjs/tx>@ethereumjs/util": true, @@ -1862,12 +1868,6 @@ "webpack>events": true } }, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": { - "packages": { - "@metamask/ethjs>number-to-bn": true, - "bn.js": true - } - }, "@metamask/ppom-validator>elliptic": { "packages": { "@metamask/ppom-validator>elliptic>brorand": true, @@ -2034,7 +2034,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, @@ -2079,7 +2079,7 @@ }, "packages": { "@metamask/controller-utils>@spruceid/siwe-parser": true, - "@metamask/ppom-validator>@metamask/controller-utils>ethjs-unit": true, + "@metamask/message-manager>@metamask/controller-utils>ethjs-unit": true, "@metamask/utils": true, "browserify>buffer": true, "eslint>fast-deep-equal": true, diff --git a/lavamoat/build-system/policy.json b/lavamoat/build-system/policy.json index 64b4854bde1a..f3a2048eef1d 100644 --- a/lavamoat/build-system/policy.json +++ b/lavamoat/build-system/policy.json @@ -575,10 +575,10 @@ "@babel/preset-env>@babel/plugin-transform-classes>@babel/helper-annotate-as-pure": true, "@babel/preset-env>@babel/plugin-transform-classes>@babel/helper-optimise-call-expression": true, "@babel/preset-env>@babel/plugin-transform-classes>@babel/helper-replace-supers": true, + "@babel/preset-env>@babel/plugin-transform-classes>globals": true, "depcheck>@babel/traverse>@babel/helper-environment-visitor": true, "depcheck>@babel/traverse>@babel/helper-function-name": true, - "depcheck>@babel/traverse>@babel/helper-split-export-declaration": true, - "depcheck>@babel/traverse>globals": true + "depcheck>@babel/traverse>@babel/helper-split-export-declaration": true } }, "@babel/preset-env>@babel/plugin-transform-classes>@babel/helper-annotate-as-pure": { @@ -3116,8 +3116,8 @@ "eslint-plugin-prettier": true, "eslint-plugin-react": true, "eslint-plugin-react-hooks": true, - "eslint>@eslint/eslintrc>globals": true, "eslint>ajv": true, + "eslint>globals": true, "eslint>ignore": true, "eslint>minimatch": true, "mocha>strip-json-comments": true, diff --git a/package.json b/package.json index f8e417ac56d3..fa3b0d3ddfc5 100644 --- a/package.json +++ b/package.json @@ -283,7 +283,7 @@ "@metamask/phishing-controller": "^8.0.0", "@metamask/polling-controller": "^4.0.0", "@metamask/post-message-stream": "^7.0.0", - "@metamask/ppom-validator": "^0.10.0", + "@metamask/ppom-validator": "^0.22.0", "@metamask/providers": "^14.0.2", "@metamask/queued-request-controller": "^0.3.0", "@metamask/rate-limit-controller": "^3.0.0", diff --git a/test/e2e/tests/errors.spec.js b/test/e2e/tests/errors.spec.js index e5205f485713..4f1901c65c63 100644 --- a/test/e2e/tests/errors.spec.js +++ b/test/e2e/tests/errors.spec.js @@ -46,6 +46,7 @@ const removedBackgroundFields = [ 'AppStateController.currentPopupId', 'AppStateController.timeoutMinutes', 'PPOMController.chainStatus.0x539.lastVisited', + 'PPOMController.versionInfo', ]; const removedUiFields = removedBackgroundFields.map(backgroundToUiField); diff --git a/test/e2e/tests/state-snapshots/errors-after-init-opt-in-background-state.json b/test/e2e/tests/state-snapshots/errors-after-init-opt-in-background-state.json index e596d3057b6a..e373bbc7b870 100644 --- a/test/e2e/tests/state-snapshots/errors-after-init-opt-in-background-state.json +++ b/test/e2e/tests/state-snapshots/errors-after-init-opt-in-background-state.json @@ -129,10 +129,9 @@ "onboardingTabs": "object" }, "PPOMController": { - "versionInfo": {}, "storageMetadata": {}, "chainStatus": { - "0x539": { "chainId": "0x539", "dataFetched": false, "versionInfo": [] } + "0x539": { "chainId": "0x539", "versionInfo": [] } }, "versionFileETag": "string" }, diff --git a/test/e2e/tests/state-snapshots/errors-after-init-opt-in-ui-state.json b/test/e2e/tests/state-snapshots/errors-after-init-opt-in-ui-state.json index 49e3c55fd957..d54be045b0b9 100644 --- a/test/e2e/tests/state-snapshots/errors-after-init-opt-in-ui-state.json +++ b/test/e2e/tests/state-snapshots/errors-after-init-opt-in-ui-state.json @@ -214,10 +214,9 @@ "approvalFlows": "object", "lastFetchedBlockNumbers": "object", "methodData": "object", - "versionInfo": {}, "storageMetadata": {}, "chainStatus": { - "0x539": { "chainId": "0x539", "dataFetched": false, "versionInfo": [] } + "0x539": { "chainId": "0x539", "versionInfo": [] } }, "versionFileETag": "string", "userOperations": "object" diff --git a/ui/components/component-library/icon/icon.types.ts b/ui/components/component-library/icon/icon.types.ts index 5d8acd901da7..7ad8e2d5fd62 100644 --- a/ui/components/component-library/icon/icon.types.ts +++ b/ui/components/component-library/icon/icon.types.ts @@ -171,7 +171,7 @@ export enum IconName { Bold = 'bold', CircleX = 'circle-x', Download = 'download', - File = 'file', + FileIcon = 'file', Flask = 'flask', Plug = 'plug', Share = 'share', diff --git a/yarn.lock b/yarn.lock index 4089b12fcebe..fbb1fd75a6f6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2112,7 +2112,7 @@ __metadata: languageName: node linkType: hard -"@eslint-community/eslint-utils@npm:^4.2.0": +"@eslint-community/eslint-utils@npm:^4.1.2, @eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": version: 4.4.0 resolution: "@eslint-community/eslint-utils@npm:4.4.0" dependencies: @@ -2123,10 +2123,10 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.4.0": - version: 4.5.0 - resolution: "@eslint-community/regexpp@npm:4.5.0" - checksum: fb2ec0131f2cf5ff69c870984eaad4de4fd35f2a2c0f7c09bcfafb5ca6ce14127e9d727546f1739aa38f9324a31faa52957c4be9bfb4b46ff2a5f6df2674a43b +"@eslint-community/regexpp@npm:^4.4.0, @eslint-community/regexpp@npm:^4.6.0": + version: 4.10.0 + resolution: "@eslint-community/regexpp@npm:4.10.0" + checksum: 8c36169c815fc5d726078e8c71a5b592957ee60d08c6470f9ce0187c8046af1a00afbda0a065cc40ff18d5d83f82aed9793c6818f7304a74a7488dc9f3ecbd42 languageName: node linkType: hard @@ -4566,7 +4566,7 @@ __metadata: languageName: node linkType: hard -"@metamask/network-controller@npm:^17.1.0": +"@metamask/network-controller@npm:^17.0.0, @metamask/network-controller@npm:^17.1.0": version: 17.1.0 resolution: "@metamask/network-controller@npm:17.1.0" dependencies: @@ -4747,16 +4747,19 @@ __metadata: languageName: node linkType: hard -"@metamask/ppom-validator@npm:^0.10.0": - version: 0.10.0 - resolution: "@metamask/ppom-validator@npm:0.10.0" +"@metamask/ppom-validator@npm:^0.22.0": + version: 0.22.0 + resolution: "@metamask/ppom-validator@npm:0.22.0" dependencies: "@metamask/base-controller": "npm:^3.0.0" - "@metamask/controller-utils": "npm:^4.0.0" + "@metamask/controller-utils": "npm:^8.0.1" + "@metamask/network-controller": "npm:^17.0.0" await-semaphore: "npm:^0.1.3" + crypto-js: "npm:^4.2.0" elliptic: "npm:^6.5.4" + eslint-plugin-n: "npm:^16.6.2" json-rpc-random-id: "npm:^1.0.1" - checksum: fae284ecfbb186b6e434c084bbe41e8968370f8f974bc611d91f70a30494be2b0ce2019c27ab713be7d90c99bfaa2e26587a886ca84e7885b31660c0988ca05a + checksum: b353c9a24a35972a05f75daf0b438d368e6f154145cfc02be217d335309cec0d94c51da78bbe6aadb4f6dbcbaea97dc3b2f561e3b5dbe053063a7a81190a8b26 languageName: node linkType: hard @@ -12608,6 +12611,13 @@ __metadata: languageName: node linkType: hard +"builtin-modules@npm:^3.3.0": + version: 3.3.0 + resolution: "builtin-modules@npm:3.3.0" + checksum: 62e063ab40c0c1efccbfa9ffa31873e4f9d57408cb396a2649981a0ecbce56aabc93c28feaccbc5658c95aab2703ad1d11980e62ec2e5e72637404e1eb60f39e + languageName: node + linkType: hard + "builtin-status-codes@npm:^3.0.0": version: 3.0.0 resolution: "builtin-status-codes@npm:3.0.0" @@ -12615,7 +12625,7 @@ __metadata: languageName: node linkType: hard -"builtins@npm:^5.0.0": +"builtins@npm:^5.0.0, builtins@npm:^5.0.1": version: 5.0.1 resolution: "builtins@npm:5.0.1" dependencies: @@ -14176,6 +14186,13 @@ __metadata: languageName: node linkType: hard +"crypto-js@npm:^4.2.0": + version: 4.2.0 + resolution: "crypto-js@npm:4.2.0" + checksum: c7bcc56a6e01c3c397e95aa4a74e4241321f04677f9a618a8f48a63b5781617248afb9adb0629824792e7ec20ca0d4241a49b6b2938ae6f973ec4efc5c53c924 + languageName: node + linkType: hard + "crypto-random-string@npm:^1.0.0": version: 1.0.0 resolution: "crypto-random-string@npm:1.0.0" @@ -16318,6 +16335,15 @@ __metadata: languageName: node linkType: hard +"eslint-compat-utils@npm:^0.1.2": + version: 0.1.2 + resolution: "eslint-compat-utils@npm:0.1.2" + peerDependencies: + eslint: ">=6.0.0" + checksum: 8c273889485ab863f2b6089c36f042dd2d9bf65d219fa256c1991f9466ea8261f3ab753a017a6d8e93bec84abd568fe3e10216f3fda5b41d05e3dce3b2a5e514 + languageName: node + linkType: hard + "eslint-config-prettier@npm:^8.5.0": version: 8.5.0 resolution: "eslint-config-prettier@npm:8.5.0" @@ -16381,6 +16407,19 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-es-x@npm:^7.5.0": + version: 7.5.0 + resolution: "eslint-plugin-es-x@npm:7.5.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.1.2" + "@eslint-community/regexpp": "npm:^4.6.0" + eslint-compat-utils: "npm:^0.1.2" + peerDependencies: + eslint: ">=8" + checksum: b0aa59e5a9fe034d6d485969091abfcdc6893bc0b9b145864d29307b03465141cc073bed806d9cb1a343a561362f2d0e9b34526af8fe8b7ca3cd8aa144f3720a + languageName: node + linkType: hard + "eslint-plugin-es@npm:^3.0.0": version: 3.0.1 resolution: "eslint-plugin-es@npm:3.0.1" @@ -16462,6 +16501,27 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-n@npm:^16.6.2": + version: 16.6.2 + resolution: "eslint-plugin-n@npm:16.6.2" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.4.0" + builtins: "npm:^5.0.1" + eslint-plugin-es-x: "npm:^7.5.0" + get-tsconfig: "npm:^4.7.0" + globals: "npm:^13.24.0" + ignore: "npm:^5.2.4" + is-builtin-module: "npm:^3.2.1" + is-core-module: "npm:^2.12.1" + minimatch: "npm:^3.1.2" + resolve: "npm:^1.22.2" + semver: "npm:^7.5.3" + peerDependencies: + eslint: ">=7.0.0" + checksum: e0f600d03d3a3df57e9a811648b1b534a6d67c90ea9406340ddf3763c2b87cf5ef910b390f787ca5cb27c8d8ff36aad42d70209b54e2a1cb4cc2507ca417229a + languageName: node + linkType: hard + "eslint-plugin-no-unsanitized@npm:4.0.2": version: 4.0.2 resolution: "eslint-plugin-no-unsanitized@npm:4.0.2" @@ -18693,6 +18753,15 @@ __metadata: languageName: node linkType: hard +"get-tsconfig@npm:^4.7.0": + version: 4.7.2 + resolution: "get-tsconfig@npm:4.7.2" + dependencies: + resolve-pkg-maps: "npm:^1.0.0" + checksum: f21135848fb5d16012269b7b34b186af7a41824830f8616aba17a15eb4d9e54fdc876833f1e21768395215a826c8145582f5acd594ae2b4de3284d10b38d20f8 + languageName: node + linkType: hard + "get-uri@npm:^6.0.1": version: 6.0.2 resolution: "get-uri@npm:6.0.2" @@ -19019,12 +19088,12 @@ __metadata: languageName: node linkType: hard -"globals@npm:^13.19.0": - version: 13.20.0 - resolution: "globals@npm:13.20.0" +"globals@npm:^13.19.0, globals@npm:^13.24.0": + version: 13.24.0 + resolution: "globals@npm:13.24.0" dependencies: type-fest: "npm:^0.20.2" - checksum: 9df85cde2f0dce6ac9b3a5e08bec109d2f3b38ddd055a83867e0672c55704866d53ce6a4265859fa630624baadd46f50ca38602a13607ad86be853a8c179d3e7 + checksum: 62c5b1997d06674fc7191d3e01e324d3eda4d65ac9cc4e78329fa3b5c4fd42a0e1c8722822497a6964eee075255ce21ccf1eec2d83f92ef3f06653af4d0ee28e languageName: node linkType: hard @@ -20157,10 +20226,10 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.1.1, ignore@npm:^5.1.8, ignore@npm:^5.2.0": - version: 5.2.0 - resolution: "ignore@npm:5.2.0" - checksum: 30283f05fb7d867ee0e08faebb3e69caba2c6c55092042cd061eac1b37a3e78db72bfcfbb08b3598999344fba3d93a9c693b5401da5faaecc0fb7c2dce87beb4 +"ignore@npm:^5.1.1, ignore@npm:^5.1.8, ignore@npm:^5.2.0, ignore@npm:^5.2.4": + version: 5.3.0 + resolution: "ignore@npm:5.3.0" + checksum: 51594355cea4c6ad6b28b3b85eb81afa7b988a1871feefd7062baf136c95aa06760ee934fa9590e43d967bd377ce84a4cf6135fbeb6063e063f1182a0e9a3bcd languageName: node linkType: hard @@ -20543,6 +20612,15 @@ __metadata: languageName: node linkType: hard +"is-builtin-module@npm:^3.2.1": + version: 3.2.1 + resolution: "is-builtin-module@npm:3.2.1" + dependencies: + builtin-modules: "npm:^3.3.0" + checksum: e8f0ffc19a98240bda9c7ada84d846486365af88d14616e737d280d378695c8c448a621dcafc8332dbf0fcd0a17b0763b845400709963fa9151ddffece90ae88 + languageName: node + linkType: hard + "is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": version: 1.2.7 resolution: "is-callable@npm:1.2.7" @@ -20561,7 +20639,7 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.13.0, is-core-module@npm:^2.4.0, is-core-module@npm:^2.8.1, is-core-module@npm:^2.9.0": +"is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.4.0, is-core-module@npm:^2.8.1, is-core-module@npm:^2.9.0": version: 2.13.1 resolution: "is-core-module@npm:2.13.1" dependencies: @@ -24655,7 +24733,7 @@ __metadata: "@metamask/phishing-warning": "npm:^3.0.3" "@metamask/polling-controller": "npm:^4.0.0" "@metamask/post-message-stream": "npm:^7.0.0" - "@metamask/ppom-validator": "npm:^0.10.0" + "@metamask/ppom-validator": "npm:^0.22.0" "@metamask/providers": "npm:^14.0.2" "@metamask/queued-request-controller": "npm:^0.3.0" "@metamask/rate-limit-controller": "npm:^3.0.0" @@ -30355,6 +30433,13 @@ __metadata: languageName: node linkType: hard +"resolve-pkg-maps@npm:^1.0.0": + version: 1.0.0 + resolution: "resolve-pkg-maps@npm:1.0.0" + checksum: 0763150adf303040c304009231314d1e84c6e5ebfa2d82b7d94e96a6e82bacd1dcc0b58ae257315f3c8adb89a91d8d0f12928241cba2df1680fbe6f60bf99b0e + languageName: node + linkType: hard + "resolve-url-loader@npm:^3.1.5": version: 3.1.5 resolution: "resolve-url-loader@npm:3.1.5" @@ -30387,7 +30472,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:1.22.8, resolve@npm:^1.1.4, resolve@npm:^1.1.5, resolve@npm:^1.1.6, resolve@npm:^1.1.7, resolve@npm:^1.10.0, resolve@npm:^1.10.1, resolve@npm:^1.11.1, resolve@npm:^1.14.2, resolve@npm:^1.17.0, resolve@npm:^1.18.1, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.21.0, resolve@npm:^1.22.0, resolve@npm:^1.22.3, resolve@npm:^1.4.0": +"resolve@npm:1.22.8, resolve@npm:^1.1.4, resolve@npm:^1.1.5, resolve@npm:^1.1.6, resolve@npm:^1.1.7, resolve@npm:^1.10.0, resolve@npm:^1.10.1, resolve@npm:^1.11.1, resolve@npm:^1.14.2, resolve@npm:^1.17.0, resolve@npm:^1.18.1, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.21.0, resolve@npm:^1.22.0, resolve@npm:^1.22.2, resolve@npm:^1.22.3, resolve@npm:^1.4.0": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -30413,7 +30498,7 @@ __metadata: languageName: node linkType: hard -? "resolve@patch:resolve@npm%3A1.22.8#optional!builtin, resolve@patch:resolve@npm%3A^1.1.4#optional!builtin, resolve@patch:resolve@npm%3A^1.1.5#optional!builtin, resolve@patch:resolve@npm%3A^1.1.6#optional!builtin, resolve@patch:resolve@npm%3A^1.1.7#optional!builtin, resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.10.1#optional!builtin, resolve@patch:resolve@npm%3A^1.11.1#optional!builtin, resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.17.0#optional!builtin, resolve@patch:resolve@npm%3A^1.18.1#optional!builtin, resolve@patch:resolve@npm%3A^1.19.0#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin, resolve@patch:resolve@npm%3A^1.21.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.3#optional!builtin, resolve@patch:resolve@npm%3A^1.4.0#optional!builtin" +? "resolve@patch:resolve@npm%3A1.22.8#optional!builtin, resolve@patch:resolve@npm%3A^1.1.4#optional!builtin, resolve@patch:resolve@npm%3A^1.1.5#optional!builtin, resolve@patch:resolve@npm%3A^1.1.6#optional!builtin, resolve@patch:resolve@npm%3A^1.1.7#optional!builtin, resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.10.1#optional!builtin, resolve@patch:resolve@npm%3A^1.11.1#optional!builtin, resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.17.0#optional!builtin, resolve@patch:resolve@npm%3A^1.18.1#optional!builtin, resolve@patch:resolve@npm%3A^1.19.0#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin, resolve@patch:resolve@npm%3A^1.21.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.2#optional!builtin, resolve@patch:resolve@npm%3A^1.22.3#optional!builtin, resolve@patch:resolve@npm%3A^1.4.0#optional!builtin" : version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" From 769f458de82020385266ee339a04a500102c9932 Mon Sep 17 00:00:00 2001 From: Mako Shan Date: Thu, 25 Jan 2024 17:37:43 +0800 Subject: [PATCH 05/45] Add imToken Wallet support with EIP-4527 (#21804) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## **Description** Hello, this is the imToken team. imToken is a mobile crypto wallet founded in 2016. It has been operating safely and steadily for 7 years. Recently, we successfully supported ERC-4527, and imToken can function as a QR code-based signer now. This integration seamlessly aligns with Metamask's bidirectional QR account feature, enhancing the ability to track accounts whose private keys are stored on external devices. Therefore, we propose that Metamask expand its supported QR code-based wallet connection methods and include imToken. This will not only enhance Metamask's functionality and user coverage, but also provide users with a wider, more secure and efficient choice of wallets. We have successfully completed the integration of ERC-4527 and look forward to discussing in depth the possibility of adding imToken into Metamask's QR code-based wallet connection methods. Thank you very much for your attention and feedback on this matter. ## **Related issues** no ## **Manual testing steps** 1. Please check if the added links to the imToken official website and tutorials are correct. 2. The process is consistent with the current QR-Based Keystone and Airgap methods. Please refer to the test video provided below for reference. ### Video [Dropbox link](https://www.dropbox.com/scl/fi/kbfcthouwgqaaueepsslc/imToken_Connect_Metamask_.mp4?rlkey=vz6js9g81oevg2y77vkizfefq&dl=0) ### User Flow ![metamask](https://github.com/MetaMask/metamask-extension/assets/7024451/9280a9dd-de4e-4635-b3db-eb44f3276b6b) ## **Screenshots/Recordings** ### **Before** image ### **After** image ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've clearly explained what problem this PR is solving and how it is solved. - [ ] I've linked related issues - [x] I've included manual testing steps - [x] I've included screenshots/recordings if applicable - [ x] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. - [x] I’ve properly set the pull request status: - [ ] In case it's not yet "ready for review", I've set it to "draft". - [x] In case it's "ready for review", I've changed it from "draft" to "non-draft". ## **Pre-merge reviewer checklist** - [x] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [x] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: Sébastien Van Eyck Co-authored-by: Sébastien Van Eyck --- .github/ISSUE_TEMPLATE/bug-report.yml | 1 + app/_locales/en/messages.json | 3 ++ shared/constants/hardware-wallets.ts | 2 ++ .../connect-hardware/index.test.tsx | 1 + .../connect-hardware/select-hardware.js | 35 +++++++++++++++++++ 5 files changed, 42 insertions(+) diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index f976ae63022d..819be0fac1ec 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -104,6 +104,7 @@ body: - Keystone - GridPlus Lattice1 - AirGap Vault + - imToken - Other (please elaborate in the "Additional Context" section) - type: textarea id: additional diff --git a/app/_locales/en/messages.json b/app/_locales/en/messages.json index 24185ec19f07..aac87dca32a2 100644 --- a/app/_locales/en/messages.json +++ b/app/_locales/en/messages.json @@ -1998,6 +1998,9 @@ "ignoreTokenWarning": { "message": "If you hide tokens, they will not be shown in your wallet. However, you can still add them by searching for them." }, + "imToken": { + "message": "imToken" + }, "import": { "message": "Import", "description": "Button to import an account from a selected file" diff --git a/shared/constants/hardware-wallets.ts b/shared/constants/hardware-wallets.ts index 846168e166ed..e20222ff2e5e 100644 --- a/shared/constants/hardware-wallets.ts +++ b/shared/constants/hardware-wallets.ts @@ -37,6 +37,7 @@ export enum HardwareAffiliateLinks { airgap = 'https://airgap.it/', coolwallet = 'https://www.coolwallet.io/', dcent = 'https://dcentwallet.com/', + imtoken = 'https://token.im/', } export enum HardwareAffiliateTutorialLinks { @@ -47,6 +48,7 @@ export enum HardwareAffiliateTutorialLinks { airgap = 'https://support.airgap.it/guides/metamask/', coolwallet = 'https://www.coolwallet.io/metamask-step-by-step-guides/', dcent = 'https://medium.com/dcentwallet/dcent-wallet-now-supports-qr-based-protocol-to-link-with-metamask-57555f02603f', + imtoken = 'https://support.token.im/hc/en-us/articles/24652624775961/', } /** diff --git a/ui/pages/create-account/connect-hardware/index.test.tsx b/ui/pages/create-account/connect-hardware/index.test.tsx index b7503f9f2a44..ea66fd6b8319 100644 --- a/ui/pages/create-account/connect-hardware/index.test.tsx +++ b/ui/pages/create-account/connect-hardware/index.test.tsx @@ -189,6 +189,7 @@ describe('ConnectHardwareForm', () => { expect(getByText('AirGap Vault')).toBeInTheDocument(); expect(getByText('CoolWallet')).toBeInTheDocument(); expect(getByText("D'Cent")).toBeInTheDocument(); + expect(getByText('imToken')).toBeInTheDocument(); }); }); }); diff --git a/ui/pages/create-account/connect-hardware/select-hardware.js b/ui/pages/create-account/connect-hardware/select-hardware.js index ed979c4c9f84..2a9e89868b57 100644 --- a/ui/pages/create-account/connect-hardware/select-hardware.js +++ b/ui/pages/create-account/connect-hardware/select-hardware.js @@ -682,6 +682,41 @@ export default class SelectHardware extends Component { ), }, + { + message: ( + <> +

+ {this.context.t('imToken')} +

+ + + + ), + }, { message: this.context.t('QRHardwareWalletSteps2Description'), }, From c525579c10ee1f7de3abfde0a84221b2274363c6 Mon Sep 17 00:00:00 2001 From: Olusegun Akintayo Date: Thu, 25 Jan 2024 14:02:29 +0100 Subject: [PATCH 06/45] feat: Add PPOM Validation to normal send. (#22321) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## **Description** Currently we send ppom validation requests only for incoming requests, this PR adds ppom validation for send requests from wallets too. ## **Related issues** Fixes: [#1657](https://github.com/MetaMask/MetaMask-planning/issues/1657) ## **Manual testing steps** 1. Build and launch MM 2. Send ETH on mainnet to this address `0x5FbDB2315678afecb367f032d93F642f64180aa3` 3. See that Blockaid banner is not shown 4. Checkout this branch, build and launch MM 5. Send ETH on mainnet to the address `0x5FbDB2315678afecb367f032d93F642f64180aa3` 6. See that Blockaid banner is shown. ## **Screenshots/Recordings** ### **Before** https://github.com/MetaMask/metamask-extension/assets/44811/9c81e157-1d78-4609-a037-7a8897309d12 ### **After** https://github.com/MetaMask/metamask-extension/assets/44811/8b2ec828-9636-4302-a943-b023caaba730 ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've clearly explained what problem this PR is solving and how it is solved. - [x] I've linked related issues - [x] I've included manual testing steps - [x] I've included screenshots/recordings if applicable - [ ] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. - [x] I’ve properly set the pull request status: - [ ] In case it's not yet "ready for review", I've set it to "draft". - [x] In case it's "ready for review", I've changed it from "draft" to "non-draft". ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --- app/scripts/lib/transaction/util.test.ts | 115 ++++++++++++++++++ app/scripts/lib/transaction/util.ts | 59 ++++++++- app/scripts/metamask-controller.js | 6 + .../confirm-transaction-base.test.js | 42 +++++++ 4 files changed, 219 insertions(+), 3 deletions(-) diff --git a/app/scripts/lib/transaction/util.test.ts b/app/scripts/lib/transaction/util.test.ts index d28099611a6a..0ea9b58d8300 100644 --- a/app/scripts/lib/transaction/util.test.ts +++ b/app/scripts/lib/transaction/util.test.ts @@ -7,6 +7,7 @@ import { } from '@metamask/transaction-controller'; import { UserOperationController } from '@metamask/user-operation-controller'; import { cloneDeep } from 'lodash'; +import { PPOMController } from '@metamask/ppom-validator'; import { AddDappTransactionRequest, AddTransactionOptions, @@ -62,6 +63,17 @@ function createUserOperationControllerMock() { } as unknown as jest.Mocked; } +///: BEGIN:ONLY_INCLUDE_IF(blockaid) +function createPPOMControllerMock() { + return { + usePPOM: jest.fn().mockResolvedValue({ + reason: 'testReason', + result_type: 'testResultType', + }), + } as unknown as jest.Mocked; +} +///: END:ONLY_INCLUDE_IF + async function flushPromises() { return new Promise((resolve) => setImmediate(resolve)); } @@ -71,6 +83,9 @@ describe('Transaction Utils', () => { let dappRequest: AddDappTransactionRequest; let transactionController: jest.Mocked; let userOperationController: jest.Mocked; + ///: BEGIN:ONLY_INCLUDE_IF(blockaid) + let ppomController: jest.Mocked; + ///: END:ONLY_INCLUDE_IF beforeEach(() => { jest.resetAllMocks(); @@ -78,6 +93,10 @@ describe('Transaction Utils', () => { request = cloneDeep(TRANSACTION_REQUEST_MOCK); transactionController = createTransactionControllerMock(); userOperationController = createUserOperationControllerMock(); + ///: BEGIN:ONLY_INCLUDE_IF(blockaid) + ppomController = createPPOMControllerMock(); + request.ppomController = ppomController; + ///: END:ONLY_INCLUDE_IF transactionController.addTransaction.mockResolvedValue({ result: Promise.resolve('testHash'), @@ -344,6 +363,102 @@ describe('Transaction Utils', () => { ); }); }); + + describe('when blockaid is enabled', () => { + it('validates if blockaid is enabled and chain id is supported', async () => { + await addTransaction({ + ...request, + securityAlertsEnabled: true, + chainId: '0x1', + }); + + expect( + request.transactionController.addTransaction, + ).toHaveBeenCalledTimes(1); + expect( + request.transactionController.addTransaction, + ).toHaveBeenCalledWith(TRANSACTION_PARAMS_MOCK, { + ...TRANSACTION_OPTIONS_MOCK, + securityAlertResponse: { + reason: 'testReason', + result_type: 'testResultType', + }, + }); + + expect(request.ppomController.usePPOM).toHaveBeenCalledTimes(1); + expect(request.ppomController.usePPOM).toHaveBeenCalledWith( + expect.any(Function), + ); + expect(request.ppomController.usePPOM).toHaveReturnedWith( + Promise.resolve({ + reason: 'testReason', + result_type: 'testResultType', + }), + ); + }); + + it('does not validate if blockaid is enabled and chain id is not supported', async () => { + await addTransaction({ + ...request, + securityAlertsEnabled: true, + chainId: '0xF', + }); + + expect( + request.transactionController.addTransaction, + ).toHaveBeenCalledTimes(1); + expect( + request.transactionController.addTransaction, + ).toHaveBeenCalledWith( + TRANSACTION_PARAMS_MOCK, + TRANSACTION_OPTIONS_MOCK, + ); + + expect(request.ppomController.usePPOM).toHaveBeenCalledTimes(0); + }); + }); + + describe('when blockaid is disabled', () => { + it('does not validate if blockaid is disabled and chain id is supported', async () => { + await addTransaction({ + ...request, + securityAlertsEnabled: false, + chainId: '0x1', + }); + + expect( + request.transactionController.addTransaction, + ).toHaveBeenCalledTimes(1); + expect( + request.transactionController.addTransaction, + ).toHaveBeenCalledWith( + TRANSACTION_PARAMS_MOCK, + TRANSACTION_OPTIONS_MOCK, + ); + + expect(request.ppomController.usePPOM).toHaveBeenCalledTimes(0); + }); + + it('does not validate if blockaid is disabled and chain id is not supported', async () => { + await addTransaction({ + ...request, + securityAlertsEnabled: false, + chainId: '0xF', + }); + + expect( + request.transactionController.addTransaction, + ).toHaveBeenCalledTimes(1); + expect( + request.transactionController.addTransaction, + ).toHaveBeenCalledWith( + TRANSACTION_PARAMS_MOCK, + TRANSACTION_OPTIONS_MOCK, + ); + + expect(request.ppomController.usePPOM).toHaveBeenCalledTimes(0); + }); + }); }); describe('addDappTransaction', () => { diff --git a/app/scripts/lib/transaction/util.ts b/app/scripts/lib/transaction/util.ts index 275333b12172..373c0b494899 100644 --- a/app/scripts/lib/transaction/util.ts +++ b/app/scripts/lib/transaction/util.ts @@ -8,20 +8,38 @@ import { AddUserOperationOptions, UserOperationController, } from '@metamask/user-operation-controller'; +///: BEGIN:ONLY_INCLUDE_IF(blockaid) +import { PPOMController } from '@metamask/ppom-validator'; +import { captureException } from '@sentry/browser'; import { addHexPrefix } from 'ethereumjs-util'; +import { SUPPORTED_CHAIN_IDS } from '../ppom/ppom-middleware'; +///: END:ONLY_INCLUDE_IF export type AddTransactionOptions = NonNullable< Parameters[1] >; type BaseAddTransactionRequest = { + chainId: string; networkClientId: string; + ppomController: PPOMController; + securityAlertsEnabled: boolean; selectedAccount: InternalAccount; transactionParams: TransactionParams; transactionController: TransactionController; userOperationController: UserOperationController; }; +/** + * Type for security alert response from transaction validator. + */ +export type SecurityAlertResponse = { + reason: string; + features?: string[]; + result_type: string; + providerRequestsCount?: Record; +}; + type FinalAddTransactionRequest = BaseAddTransactionRequest & { transactionOptions: AddTransactionOptions; }; @@ -66,13 +84,49 @@ export async function addDappTransaction( export async function addTransaction( request: AddTransactionRequest, ): Promise { - const { waitForSubmit } = request; + ///: BEGIN:ONLY_INCLUDE_IF(blockaid) + const { + transactionParams, + transactionOptions, + ppomController, + securityAlertsEnabled, + chainId, + } = request; + + if (securityAlertsEnabled && SUPPORTED_CHAIN_IDS.includes(chainId)) { + try { + const ppomRequest = { + method: 'eth_sendTransaction', + id: 'actionId' in transactionOptions ? transactionOptions.actionId : '', + origin: 'origin' in transactionOptions ? transactionOptions.origin : '', + params: [ + { + from: transactionParams.from, + to: transactionParams.to, + value: transactionParams.value, + data: transactionParams.data, + }, + ], + }; + + const securityAlertResponse = await ppomController.usePPOM( + async (ppom) => { + return ppom.validateJsonRpc(ppomRequest); + }, + ); + + request.transactionOptions.securityAlertResponse = securityAlertResponse; + } catch (e) { + captureException(e); + } + } + ///: END:ONLY_INCLUDE_IF const { transactionMeta, waitForHash } = await addTransactionOrUserOperation( request, ); - if (!waitForSubmit) { + if (!request.waitForSubmit) { waitForHash().catch(() => { // Not concerned with result. }); @@ -109,7 +163,6 @@ async function addTransactionWithController( ) { const { transactionController, transactionOptions, transactionParams } = request; - const { result, transactionMeta } = await transactionController.addTransaction( transactionParams, diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 2f7fa803a69e..433c0bc966d7 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -4154,6 +4154,12 @@ export default class MetamaskController extends EventEmitter { transactionOptions, transactionParams, userOperationController: this.userOperationController, + ///: BEGIN:ONLY_INCLUDE_IF(blockaid) + ppomController: this.ppomController, + securityAlertsEnabled: + this.preferencesController.store.getState()?.securityAlertsEnabled, + chainId: this.networkController.state.providerConfig.chainId, + ///: END:ONLY_INCLUDE_IF }; } diff --git a/ui/pages/confirm-transaction-base/confirm-transaction-base.test.js b/ui/pages/confirm-transaction-base/confirm-transaction-base.test.js index fe8d2b94b870..8d6b9a484c7b 100644 --- a/ui/pages/confirm-transaction-base/confirm-transaction-base.test.js +++ b/ui/pages/confirm-transaction-base/confirm-transaction-base.test.js @@ -23,6 +23,10 @@ import { } from '../../../shared/constants/network'; import { domainInitialState } from '../../ducks/domains'; +import { + BlockaidReason, + BlockaidResultType, +} from '../../../shared/constants/security-provider'; import ConfirmTransactionBase from './confirm-transaction-base.container'; const middleware = [thunk]; @@ -38,6 +42,7 @@ setBackgroundConnection({ const mockTxParamsFromAddress = '0x123456789'; const mockTxParamsToAddress = '0x85c1685cfceaa5c0bdb1609fc536e9a8387dd65e'; +const mockMaliciousToAddress = '0x5FbDB2315678afecb367f032d93F642f64180aa3'; const mockTxParamsToAddressConcat = '0x85c16...DD65e'; const mockParsedTxDataToAddressWithout0x = @@ -239,6 +244,43 @@ describe('Confirm Transaction Base', () => { expect(queryByText('Estimated fee')).not.toBeInTheDocument(); }); + it('renders blockaid security alert if recipient is a malicious address', () => { + const newMockedStore = { + ...mockedStore, + send: { + ...mockedStore.send, + hasSimulationError: false, + }, + confirmTransaction: { + ...mockedStore.confirmTransaction, + txData: { + ...mockedStore.confirmTransaction.txData, + txParams: { + ...mockedStore.confirmTransaction.txData.txParams, + to: mockMaliciousToAddress, + }, + securityAlertResponse: { + reason: BlockaidReason.maliciousDomain, + result_type: BlockaidResultType.Malicious, + features: [], + }, + }, + }, + }; + + const store = configureMockStore(middleware)(newMockedStore); + + const { getByTestId } = renderWithProvider( + , + store, + ); + + const securityProviderBanner = getByTestId( + 'security-provider-banner-alert', + ); + expect(securityProviderBanner).toBeInTheDocument(); + }); + it('should contain L1 L2 fee details for optimism', () => { mockedStore.metamask.providerConfig.chainId = CHAIN_IDS.OPTIMISM; mockedStore.confirmTransaction.txData.chainId = CHAIN_IDS.OPTIMISM; From d3d67d568cd46fb0d60f0cf436426c1178490a6c Mon Sep 17 00:00:00 2001 From: salimtb Date: Thu, 25 Jan 2024 14:55:00 +0100 Subject: [PATCH 07/45] feat: hardcode svg network (#22643) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## **Description** hardcode a mapping of chainIDs to currency symbol, once the svg are uploaded we mapped the images to the network name and chainIDs **Acceptance criteria** When the network list is displayed within the Select a network modal, or custom network list, or any similar context, the hardcoded network image avatars should be displayed. This will reduce the often appearing "?" that appears when the network avatar is not present. ## **Related issues** Fixes: [#1813](https://github.com/MetaMask/MetaMask-planning/issues/1813) ## **Manual testing steps** 1. Go to the network modal 2. Add a new network displayed on this [list](https://docs.google.com/spreadsheets/d/16G3SRiQvWXK6hp5duob0aopeKyx2HOAQpz152Fy8VNQ/edit#gid=2080069111) 3. check if the image is displayed ## **Screenshots/Recordings** ### **Before** https://github.com/MetaMask/metamask-extension/assets/26223211/b109668a-9bc2-432b-b603-e90e9c85804f ### **After** https://github.com/MetaMask/metamask-extension/assets/26223211/aae091f7-a89c-4653-a996-223ec288fd31 ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've clearly explained what problem this PR is solving and how it is solved. - [x] I've linked related issues - [x] I've included manual testing steps - [x] I've included screenshots/recordings if applicable - [x] I’ve included tests if applicable - [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. - [x] I’ve properly set the pull request status: - [x] In case it's not yet "ready for review", I've set it to "draft". - [ ] In case it's "ready for review", I've changed it from "draft" to "non-draft". ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --- .../approval-screens/add-suggested-token.js | 4 +- .storybook/test-data.js | 2 +- app/images/acala-network-logo.svg | 10 + app/images/arbitrum-nova-logo.svg | 19 ++ app/images/arbitrum.svg | 19 +- app/images/astar-logo.svg | 9 + app/images/avax-token.svg | 4 + app/images/bahamut.png | Bin 0 -> 9313 bytes app/images/base.svg | 3 + app/images/blackfort.png | Bin 0 -> 133413 bytes app/images/bnb.svg | 20 ++ app/images/canto.svg | 3 + app/images/celo.svg | 8 +- app/images/conflux.svg | 4 + app/images/core.svg | 5 + app/images/cronos.svg | 12 ++ app/images/dexalut-subnet.svg | 14 ++ app/images/dfk.png | Bin 0 -> 11829 bytes app/images/dogechain.jpeg | Bin 0 -> 23769 bytes app/images/endurance-smart-chain-mainnet.png | Bin 0 -> 19195 bytes app/images/eth_classic.svg | 11 ++ app/images/eth_logo.svg | 8 + app/images/evmos.svg | 10 + app/images/fantom-opera.svg | 11 +- app/images/flare-mainnet.svg | 1 + app/images/fuse-mainnet.jpeg | Bin 0 -> 7770 bytes app/images/haqq.svg | 63 +++++++ app/images/kcc-mainnet.svg | 21 +++ app/images/klaytn.svg | 45 +++++ app/images/kroma.svg | 14 ++ app/images/lightlink.svg | 63 +++++++ app/images/linea-logo-mainnet.svg | 12 ++ app/images/manta.svg | 11 ++ app/images/mantle.svg | 43 +++++ app/images/matic-token.svg | 21 +++ app/images/moonbeam.svg | 16 ++ app/images/moonriver.svg | 48 +++++ app/images/near-aurora.svg | 1 + app/images/nebula.svg | 1 + app/images/oasys.svg | 3 + app/images/okx.svg | 18 ++ app/images/optimism.svg | 2 +- app/images/pgn.svg | 7 + app/images/polygon-zkevm.svg | 15 ++ app/images/pulse.svg | 18 ++ app/images/shardeum-1.svg | 21 +++ app/images/shardeum-2.svg | 21 +++ app/images/shiba.svg | 88 +++++++++ app/images/songbird.svg | 1 + app/images/step.svg | 3 + app/images/telos.svg | Bin 0 -> 886636 bytes app/images/tenet.svg | 3 + app/images/zk-sync.svg | 17 +- app/images/zkatana.png | Bin 0 -> 72223 bytes app/images/zora.svg | 67 +++++++ shared/constants/network.ts | 172 ++++++++++++++---- .../app/add-network/add-network.stories.js | 4 +- .../incoming-transaction-toggle.test.js.snap | 4 +- .../incoming-trasaction-toggle/mock-data.ts | 4 +- .../component-library/avatar-base/README.mdx | 4 +- .../avatar-base/avatar-base.stories.tsx | 4 +- .../avatar-favicon/avatar-favicon.test.tsx | 2 +- .../avatar-network/README.mdx | 2 +- .../avatar-network.test.tsx.snap | 2 +- .../avatar-network/avatar-network.stories.tsx | 4 +- .../avatar-network/avatar-network.test.tsx | 2 +- .../component-library/avatar-token/README.mdx | 4 +- .../avatar-token/avatar-token.stories.tsx | 14 +- .../badge-wrapper/README.mdx | 20 +- .../badge-wrapper/badge-wrapper.stories.tsx | 22 +-- .../picker-network/README.mdx | 8 +- .../picker-network/picker-network.stories.tsx | 4 +- .../picker-network/picker-network.test.tsx | 4 +- .../text-field/text-field.stories.tsx | 2 +- .../activity-list-item.stories.js | 2 +- .../__snapshots__/avatar-group.test.tsx.snap | 6 +- .../avatar-group/avatar-group.stories.tsx | 12 +- .../avatar-group/avatar-group.test.tsx | 6 +- .../network-list-item.test.js.snap | 2 +- .../network-list-item.stories.js | 2 +- .../multichain/nft-item/nft-item.stories.js | 2 +- .../token-list-item.test.js.snap | 2 +- .../token-list-item.stories.js | 2 +- .../ui/identicon/identicon.stories.js | 2 +- .../ui/site-icon/site-icon.stories.js | 2 +- ui/components/ui/site-icon/site-icon.test.js | 2 +- .../useConfirmationNetworkInfo.test.ts | 2 +- ui/hooks/useAccountTotalFiatBalance.test.js | 2 +- .../confirm-add-suggested-nft.test.js.snap | 4 +- .../stories/switch-ethereum-chain.stories.js | 2 +- .../__snapshots__/security-tab.test.js.snap | 4 +- 91 files changed, 1017 insertions(+), 141 deletions(-) create mode 100644 app/images/acala-network-logo.svg create mode 100644 app/images/arbitrum-nova-logo.svg create mode 100644 app/images/astar-logo.svg create mode 100644 app/images/avax-token.svg create mode 100644 app/images/bahamut.png create mode 100644 app/images/base.svg create mode 100644 app/images/blackfort.png create mode 100644 app/images/bnb.svg create mode 100644 app/images/canto.svg create mode 100644 app/images/conflux.svg create mode 100644 app/images/core.svg create mode 100644 app/images/cronos.svg create mode 100644 app/images/dexalut-subnet.svg create mode 100644 app/images/dfk.png create mode 100644 app/images/dogechain.jpeg create mode 100644 app/images/endurance-smart-chain-mainnet.png create mode 100644 app/images/eth_classic.svg create mode 100644 app/images/eth_logo.svg create mode 100644 app/images/evmos.svg create mode 100644 app/images/flare-mainnet.svg create mode 100644 app/images/fuse-mainnet.jpeg create mode 100644 app/images/haqq.svg create mode 100644 app/images/kcc-mainnet.svg create mode 100644 app/images/klaytn.svg create mode 100644 app/images/kroma.svg create mode 100644 app/images/lightlink.svg create mode 100644 app/images/linea-logo-mainnet.svg create mode 100644 app/images/manta.svg create mode 100644 app/images/mantle.svg create mode 100644 app/images/matic-token.svg create mode 100644 app/images/moonbeam.svg create mode 100644 app/images/moonriver.svg create mode 100644 app/images/near-aurora.svg create mode 100644 app/images/nebula.svg create mode 100644 app/images/oasys.svg create mode 100644 app/images/okx.svg create mode 100644 app/images/pgn.svg create mode 100644 app/images/polygon-zkevm.svg create mode 100644 app/images/pulse.svg create mode 100644 app/images/shardeum-1.svg create mode 100644 app/images/shardeum-2.svg create mode 100644 app/images/shiba.svg create mode 100644 app/images/songbird.svg create mode 100644 app/images/step.svg create mode 100644 app/images/telos.svg create mode 100644 app/images/tenet.svg create mode 100644 app/images/zkatana.png create mode 100644 app/images/zora.svg diff --git a/.storybook/initial-states/approval-screens/add-suggested-token.js b/.storybook/initial-states/approval-screens/add-suggested-token.js index 4197140e6259..f6c7cfea3706 100644 --- a/.storybook/initial-states/approval-screens/add-suggested-token.js +++ b/.storybook/initial-states/approval-screens/add-suggested-token.js @@ -9,7 +9,7 @@ export const pendingTokenApprovals = { address: '0x6b175474e89094c44da98b954eedeac495271d0f', symbol: 'ETH', decimals: 18, - image: './images/eth_logo.png', + image: './images/eth_logo.svg', unlisted: false, }, }, @@ -118,4 +118,4 @@ export const pendingTokenApprovals = { }, }, }, -}; \ No newline at end of file +}; diff --git a/.storybook/test-data.js b/.storybook/test-data.js index d5d59d6bd100..939c99d60300 100644 --- a/.storybook/test-data.js +++ b/.storybook/test-data.js @@ -115,7 +115,7 @@ const state = { address: '0x6b175474e89094c44da98b954eedeac495271d0f', symbol: 'ETH', decimals: 18, - image: './images/eth_logo.png', + image: './images/eth_logo.svg', unlisted: false, }, '0xB8c77482e45F1F44dE1745F52C74426C631bDD52': { diff --git a/app/images/acala-network-logo.svg b/app/images/acala-network-logo.svg new file mode 100644 index 000000000000..04f09bc2a57f --- /dev/null +++ b/app/images/acala-network-logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/app/images/arbitrum-nova-logo.svg b/app/images/arbitrum-nova-logo.svg new file mode 100644 index 000000000000..bc54b2f8ba4a --- /dev/null +++ b/app/images/arbitrum-nova-logo.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/images/arbitrum.svg b/app/images/arbitrum.svg index 5e79c8ccd5c7..8863afe882c8 100644 --- a/app/images/arbitrum.svg +++ b/app/images/arbitrum.svg @@ -1,9 +1,12 @@ - - - - - - - - + + + + + + + \ No newline at end of file diff --git a/app/images/astar-logo.svg b/app/images/astar-logo.svg new file mode 100644 index 000000000000..c9d9cd5954cb --- /dev/null +++ b/app/images/astar-logo.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/app/images/avax-token.svg b/app/images/avax-token.svg new file mode 100644 index 000000000000..55473a0f2400 --- /dev/null +++ b/app/images/avax-token.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/images/bahamut.png b/app/images/bahamut.png new file mode 100644 index 0000000000000000000000000000000000000000..81fbdb1698ebb7828e24f8bc6c48aa5843c2bf3a GIT binary patch literal 9313 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 + + diff --git a/app/images/blackfort.png b/app/images/blackfort.png new file mode 100644 index 0000000000000000000000000000000000000000..bb4415d4158a20186207650b3f5f244787622229 GIT binary patch literal 133413 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�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 S@!l% + + + + + + + + + + diff --git a/app/images/canto.svg b/app/images/canto.svg new file mode 100644 index 000000000000..2d6a2c860c99 --- /dev/null +++ b/app/images/canto.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/images/celo.svg b/app/images/celo.svg index f13ac7edc56e..521b76d1a95a 100644 --- a/app/images/celo.svg +++ b/app/images/celo.svg @@ -1 +1,7 @@ -Artboard 1 \ No newline at end of file + + + + + diff --git a/app/images/conflux.svg b/app/images/conflux.svg new file mode 100644 index 000000000000..711878c042d9 --- /dev/null +++ b/app/images/conflux.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/images/core.svg b/app/images/core.svg new file mode 100644 index 000000000000..1663f3cc144e --- /dev/null +++ b/app/images/core.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/app/images/cronos.svg b/app/images/cronos.svg new file mode 100644 index 000000000000..3b9261d4378c --- /dev/null +++ b/app/images/cronos.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/app/images/dexalut-subnet.svg b/app/images/dexalut-subnet.svg new file mode 100644 index 000000000000..7d37e7e9c4ce --- /dev/null +++ b/app/images/dexalut-subnet.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/app/images/dfk.png b/app/images/dfk.png new file mode 100644 index 0000000000000000000000000000000000000000..ae328921822f3496881ac7ab9ec1e723f03d24da GIT binary patch literal 11829 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 literal 0 HcmV?d00001 diff --git a/app/images/endurance-smart-chain-mainnet.png b/app/images/endurance-smart-chain-mainnet.png new file mode 100644 index 0000000000000000000000000000000000000000..c733c586b6211fc466051e662130fc96d8542bf3 GIT binary patch literal 19195 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 W)Bled1%8MC0000 + + + + + + diff --git a/app/images/eth_logo.svg b/app/images/eth_logo.svg new file mode 100644 index 000000000000..356b8e8779f2 --- /dev/null +++ b/app/images/eth_logo.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/app/images/evmos.svg b/app/images/evmos.svg new file mode 100644 index 000000000000..8be9324b476a --- /dev/null +++ b/app/images/evmos.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/app/images/fantom-opera.svg b/app/images/fantom-opera.svg index 02297ee3a331..292ecaee00cf 100644 --- a/app/images/fantom-opera.svg +++ b/app/images/fantom-opera.svg @@ -1 +1,10 @@ - \ No newline at end of file + + + Fantom circle@2x + + + + + + + \ No newline at end of file diff --git a/app/images/flare-mainnet.svg b/app/images/flare-mainnet.svg new file mode 100644 index 000000000000..f2ec35a35668 --- /dev/null +++ b/app/images/flare-mainnet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/images/fuse-mainnet.jpeg b/app/images/fuse-mainnet.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..5c8d583b2889907f96da46ff847ee4eb2bdb9ea2 GIT binary patch literal 7770 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/images/kcc-mainnet.svg b/app/images/kcc-mainnet.svg new file mode 100644 index 000000000000..5835b1cd2e07 --- /dev/null +++ b/app/images/kcc-mainnet.svg @@ -0,0 +1,21 @@ + + + + + + + + diff --git a/app/images/klaytn.svg b/app/images/klaytn.svg new file mode 100644 index 000000000000..4eb1ff5f107b --- /dev/null +++ b/app/images/klaytn.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/images/kroma.svg b/app/images/kroma.svg new file mode 100644 index 000000000000..8e0c57d828ff --- /dev/null +++ b/app/images/kroma.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/app/images/lightlink.svg b/app/images/lightlink.svg new file mode 100644 index 000000000000..a41b9f0ded27 --- /dev/null +++ b/app/images/lightlink.svg @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/images/linea-logo-mainnet.svg b/app/images/linea-logo-mainnet.svg new file mode 100644 index 000000000000..bb56377bd349 --- /dev/null +++ b/app/images/linea-logo-mainnet.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/app/images/manta.svg b/app/images/manta.svg new file mode 100644 index 000000000000..cc407e9c04f4 --- /dev/null +++ b/app/images/manta.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/app/images/mantle.svg b/app/images/mantle.svg new file mode 100644 index 000000000000..d8fb1ccfe42e --- /dev/null +++ b/app/images/mantle.svg @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/images/matic-token.svg b/app/images/matic-token.svg new file mode 100644 index 000000000000..10b192a9fa15 --- /dev/null +++ b/app/images/matic-token.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + diff --git a/app/images/moonbeam.svg b/app/images/moonbeam.svg new file mode 100644 index 000000000000..106338e4f1e0 --- /dev/null +++ b/app/images/moonbeam.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/app/images/moonriver.svg b/app/images/moonriver.svg new file mode 100644 index 000000000000..b52ac55335e1 --- /dev/null +++ b/app/images/moonriver.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/images/near-aurora.svg b/app/images/near-aurora.svg new file mode 100644 index 000000000000..2797061f9b88 --- /dev/null +++ b/app/images/near-aurora.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/images/nebula.svg b/app/images/nebula.svg new file mode 100644 index 000000000000..8dd2bc0199dd --- /dev/null +++ b/app/images/nebula.svg @@ -0,0 +1 @@ +画板 1 \ No newline at end of file diff --git a/app/images/oasys.svg b/app/images/oasys.svg new file mode 100644 index 000000000000..3570b8fceea8 --- /dev/null +++ b/app/images/oasys.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/images/okx.svg b/app/images/okx.svg new file mode 100644 index 000000000000..1ee5d55653a7 --- /dev/null +++ b/app/images/okx.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + diff --git a/app/images/optimism.svg b/app/images/optimism.svg index e8c6e64e4e6e..2e5ce3103d08 100644 --- a/app/images/optimism.svg +++ b/app/images/optimism.svg @@ -2,4 +2,4 @@ - \ No newline at end of file + diff --git a/app/images/pgn.svg b/app/images/pgn.svg new file mode 100644 index 000000000000..11a983b149d9 --- /dev/null +++ b/app/images/pgn.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/app/images/polygon-zkevm.svg b/app/images/polygon-zkevm.svg new file mode 100644 index 000000000000..b70d50aa752d --- /dev/null +++ b/app/images/polygon-zkevm.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/app/images/pulse.svg b/app/images/pulse.svg new file mode 100644 index 000000000000..dec9daf839db --- /dev/null +++ b/app/images/pulse.svg @@ -0,0 +1,18 @@ + + + PulseChain Logo Shape + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/images/shardeum-1.svg b/app/images/shardeum-1.svg new file mode 100644 index 000000000000..66f8716d7c74 --- /dev/null +++ b/app/images/shardeum-1.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + diff --git a/app/images/shardeum-2.svg b/app/images/shardeum-2.svg new file mode 100644 index 000000000000..a7e59cef4b25 --- /dev/null +++ b/app/images/shardeum-2.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + diff --git a/app/images/shiba.svg b/app/images/shiba.svg new file mode 100644 index 000000000000..78588a2ab961 --- /dev/null +++ b/app/images/shiba.svg @@ -0,0 +1,88 @@ + + + + + + + + + + + diff --git a/app/images/songbird.svg b/app/images/songbird.svg new file mode 100644 index 000000000000..3adced1d1d69 --- /dev/null +++ b/app/images/songbird.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/images/step.svg b/app/images/step.svg new file mode 100644 index 000000000000..d4a282f65a39 --- /dev/null +++ b/app/images/step.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/images/telos.svg b/app/images/telos.svg new file mode 100644 index 0000000000000000000000000000000000000000..49cc05f821a7e55bbe148fa5362129133be6fd89 GIT binary patch literal 886636 zcmd4aX>*lHk|%n-?J~RHA*aV|Y})85w1eu_%$PPn0)dbaTidlVKp+sHegE+H-v2M0 zC(k0WC^N}!lSxO<5)mFAzPm@9|L_0($H@N~IUD&r@@eFkk&}_PBL^dgBOgX~M|MX3 z*T}z)jE($lWHg_@W~t&coS zZ@-Kz2G+gS(^0NgTidOSwG^0sNsHc_PY32=-09ZiX#Shah#%5+Gyji{{9FG1(je}^ zzcBJ>WPaqy$cv1zn5T!q%~n2FM>f*>LB^ZU)xW0I&HOwYnaH*O7Sd)RPda$vZ>&98 z9C_IA_^%`HGuNZc;_vPL>4=}d<#!@~;b<%O?>21g<=qd#`eE)=k2l+j=&?q+`317E zc7HSdZnjbWqpifhw6!qulR#`XzXVT*BmWF;&hoA`g@a+3yz{rLS+`DqYb*abqr!i+ zLnW^p7C+?9d7c%m+)QtU$FGn6D($W_YL8;BrWa$62IA2`@%_=ae#PzKwV>#&iS_vL z*`5TGxavAHe%ji6$luqY)3<4Toe@8TpAXV%?^*Vh{H%@--M8+fmS>7IfZ$#k{s9&6IzLpYfG4^AzrDMMtqqOwFTqQ%cW?iQj2sWY`{`sLE!FGA zd_D!Poso|X)*tC{Y-FbW-0W*xy@F{pba2)%ao&3DU7uu}x1smB&~9Oomhn6J>)(I< zB9Tjzc6|NUP&wNA7`{75>*FSojkeQztX_tD>gM_PKHAh~uW|ihTVeFj$-;j$IzGxs zn~kDg^-1WCQ@cLVg1$OBsOMI#BcEcZRgwLVUw~-!4(ZC1kajUH%h*${6ZC1a8KHj!xR@F0jwo<3LOAEdqxLa#- zD^>-mJ<;B*HT>(yt&yp;{aZfGaBwDHgSf*)y-m_}mcz}jU>e52c9hw_{}q$}$UJHM zn#)dR{CZ?NS8wv(FYW$*X8fW3w>hMHS!jbR)z5`+QW)uI^)hx!0t{o)-EMx???WVm zp7*j6@0wtbZMIqCfR5h(C9=%VKQhBk;&;-wEV!ju zZlv!&1Hms}9rbu59D1R-G6WT#^^o&_b+4g-|1SIWpTL~brAOc>t@u=x4XW`D&4%azG(4l zYyXeTha}wlRePhy(!c!_P`a!B&SYIi+b?+iP6o=EeBR0roix?1dTplLx_EcGt)Cul z=iXSZw4KP$twv*4(I#HteSMvW`yuUU^_Or_SsCv#!`;X;Qikp;Ux1zZHEa#zWEd(O z_sg%C`|GdVV}#>Kmro=AbL78&@qvnidbk)3ZhjX2{w?DV!+NzeD6an+RdiB;oGj`7 zJ(@5-_Q+V)b2Mu^kvXD-+xZ!7)G?K3{a8TFxAGQBn9hGF3gr|9xvzD}ovZcaur4UA zdYS%fu3zVYdOp17Kf(v&ne9ZIVR3@l)=X|Sy1q3qXSf;5^U2H&hfKD&wV%unE||(s z&H3^w7L?cHg?@bh+!gw*+}5qlF!ryS|L^6xpS4<7bDf!8);Kj^9&h=sKZdtqOYwH- zggzeT0F>nZ*Cb_UPyanqu!G=cY`DGf`BwZJ);(D}oqqm3T4N^9Zsz~3^!Ot3Y$LIm zg^}l>;<;Qs3D3S9S*5&m1xb;!bzx8(}@V#h#6};XRyLyoR-lrFlv~RTs+qa(oG0*0LvF*(5 zUgkFXWxTmBYfunB4CY>Dr5@(J8gs7U?ftLN-OUFO;GmV|)y~JPW;}1V8hAYYp~# z?!E4LQHrajtl4ziQ7XzT901#dOc-GyY-2n?A zfbpnN@10O?JzosX^!I^Jo@Fg|e|^64>vOzv9{BELExT5WvBs)BYC8+ReC;{B)jJ=) z`c6Fu!}H*yTWkG`wVpIO`V<)8K@1g7&gSz)?(y_jg0YWT0Ws#ehO_5+=dks+mi``O zWPJG|xa7;eiEP1dV0)Zv_N9+Yjlx!pR8F7z25l(oAJ*wFR|wF^d;_moH2U5-|Oek`>)3f zvssbiucb>^S`7}?+TBj(;+H#F7qS|~@BX07tC{u7;K8}hg+{u*!1k!+73!Tw!PVDc zygPC~RN_q@4f*N+yMcV~8!#@XRR_V1FRMGB^|{FJT2}8(KKuEndlzhXLaEmGacD!- zhJ0HKjXesz+|E2Uo6MWYTFW7Q3KZv|?CoDASl8F^=kM*ee@%z`{+ZY0@rQC)4m%-be@aF3;I<=?6t?Ehc-wnTyWsUId#TUNc zPP_H2=~4Q*m-p7w*J%Flhh_Nx|H`lxtlwJGZ_BsC$fM8U(9dmcmV?*V`Tt=)*+MVF z9oB3!pYFd2AD0|G&V4r3Xp_}5kyT6W+GokN$H6(7R(yIrx%MDqgT)#@4PVe%c*EMw z<^N7k`kabRGG?v$=d9;m-~}5Ru=ZfTT6Tl&$L04hU3~5OUf?Xey&0gZx$yqSSg~x% zjbQaW^i1=uL>`pYx*EDH&Ar(0witPF*!mdD+i&}Ndm0(m*{S_-Xt5leZDrm)-SIT* za5H#fzi9d9N?q5psQP=n>iis%mr zAEdmZxnRt5b9j=LbLnL(7=VL~JTZIM@c1mhbNTNy*T-M*_Pq6>x4VIAHnTp=J8ZAJ zO*6e}FqkK+eKv4^%=6P+^8n_;^V?~EFTUJtK39SvJuhXX+0f!>u9tIv zDf~K{wSdvb`B`o_LNoIXw&(5MPTtwc81w0QD|3a_-O$5)Bn4{ukiYwZXFj;!N)KrI zFhAnMk8_PiL@wr|8y*K17{_A^!2#I7d>)w8F<2pxiXtrpTU)s{%0ysY2*$Va&iyZV zn+m2Dnr-r^t^ck3zYq+a2LG&lR{BCBE>?A_LG>cA<5oN|7kEZ<^(fbC=^f2(&=H8>Uc^d4_H7S7- zPV*n%>P3Focw3q4=Ul%|yE_^EarlH?{kC1B#}`@sva|1|r_)?(UsUoe@4w6%%w?Sp z^B$Px&*pOPcCK03uQMw$L_Nt$?pX^y&o}cw&VP|>R=o_` zTrleSXkZdsoomvSXMEc3ptPm@tmW!`px_lw=6WkXJihsiw3}-+D%-)&e6aH-*I>Jm zK0aog`Nmhv4R4>adh=TX-V z$HB;pT<-^_`wh=>eDi^3C6sCo;=}XN2p@C3k@l)zz&4*2WDIIN&U^F00&2JZC!w!} zU}7n~ppvs(q3+XMZ|3=VX0nhcZ*pxdF0xt+fo`Qy`{Us9bFT5`!$$Msi3@>qGS~Qi zB3BFP$u+8;48<)3&dKx(w)MQjM_vdvZs*?Tj3Vm35a^e3eJe2C4t^E_$wtG<zUwuv2g{?Sj&HB znf+0Nt>dWuv?s3?GwxO(Mt7<>76bQ2u3zR3*|L}!ujKkP&&$7qMZVctMq9}9@&jR+ zZeI+<8+ksJaY@KKf$UA|aV>ZDbG?)`-AG&>T#s^1#y|Z6+xt8j&Aq3Y=hHyO(s`Zh z*SY&NbH$-n@@X!KE+Vm=YqUxtu-4z^ znnc@du#s%zfrZ9K;pk;Dc(|AKpnqPa&*{8>FOW>;dOCgF4)#U&CL=Xo<@!c@PL{mO zb2{W{#<%`3G~Xx>Kath9bG4YU=r2-bGq|~%Pw-CW^F|<6RR?dXt~SyiX>&j8vJ{Ms zWZEz7~`Y5H2oJXFx#PdnDqZk}%kdX~+L ztg11sJwI9n2fe+U-}~*Y{ftMFz0UPvaKwI*-x|;Lc*Z=)sO!PNTKI@1a+vah6uwxsT^R=l48+FVdIz?P*}UXt3dmhv|7G zBX8v%T6!E9#eVVcPM-62#6(sy_LKaeM$&01*Eic!F=IBe*==X^ytnAPSpTOpMoOS!(4cT|c#%6Ry1 zKhH@CG$-5rGBAm-t>%rDjJuTQV;NN))ncwEGp5-4YDQwqpcb=VO{>Ms=tbJ!2<}(& zmle2_vDpKUv$iZvyr5cSF;I!p?B(e}uI^>+9%n4}k6NDl8Pz&&rhoDj4ju=-xxC8` zTT2Tox0h>Lk*r<|wTnr9&h_(PjuczYTA)((gKO!J{q!(zlMc9_c4P^^&+3-WT5b}D zu9FE^4~)2PKkw`W>*!=N(7nqwxI2wty^k}>dYdTv<^PRPz*zq7=9*RaG_w4RaNhe==JPz*9?OU#;WJsS=fT6nj6pNb*P z%lRR@&O#GxPdfWWdfv&O{7L)OKkHtJg7eir<{&l|O_>aNWC zBK_S91f<2e-dSeGn1+P2leL6jheBB6?JLzdZV++}CO-mA<7 zZ2ZE9nbB@qz6vZ)bIm#LMM|Q}5 z#vRMw8);3Z+|L|nY}(@}J>Abrsgc|do=-x9-mEnhL*j>R1{Vvtf0%jChtJ0Hw)lj| zg5DnGe||p>eip3k;5*Hmv<8csPjZ(3U;zz_@t$Rlt7*wYf18%<4-pVvDyexMICcUx%V9rHz;>Py zUk9F}v^~u{SW#p>8;Jh72pq4|!gCcm7lC{`BRmSG=hNqCAh~D~kI#5B*N1`NN$xxh zEM(+j#@xs_GohD9xt3iK+q6=A7h^mRW*-JGA2a5o^#8KK_B!`=GOO|YRb_A^eTdji zGXM#)m{rkJAq+3eVzoXQ+Y=$aXPp-2`+d|wDYaN zNMgZ0tf}}}$Qu`dgty55exA9qg-Oxd;fag<+|4}bikZC4_BhS+rx|Z1_*3osI?rF{ zKe~q31U7B#Z!#M)3-o*G{YJ)rmv=XFecDD@&hweT^e#Pt_+xs%5nQe2uH6vzGnw@p z4W{@hrHjPRPJ#jTSSUt*M^1e_RR5`6SB!tX!Sy0z&*puw@zEzU`h)z=W|pgMWyGb( z!GmB)^ibT2Z?x0!Kbc-g>>GjoB={EkSr`+eii$Kq#n=z+KKu0fASyTs$i>U z{5UzC&uRN9^AXXh`HFS$AKzrGy})3e>^1sDRGCDW&6@BHX9BBytGzCpd4DCJY~1DG ztY8JB+5%F|TzrBVK5P7vU{h^Pt8PfmlejV%;GhTp;Jo_h@G6Y-v--ETU)s(ymtOgSUbGcJcjwv z`fq>Xr^|VK{KlIRCz=YL&Q{~dVSiM$vMWMr;LIeBy$e>Iom&^mAOq|y9F@T3lgz9=m# zXNle_4omKn&uhWBdL9-_jl=G!{35*R<7vi~DHUh?9{*g;I~Q5A#q^_otN8Gb)mdUe z>|=U?o>OmBGNS4iDj&}mf7$4WWneCBjIYxTo2__^-dPBqtOLJ}K2Yc7Q;vKgSnTNu zcq?6jFWG-;C??96Y;w~BFnt*@8qhdwpGjc9f9yL6Md;#uQ2pY*sKg1xx|G5dwBB;!Z+vW5rO>S|d#sHfGh!5g0c7M~6G zh3|Sg{4g-EyE^-1I&@{tdDGUl$M+>4$ts?b80ho#!)sX&p82|idiFBC^>juLCOPQR z{o*j&f&Z=ib#bu3D3xoM{;CEm4K;64YvfPDiwak+1#nyf^ zPsQcP#I?2_2{CSt`HyKwxH;$L%dzim>;)A@-eY!=AMCD42(S54( z=)s^}U8|W~4-bnO%E8^rwYgL#zW1I8zV=lg!j3u$Ec~0z+%>kWEBPY=F8X{JXx0L! zdFfl8*O(&g9c)#{e<#n?BRH$!NwB<-b~QKoi{*wJz9IWqRzo%r9g6=LU-XQ1i|&Pv>2B)LE|8#mOLdu+-;9=45`>fq!boY8%yr zsEX+3HvEa+hVRw2oF9GF;itb3^Ol8E(IsjiXU!(*U>aV#?*8>YzYbeJEZ6I^2V;Lb zQt?UfrKSiDd;Rlu`{_;2)VhJKqs?b|$9lgFHae~5KDAN@QxngxBTD3%<EWxxJ)EmY760jA zAWO)_-dx0mJ-kTotXz0IN*_-$pV~tq z-b`PRb~|}aCf6A1ami?rX|%r*C`Ib~=TzJL$og`+16A#WTgJRVEGgH+CxTrm_K^m58IEn`TBc< zYxni{diau0EqP|{z58(0gH0}w1}c3i*4cYkPW(f|6Mv8&i=%qa2mAc~eRL*YE*|%F zUDtyREYCtW<5{&D3y+Y!-B_-V^4rPOS3~pc-c#Ym2Jhr18f2meOKfB!4qrg=|dgA*VkcnAk*WJID>O z23gC6JQY7C59QIxgI8@$**a`Ux>#Jc*Y~&9ioMn24Zcmu9JUXcyqLA8Ls#0E^e=tD z8y8RNpIgz}!|*t*&tEG!JGiFbf~BAS{+#!Eu+h2l^Qss+-Sa)ZL(e^VhE7Rpc8xlb zS_jo7Y)G=&%G!s>OM9N@;_ULZ>H)~djkNB`tb&bXv?72du#zaOKoAJugtH`Y#t=3ZotwUF(4nl+M- z#~aoKY~rBg4LvWrTJIdU^_Pp?3|^L-yizs5zG0uLr6I@I!GnC)-CxgB6%2B2^s@Nm zVbgUgyG}zBJfQvbclF#0Z^O@IXjw4qG-pSV2{k`9c1L&Qdd1c4rVz_#i@a)MvYp5Y z@ey|1ohD(-4PBFMWX{vfOB`?51}nb|YI4CBD+h+J2dj1`0Os@QqnsJ-F#RRW)@+<5{C!m26!MqQ9>mUOV5q*H7=g z>+xIEK9iYHlc;h+o?7+L)oXg0<~v-7F|Z%4*L*&; zzt`|q|BH1yE8$^22j{o`MZd{yi2IbCf`8R%mOoJVW=p}_$8e6d77yV|TKm$!Xr*XI zHQ#97KWXEtJ7Wix%|Tw2{k9$$!OiYh-zuiaKEp%eMg_B6JUr=(Ee<9%bmAxVDW}06 zdOI{X?ao4v{4l;X-eVu)JnJFXV%~)#`Fj|w8VvB`X?>_Jd7M`2-a5YshV`NLPMir| z?&PT$P4S3$l4?zOGnbFSm-hTEYbD>~j8y&veFy*62#i*N9<^R16r1&O%mLrPdGU=p zNMp&l;#ZK?AsaP^K9BsEy55ok%;j0G?XN zU;D7cPwsz_m-6_kNOm*MM%u0BlTB&;47ho%TKHcyx)`)hd(i+X!hoSDaUtY4A@H<_mf|(4l?v-DW!BwY% z-f)~e0-K1%@_U1%4jd9 zWeis6Sg5FYM!iVoJ9{x&6?%9@YzeQR74nUxtWq4Wpc!~GPq8hPXnTR5ym{FCA^yC& z^~GG-;~_pGrUFW9XFdmMZ|(7$S|_{GtfiV(YfR^rT})oOznS&fY?OzVwGxA_oQT|^ zxw5Xn#s-r6d6T>Sw24pca&Vds{^3{JNoMEF!|+?_po-~>d00F9*^GVG=tedI?CfGS z!}wVBC!ZO=!aIHiyBY~GA@nHsSNl)#tX%AR@P_8qR?rW%1L{FON#C>dLte5?RlQpa zxw7eeR^ItZaMnM!irrkK4L(0>bKxuFjnZ-Y!fWO_m;Uj9U2^bQds6NPCUG+S!`=at z=oK0FzR~PrKH0D8zMY*&XNePm+5SxQqh^Cm%m!c&+8-g-Lq~}@p5%SBKbPltiR}rG z^s@RTvS4uCicjeR@Pn7EW4|tD4Xfsy+?Szw&|tTdimbtVY8%9>?5L7sur?|h<^9Fp zCdG5Tj|&$Ah%OE9UB zwHHHuGZ`RW1vc~hly<7pmh(v#zD!T#l%02Uku@PJ3v=Z9WZopR#g(i*+dzA?&d0MS zfczCf7qbYp2%2)&9? zyiYs&NHyoPTvy#HeF{d;YySdS$*+|^w`OQ{Ec27Ywu@ElTg9`S!clO5F1LagJflX~ zn%eWpCUkza9m{IU*#h)v>3+5YIjFw5?8>qQ*d^A(325GDZPJ;gv+UpNpWo|11`lM) zr@$hArA8f3?4=(v)t&=2jLV@zyByZ?pE=s^qTR!+IT(0@c%o_u%$!~KF}+WwJ?Vhs z_?qHJnWdiKw>z~_ta6{hn z)A$e8Q2bI{k}i6aIhk|O1X)a`*mDkllNlGSbo!M1w(kcIJV?LvtJ-6Is6A8_LvB8A z6oV(!vGHNpR&R3cJXyA>Z%AOzeG0tvfcO9#+wMqqpF9Nrfs7EdkpobB+CR67r&OJ) zn6j!{wYum~{FBedj$`rg0q$gM^M)m{Xt6%J!##9jZ>jdimD`}>#c|18v7Vz`(JR_l z?ZHIu)Sff^M(dED;H3L#NPJ3$K20BF$Yztlbeq^Qxi{7DV@-x*(3L~FNISDA{Yo>f zG}x!pekW_Wnmdabo$O%G*g?tyI?UC_aI2lB3%M?xLgRtU31?tKH+z}2`A=nz^)9avWIX5b05|9yt{D8f(_x zM?6I1lQra<_yOHUrhtVnfM%+u!}x3k90@k_SBpu;s^w>8_s_5F11EKfA@eWsfE5Ct z`VO?m)?nwVuVyEsJ3N5~i@(`<@LBl;d(p(>=rDysGc3< z*EvI^nLgC)TFctgD2|DLH$xX>0GpofDfu@jFUjAz;L_M^NSe-0Pwm(x@H>@zG5!aF+{<)J-m=sA8<4@fVvg2;ch znRHmmFLgQ566f}S2V<2*p6(rvXS_$ck(7VEhm9S?_{>@lb6A$ zwrnKvHTInM*`9WB_0uI;L2hhj%*{}otOpsS-BDXD`sOfK^oD#Qd1v3Ic)8kSHk0~I zw$*7{Q!!=o2G7vhWC4578u3%f5;_b%&|=Avi{O*SvV%=MoLu;J-olqoIIy>bFZ?XC zu=k|mqF^^Sr)muQb@*pG@GR@Ig=~8Nh~Ov-1_K zF>OE}ALjZ_+COji_gbIm6DP3Octqf{$C8fgVk^#z(EcRt$l^NNq}r?oKjae_#OCdV zP$xq+49gUH_bkuYkZ6nVypeXsR7b9coqknQKnEG0|3H_I<}doU*OVW>o42*2&BU`s z``O1Od+{3^y=t_@7s(;=$=)3_#OKhT+Ur_#ak%13F@CYB<6xv>7a~x6LjJ5e3Eb3A zmt|Xu-P1=)d0ut0)>OezPtBmU1yTU#*@_yiMs7hRIvPtr<-yY@%vanNsN z=UI0;Z7=QUV{>5xu~x|cnLMXI_tIzC1XHGXkA2JN`@Ra7^^KkAy14B*l{8dtVQ~eWx%FCN;`A%eL*}>UYs>nKUsDg{*!yNzH}l@ ztwxF#WZm+KO0SLwo;p{`c@5~&Jo!!Nj}O8=6=Na)*k9xuUBZv*r_1sY#l`tLY<1(a zcgeH;^uY#toc{5%eP{4*w<&Fme$<=TKf`Z5%X5&HUJ&0@k7QnAd2$P4`S?&>yiYML zet|xmA7pPYy=ad=|G>E?WFdJ+);RBiY;jJ>dfL*%bUK-ecl+lC|MuXaLUPoV>> zsr@=uoZU{p*~1}bz?QB5jY(UR1M+)(HM}o=p{8Ao>oCvwQ}ic$Vj_@(na>F~U?*#x zG%qYZClB7Wo3u>9CGFGIEN z?WJEfi#mMr0I%c6s&l&+`m|T7J@WV8C7Ch~ygohaF2E)5*?7m=7M@Cp(VQ1KW^1@UPT?dlkP&RvXKl>ad9QzNRZ~DNZKn;tOkDh7+KA4U>|pPK z&8dxKi1^%QMtR@x#3!see6&iRks<6_+Dk6PISS~4E#?FX*1B9S`Vf1OH{>UYm$0bB zySD;6{~c9%j}GKd*<;6VwJ+GJpJokd2U=!02K^{==*~y74;DVyvxm_=Y{|(yE%|kj zQN*kY59Gjuz(pR~Bfze}xAxz@%~xZ+m%SO+B;LKFPW6lRc;}*QjB>!19?;mRul9(*3O|PJ zNLJb>kIp{#jXgNV?|lw$m;3m!`CV?;gH4&Y(3{^>dSuT|MgGW@`FH|_= zRz}QXF5_7n@%73p-VY4?k(~w;d!yqma+IAXu26AHHbD7Vav!2w{L{HWOc$%=6#Ej- ztQ^u|`;U(!_A2*Q@pHC1y;`vcwkO%ePN^Ed@h@{#TU&cE_?ByddN`g!htbXJ`BbA& zyg)y#=6!y*Ocq*I)y|%OkTu{((KTWZCz&yS2Oimg`~iNKvAplQAK7*M0Wj0;^s#=# z@x{43pMJ!f#Z&0i z9ML724oBu-Cg@UJhm2s~uu-kC`dFW0l6*k2yJRmpBibw9( z@|+}1#UkFP*NWAk%!>K2@tq0Fe#3Rcdk^4WjLbSYUnG7uY-6%(*##;m#Erym_!ibhzH^Xv*=yIOTQPigBbxFKzufl;)y_dlHXyvq(3Ux)9C{?ZOP)& zRqS7p1JPA^QuZMp?&3(sVoTFlP6R|RxK&+w|GPi`y}@-uZylUJf9&hcxp?8a_!-pY zKMUVr`}5auFrM-?+9|yKXVcl$YYjGZHrM=cvhy&!Oh>aW2G@?B-Hn`KkG;?Hs`nBP z;ctkP%MXyXav*GR^3hq0w1{&L;Ct^_M`7!|GmMv4UgUH zkF2IgN$v76d8%M5J?cDE@}GwHO$mHDveo$&^7H&}HYF+kEcmlWfTSc3`JH@X`DSrC z_xY#vrJ6iGk-O|1@pE++YWc)Y_j6x-Za?p{6~O4ssnYese!091TZO$L7R_Ir$zNxl zh@*?yyli#|y~8Hte?H21d^!0}HBh3Fd~EO1@y0IuR{o;Puig%P?us*6Pq9UIgKx`& zx3U|YPo*wFj6vV(P1!ztNI8!CfeF1Vrw^ZOH2RfaKFD|S_P+Z=ELFb1zFavGv5U&O z(Ubgg3DtapJ@Dg`S)$PjB-^*wK8% z^7mLSY}4Amz#k_Y=y^Gzs^hrG$Y2$VWT%S84C->RKmJ4I+{AyuB8SE2S<5f{sGAeJ zuh@x`y!lq;cd!T5EYtM|ZH{|^RZW4o61<67)xIoiM6#8qht9~Ws@D*Uc$S_kpTb__ z!{J$RH!(ka?%TuVoO~Nc`7~<$*s0=ogL7l=idX4Z?TeV&Oh#1apq8e1VImNrePfLU z7P+|dT%&2e9J^n=Ovzk4bM%wmdzo?YtDV4LQ`^dO!Q=c0=i~Lq`p5*|$}SJ1Zb9w` zZNP_|x0)6;vHDb#qsH5r5-^H>^)IKS-B~`>uF31*5q2}bRxC^m(Y|!F0Y4_^UXc+y^cpW7P+ni)-yv=(|?6QtJk9U5s7sVlBOxAKwDZ^7pt%##}w6hzNg2 zEtFh{*n(K*n_O3nbUOe0_E7$(SOpJ`%=eT`e-fzWt?*~))e(KTj!d^x#3&fm7ox}|)epfsQZvCrchzypH;Z`U zWxg)?vXZuH^wcA;rS0q#lNSG!<#3*WOo*7MxRbq}Vqxq%zDb>Y&u;Tx^-tzhJqN9b z*VHqyCG7C5x&CfefNo#OEsJIu+=L^IGusI`7fR^qHDF_LKA6$WZc3ZHDi` zA^)tMN>Xu3GDNxa31f+`vFp6w`CFs8wx;Z> z&v~EB*$I{|fR~*yK-r6A{_r`$otgHB4jz zNv5tte4MPHd&^J2-E5G_d={+i2!X^o8!#I?!imy}nmgo`tQW-bVeAn4#KGHYv}9j8$R7 z_9k=S*?jO0xrrWGi|iWqHJ`Ee@`yiHOw+qyryt28R9Sl~@T9ytImZ@Y8`<;4c1FW| zKCx_dfHE}vb@AYS`&s^?V$f<0#6Q5Pw$eIP+W> zmDC2)pDTfmJ+_x|{#d_)f3IGGEHPpiiypM0N&TwTQ#&B%!5+gq?1|zD{3kyvZ7XR_%*TU&9Is%t9QTYFLL2?i6H#`aNn zsjamlxA=TwFpt|h$jh^B$TRYT5 z_8oRIgq^(*nCLeivbKC>*dklmb@m~{DBOuD@Grc-n|Y#9zA-)#GvWiC<&)eR4-E1S zr>%dv$f`qCgFtV<$)FwwE4vWAvD=)@S9=B@rhj&TPux;+<0#{h8sGC%tq3`#=7PN3 z4ZL`RuR=zP?a-^Tl467SzH)Z*80rUkh2jZihg8mJDJza%Y7Y*(j7+9gs&DzZ!TE_3 z)1Pu7WQtl1ek%R!JD2Ehb|;^Qt|QCEQP@JX03A1)ANf_(f|mFx=$8KlZ}h(WP{C&3 zO!*CDD_P1XWZ$4&Hl+LvThRQ}VTx(tYrJk}j(nP03iQN26Q6Q^PnS>b{5m`%hRaTt zTQzrcL%Z+{Hg!dEg!F<~4LO7#t*O0^YNl8jXqivT_A#Qm5c>$xm$QW{X2a*_EAqv~ z3;6T;C(moogmyFeg)eav`omsgu{8M^Hh}tXu;GJ2IvV7=>&Hc$szOfTWc9#&=a2bB z<8YuJQT&PR2?OwDMaWBb;j3&Re5+E@{O~o~ z2Yv9F%Z?bNOKZ%&<%`ql3YOXYrrDoptN`71$;4=UZfo@5DjWj{eq|82w%Tth1bJ zO<4f^QP0#3mhP<_2u;CW6!Rpn(F&VgEU(r@jD9gcx6;ygh^cWzKfWDHyg-h8JR|I; zf3l7zgbHz!H757T|FZ=~JmFm|&w@<|$5Yq8sd zhF5uNc3b5U$PoI0{M*lcek{L}7F8c8zQUUs)Z^?D^>p|d?SYMaUJgWf;!~R=iV{;1 z*O>@x_^ZyZM1kx=`(nhJeIJ1OeOjvGw9X=u+pgM9vV{F2#;YF0o)`8Ve~M2@*0Tre zoJ?|54KiDx;%{JZssI`_FS?Y`_+c3kbF zLDMx~_}s|&IGBBLl>2;Wb@qdNS3Zom9dFCpvqkpvE`LM5g8xsq+mFeHV#km{GB8Eb5H#6n#LJ^Zo4i zm20tYL`^eo%64#u*s%R$7qmp5qrXh2J)4r{Ht;1U>Cc7nopM zR-AzDrmOKQ9#DtR?=ZIu>=ho^>S`qEWnM4~S?rmNQcGVkSTmM~t?#3h<57z)-lP6cY|0N^-S69xiTo-y z5r3bY6GLDFiO*RJdrR03Y+t-m-)qayr>WWg@)hWj9VR9*p7&g{15p}ljjd4mEWX85 zR*miwclYjD=1OPr`Pg&zAyljo-_QeMVr&4h1^N84%fuw`BmZ`oF2Ot1_gwBKD8 zkep;ktY%HzuN>t}p0Rg*kE}Q+eiT2zGeu|4{elaA?4X^3=6!D`dgH5!S5|GhoUYh2 zz7v0>lWI>1x8ZBzx%ns?o8B8*Q;?2kkiT z;I-O2MyHdXgKNQyWykR=?NPeOD1-CE^J*%}pYWXhFE?%uds(CUwn;GE39YT7D9Ndc z&#A8$OXkzzL;90EQ{z3HvqKBkxb(|Zu+#b0{Dp7f?YHnmt;O&<(6g0KW<%O%$0Dk@ z0$YqfA#Or{R34j8dC>4CrrMorPZkZI)rUr$X)P8_Mp|p~2wrRNKRJar*d6vUTU)VC z_8;2>|BW{K>-;b_HyJ$@$|O(Jov7=zgP`cX{CYWVa$g@}$ow;Q2m3-SLM;%wKu`2# z?Xy+a%FaWRYKPH@JR+ZckS^8ykX!OO@~GwivQO+G5Wl>--sCD>&(@SDDSr#Cv!U^i zsEbGmUqls&m;qS%tD=4v4O;e#_(m5atNo9n^cA}xTMpBQNCzx{bt?DxYs-0OBR$gv zVC(tiHP%X7t9u!Sx0n}fXvZ+z3sc3Wq&p|`K`@YS~Z zw{k`DQsUedU*f-2-hR+;l}|hiv{k#e5*WqU#R%yXxdU}RmD?pV#f;IDJ^pk@;m;VN zH)5^R=~3QTPLjTs^OkYM6Kqa-V7ZQ}yE)1`YKY`d@r!ZQ|SvZaSibS(uOTaN0BXjO1Td*oxBuNlW!## z(9TwHhnwZ{=!S`g* z_hig6h*b97dy6PnJ=Ksob(i&_YG3!rl4aGOgj&Z)t=U^PKRo+Z|xy~J7 z_n6lpU4rdx@FqU39?>4C$~~xjU^lR{#8}m#;%BSEXLkMtz9gg7q4KrqH}OukDExj~ zh7aP+`3I#F3+6{(>^C(g%Xz{VJZ|k~3^eWxS2bbrf zA09>)%R|VE!mIO-$Uk*8bcNa|@%-qrpD`Z%sk0j7yNZ3%mv{nw ziGNIIeC_FUxkWXdWXy5Kr$^7Sy53(1Ea46XV*H@gZ_LJyx~JR;bFQIBV$XU*myUOno;$>ieGugPyd+Ka#@CscWNxo!GD z6q3wfi_%?ebha#?o*%|u#$zAzoLwz;K|ZQc!G~-}vShDum0U8NFaKcAEdA4+|HfW` zQ+&9dcdVbYTiGEZ1@c|u?Zb4*W~bB8K*=26HDW#36KI9zvqrv$jJzWo)WynIk@Zz` z3gfGJ$NH@V5B!I!*)|XKEbhp%T+!a&RO>_^24qtW7PtoPx)yQNZr_Y?w|qwr`XJDo{OFG zfxJJNEBkBIfsrHHvwJ^=zVT`8IUrxk4k@2YT#P3;oF5TuA!GTQe2^|C0QNf1hcEBk z7keX61sOm$p*!(Sd%@(=(2h70{D@xSca<7&!}fFzi8!*@&)OHgAWtIRCN}EC#UJxi z>%FJxtIpCvS8UW_T_;b2F1_#k@yby;b5|UaO<#E}zIlDOJiBnC!6uekaY?$GAI|eT z$cS{17@|)($EWE>Ed}|=Ua9;(3Xv003tHcy3_p8$j~}W=wzHYk&Z+}Y$0@dmFZm!< z4<@h0X6WLWwWd`IAP)XMJL%1LeW{HUMPYwjFIMy8x@l0Cv-9{S6=PPXL>4*kUhI{9L-vyUWR7|U zab`9c-x+;sZ;ufFxbpSvE&8`|Iu#Q|1KxEeq&TH`g*di)Qn1@E2@iZjJ|V5h&w7|q z{YO6Xu=wOEOy)Aa*lyuddvVOcx%KQ~GN^KGm6ylyV(NT5JkM`1#)~#zTGReBwoJid zE$KM(M&r)HA*=UtPflHx2%DQ#?u>%5yze}rsn%vHHVT|sTk`BI_*K8j7ogMB^rAO4 z59Acv-1jdO@3WygejU_z*NIipMd;XhMhY{8T_oqm#(CB-z`rQl(ps}0)uIjR1AbZ;`&Pli zq7+v^TVmPj2+4PN6ZeuQ!P_JZ8LYCAn(IP(XH&4 z+y?ucZ%+Q=0eE58IK!@N&5b7SSkcyx-bEWQ2e$G<<;DhS^GE6{ui6uF6`$h`yk=i+ zt+Co%XGyZJ+4L6~pRMsQ_&}!>i?;7ue7Ed(^}77NgS^RhcIK_R1NDRaE!9-yJR4%8 z%eZJN2^BvMXvcu@)__b-a;SwZZ*7d5j>OCiw$pbK6TEzvF(+k z7wH%gR#*Mm`*cKHjG?|SVW!iQD;yYdkS?t$+Ga1)W}WL{`gP`(ANz z0q4hweX)_)TFzZBIVuk4Ofqz;#vANxQh0M7HhEL_)$>5fX7L?Ad{K2>Y?+@_CWB#0=Df)74~zvw8WC=unJB?!x@>=tTbK zx8h%Z44U9W4$iG~qTEvL+h--=(X#K@;_B_#O>|}1A^cgju4N;OBB&)fjWn^xRosY9 z6ASXoF2NCOKr)`6C01Lz0{F9RB=kv6I;XH|B3TLarSCFDk0d+YWUrN2IJ*>X)D1rm z)t0|7tPjL0oHr|$PJWe-LVmL^2kjJVE2m8s@s9Y;Yk429$N|WAIQN(> zTIa~i<>Dbc!=L3dRUMc70=td3SNRi`nfR~v_tHY0v)C>h(^|u)9Fe%2xDi`~?<>A0 zw~MOT6?_y@Q(cw1Bk!Sob{b1qEV^Vzf2;^?b$i$=M#B5!V~BHzn4F~_{(*U-t2(Dl zZE^XfZ0@4z^2gCu+0=NH{f*A$_2^$dvD^_ELoAY8a0&3reoUJ_8hqm_4SZ7zW707lmZ~laA zwQ;6m_p*P*8r1T3`Fi%+`#{Q`;7@%o?WQ#CJTSS?F&OCLX1@9K7Kh`{~hmIBrJA(ZEEpcA-&)=Yl=yd!?7FpAxr~4V7K4p7t2cK%DM7!BU zVu?qA+d7D0(VcwDnp?rv?LR<;(;0<5v63Fts?g=7Z>=9$D#oC`oK0o7EP7SxP=45U z+MrUhz&=(!En8|o@6*c%?V3--US7*=YX7QrqR085c0ksel8N@$k{0YQ`6}n$R}8-D zJSzS}x4h4NvRM9ekS?tk&CIt(kMLvfK>4M|`Ct5GDR@@OmmS- zqHoLImD?CT6M$`?7Lv?H^VXDqML&vT&{bm1_SMTj%A=D&_VuxAE0#>As{W`mhuK6d zNOUC@i;rjWw!H+t`-@K_f2IG**{S2FZ~c(8HU6S01F68(t7tt3B<9Ha9}|MDm4FjR^!*lXwxEvenFxSaEp>G8^+ z%6^KC(qVKI8R$D2$X;up25PyrH=epvdoxSt)4~<+6n?<<-z$A8dUhQ6E8kf$CY~Jq$6g@!_#YLk2btU}`l++h z_(?3Q!L=icW`b98eWuAww1KWFE@e&0v$CCDWsdx;gM3=Uk|AjCEN>Z`ZH<3nov&fv zq#Ol%f()_l^eg)nU%pQ}d`6zp5#&_u*__On6%P`BXO-~d>zozw7IZ59AsfU`kO#UP zbI>O~WmnmQLeBH9$%dIgSU!&W1vX#RADLIh*R8qymif}B^go+`pJMEn4JNTwHj{WS zJ4X&ijL7-6bbjqo;oq<4Jv31Htj)YFCTQ)@t8vjdKZ{Ms4^lUehSi#?Q|{+GYgBqs zT<$@}!&BvNq2u!R@e91p=P#b%FD_)%va|VJ_?>Nu{=1k%+0twjcIbTChhtze&U7jvAcZM z*K%W5*D&?!m(Yp%|LA+V##gB&{`z9;)2_Me+skjA+&+b6|#b5mSnhQE5 z8}Oq&FxJ1~w3}%`cZsvI_xK4FPjcQPI{naK8`gJaGusn|&HBD(F#@yw1EFjL`jtl{R>3A!S7ZGvhs#bW-$Xz5i=Yy5OSY>R1iY!EQ4bH4&B}oK3`YArCz~oufvBw%CE!k4f{UD|6m)I0Tsbw*NQ>dkL&w4EB7z% zQTrX`I?$imPrfw%T4?xnzN45!?dzl;$U|`%vb%gq{uDb--4j0!mx|9%Wo62*uUaX- z@l@8=T8Sf~O>~R*KjxPVmA@ZeJ2Lrw`chBG2IrTvpYaG!Q!Np_YyV5teDfzBXKefa z)K$>a>|uOJ2a-i{?tGrdjo#Q{;$c;bM<((D&T@}!Ew*pphgi7WlAMS>oc{nOy;yg4 z2|BmunjXL-&Wu7U;_iIG!L_q5gs+Gf#0~7{vcFs{8{R4zBEGK%R!nL&pJcE&Y1P@P zg_q$L3#fbzo>7zHeUU~s<$Bt&chyzG1K*Cn?u-ojbuahqO+U~3H8FVRETJcfxkY7)~qcN~~7koe4Z@QdU9Gu&*zXrD762m8_fA(C! zc6mNeg4_PF2W85iH5afAmR#vM0Ok9 z4kyxsM`_3BTaK(@!>Q?JuZbg(+c%;)K16F;@_J4?a2PBujKoUrhV0iRBo5=#h;wMdal;pHSbtHTWct3Xet8@}_D8 z*q+9j%5#w;G}5i*gUpvb!}hAURek4S!M2cjn%{@UXB8*6cZUrm`UwwJSt{S4W&$nC zlUA*sS|T-#g-3XjRmacQfpwU#2YI2x2cBSGiy@#xd|5nhk3L!9jD@O6xh`JR9kSu& zpyf%_LwpD}#q=r)rW)Lt9$+)im4=t9|AH5LmBg{s8F|j;_c@y<=u!pNRd~UlV0Xr0 z$%wueQqF17#P=F4H2@M+IpQB$!V{yz`ie7Ey-`lBPoBIwAfKVmcRxCdn033waU6~9+c{3xtnr_-AIWqM;* zUA0Eyx%}MY&;{9IzI380_>x;b$vmIrn>lXevvPQ^zVIJC-M{wz{SNZP)v$FszyGtd z0mZr1Vxwt$Dx6gyF3$F(+w37m<75##&^3K3w}B_fMe!3gedv*YDUQyT;9sb%nh%Xt zUIsnYndjuaI1=Aq+_K-+yB%qnjp-<7eeRyd4 zI)TB;rU;EeR+Mvvfqb(OBa-X%C1=Y zVlS{G*pkk1lNXl7=KIxr_&;M=+3h}Gt;ZvSeShCC8-{sU&lKLQoq8H}{6v#Cd>A#K z_|V$oTi4~&eU41sinOYIYVlZeKMu>)@t?2RV}om0F!gLH`cCaj zFJ=R_!8WB&#hg07yNjX7KdEpzjy6_J8VCncYZr;Kc9E5hV9$@^Ly9oN84Ww+qe1WNBh3+d&9i*UkSG1x%_#s zU7vUUJlL+!JAVvpKZkez7}$Oe@B9dC!~8Q$vp?(lM_~I|V}HBfI*0b#?_8gT|ET`{ zbMW?Kyz}F*-A~MYAu;I5#FEtlh{=n^`wsES`N{{X)w5T0Y2;?!Kgr*%;)4Z=0{MqASALLT|-2D=@-wmAbHXk^) zGA|i7JDptHIc#T`Q$!Zi%5Gkt_8xdoRK0#zgG2Y9XNJB_>P4>2`dvmn&pUQzo+ZO! zr{;X1@SP=UdYq{vw?6zi*WTIvu*~?ty^i>z1+v(ozt|m3XjtZ3OLOOc71OJZv{`m zPHt7Ll(Ej+{04h+Rs1xYv7PyV+T>=?k+p^o`&R8Yc%Kmta^K3$=FUalRrRXQY&Wge z^Y<{%@8?~6+KN6^V4*qtRGiWBCU03|-~R@0>e8x~Qw^s*HR|+Gx;=@`a#7c1FNysi zYQ3s5+ulOww5UChOGH_|f6|@_`%=|rR1J_C@2OCnvqW&mi@bX;kSwK#`>h9i0aYca zqq4KeX(M2>D^cB{syemK`+5I!{-V!Ef&VB{#knL-L--un@!D#}I13c&t#R5;+Bn4r z52|ByI^0+!lPah2v;>KoBzw%AP4h0JP6yh9^maQ}YASrE;Pbpa6H469TVT79V9;fku|Nl=&H?8pXZD#b;|a9 z`R)X@IV6Vj*i?U^2`5inUR!6Cs2j2O!5&)YWUGtVYuK%t1o>&-BUI-mO=qmHud%ur zcr&7%H?XZT$9mq)f3OZ7=aQfmr;+SutUq$CAGFo;t*-Vd-pG~Hj81}?vj&^*pkEDc zX0q<|)s0;34QbNY}r@TO<~zsh*)jneEmyc5_+9(y@=11rht zTp4=;pQb%bgNy`lwuow}wMI`%`Kx;BbAHs+sug}3==OshXJKsz@;X7Eq*1HvgkGoN zStEP5)jf9dtt6kFQ_hY%3@rBhIydoAepv;m>2+H9j_CdL@*%z2EAP|_b?4?@e>d7# zpme6ztF-={KFPnM{I$c={(UEWl)iUr6Uk$rKFrAW-_Hp58s6&rqtuez57eu9Zl5-d zx}Wzz=$xUYe4b~{FyXrm9_90Xq=AzO)mN^B0&d4fA@y&!H5<*`Nv&t;#~yH}5$tRh2X&VeL8*ST_CkXdp9$`ADU20{xtnLnTW+e65B~!=V~~8gM4$U zvsHPP9#OiwXuB8LMb6%N-gu0?=e#C!uyaI(p~~Nbj6h8Q zG5@V(zD2RBXx?UqPM~>`UYrSTFVDlg{U-N6q~G&=`ouq1RzI}(h zy|d(iQ-bI6UVSr}S_+lNcF1q#6Kty5r}Mu(<)@8KUq+5Ni-opc%bTngd*;ncy^<3}4!bSxXC3g@=RmTbCnUjc{@%^|4+0;)tMiChuy*)3DeNNi*~z-A06xn-H8gKC zij#GWRIsh)4!!3zRqJv;|1AZVr@@2W@pgp!7BrQ@pR?98!H93jvMZK084E_rAH%)N z`JYwtCeKMPQh*M)pO!dg9DO<-h+zfCLkP7Aqy zl;8Uq`E6^xn0rnk!TEE6lSHr{QyKAd`ns2qNR|0qKWOxXOPqUa*ANQ~R~+U2$-F@_ z(Qc~B?SmnGRHr*nZ7Ho@XYTW94>r|QCmC-m@8Pu%X}OYT_?8t&dMxKZbbTw&omX{~ z(e_&_y{on!3mg-fjS6_@Rp4TFBkSQLFlgmltZ(O;eUQEv%}Grp;Cb5EmBJ>T4-Q$$ zcN%PH#9j`P@58k{+Qayp}^`+pJ%xfXc&6i2}q8nJ^M#lRbRYA*-telKfzFIOvp zb0W`4Dc^Z=kl(4m{VFic2F}|V%}F$N&Z*bCXz$v$LIODrZnQ~@n}Jh(RGl+yhuwo< zajQ|r`@rI41LxuFXKrZ94(9W4$abIw+i1q+&pgdDa`;2;KT3Nizp~`nwR3rT90;5p ze3TK!^PZETUk1ug>4A4<7XohE&xpHe;hYpSQ*-OqeDM@huybP^V_uC$t-=p zAv$)3lG;e$Z~}{>4^GtgUE92b^Zck#7hT}JJP2*!R=yj5M_s!!QXe%sz-4t3r@8SR zKLlcDma#IOT8zf*HCj(w9C) zyy-NNjrMsGJUH?1RYqnPlZ*T5Wj?S@H-0EPpS|ydTs-BQE@__0v{`KH%yPjw&NwJu z0LNk8vR8^!HNt7&`k1Raf$>qsW2M`fi7xAmEWG6$-4E$alnMPF2IEc|5fSmt6tfLt zr%_y_2Nv%0w4%S^=T>mHoiW&GWgX9^m&5$;>;-t^w>snML9QQXj<2&C&JT7%kMZp& z;XB*!%7-_$-gwH|Ivvt?gX0e0dG1uAoj`jQ3C}*!)2+O-o7VOevjCim^C}$c%omct z-0lV=Dr?Vk4>f}AW_oo74~zRjaBKhMVtVsE1Nc=Pw9{Nr)KtdzEj>>H6>oVzW1%Xt zfHh|C=gUClyqEHESXeBasX&T@SPOQjsqe2y1}pGIuAE^)NAUga9s!%Zen)9#t+z6h zz0Bf6AhR3S4hB1fc^s@Bks3P6w_;v2xcJcXfzLPoIiF%ZEzWc2V|!;JPOBmlNpo=yRIHYGG7wCqO{H*t1 zM(TPz@XqAt-!jJkZutL~k-?vT1P*r1tIX-`mG5|C>xw5=-@oea<$J?-2Cw_C{7*iy zvfgBUY8L;<_1^WOQR(9d_@coaG|2Fa;S%1+DvDp9kvJU(n zC-2=174R7OZL0j~UeaEq>tlnR@5ryZ+vJV&2>G^j)xvP}m`Nn$g84d~WBzNBNKENOrK1r}LiOMu)ko6PiS* zr!qUX_l^9=Yo<`VdHb7ogMbCL6B!KhC-0@jM7*JSFz;L0X(-jYYtnv33#YSZipEwSF9^oIl}& ziMQ!txzT|5#eQZWKI7C3o-|Fmn)_z#G$fEzG~0<{FEg&4#7=h<`(wdu0N+^)+jS`&2X-0>cU7ZRsn(H_1xeT1| zJ`)$<)yZ7o;unF;zI2`}J;tN0(C@o%<{pVL>{@z=k! zbK1nu<#Zk$%h5hI63j{D6d4gv#t zE3!pHzs*=8seC8gdz4X}e)21J!g*d^@tS!my zG(|Ki({`E_d6#>X?UUq8Mh=}yKw&YL^w#d)z)?Z@iMd^q(|e20HY?wSuBRo|ZUE_l10`(s%r->2sc zW%SExp*Kq=k)mi=&PC?R`im`#bZzIJs8CfMya@JKv*PgwnG@aeDmdE+9DE8j9!Gg! z?#^lV?707*visPsV%xTLebagsCFEV=CNOitlmK~0DLa7&X@b1t>CgW~Uz~L_H?a!^ zkj9AU(QPxe)z*S^VI$FWmwgLMgDZ)5vaQ+PP=6LU3-NtF(@w(@Sn4xt2HCi-=k&SO zNBrlqk>C-j=T8c}Z+}3ru6rg+RWw43N_`vl2)%e#Z&}mqPPHi?Yx85*+K0{wpZiUp zI+vv5$NpUP4ZPs7o?#oXugPN1Qd3TZ@3!Bc`bJ+j`c&M()7Sc!9lqFowCU$be_u?i za@3tW{k~lrs-cUP!bD)L^fNibrsl`o^>?+tvIclPUu*fGzt&bn3&V&Ug4^(#yfM|u zP#Z>dlVAP2Sepy=2QEsJe``c)MUf}!wcIshgXzG+-R) z7jlu__l7vqcCB{B(9E?wa;wSC;PcRFW{p*3hD1!Y%sOSCii^=JW&!r^o~u5Yub1>7 z8|R{)-q&v^5&x1@WZ^-(_*^Q-V;4O1uZ(u9PhJi0QSS%F{_x6}WdJ%v9B2@`X%;$-(`SI|gS{Zl)ZOyc9xtA8~v zdX3Gp+;~RZ{i&zf>ziGzXIu4wKI2h|F+xINoqNpzIc?RnIIIKj%(kCdf+}^3b?rA! zUXhp{FaEN#L0*YA{penG5$sQG>Z^5UCBmJ3I`9f3pv9It6KV#}w1(nbqA5I3R;#M> zd$sITdM6+cbhY-3=AY*5z82JeCbQ>TaTpvc!d#Hp-c!z^C7yzF_b!Hu4; zN-}PQsK=*TxT+29d*cPov(Pi)$1G2hbglk55yoyW`a>o{w9T7$zvEV@4E1+A7#~dR zl=Vn@*dLu$@)0-u)=pSyJR+?--OX~w{IoAuYtIPD++WS!*RGtab(|Ym z?AM-1`@$HO8WT)+p%JqeRW)FHvz+1F7&y+`Q&*|g!t(e&jc&UqVR7*Z7rXMNZ`Iva zhlYK-*p+Z;HLtwUS)cfqZ~7lT1jFSu?A6L(ZS8lxclxp#L>tul^NtESQy*D1_kI7e zoS?p6=`N8J29d+&Yu5C8a}WYhtreP z_K|2f^uoNU8t8lf^Qw*3nec8TwRd@2B$`^{_+h8Ck5(;rsrDVz5Q5k$1{K48PS5Ifnma2Z`#C|4)6UX1tST9eJXdnKNDYvA?4N z<=A^{X4Qt^cVZQ6QuZtF9MeiIBodQ0flKp&dG(ZDO_9b55<#FIyKq`qXD41~^jd_1BD(Z+7N?El@V;xB4qagWqB7 zqDU{N-}Ow?Lmf#-u|4nkB&0o0zu8&*-`zfA`5L`7(HiEih|s7dyxDhr4{Qw>j{Bhj zM*FfgF}qMZeY8`o!Af(z)zA6?uf=l2j-Kg>Z0cb>+r_UMi6=PaWQ&$vqZRm?8UNlj zgJJ4aI5XneV{S?Q_5MOR&9}LvPibGaD!)ZPy~RWvUZ4Kydn?5khF%PLCep{JwkJk4 zvRD1&6hT+@*iIQSR(hF*;$PmRHrW!!Y|ecziuj^G#`fQRyN%(r zJFNNFe#W6+ZqDp2BOq@@?qJqqw~*-~p4zZ`23wm9Af-f&jg1$FPirMup3q>U@jgo9 z^6nruw&%h~tQo7)JUE%_eFsZ>R*RnQ)LWyOseKa36Ujtum4OslAJW+8hyVE(o?^t% zLtZC2KVM(0wVv_5yy5yJN%J*b2#YyRlkoe_`ibUsik;5;T5vZTPP7=?U41$yakrj9 z+0Co*>Fd}F57RU0LQi$_RIoB{bfugDHkTP0CrW?E354gelX)NN{-5-BXg8?cZO{FZ z-1^)VEKGH`@yN!zv%d5s8URwLHvC;zdSAI3SiigDwiUdom-H*-36t-l(W=QUUSmJm zSJrX(Sx!Cgok!{}SovMgWbI+*Sr2F0$xwybiavCQ^Yze`{{PY+Qjg{#^}LAysAuD?S*{o-z+Bkh+x1B$vlt!OD7IyWK23L6Wswn_zSn(jN7ySf z{rpG&Z6%K}D#>A|n-;@mdd%i=0%)Q!=QwqqP3t;sWQtnd z+W4=|Ag|dOgP)I$={=O<>g=;W`831xu~+R>xc+%}kjxNhx>`g4pT<7hZG2|&XaD|@ zH|Cs#6MZz>;|z(|@Z5g&FI$GE^sy20=f&#q%C_r`b$FU)4)Q^siOdYUQ2#&F8~Fet zM`D`fERGizi?=X|QaC&6gz*uyH~MLh(3zwk>jdftyTrvMX}$A@1<4nJ_Bs>vu@gob z)3Uq~p75A6+H_u@7YbmHzKpvr=7?ap`(V4LYt7C=8P@x^oi_` zGxeuuq_^|@yr=(Hc6-aV`+iK{jh*H9PtBSB!5mh*LiKrjdhBxgbZA^$7IP>%O;m_ooQpT=gR_n!;g0cC)`lJJ^qVorDsCT~cDwcZ(C=^!(#=RQ zkQqST$;wgHXoB+Jjg?hpB-02xG1orQ% z`oLF)l+l#<#~Y2Dmv+{_q&+<=e*@Q(9GR&TT!quID?o;;l@}{pBCNN)j$i^4YuM-}l|i#t!rPTzeu_7;PfbUuxx`d*l#d zAi!W>vO$Qj}fo>Lr;M8L9xXH;OU;UT|cfG!DX#rZtnIe zY-p+8I`#a0?A4#s2vq)??Mis_$Hr+TMZ8Ch3Q{F*Cq~FC_b+4#9*Q4pov`@td-`Ax zznGo_9aV20^Hv<)DSp$Ot<@WBc5nOfUL_o0T1FiHpjNzReZBr;;)oPOsiB;rd?K)X zaTtlHhZyxnk$C>MtL&?RAd50WROnK6297Z; z?sri|s2gATYxjyj*`YYis&ZnOiD2Ls|DJk}%_4HSQ=jeC)t(Lgg$}yUyzNd;!E}fB z;5gXHa8mglu<qsGgeiE#AWvS! z#m7E(YJS!;RTfG5g+_scE-E8_OPY+j!p_o&HOp>Up4yU=^tE$3)3`)||LyAQe#SPx z?;3GMcah3sK4M8^v(bI+3B$t?57j#v7gpeRzhBpPy3I;Jv%H^)Z3ju%tG}!De6j1G z88~zz`Y?0*2zo%zvQJ12Z@ub#ke$HD<U5|Hy?|I$N>@l(z z(+3u{))ht(+5b-COTO zctm`}8%AE&=YBftT3N=>p09liVbU{*JQR<16*G0h&4B0NN&9)bR!MHz%R^6(JVkNf zyGAZ2OAOQrXT?AbN!5k=sV8a{i@va(mYYS-5ch|LeQJgld+y`Zql2z-_TU=0J|x$x zuAzBEl`ukB9T-|;ULdtj2Z^}V{vnmdyO{TSmYDBabN{h1dsDY}RpN}O-;V`}Au;?Z zar5nFR6JZnQcK=CN1_}~y^CLZOjljFtuy}8J zF00@Bo7Z~|3>drISv1bMT3M-QYu&B2vFB%d0!s?UD&I&>;C$D-Xtu-|`B-Po@Hj90 z0Qet!(Wv}`TZT%N_gJjS3 z$xh$l53u0jk@E8FbIes}nzK)5(%Gv$34$yeYoXDIwqrlb4B<=AN#^Qf{h?WCeYt$! zr{145GizPv9jITspKn4={jQ~V{b8qLvMhG>eLsI`>>|H^eCogYgdNXXgl4gotm5!P zuuS*?>~PkOoHn+btN9wD62s>F+2^o>ferE>S=4N6^2hqK3-#QyL{-?pxOtv8tZwhN z99|;k3>(+Vum(kG*^Z zgO!epBA?>l*3SC?WfbH3v0T^;&|$dpztdd9n?!0C>pM)|6<=$e9V$A&hJ_vs#KV}` z!k@b0|LZFcHjP;@@31pSES}B#o@UPE+IZ`dNPr!Ljc(6ix}VgZ9m1l*Wn*z4*B_p| zc(VAU*|68NgSTmS;5pvc;^%2hq`=R5Zya=j_j^HK#a84L$T%czSG(S~e4)jD#!8v3 zHCP3SDqcA>H2c|^r5l{bovyRy*mvwMk;~1-xz<>;@}*Dg*3EiH2k_{{Iv%rUUQBjPrGzI&x9|n5!U=+qKBs7f**uern}m z^AB-s|KI;`X#eN``JeyGO#c7l*&g&nx((V$TEFQJ%?7U(Z=hYp0K_C|4sm9ChmCCJ z*6WQ-Y1Xw&x7FqeFO1hV+xXbDziJ62238$IV+SLpkjo(6fmtrtdupDT|F$|$xilFdIM?Urg|vA%8A6OrD3 zn|ouDw|H0UdM}o4WyQFyJMZRIEwgB~JTuJ!*~Hd3>pt93`bl2GW=|$<#qn8_{5UcP zXTg&%>jPfDh=`cCNaSpPZ~INY$gkQF=f^M64$XPhEU0Ecv$Ie{Yk1A-M~FS(SU@Rw zd)Trf_%i%)W!Rc#W9(E&2J{N%^SVC5bdK6Nyh0Z9QmZNcM$$og*ov|Nz5C*%`Cvha z%v%?FdU&Fk|2#<9HzFJCBwXIJK7+^ckbks8?0R^Wy!HEL8xMrN<;=t7;Qiiz;B9VX zpXv#izR)#RrSnSTve`tT$&jl)WoOG9fnH&RjELV~(@K8mnfI;Tef`2E!3M%qq2F%n zEglEW2;UaHWSy}I7HbhVgdfG)82*uJ4{ujOi9sRqjaV@>$8Yfd8g#4wo z?mg)<3^11TS>GHsmw2N%nqqtBpdLXc#NIG~MR+ibaX0W;aXw`X!S2Z`*&R52 zWVWAPbuC#a%lPm5V^`SiBl}N`fnUeV{NAUe&5y2-Un<9iKP2nI2r<N^%<^|15 z9?|LI>lb~7IsCex<$HQ#1x(OM78hQvrNQPSVV7G=BgMVo<+1Gf>#_z&<=^#$T_gr> zTw)1&GBot3z9VCXR&=hM4D8|iu6ti^*;7CIOr#8I?>vya--Uj*!)~To5Xq1y z!G_0a$6wy+8`+@H7giIVtGqE@&q7z-bv^$Y@{Y^KqI_!2@B0q+{ck;i6WeDp+TD+T zAkTP$;1;jCi(fKZ??lf@Bvu0*v0dNpJ4vDj=RJXBz)1Ptzv@%if3yhsefpo- zWa(jq@V{{2StR&))*D{3(eHE3uk0+o$D3AfyWg;@_zs`zHJ{jOs5FAz3roTXz@Zhp zo~uuo_dK}43&Q(Z>k8aH`cMCNnmIcHZe}-%m6O>Jaq*}RwX)IA!wOpMil?6Wqi5c9 z6*;@!{=-m$Tw84{R#6h3s#*gB&m!-Ro12s76)LmW$VZ%BE8cfb%YUnNoOx_7T;IK} zhxzK`P9tLF9kyC`^^CTb)g+RkY7KrK$wK#fM>Jg9Ur5VUe{p(5#i26R2lHPK#iuYD z;HB1yWMctfD_*wOuDg;q4tr&5zwTS!ElWlWWH2GDvAhK6l{bI0(Coi)0F_g{bQkF#V=DsOs3s zdd+U#t$i!PtCq!OcSDa@pmOP1`1JC-P8b|;rBA$3hE20li>!I*06U&86Axt%k-Iak z%ZIL+tv$#vuLcUs7PYcufpcrDi}h@$PkC`zUl3$D@@%w|ep1l@Hpf@nsU4b*t)$9; zOo(5N7QUp1quLQ02ujOp-RlmkM_ba`Gqq#CzN!U`x8vHh&)F*Q$Ghf@@1gJN%c;nL zJ!_U_gu7Qp3#=D^R(#GH+1YGOSrmAUyjgQZi(=*T3q<+MAPf7jmhC|iKHBeFJ>v)P zqv&<@_i*xXde|_m|L^_5RsX{q8Zow;`p*hBdNDN2nIB0?nJc_}=KnG6~U19OsC82kv;YS`){V-VC1AZtM#CBq_&xzWv9bRvB2R_$S4!$4@kaaw4QMi&m;ds!)*oo}mk=eA+h#j4YtDig+;=6`1sD9{8u?DqJCSoto5^Ia=riMq4Cy?kN1LC%Ln5dlfg?}Gg#Ad z)oyD^9NR4YY7G3`&-Gfyn~26*bLZ2gor;`a!U2TL$PcP!Bv*1-95yz4rJlBlLA7c;8nS#zZ5vrV6 z>zQU1t}CzD6?7Vg3>*&b2Xz-`vZ79+`lUG7?ERDEhPcK1dM4uKJb!7VzFDgWbFH6R ztLiwgHg>yH-7Sdpa-T!(FS_rn&*cQ2cGph*<1ud6GtoDDfVOouvB-ZlcR!oe^X6}% zr?S#y)y{U+N!P+wMimh8RGeLB3a=LXp1nKQeV(w|m2fq=8hjcykLoW_Eh|f>$=T&Q z8=+k*(;DJug%_Jkn2QQz*!ZG9BDC<9k-5%u!YCDk5xIk?SkIllhp+!?7M|+O*J=EZ z{eRVAC)+G$_-~K=DX^ z2)eUoPxybPzBp|={fuQk*a9>PS!*BP_oS_9E@=k#i7|=+*zIO-u|FsE^lQDiYXxMr zSbto1IV`x+P?wioMas?hFB?P5Rz<}TV_WJe)@^tr*!lbme%V3&g2>5Y6*t~%?jfmg z0!$U!R%KTVc0S}<{W1^wE{9kihEp`+5U>(sruj(%9-MeTU&W3T9mGm7v!nz5f@i|} zRT6;(Vc*~&$RLu`S9G>-H225W4lfd+2}Infqk%*?s(9bElpT51!?2 zr(#>Z>Sxj#8qJ22X>VT*?|!~J#g_R5DgeQPSTFot+85hEjv#bot*2XYC)mmT*j1S9 zIBZMJ+U+!J)=3;u1c4re>#1PF{)8ZtT(Wv00(>5LA0`DRk|>ortm20sd$xFiSo&P; z;aK^WPlJsDSvlwq`*EYEuTL{$*R0h8ap8~MgQKWc;$HocTP#yVPsAteW|CE`3Z5ai zg~WsqunyVg^e+4Y&SA&NH#qE%9ZNd>?mj2rs1_dkdAaLFkyys`uNdBLqc?WQ6x58A zhX>F@7&>g`r|y;8z~WSINnZM5-~H?kYlm9|Kht+M$86U_F2^Z^y0QsGK!=UQLnfoJ z^HmsteAq|g{N$ZlYBHPH3)_8*o%cEUi-$wIW21}G%IAP_m`_$84*@#Bu44H)&#Wyh zM7w{b&#?v|Vp^kbVfZ*(ViGW9=o;<|%o_g8KUnH}_Ke5^ECrK%yFT%O^ih-&rX$*a zRsTs8_y-9Q%3BSaT@>)uB`Q0%k5g*o#S&+D1r9(xK5 z3)U$!R9>f%u)ahvu!+naeg~{m>+CU_2PP$sa$FC@h21afd#iCm6ltVStp_>ml*l;2 z7GT$!A#q-(koFe0!dIq8V{`Lo)Oqs`^k* zH|nRT7j_Z^pQf=!FcBvo%k8dFl1Q`+Josxr(++$r=q+YAOaXeqrafqEJQ8El2K#WK zKO{D5%dEi9>_!&E(sY`xY6&tcrx}ZaFYI(K_E)T&<)N;!n8{`>;VI}FyB`hjw6SKb<&m26?~b;q%H{wYoD8)yPkqUw^y5Rb-T%_gi=7<`61XI zbPFA`-{-76YfF35=s2hN2e?w_jbrE;ds!?-wYJ&Xy{>Ny(;BJw@N$}Eu_>&uug%rq zI}9cRpA9dCl#`fMMG(PMw(O)@Z7;USqh0|_kcluNXH&IdXcJ+ltt01b* z8*Gc-GaePf%^8itcKO*gVo09qtjj&ZU0dpBJ|N3M9gC~3Gv|B%*~54X#tb(wa#hD^ zdllpKgpL&XoS*Jv>q1)hyKb|wY}8LE&wS(44_qQ16a-n744w>DBH4J?)vOzt!Lxn3 z)m=O^exyuizOeWc6c{gQw!c67bhR}SJ^0o0ptbx6`du6qdtQ`i(75#;U*MPDnEx4-ZKMYPlAiK(>j! z`KuW{X!b-EPP+EG9{E?Z$03#d^PCbec!4#l(zTv%rnWE+=piRvEoJ%z`&t|bpUr&9?6x;=yKdO9B2bt84hP<8 zcKA53Nmc?RfECPYb5_Y`x=@^%4koQcLYy%cEIVGzdA^>Vbq8MAPA%B8Y;oQ@oy6i_ z?tA{Cco@&oZlwWuHC7qY_^~4E*7=D_K_9e=sXN z#EpKodrs;Z|6HVjXC%JA(u|2!SbcUjYm0Wb=P)|)*w}k?Du38~+FiUAEBmq$@cwzJ zgJZ=~GY)Y*NCNADe|+6jpf>F3xvquU^TDxBdBU{KWxE|m#OQdhB+B5>itjD=^G=!! zuaqx=TPAOo+~o7I>v-E@^Xx#Lmy;%H_Os7eojzd~-PIq}$L)V?TlR-o9Ir!;s0bDo z2KTC!(%YHx3PlA0*aqtnNZ_GJ4WYfLPS-OVb7sM$}RMFPKW z)NpzcfA%RE%s(c7h7V{aS;O9oU{CVSXS%~X<>lg&7rZA?GduCRy+VILB;ePiJH*ax zJNp~`j7vGb8xcKnL=^{7adMeVv6e6a8g?);oH!ABdc!qPKv6MqgprAc&+j|Mr5U$h39m$d;3P zf@>t3LKFkT>{GqLn87Wa=`W1fyGS0|1$3#;wJ2Lt97*hN@Y4R9DZ`g%waXjA9m8jn zA4p!#_iStkRuFy*egc$`=VKr7#$|hnm(a0f@$Y_yc>LWguoL-C$9;kws*3DVztLPO zZQ_QWH!pV0Z1c%RVeip;@(A_GZo$5UO_BGk%*|=fi`T%G=yuXbRFwCvipW{l%+;D~ zdu%^#KI4nwqH z2Dn;$C|X`5a=Y=!cam!^2KS>Ut##$U%@X^-dO;2E+8K1F^$`oEL!mJ6Q(5bt&Z-d& z$E2nQ#6_G~o)e2mMG&Xxq!|*4l(8go#+xL0Sc=XH7CDKpCf!x7u|MH^qRQmwL2a@t zAbmXSZq3tg*C?;Fs0k5~OsinOy8sHao4gRDbjy#x5du-xGM+7(ZfU zFlBf!pONRlg0ZH@&6(%%^~5Nku~2Yz+1)=^yRyX}x@x^URR<7bx~>iU3~T+etHjh< zX(Fcdg-i~+5bIGkH~C?utuMy2m<(3`d}}`N12uZstJe8LpRzTuIG^_~tq!Ab&R6Oq zo%gJBFzNu&I3VblkSj=sh!ZQo z1Sd~0hiK`QzG0W}nLpMqHXT_8-66YF#FW88RxCEZbCb04yLMoQ>@#P8N5OLQId8^_ zv8w6CgZ|9*9k$_W-(l%(^!r(3BTeo7yZU6Gz@vCKbIl459kNTiz`T6!Y~sFqAhdtdl zJ62g_LvF=&pRr9aoajn=kTuF`Pz``3WRExpFh0Jl6M(g#XMAXJ6z$K~BNnate5%%| zxsNBKZi*Oz*`-ll>JVYTez3qhkMk4BAX6;LL=kEK?46(LZ<)kuH z493U8cS6atr~aoupxMrk=Z;-U+VH{no8o)o1fnWDzukI&-2dv{L7dDw)+59YLQCI4 zZpd|2Y2d@y-ZUSS7C)BF1|?Jh_kYK;l?g-l;qEOoCTNSu?dSfmbkC>RW`)U!;s1#l z$mW$v%Klw#q@)IR56=`zp7zg>~eBk2Al#nZFL~4kUf@W0g6n=`cOqQEH zKB%W$cP&Je$H+hCRo(ahh`POP?#UzPO~w>!3x9e zzahE?chd@qKxXm&*ZXaw>*(Y8cAve*F0r4SfB8D9SgQKMTZKPCqM@XsjYcmYZL7af zB(^ZdC$xsq5_1>(aB5lSnEKu~U8bppe02GHrs_VWno8@uTK}^vA%1aHs;wMif)P za(dZcJB9u^uD$g}LNg9|LdrpNAuo&dgKhXd*~$i@Ys4sxil2_T2_c~=oi(3g#F`b> z=$qz}@9b2}^qXBKKM@;4R^dTUzy}!8ON@HhZS(a3RteXA)7^Fn{QbI5$WAMN*ofKP zuzc$!;&|SltA1uFv6w%!Q*iFAhRg;iwAD7p-Uo*X%X69UY5Y|dh{*lu)7MsVjGb+x z_lLDECO%>YuOM5MK)#1w&wSn~}Rl|Gs;%c;0k1*)OtAi;_0@D5HLbn7f?= zAt0U2CK-V_xYBb!^-S3yFnbuT@$*bj$Id?5Y7OlS zZ|#FM!izA}G3nOpJ#UcDa@M@TnxN9S%6DDGA2LJqEsNo*Z^Y}!1G=1EW21cRf3X^N zigV_qSPd+0=nFjQvERv2I?No}(JU?d48t3L@3AZYYHyCW1hCOrLn2Slnt!b7znaw- z{X94&Bg6l`eje41dQng=m4xw{v5I(xymr;gV9R%n7@o)T!hpref>Mjch^gbt$;Px7 zq49R3{Q@yw>QgaeQE+pI|03`1pgUM+=I8G|6&D+J#d5!iC9kw%q!s)Yssn3bO^K*G z85l8`8_qfDx!4sXuSk=+B6_I4BxXLj&(?k4UFH!A{=3;1Qx>n0!vIH?%?1y_uVCx3 zPtF=8);uk+)pJ=_>|XD>a>k&K_K{O9!n)sGG#{(m`4jn`ZwAyBeB0BsPkz9m+)LJx z8e+w;TkI&_9Db-c9{I%&BGuWDPU&oOBO>cOJoN3G?)I(_ksJ20t1#tgX?heliRB@3 zrG^X*f8U(Z0OF3LvI-RQVEUdGSf1wF*(8s71+%qgM#%x=b?UW=o9Enm1}|7G7;#`I zpNzzI^6n5Ij8FTyy}C(b2g!AyvOstpLk|Km-ugUH$Wo^5s)`WDw&bd?@a z1;$y2RPvZrQs=v=AtxqBBhW*g5)42{0KCIq`aGQw5|te` z=78m(ZVS)opeNgjq%;2-`^DbE-<4G%I>=&^X>vY2pZ`tIkgO~KJIXF3W#P`)Tl`%8 zRiDO5Q)fUeH6zF6lgnYukWRTWyN&UvE0(6UpzT!QIjBu63Hwq+8t3F)d+1kp?$w*i zW{ZAgA!9I_zl~;-w!paHd#O?_j}NM7ud&G3XR5!MEoY6_Z*E!JQ0Id_|I+N7*MeLS zJaL)?HdXDk;e)hoj+RAJ+=@1gqI;z!in;IPvm_MXX^RR(rfd zPOW>kGPVpL!Y_O$G!l3UP#M+u5>G@k)jcaJpFFG(P?)J5@9iCWZYXXOtAZZ0^K0 z#j>3_emCg?pXH;;jy$dv_$0fYO>#f|O#ji8xAg@>iewYhGT#T&9+ii#*H8%2H$I@q zKi`qvhRGv_@^d=T?0L~Fr(b@kd1p22B^!_KI_h7j00cq|(Z2V7!_E4MXTzfy+#`E? zZ#t(e28=Ms!d&-|oDkNnu4OCI5wp`iqgP$F)x#AH) zl=r%4t|z`~EbMJa;ZygE&9Np${k4J3EC%F6L!ih@MV&-jyexYe?s z`8*i>VzJ^-tQ70->|vY3rmm+Gz>oagtg)itV0d6GBj^~u9_waAx9n#&Aqjv(v)j)Y zkZc!m$-Vxp)mzyRX7aFpvb#xF{0*7EVo1+x#d{iLzsf(C0k5vo$7X}atzMS+I=<(4 z8LdO6S5BtrjeHup`|2h=^jF1S6*~C1 zujs?b%3~tfVh?| zuQHnY^DGO!IPEt*l@WpsBr}2KFMCa<_lxFIrr7s-3vpNRhpi|N8M=PhZ_qkXG7?1X zeU%hMqP7|f58`X>K!jBrPzO&Q@o}SN1+hPz`>XB{vtDY>#V?l|C3_xf!VVO3#p-oR z9_kI&P?q zrqPN=(4lG^-*mrR7(Op6kmsNto(vRcQf!`QE$&X6;{+Ltw)s5H2bm$y*tuQmPPq|u zxH(Nrf;MeuvRs#Dm&)jpPq@ef@jInQd<)O1{1-t+Us|3 zn6Q@6gN52S?OAe-?QTAZ4C$Hvl>>0y{|i&QBA&1ocNr_IPK^taN&LbJ;kc2QkkBD- zkEVIzF=I9EPb1%+?s?WXRs!Zi_U=r3MV&Bq=xqH{iDtFmoeeQEUX8dX%h{~ZCWn1; z-;RVELjthDL=nDq4Oy(dgUrccwUemh-H#%`@YPWRf&WGJUo|fHw)d0c8hV!zq>Q&E zQ*No5<5TVSL@YJFt6GZQQ(>Rs&aF2pu?rC;y9jcPIVBTYCZX(Xu@!MT%wkLjxy%QB zDkqiv!QJLX;seRswk{AA*aT0Wjpf}9PRC&Po2RvAj2whYL;3dWFMCczR=q}S1&GgX zyMQ%dhl#o1ceBtiG%(Ush`H-(F`m<&JmL;yj6K70VkcoDI~5QdNSNARGQU4J7k05{ z@sCMI*a`bw4N3n)obKzHea0r2jqUyQ+pUS}&7ZoGr3+~rYw56W_*5()S`YKuBM?A2E&x>L#`5}zRVjgNPQFCgzqJcy_J zd>S)+M|4&6*#1&epI^JzQy1zPyiNQb;~ipPO~g5#Y7fiCduUkaTeU5+hIa$YneR6U z`J3*7u<-3%yfw=VV&QUJu`qEtA-yyW z%#+su^YB)Or~0wpn6Sd-I_Rspq%)Sf1|y0sPTSBDB;~iptp)~mG^PQ|iU&!9VVbMg zYHsiQbntUo&kOy|mw)UJo5EYeM7~6^opgvD<`#>DeB5omNOgEK{{n+V+zb-ttwPQW z7A3vNTivZK*0<<8q*7%XSQMTBZv{%V)9qKp4uxAeY_`lr?(KoR>%gPJEqr6 z?OA0x25dpRG{^?|_1Lwd32N1{H>|hHb?m~CTOw;oRywA|ey!b2vuDJ-H9FE8453nk z4UMr1U&7U5fm?lc1r9QlQVa}^z$TRqPMeALjSMhnOq^WB1LtP3&&iRW^_gu53&VhU zS=(YpueyG_G06H8X@n}-gR3+X^=z+e z4QEd#8~JFb&-d5!S=u~p{66-JJnq+1UtvDtAl~SM_l{Epv0xwLDq&rHY^_e4H*r2* zI4l^Ggr8uIcnH>EtNXs!&S}^2>EwCAX<=nXhtC4@l3Ne!U#;)v=e#>`{`supN3Xj| z-9Fg7n)h-H$qRdv-r`weH^DbxoU$F}`dPo7TG#@ni2e0;T0?jX>>XFcJ1({x5vI9Z zeDa!IWVd_T$o>`Yz(f*FV|S?>WbeojhkA{jWYxqGE~e{P2UvjcebS8_#s(8vhCMpv zkWZ)ZSw9)gyQz=zQ&hcSDU5nmV)uAED!Sl(h%&&j$xNAt>^4jur;M+_*T7g51%2H$ zMsreMc!v-+UW3XwyFH2KmbE~Bi&UuX@z52jW_U{tOjkw_`#~!_YE~hZjJOlF=dkSm z@NnmwPu3eY1V)fmptJ2KJBS3q@WMiZi`Y9(H8dQWfH|(}!;tT=e%=a}H4frz{b7Cc z!C6^L^^m15Cd(7!vGO+`YKesdffV=Rg|Z7&XM^U$16hQ8A?H!#fkwwj;AP`&^P;gH zMcLTQa5a?O zEy74EEY_Cj8jdksLwpH>z}hAANIYJG)rZBgetCW55os<0rRL=GMr3l=U5fYm79O#KFZTdpS$jmPl+kia-=VuGER=kOG zvtDD&VSC{Oo;N;LqPRCZ@v)ZK1mhhKP9s*tk4Af1%P<4XJN7Bh`Ng!}7|%HEr_Hzi zs++{#kYj?m)rs`>)tAjYWW*W9ypSy?-osOO=JtCce$_)G zVBuJSxAjcCK-}Pch#qY<}?cWem_u z_89wDUgdrNL!st-3OOQ9FT3xbMnJ!_{$KZ0S(ljLtRS2pu|atNd>r`;vN}XZSOXV5 z342fNUFer8lp>Khm?GvRD-IB8L~p|xA%SAbG7{mlavIp%cvN&fAK*pn1UG?J%6DW1 zVVUq~ox_=)#lwKLt<(#g3rynk?i5p@@pulH8u^!S&b_B+)h=>#ZdzxE#=coiKh9KVoQ-RO6(+r5C(u=gF ziXde5_wK}R=BvUT;2|X8M!Q&@1MwUd5h)M7<25d|Kg1mPdf$2i%z%UxwG!XdS5aXn zi{B4z_C^L#OJ1}$zd`C)AH41T{`IC>SwuVaccyl~^fa>BjELYu!|)eAx6cpifr?RZ zL%bka2Y55MvImW5y}Mb=bcOs67%GHT1rYifA3!DoW}5TM&ZSv#%IPb--v4bqTba1n zW~_RwDBcc9Ars}ar^tolzd)jH`k8eh8iolC5rT8ETwv|nJs&0jdERVopdIA-Tyrbh zFJl36J-A}BzwJVrL!65)$21em!=_dvPh`n%TkR_7G9L>TsWK#7ggps=mUn~WkBh~A zW4GB^aurw{{59-;Y)FXo$Ww-uV@bedctd*lFzqdfl3XlOn;%YwVLCtz`3G2~I0Cea zQ;H=aLsSK z3(k)p{kmuTQ*Y>WSBPHeC$!+HPoCPp>X}`&MoyrtBT__dAMgCbw!7>ZPz7)3b7HXy zMVQD19sx8+4h@#LmB5F>TflMJ#SEyWzSqvDf5`&}q<1+Ex^RmVhH0I~z`B z8$240!B*gNs)t67Ue&H021R2BvyKLWa?~?1+(}1lCN}p`{e%%=lCb1xB)f@!4_iLy z$<|Wk4%oBn@p0`ec$cx@^WxCSfR~ZSPNhNY&FAez{_kaN;^y&aNSn*%k_BJ~!FZOt z)0$y+!RzJ3%8-U$d5;ANeOr5UtM{y}G+G)-^p1bW>J>#>=?^Ejp zvFvxdmy{&qp+>S@_PY+QNA9Wi0P|vhVWnXF(nx$~ktZ_+RZxG$49hpdog5Vj)s|W8 z`|IvgpGNe0SjYTh{+lSScnH?ZW}{J8hfIZUW5BG`_q)c8JtJmu(H&F*Z71Pn_JUZZ+RhTZ1AW4(6cxp za5{3DH6#Ma4~2m5^<o7 zS~Hdb9Wqn9Gy{K#Y=o|f)9lwvweWCqNYCGW$Krr{%=e9T8NQ~B7@PvA?RuZhHp_Os z=%*RMvw*#kAut>^hh4^-=QYgMXTGPg8~s!5@&0AI(QJ?d*qraqn34tdWOqxG+969WskjK$27_lBFrej}lcR}29Eg6Hhi!w+xjJzq*5I>r@y zZ?)@rG>=`&GG<}2DM?d(-|c^X8{P?X^<}PSJ=IH@XCg_M zTP!#zG+$M#m;FB86Gtz@EuiuIClWjm^fA}{lw)&~AC)BWsnY-W4-tbRaO_zLd93^PWa z4m<98+98;w&zo1$nBDuXYv~{}iVK9p2GzjoQO$(6K+_&JJ1lwJAu}O67rM^NUFjKW z;_|9^_39>z!q}68%Zb+pQM4*zH2hhZGfP*kiN(gij$m1A)?0C{gPvel;tP;}m>lK{ zBFefuYK%L5a$76U`(5rNYtNpNsbXhh5Mv6cO$75}1>v*vT=*{d%}}$`p7&{*C8#4Q z2e&iNI3`Qo#lD2Rl3qgs*+cLGhz(pvoS0WACb&?qcbhr8Z=j}5*5{sm+?6my@oZe9 z^}ZJ+7Qo7vfugG_}E4(>O9w<7ky@KWKCcD z;gaF-@sOd}58E3~`xx&N5A<+8<<$A8XG#n@7!^*?=QLRbkrjj^pNmjE1YY z6Z?u)Y7fZGhC$0VIGyIJz(Nh8HP*(0BCce67ojlbb1Sa^ADa3ceF2k<-Y&hDqVTVP>+PNN`*v-Y2V$ z<|7M!b^T&b!On+V+WpuAm-XzTUXy`X=C#!f#$kG2~L91b#!cV?%sMsYpi_IyV%{j+)^ z{vyi`3k`<(P_K{b%gfqhW%3I|dl$Qw_YVhO?Mm{DuPE{W;kB>iDMN`wN9Ci7p*e3d z-Q+EbxQHBKPKb$lAm+bsda`KWH>!%`AY+)&xUYOqRaJ zP$fw*5}^m%^@V;B?}3o4G`53!#q*TmL&`(JNOQX1PGD`3EoxrCrR_SI0`PeVoiV}p z#rowbW8$&LwJN5LtxLP|2_RW8EOk>v=izLd^^845(yrHITqF5{SRjAb|7ZORz1--p zI&_O&?Y$_fTCMdz&r^jI5fO+BjqsyY-sx&y7_^)8fg>9QOp}%Qt^c8^R*GaABeYks zs^=Sx)r5br_crSt2Eq5f=U0fpK}^K?2gi!ufm`m@k~%A_tMmFmn?Scjl-bX`I&4>! zg82-j?Rvdsi>dM8d;b1GeITWV%`|G1LNMhvlV@1XtXR2e{CH^jS?jydAE+S92PTDK z0{6g9{@rglrO+Tgi`aoZ2Ep}KAU4yR#^F60EJbq+2VnWT?pr@$d@R*Jc?tY68BZf~ zRE&#u`s2gXd>E8+jL8=$zUU|^1x5M0r@e3N>^CcdNsrgzOq|vdwhes3`YcR$!zmz3 zI03kgkQ6wSjBoOlHA2RSIkV-(oY@g(Q)No=CNhl=BDzlIia)cdz3~F(F89tmaM>d? zIQ9s}G|5Keob^5YfuAa}qy7g(omI5jlQ0^bQC_DCDWVi?YkGsMhGRh>=!}!@7&$%g zh_lA2ddOovhWbG4_xoQYoQ;8VhT))g^Ho3b8D6vk=FH5_HVdL3a!co@IfA0m*(xfs z&EU5%Tbw8Mg=`2Jn~+TzRN{#vmvo#XSs*IZdhQ>N11!H_Er}WA9%2wWSj<`ATL1#15^L8D|sUjN_i{L`7f=y z-DJ1XN_=-Y#-iSka313LSM>%~qTV^1vfb?Kqee2K5$ZPZ+j$o55#J)mjqgQ$fPt}O zMBI38awoixnnq^TvNlyd!V$Rd3j7qhie)QizgzF&{Ft69t6<8AVeU4!2)e-;V)=`M+XLhYYa9;GqJ^{IPV)(Qeyk~s=KXs2t>Yt8BTI&_id{{+VyHn;SW`SxSeVrk3xGg;tKTe75gphrze$9c zbdl=?*MN7^=q$6jK2bZ?JH1p+V*!XX@W7!lW93vqkhyoyjcVRDQ} zNcG4_ah8M#nS35R@5TPdwicCPO=?B907QGPw$+h*)n|UZxbn*Kk z0W^RJh&?7E;qKX<4n2T;?sN@{0`3W~W>?$Y>`@s$Pqn7%fLJSE0Iq4)$bHEF&pyEt z!y6`bL_2Yihjx@_kWy~3AFXrwPh@ObNVtBG9RVtCg#jceJ{>%(a+ zHd_Y~KAi2xTA=5}a>ci3RoP5x1c>06;fuZ<2<*&%_OiZ;bIOyFg@Jd2MLje(eLuW+ za*q!!&l@9%ukFlWGtsId^(W2IX5YvpTkCfbTz(u&3wsMw{G{)(IgE)88~G*B7?pV7 zBoJhn5y^R3O9OGX>+l3HdtsOmS-D&E6%6;Z7DV6S+3=Tx*6ykAv8Y|Asv}<#swod~ zrB9xE&Pp@1(NCgJtQb*pJ_7CmnFog^F|aCFj&{(q){$=Bs2^-7xCMNbCxNTYH(u_q z>XD*FPqmFvW^X{%uyjOP#k|CfRp%1rHG0+@%N`qE4xLyB&mZ>08gN>$N=ZzojGs?x zm{HL!F;k3DF-Daw*#)$+-NQq~{}96!`xJrYYd9_5f*_WIJFW6CWCv4+Jmb~!p!REt zKLK0a?heSOxW4-DYL$u<;`+;ry{)D5t`SGy?Ftq#4-KDF4M#DStG>5?c?2S+WUaNk ztrdPD{Kii5rj6^`d(r4cy)k%TPEh>&o=kJmqpIeJdtfEdT6oX$BzBrf9{fY?TZz@i z$8zLj-}E%Qj9!CAU_?V-oONj7MW3>=M40VqEFC%IvwgzO6Fq@SkqYdQe;TWGA~)zL z(Gtk+Nq3WVm-Y0pw%ASl1(g~2+`k+1ao_TM*|b=Ne?`VMD-5M6y|>8@0l2=54SNo;OBOBvF3&9JGR^ zBO6>@J11JKg>CVzR_!R-U}0LJt?74&4i=O-VaJO;^E(gglc<9|$Ff!d6yKZXRc(em z#?({A1A@d$Cs|>}@JSpM_VMTG)IrHbqg9@f%P`yBq9!Vgt3(Rnu)DtZ3@j#=zHE2s z8hv%z?<^s>7Cq)&sN@g{O5?zzRR_UNhv$e7Vl;fHU3-N7XY1}Y9`PFMw_I=d;v!S? zwKvoCxJcs1a0)n3#XZ1H}=sQ5%}>rsZ%q+4V5%H`8h5%ffBxKlTHRAEFF_5IrXi`1@oO z_Sbg*Z!{Ku9#)1ECdWgLF73?|!j(~9Mr4~LziAdlPQ5=;ykoC<<^Qm|p{A(u z-c?Ix9roKp_h9rvs%b9>@ZIz&8Oi>6-{}>*8zB!%wI)(lBo>zasyz$)gQSQ^LZzIYf!RXBWOK^yCk<&C z*+y1Sl>nX^G8()Q-!9;d8;VBrt@Fa15IL1b^h-Jju<{#qmvU7OV@Cub} z#3b|&h9>62-xQByPdN{wa&T0*k2My9G*_$w`$Cl(I0d#DUd3%!uwCRZz~yHe6K0J_ z7S;o+4w@pn<7(;`DUPN5t9!Ple(|C4@kF|CS;#_BQXCBEGP|E02C=zmT&!%>piib2 zWXfXmoYg-4izNXA6t!6DcTrWA3VDXN1CxH&9KkbRcAfYSn-We0!=z`$*db+PkbRDw z{=FXU)f4&^BITsPb696TyB7CD8>(5@iM&iRi>C$G!zd)Zu(q%$`CfR$_!=x4{O(a{ z^6z?}io~0qrN$Jin0}WZ&C-yChe5&i<{|Q|=5RK;(qPO9aC!@zsZO_kDUQe7p)x}CR!Iy z@2P8?K}djT?WiUQmr?NoE7Lh-)s8Gal7KAO?1?-aIhFsrdbaFuHPh7I;QzC&*kjOR zHb17F$Q14ewmQ3!?TSy!K40!PvKcQ_h2#(Qki}0H+Ix6TWIj%o2$418ce0v21Ij<@ z;zQO{Pn(;@0aXx*zUzAWl>ILjc;6b!%Vsr0O!R?m%L-th*guP1!-m7k#xhaAcBw1) zEP69|bI`x6F>FNk8p*zpBKm!R^PQO*(sNTo?O zFJSVbo#?1YC98?o z$C9C0VHnOV-(TJqE5tjc9&3XJ#Vo)gW9g93&}VW3U&lIrudg_0FS>`9jb#WChToYt zbIj6`d%@1f`QR-;MtKL$DQwc+;?|;fcm*UNByFar4bFoIh6nrj;V=3B6^BfOi!tYy4a`eBfh|HpUTgm=OMe+h^Jxq zIa#m>Sfn_tXdR1>^uVkgF$&Q|2$($Ar|uHZ5}zGdmbkfiG+R;K8~(6r39J{Dwx9=W zcJcSQ`b7V!YapsDM;Dd`=fxMI$G4grRy?FeoIpH48|Pg^da?&twXjWSK0XznW1-%$ z!&vY3J8$T7&wv5z*xX*suTA z9>&&8Z9#Zf>y_vjUJ&2cTz{(9=8KJK&5ez}__|NU4cRl$Xtfadj^cD|Rd&@y-@WT9 z7ODGp`srtLBwKf~UEn3B9IS6GF?I+o``F2I^(I+5Kh z4|a}yKxWZ=m@+Ies1Y=SMZ|yNbzvlldb1*&9W$qv*l9nBLBRuMq&fN4`Dp5cNWBdH znPy4uC@Tn$lWpY0nS03fMgMP4dt-HaIuDz-KJXGYqpVxrJk$ujYyXS0cpDn@SQHN1 zeXc8=YaX~}akHnaSRPc7mLdfgL=~=0LT=8dJ1wVk` z^4`gMJC9uc+8FtRv^l?$Wh9<<-&n<~X?;GEIaEnP{Ull(Yn4uf*1#KGhuh*D@ZDLk zvg3F+_qBV{SjY~toR96KEVegrdCdyOJY0O zlH5MK>^}T-xs_N%>~y{m8Ft(3!#qTum+KRWD+|xg;ES?x?IJmoXMOUkmX7*Flz=r2 zzal^RkFt*0vnr;*l@7a(t;>IeLh7NDMB_u?Nhp3B+gxOX=46YJq__aX9{25=uE7d} z<;kxR3*rC5Hz4SkACMBZDE=PF2DM=mh|2P&?|be}v-Q{=EI?5o5mbGmX;{lRA$F&F z3?u*^?eNs-d6qVWmPApd66$r=og#Ix8kvD45ylCr$2VQB{fnLqF&Z2TR>@I45@Tk$ zIHmL>4aQ#LA={mE^&0{~64JCH5TYIUBsfu<(@c>YF#E%PW2-_*L^)N6f#Is?wbLiC zkefy&{)EdT-bU-eZAF^5>jzEy1bWEOM>(kLwwGhP)nixmcO<5kz~T1MD!i z-f44ToH(FI{f{q8mXNz5PM=$0OfBb|zxca**ZW;f7unnJz03N$J*~P-6f8kjw0ECj z>&iM*HGy{~u12H7x_LF;O%7YYzG2N_v(bdGSEmJn0Lz0evJA11*?4?&T(qs8#3F*| zu>-wB1mB5gfemB#W6RU2@(g7>$%tR7?>LwCH%8Rp!-$mW{rjHBB6!w(@r|$QqZ~lv z<|EJ@EGh9390!ay5fiOKv+kPb%T4X{eG0=D}dYeJOETtYlVK-Kq!LE|rr zr(!zsUio3Fme6@dU`AAfQ;kXN+5VEriASUQGO58s$0PaDZ1L4pQ!u87dM>&t61myW z=hJMHmY4`M#PIG%>`O*7ua9=dNrh$nGwlSq(d=Y79c%T={K1!un#O0lTiKJYxakTJ zx>xlKj}!BcM#SV7?URT6yYcWju`%}h8P-AH!M)^^@O0cEGm!qm;{4EBEcKhy&nLaA zZ}4G#hP#q&JXUWZgS6>^F{;Vwomhk6&*H?&A!BhE=mI*4OjvHr@L+hDcoeikj8*Of z&j;ril3?^Q>+oS@g{TxD;zkGj*@ zgujc0LzT?2Y(J8i@4*XX6`Nn{@YI|g_sQ`3v3_au!)ZoEbjd2ZOXLhn55JS6A|fFh zWvw=yD!UJNQ`P`RzM6^n&!j2_Jxfrej0V9LUhF!43&alB#Ej#Wu*18~t?&B;bAXK5ZX{|`L0ZHTMNsKaTE@@p5WF}D)P8rVzrqTFnZt0N z_cZY#NQt)pW9|zCbr!vW0uE@lOO}w4%qHre74`+D`Q5SQWgP!n{_UW;Y~l|P1>c{ zJ@g*il7Bb2BsAn7KH^;8k;+&^>@1meo3#T)7Ev-EY6j6bkkP$*D)WOM2aShf;@GgM zpkX4J*Ub~()Bb!`8>h_#d{U04^J>ps*Eg{)Hl4jf65*4J1nEER2)i{4Se;Ne*uTDt z2Oac12D8XC=?$;M+#{cyfQ5RE^I%5}iKA8rNpsk}Vlpc5s3-=HgG-5y<1MJ~XDQS(7rj$==Zm8CdI?i~YsV zfQ?K&^S%^mHL~4x$Z95gid}aW*gxWllS5 zqLVZemgPcER8BroI_zL+Ts9tbCjj2>X0}5?2>nF^&-{!&F%5TCp+GN@ld$aeVxv zeo_gGB`9Xkj>Ko<-8=oPf5(ov+z zWowOTLc&9Wa6)*KP(5)o@`x zwB2dOoiwK#Gn9mO9s3(LLZXZ+IB{e&Nlzz{h0Jvbr5@eMLoxBhSk9P z#tssDVc$X@Flcyu&JOgAb>brD=v#HPNEope{lsUnnouH^DW8|*X3xuocCNIy*-tEdnM0~rz@kW1S(vb1 zz6x&zrwW6@{`t{(MS?M#_$;`Fa0VWMQ>$(Wsftk`62bl+@8-Cx$5w8p(THSW_3&WX zK^OE5|X`78YusUp?h5B$ZJ%^^Y5_~Jz#>bw*4-lt=#o{%>D2-8+ zjwOUoP1A|4;H0rwFibEtu+T)My;;XP+glLPsq3doog5ajtF}P zj|(Q_Y921s4Z3O*=KkvAB~Clv3Ovoazg zkP>loe8A`R0mqm9^P*?qi^@Y54H22V?k@VCB*4hvU4Cw4*sP*L7~s1-SsfL!LuB`{ z@rm}Z=&_PnPM8Nq57DqkV8;)&3Yl;&&5Kbvk4~xFDbn38G&&lJzllKvE1|hX4dD%H zRkDR4cB-SybRA4-#Bk)zK^*xeyj{34wi;{Sh_P|mjy!b{DiJ4m>|#Iv-S^M~e6+)Q zfGI&w;*i5M4vGqAT`@?*{edC1b9^7IAEFP?q~i1RDPs zf16}_(_d%Pj*-<05$Boj*1osI=_4tj0u8x`@sjG3t?%Z#5_0FHVetR8#7JEt`Rk0If`(>myM4_qKXwuDK?0FLAy#MV}I(!&-G052xFEWRsTkQ8lT_$+3h_X z5I(;6q%*rTwR76jtRWwYMYh>oic;VriRVAn8VPSFB;}Xk;kI&ar6^qo;5b?4< z&YBH70S3I=$oY1xJ$MRSiKX$Yd+lzP6^@IF610d|BD-+d8Ty7%L+8OjW#T>ctsPDW z*>`x=GC=4Qku-P%oR#IzLnq6I7tI!t{lx-@If!~ebVlAimOYsZuf&Ie0nGG0PYQz; zst4&&Yh~2tv@Ux+@1pk2AdVIJzuo<;dD@7s5#Qm<%a2lTR*VQ^hy_8z@`8AHBmy}j zYfwNY z!wwoda+n~IVtOnZc&F#W@Vw&?>Lk8#UyJY$3=mm1&bXL{oj`BvnKha3Cz=>D0cIkr zS!CCl#?4mmYQ28V)l1Tm9i{##rY{>?*3edMJnLR@ch$(*KYIk7Qi(q>%w9_l@f>o}z25()g ziKPqQV{wawJL7nQ(DoPg1p|ewwhNpfR=k`knQi|&o-K|M+hn70v3o^vAnwqE#YS`5 zbH4Y@T4NJ!qzCN=>~h*gOp+aO-VDgiWk1S85wja>1O*}|zc*Tl0DK$=Nd7w>7avTN z80!TyW33jyHkbT7GUjb}v!A>VgGDJ@#~nkn;MQPbu#os(vhLXmBL4HW$=k;p5+N03 z!I0xm+9zb-_xg()0851VVx2$qJG<+m^^h-s*+}b?_ugji1d3J3rx&}S-<%o#;E2Lv zN@FpwXZelLblgLG8>%l$?hi#vO_ z3WN%-&N{+%u^0aBe)hv+JyW$zZEzWTBFysm@I=HRu+~oM0m+D!2BF4d<5AmVkNw@N zJ&|+T368{*f$uxZycJjtFNf^I*c(y|f;8I%sHm`1|Hv~s z3eN$LNEId?pr{)yWCuKUKVBZ4{8&F#apO<1U}pONx|YP(F(hwmS?(kJ+`O?WNGWy^ zSvuQq@c+}PA9@Z?f{n`1dF)>mkoZAP6S+;oSWlV&A|ool+5OkGjyDK@!M6C(Q*pOo zjCLB7bg?_$H;XbG&-xu#mSz5?k&yc=66g$^1QJBT@ux3h<5EQXO(ax3blHY37b{h{F zk}1PN#t=EKGNLLsyjXG@W764J?JhPcYlM%De>GnZa6QZ}n^X)Izgm>hxrStse=15W zckOwf%L<~wAlo9&d$mrR<3g%!0U@-{%(k=75{I{n!KuW@LS+x(MTl!bRln57t@=z? z$a~-~vy4d=JN&A7#PoBjFKT_{1H!gNH=yEXhxLy;&gX)fiSF2;D$Vj!FtX&xI@K#( z7yzUhzBDftf-&%nQRzUzt48Jmz5`m0Y)n{l2YEq7fz z_A?&;O7uEMq`abZ}ABe1Y%Cauwsk z=!F_y*FRRnX-|ejm`VEYsg|HuxB$>#Ts13Vu2}hGxj3S@;={DYYX8AC{;;;J8ZGUe zL~MFlW1@x7;`L@3@*!uMheg)2dsG};?fSz;O*S9514Md7b6F{K^_n*PR?kGBKlglj zu~vuf;n~BVyd6d+vGGASMc7zUm(3G9osU8`VT+JQbT8|EtyXw%BF{J%*k-&-HRy0B zM6e*`;;>>0!`_sS1|h%g>YaLKx52<=1HePsV2~6M0A972pd3<}tYov2n6=m z(6E>uW0#7(e4SSIsJ_{g=8W$m1}I9eYJ!-o6D)5Ki{x3K!BMe-Wf-c3Ad1I-wTm!u z%80bTn0md`tUUFkhiPS?GCX$sl)XC8K+z-q8MX#_V~5SuYtaXhm!-br z%aFA)epqsgjsH_W@!ZzywMt*S8JZ27^6S(mJ`2B^Z7p|6gq_7MZ-s}Cu}YdgHMWr} zgi|C>S@e{>1~q4oi)D(n;MwxIc;f2++cgkrd_B6%$%E?SP|?OtAxnP5JbXUbW~81~ zR0jhyN`#D^Y?bI~*&SjvDytmy9I~A@S?yc4?7-pi5!Il@E`xc?i}|mZM96*gM%;UZKt2QAN>b_64$=7wJ>?72oOLB_2jg_A z#ehY+@iv_;F%xlg)`EbxiYb?xyP`0AoSOO1@4AkTR8-y4H$2n_MDBJ!#p z>H%4V%Po>6n{TUDU-k*sv??Fs@9~y>gbF|c2iABPbSGxXFqvvJH;$5sYmN4!Hi3TNt zyUOLjJ+{s?FT_RV8FRxHfm6Ni^I>gaiin|LB;t6<92h#Vqn{@cQ<5& zU&j7gs9k8g9dOW{q?&9fu_E>;ZRkucHa4tzUL9*yzQDjW@SJ%eFrBqVF4yOGEs3VT zX;z%DA6+k6E{@N`ARBn*@=Y(hUIbm0C@0?jgm|)pZo6))zcA5*#vo?q=?}GiFsb8~ z&P^kN52>iZjPs=`Y3@1)7WYTm4D<|Mb=*~AOw<-)P)5x#Wi^CQ z{%j?SAn0Cc3&c%39Z3g37%LT=m5*~YYn1&mR(vAsC=-UI(4E6z#l!g7>ptll_!EjZ ziV2EynozSsi-BpTt)+aRsDuFOH)AhS_ZSlvjXjr{$%IwtQqZuP>;#tYujW*JfVmZi zL+tGjiaCm3@e&O=Jq)Xgdz69cRU^*k@7Z7R2k-dMEBu=I7SU6GuJyB=!`K#kmm;1b zj0SI`>!XfxUp?8w@6<*(VqSN*tF}_*5^5B&i@!VbR%0Jku&fU3=XHOs`t#68Fh6S@ ziCv^XgY3v%*ESpF;?Rdq$fE|#=kPdWy~P{oOi0z$yk;4bBR zvQJo$o)aQ6F$k^J$lT=XDopr9{oX}_szGFC7;?M<)$LB_F{5G|aRarU8YAqNI@PV# z9^c0Lt3tL~)nRS+mz6kZ6ubSTqoBIJSJO(OewPQZ5D;H=qc0lIYRBQ-e)Ye72mi!D ziWZ*x_SpUG#9|}D2fGb@M~nLBEC5#9PbKbq2cVbLu_WJebKv z$DqKYe}vW32jKH>n;YIhu66w1(X&?k<6|SG9e2lWIwQ_xr|-%5R0z?%iNWBSI-5Ys z?Qlm|bwp{UuEDJCb#81ki!APkRf!o{BC0{PN!UeJ0di^o$jX-c*L7_6NpTEC8Vx*) zD=t+jZHM!t^taeS3S61H*mb3M#?w*c*Dy$D7UAqQTYH@c;wsa^B|v_l(6XN4^{5v9 zMGtm6`nP5RrY7>%HCZjNDAPI-b3?|&k?NXMGeROxdX+kc&B9~goz#WUTiQX?0=NYp z`+IkhhJf#Y)AHUluqyD?@ZlR&T~K|mHaDKQVfRqv9Q8@~fH(#2EK8jAhpJK6&ZF+m zLGMz*sOGtxb{mzwb;43m&*~L&(_GWFsajLn5A$^$BBytK3+KGoD-ihAX5y$Lm`SK6 z&QzbixyI$5Slh=P(F|GjX6CF?RSr4*~c6-Hc)b9GmJ%9>RBLiKtv z?E**~K1uZ%%t-zMeTQ7g2@iYkcdyHY;gtGOifCDTEH0eQU7=*t*OtYn7ql*{a#0{1 z*nL-d->ZE2n?~X3f1(Ee9yHp~y-xIlThhBk4XElYnv?auf$0*>i3X{SMieX)UT=i5 zW;Gqd;=_0OUvnx#S?&Lu-e)Q3D|srq67eO^{oFhJ19cjt^P+1KF~VAQJEoc=7Hr^X z?&)$zx$T{$j`F!9EHne+bGbaFI6DBRrAAUQO|h+`jI0e-!(vbr(pTA)5GnoKtn!bI zNpD^{OE!X537ToGK|?S499^oX#^DY`rF_+_cPY`KthCWMZ<+s6ukw9rA2Gh{*+s|4 z8mgX!ib0V@t3#n`?YIV*2}Ll}Mf`Z&2%w-mfauPS{L%Hu6!|$kGHry_jq6dL=#Eiv z*f}%^>S!@%e70yxoT7J=*y>FqllfT@6iT#C#w8M?92VE{zHmEn=4PLgJ;)*D&${M7 z9%++th2l=Dg$?0Bc6$wG1~qZM-+gBwyK21mngtf%dU|K6pV=|-F?EjGF~|`;EnUvT z^ggQ~x92aYfz{#6`kzXZePtc=GUKuJbb-EN67m1k0x!EWyuG`u?#I>As9f}^g}$}Z zABc{4MQ1-%*J?lE6wiGRAFu0x4zFTvl}J#)la7R~=I!JudJj9#U4N-K@TWUjk1u_P zMi)0GW03vRSI~^{6Z&tm`-kmHF{D}MCB*-WecO!A_ZsggFi_<3ZSZNnN7i^T zt$90A6iH#T)p_hAI``}5&NH;s<%ys5bD&hDEI8^tSmbq|mD#DqvEtlu>Pr#BhptnG zuG$R?rt6x0zz1wj@8c9zFVkXEQCUeJduOQbbbO$e(>aTm!@6uWhx8Px+OTG8%?VUT zr6ab^o`!!yUfD5-*!Hv@WDW3BS=^{BqkW?Awqto2ysO9+ng!j3SwJI(8bcqhZ_}*t zpMGZ5a9-5SANv`SF8|Xz-<(4AaW7|$8hW8Ch-;-lmGAn)H&Y%!+F%ghd!L6CyXbt0 z3xW}fA1}Hqc9?xn*Y`JVGAHPYz;39Wi?Kg zRE~*_b7Yv1>lK{&)HdO zV@BRh)2>RFf=N#n=m-9nVv$N8E`{klny!FOlg$_v7=LzcL!Zvd$otMZ3T^sf=f+IH z=GjDcMYkWTL*J&W>HPF_*PW4SNAATM(-Y{dbUNLMfx63}vD5fTF}Hi>h*%Bw5tp^n zNM3X_Ot6lt$IS}+y5Gok!lpdd^@0Kb<_Xgh0g1XUJCfWP*0s=;58TPjVxFyk(ThDG zpQ3+OdnR{s*C}*7w`rq02lca4S9(WuDEj`Rzr*%oWZ^i!`&~{8<$35Y44EB)jPX5Z z{X6S(SZEoedPNE!xs!Ei-yO9sMR(YBx?|qeZoKFWq9FP^nHH=89&cSkrNzwG9a&t$ zhSTufH&RM|8U%5!^@l65B4wFkUeCypQCpKb^*9gjf=LyRhucc7mW| zOnCH>0pdgTanOs6dg!_tq3gWvdc~`lb9)qzAg-ed#x23RZAS0*vlMUA9U& zSt16Pt@|*oOIadbUhjqNK8ZJST-Z1ziKv?n3v+baxFCnL&>~Tm*KQaq23JTwAlJgH zVzJHHMW0gX%rYHyd<;CFqc)N%R_&By%4OyH_Ki$Uq&U!b472QTt8s`h?2f@A!r{$^ zb!sJvv~)Ox?%T0ewaCG7L;&Afxs*OS*TG1z!gL4_#_jHe$`f&+D_!ge*3?ti4<|Bq z&j^Jhzyqwz|4nC0eK+FHg;wZ?uKY`58F;L!8r;FgG*|qLx(EtR5tCY%{pN_)1Y@H6 z2kqd=^a)q~*!)0_X)mBm>vjJ0>?9Jet8~f%OLQW=Rf<5{AAX* zblXu8$dY)vA$DZDzn;V)zx~-ODtBb-^pw1f8azjb=(rv^s{O$3$P8tYD%e;WR@DgQ zsZX8bSFf<}B6mYiT7AZYM>FZK>F2-=siHE1UuFle7U2D5cm2ftEX4J zQH?4J^^-bps)8qGiUe9wdf^bP~u8) zH#`{XE=R)z&@;O4_OAL1*uL(3uxp=CdJ_gzWPnT(Z?g}xio6V#Q zmsMq_ATe^H$F50~!^>IGyPZ+3z1#rrWnL~iD&-uU3NnHlQP~Gw)rU_lyJ`XPjy&3t zj1TrSv^zuHWt^fxIXNU1KR~rCrlDiN=F*D~R6z~?c_VN(_?(JqIWqOh=y%Kd9rTK- zQh#7#kOO`T?xgBM9g2HH*C38!-}Rcm?ylW6r}Sy3eQ%> z*~r9$DyALduF7K!CggiN{kzd?vKkn#xtBXa{;gXhrN2{eKv~RExB#={VjuYPNuV!WOCTxBB^Q$e;Oo==fAOm}RlG z%7C3-Q&F$h1#7Qbcc~G{VQDPbcu^%q3$>q$UuY%BU(w%H zR|98aU)4&{PSU38ZHLW)gtL>n2w^m-Aj}W1eAO$WM^$n-DVzdN#D|%43KP*0|1Hbg z?=v_351kNqvkd$z1q?*aY={t88W=3q2$cG%>wyHQCsE}l3y~{+?sp!~eo>(W3&b4Y z$kp2&btHK&FD3TCU~cvaiY_^o_*kxBw;H+bWGb4TJ0`CWeO1j#ZzGC^LS6m5Bbg6e}K#m|Gv+t9{ki_9!+0N%m#ZQ za)y0DSfDA_ozJed>*zRErn9p5vR*!xdPUX-L8t$OIm_Sa)%Xy14w@lqmN&@|t+tPy z1u~^3M2rGwz&`!#XqSB&f;?~{6<(s?!>)UyF~J=$?J5lIo|VoZK9l8&W!1G}R<@>f zd)v{?6m*7_ql&>bQ~%Hf@&(r7UNeCs!PQcjVLm*s0s^C6P49iEDfJKxT1;sb%H+n* zfd1_FU3Ew-6^{g0``Yh!T`|Q6^i)Sgd4wl`=#>BmzMJk9z2in#@w+kU*9VJ{n?ic% zvt)%7^as5HvBby90Yp#ME^np3k(JJ>Z8kG(46J&mGr0@q2-8U|@vbA<^$=>xh`qi6 zU64)7*UYT8n}(#ll3w$aE%MDFUzw8F&a6uYX%b~+br zn_Vhq=bb6kT)jJ>?~C3ga&mS=CH-1|W!k#SjhYb*&V7F|-xP;bh~hl4{ZeOOab@gw z?RHnp4&Z=Yr)p)j9J`$h!!5GKcwlH?NOVxDjqD@{pu0Tllk|_O2u}OE-nZd(uoC$v z6}?fzL}_;9;%uJTW{IevskFZI9$eA68Wx;mLKRTNJp2Q(Ku%>cXyUPU9q?^7%2 zglw0-?#ks`Y%O+?5|S#!J>g%~(y|`BiKigopzRO1E0hT)fgPf~`q;VDZ;sf;nib8n zM3km}`_-JegJWHZ^sIo>jNlXLd)*z_s5nkerEim5`rqdS@|*N0 z_l@tU_w^`J4Nn)U9!IT(N-XI4e8;kW_$oM%T2h)(U9h)12P=g4lMmZBv`RM}3HB}G z!JexMc5GITO2|<};k?e(bm!ohxXv*~Jar=owzt-gj-Qh#;5YKO!E>Kx3lOh(0{s-vq$ zNKLP!7b_^|R&62P;Q8T)`f-YH&9AK39^$p*g?51!Col)KoqsxVGEC#%V~@L^a>C?~|3UB~|6RK!p$8DxY< z7nxCU<4$!YlL5+jrnzu7PPAjsO-lcz>T zuPHmB6*O*ml+JM!64t05vhD{aR3`vohp5x>&G!ka99l$H+5XYr52GQ6GAhbHmFOZE(XEbKYBz8o zu)^oYDJJ{URnoEGdQKa&Do8s^yg2Ka_%Eml3(wwoodSdk`n=gzPbP!rn_u@iRvfaY zhTm1I1%$sr_8%G>rMlfRxJ>8~ZS7?vmsc(}eiqn$frIlXR{To;pLE}0x-1%n0&M}7 zR8|S4qFBRViwmHt&;t8KOslrW{+;W)m<(*P`wK^hAwtED8YvbGmPzwK_buaASqqI} zt$08x=n>iDo2ZM$Qu=LdcMOp;_Kl~4K&h4U`qzHP*upVrH~dC9V*SC2)LNKLcN_~z zO{9hl>kHw>eXF2V=Rj9R=YXx@kwwsE|Bt@=s`ucDx_pWV-}Wz+x?I8YTtsL1Y}_am zU#=n(Ug}$B^{ivLbLQJ>+-+pkNpMaYQCACfk_%!S<>jJDURouvI7I~t7Jk36>8V5Q zWUh5^bWik}fz0SS_Py&D9kMoT0(=kpi)VmJ$$&gZOCBn+vkG?_k4n|K-et#k`o3(L zR)D2=Y9!(+cZUw!T*`?cI#4AsJ~g5IR<)))!3s5oZ>>EFi;ta`m3;0D=1BJ*t9QLo z|IrwYo4P?2I^J092q(Jk+qe~|pncA};(2*(+CCnIckxNJ?+{IMBkB}|$|)gqv=Jf< z90(1Jepb&Nd9~5Y`|le+uFHLs{fcsAg{qTYHAb-{ric9>42{|g%s-U`eTVhUF79V+#6CIK42Y%%hO&+L8czezsbZz$L)Uo(p8mcor$@2Y7P=bsETUU6g!s?h6$9}1{Ox$E z_-1!s*Fd&OU-6|r=^o5=?etV)KBLCg$=2{Q=Icej=|Q>N8AW7{!s3fdXdp3*I#r4S zp?Y{@_e7>H+QMAWI?;1bLalW?x`)GFr)E0qTQ6G$uqfV$@4sst^g?tFqDaWWVRMHa z5C!NYECzsNd}v)Ac2pJi@L1mNeP@RFxvtCpP|D~CKzGM>QKRd|D{@s6G5Vsg zmy~PNe(r(Ki6^!@5?&jEOdaOF@e-H4E^0mKNa8o%`ncob$<&qdjE+bp!`fn(mb;42 zUB|aRC-%{0o^7y$tOdvA?P)0FFlG;q0ilx}+Vip~oC>W!gj*&or-L@$cMNrQdyRZ( zqS+OEu*_DLEx)D-5(Dq`j(ebXWud8}OJrXV$N2VszDxv~7?nu~8 zG1_wP?R7oYlDi9cgE~;3QS9+N&^Zhj)L3*wA)rRqzJS)VW30xzW=mcU(-%R~m+D#| zexU>57u=Dr%|9Ltj;3;8tz%;cM9i>X8miUCFSfhv>~bZQO0c8Vj%o+GTFPEr0!vF> zffW&}?=^b0C^9`6it5qJj%*dl0CkI?nq|3h`P3q6pLw^XzAcWkzjYRL@3EtHB6NYR zry9~pUVaK!g$jsctQmfe#zZawV`BR;xwm~r#SY{XW~`Hse3S3e?O#lVd-OCZ9l`ih z`X)IThGpQ7xJ~!V4yGAoxy%?XgC4_pMcFonRu3`x59PMn0r$YlwMJkJP#rPZ=`?Qk z93MkB&TpReeY}Tz|J(>^>G_YH&JJt*PiI)_IP#S@9hC~=vCnLFozP!7fhri>AG>nX zd$MF2ISyx9BC-`Y zIZS7Fx+~CDnh;vP(|#JylT>p+^Q7~S_020@cVyNTuQZhKSDg*wBtB6U$-di@uo0R0 z$cC_?uN&*dv@#%E@;UtObyscgQYJj~7gvR=fK9&bTfFphpP%cBA+##gsCCW$-ZUyo zZL7iR^IhoXQsbdSln<)VXT9(U_6LhNuyDH&H!5F(BT+E$iegp@Od3LJ7+jT{3;Mt| zh+S}NbanEs6&Eb$6E%3+hPYEU zPdCP5K#|niv(U6xGC!K(-L6n~DwR}^{Ukf03}@}wOS+)#t`;-$yQ@+SE!I5i-L=jo zBQtJxU4NAQMrubHGX*A}uNq!#!IS8bNb@BYlqF&rXb%3>?oeOS!|Gz8cgsT8V2#;t z?!3qlqJu+Gb0{CDH4sa_Yd+4KGxbFfZ3qs<8YPPioi>bOm_KqK_1L5AQQz^@Cn+5G zA9bcip_7Zc%=vyAxb?ueu$XeES>HZu4rxp99n>oPDvwU}a5sGq1|}M16KVNiPqH&v z&dXk99n7}~8J{Z;6eCc1I-dN6))yOm+?d_7gT^>?hGI+1_3m_js;#w-OB*8F-R>t@ zIL7(38G_S_r1*Sy*DjI?=(MxaOvsT{53|c+0+|fE;Tmyabd>limRoiJHItR8?H)KR z%_t7#r1Oc}AT+Ra{LV>Z{MJ#ieC|AEivOWb8z|MA#x38!@4Q!?RUFQ*ed@a5knn6V z;6blb(x@3>QSmG^O;lTAAW@(w!+pU`$(V78{FP2qa5`(k{(0z+xD1-AO5IOGF-b3Y z(8xqzW>oY}RmL-H_4A9a<&UnDhdu77Fz&jSSsvY9R_VjPz7oYU*Ak>un?sWKG)j9sSIrJ$jdUhVjYy#lp*Zsz_soh|#Y-PN<0{QX^L zgS=vTb#)mk5xWFVfTN|uksmm}oQfC!-Zj9;vD~yWG7wReN@<6_uGANC7cwTiuP{w%#g*6*%5<7k4L0S z=c{KuzF4g?TM4llo(8ty3Lu8GsG_g=#-tKluBzUTT3~p3*9`xm6#CS0SAXV8PU%1mVfrgHI2Flb#(Gn(F4W7 zY3CP%$a0RlZ;*re{;H4n+#(DHEL83ZS6l8#@)G!&4y$AMW}2i7ml zLNtqYpxwg%K%v=Y?1id%T#h?}rO|b7v$LuW+37R(Af@6#$Kl0ZbT?(`qR8uB70L7F zFbgXSN_yWp;CnwCBhF&JZ^3dQ0sOtY^rlxRd@%KpTdP}LGF<{+WLA8h?Z?^DAKvsD zEE1k0N?V@BYwuz$DEKkcJTgrPE|T)a*kPpn629oR&zv+`73A#QQO7;$H>l-&<7S6( z2Y+@{xrPpi&|O*?=%Kj7`cS9U;ZrDd27it1&S?KkLK1FjtyT-1FOVtEXYug)g8M!#DO%zVQtd525?yzrL zXK*NN2b%|ppu!XHi<+#G=YI2)9od}7VQ`N+4T%zEv~~fW8cJT1mrBh=X*#%LX>J5bZ%n9ha|qeD~2%{N;$SB-VO*=Fl-J{T_82hG14H@nlE zL7|{4I5bf$4T1gw;zSDLQSJAkQH@?*)Rp>Koi}5*%>{-X9|}X3Ul=Q_nxYOrv)OU* zTi9-W*6cPhJ1jyMShyn8hWpkiUx-v7r(3%mSy3f{{+QM(0*QeCT z^GfupVhAgAI{7=C{Ouv7Ki1>Z>p+sL*6+XQ0bL&4b=4aGd8}*A;B|Jp2=Dp%zZ$ z>#D?yGE9CJzl6tEH-Hghq2-CxJ#r%~g*Ab}kje7PhmGuHS~ZV-=Crx7*Yv&8%L6K) z9^bvhE<-=4n(Q>XQrVR_M!X<`#RIutyffTVmru1oqXrO9aM1pPiy!vWVb?n}Rj^^G zfV(8(RL==hSCg!o#t07j1O1Vm@-I5>u!k~4YAC3o`*8Z-Jw{a{vS2rGChWOfV<0N< zbbdvQ4XczP%f!Z*Tn!%eq}k$y#AY%xh@>Yo!TK?f)E?G|I|y;ra|!Nx-f!0Bem_A+ z_z=;Aor#qY8NYAmd0NP@p}4f6C|40o0cL%`O*|(`H8@|bo|dPTzrv37MzM-9(yTZy zP37_2SXl&I?ca@rN0ouvTWZlE0c(BV-KVm19iwhREvq&8vEz^XV8_UWST`|~tI$tH z9w7U%k1($)4zL4QS1j{oqd4ox@Cwhg(bM9o5yDj=$@=xmm1S&VRJ`j=--R;KB2p<* zu*o|`jkHJfAr$I-mdp@y#)hc>)?-V(KI=-AgGLFEceldpk!sMq3^MKZ2&vm>%c zG7434*IkqN3Iakw3yl(!T{H$!h9@!Vb${Ex<^vKBd4t=ifxsE>_uEr{s4B$HkXJaj z9l$GC1u9O};D{2{c3w2jU(JMd1-sTsL58m~04|QTq<+V!iz%%@c@;}4dZyOd?o;Ad zc44_0k%Pk8eU>W9T2*)a(5D~;a4^~n%KhOt&w58J=nC`+gTH=koU_htJUjj7NIG6& z;?}!|uyYE6)n)vBUp5M5t)B=LkS*s~>I*J zCX01u=hN~$P2-^gk^xgO_>^nZ#nk8I@7U{?jR^Z~jMN^hoolJTY%QO+IGuqS173kW zwEBj=3*Su7#(#>`R{Dfa6zt(*s{}F#FQ02nG7_jxjC!VeQU{3Xk0^)2?^cH>9CojG zbU7C!70$!j=rwXOU7?lCR^hy;qAr)k?S`qV&1_xp*~44y9P zg7K+ex^0v+BC}?S!v49DW2NAQ^o0A37axVKgxJEdA#?W5+rIBfGZ1dM6=nen0ArFx z8~JvhW^*B-G$JrWdBaLGOI0nSu^VLdY>r4kF2#GD_t##3)$7nr8JWoAw!gG^@^Rb> z^ktz>QPZ9FSJkXaZ!s87Kd2-n~#8e`F(J23C4E6&oi{+E- z74YO@D(A<5tI2-dajZJI2S!uPCB6JkBg4hm*>VYYe_T7C#`>$y70L4QVqErxjuq;= z*6Xr;3J zbFawl?G=g&`lYMhbBEbmC@hB3%7bt5L@*K0Z)3;l4rC8r(+`m5osM5_=sL#yKQ;$6 z2jbT+onh8Bv+{Nc1d=jbogGUnR{gWHU=~$<)AqVMGBI+6^`wv*lSq?ml#7y|Y>?i+x`G0wtpyl)VxesQBDz40SBZ_ZA0a@PYK$BI&R5FfG9~ z^~;X0o($T&+&5^g<LjY__J+ zusZM`+`g!h7MQXcXCeEf%rpy>Epl?za+DJ4)+poEZ}=9Log!65fGaekn|)7z9==F! zE0VhHbyuLbtk~3wld-}Y-SOL2BAxtMM--+0?)wj&O-=XfK7;**)Ozli@3Oq`1?qiu z70&qBYGpDm@zp+yOMt+OfOL?M?dX6wdRmxE zcpYVj9D;HIn>yDkSZy)xs2g`}exk3zB*}inTs+PDe!u81tb4C_>|5(_>_WXMMHO;D zxe-*D^@Ky}+DWMmPp1gMiEmBo0dlUg4Bs=NEIt{ovCz@Y1Vm7D4dtdvf^fJaaMD+u zL}c?Dg1?JbDsAqOT>`7{;m> z|Fc#4T&hAd4%S3nCUlaP4|<@NCPnpe$Dm%)p#rbY->7fF5V%ro=TYM{X4OmM4$>1^ zXEG{ROErDaS?nfjWj4(p?wQ76Xb`c~x;Xe8#g^-!<6%|UG+Y&RE1XV5AsV6gU}O(0zd#*Q_+)pRnia#L#{8tY@Hz`fRrJ(%s1)5Z@AJtc;*+Q8jn8w) zFZfHELWnk%*XO=@+F8|otn@Plo~qU#-6iYv&&D#aKAsgaKm)8c@u5$+CR`=;7rnA; zv6AJalu-PpZb`Vsqs9p%Rlx!?=d~Uiy}KxWkvph=+UN>!fHE^ml*@jG7m2j@`tGP; z7%0#~XQ8xamnjRNntV5_q0&@81bsL7ri-qL-Qp=-Bb-=_hbh5H*|qWsu@LkLhOyAm z_;hT5y-cY!>nfnu;z<1>uv+{KFDlaCX-=$Z%!X`Iq_2{ak9uyl^a5Y%jB}0QvG;j* zk$@FJtLXVRux>G;rvvgm@B-D<^S#1Gho+7%P1ajg@dgYq0o8gip=MHX*9Bbu{_^1>$`(VgOGjgJ=y_?9;QSG zq8A+(-u<(8bQ-;Gu739|@s9|O&F4YbXvmeF&pJThMS0@#-A2Q^eD8d60qhQZlFd`O zW@NLD>exKgbED%?Ah$Rq`GKc%K?rcBs_9r|yV`2!L7-lCw%#l5KgGv&$C0^0zD2}z zW@pWmC|bRzCwLY|DcJ-TmN9-oj75DwsG1+z=k~Tmrv)f!4Y#KNuy?T#l#$kk?q7GE9Y?2^0d)=(n|-B*qn*LhSRH%alew-K^6Pli zA)~4SlO@-}H^{LcI*MG^9@oRdmA>!jNBst$qD-Q9QKxgztgTP0VPFHsEH8nyLkF-m zc9T{1xz9qIaBg^I7>(ytcz3S9w4h6k3d?UiY#MA(g^)Pe%)8IJsyv~9qP%8$irq`yKa2YV;L4!SkEkRkb4WKW3!;b*h!eP{w`)#Hi7?__3JT0 zlcHD4V%LhP#TE_KAq3-aa)`29-Pc-peZmKdq}1B=`?55&F78X^Dx9u zxExQ6f|97<5@TZ1aJlv-MZ1`d%1f*bPo^djt;u+0vn-!lCeauLCnggP;ND=FlwG!oFWGH6fJ(r ztYP8lk}=@a(Qq`#w5;FSUG5l;NL91e`{sp}_Y}a9y@~5wmtLDxR~T7YzxB4;vEX8~ zKiEA8zExm^`n!luSV^lI#;L;&G!VW91+=$Vl&jvyu~F_)lFKU91@Lz~Gt?b!DxvFk~iN0itv_Y^L_uUTXr`TWl1zW5x zOim2x-s;n^D=Wqw+?_^9WqaOd_(Aw199yqJ5r>=x4oH9Ss!xdbph3&M5APIPopoN> z8a;`T;TGlo>J9WK<7iBzkcCkB~ zqN3P(xNQ`&Y)VATkX(}v#A?PD!Oph(4Et*rEOsu60vxe*Epw!GvvXvq^5LHyji3F} z$W`gmWvC|RH)T8g9siGGSZtiI3K6xADA+P+HcVAb-AY#s{l(9-oOA%X%0S{-I&%QE zwhO=X9efRhmI9D672b^d#Dr}&r$g%_&r;hj+P~;^=$P1SsaIIe%RUXW6ycb)#Xe*H zDIat)*y_r}<>CZ(c)oYweDfS-B2{&w zd1xrLvU>p;gXr*^B4kmMCu!#G zaEigz-qpnmX6N41#LF4)r_tGIJ00_`s~1&>zr+uC{<~?e)qe4Q{HeXeK8_qrhQjag z*GJtIxiSV$^aq{7+v&;nxe-`<6ckIn=M$K6NDyR=dJVoQCh-Y&0B^G0`PFX0R*gb; zB^eE?udW8NfouHTCs+^~89Ui3n(IA!5x9YFh;R%VK@ruknk>m;uc~gM;)Day_rcHU zeAywHi5MFT!vEcN)bs8PR$azncgSJ!c_L;pqIJruQ>FiJI$Iewj#xY)zNXGw>E4J_ z@F!|>WO4kH*v?%x-n(YUZoz8rww7`D6kg(A{T$tS8VGq51qY0CzCUy_?m7OKofOC6 zWqvlhIJyu0ta6*DcSiRKX6?N67sjEdAnptDDuUF%bJlmP2K5Q-w0$HWQ;9Bim+y*> zJzYxfPceZV#0Ei}+)Fb!s=9e#sGDaOjQoQy;t!w-Vov+P)3_j-VpaB-a)*YSHiAk^ zM}*VPE;EG#8X2w(8xH*u$C)91O5EUgl}0Ln@%M0Z`LEYx87$Ir$J%amEG*47i!U#8 z7IVgO-}FCJjCXY16nSQeZRQCm7;pu0X|~E4R16M{Cj4gj5tx#-%7^il`uM`EFPl5q zKE`IL(XfcO%^WK?e$p?NHp_jrFXirR2W5{r5#zEt_O84KYOboERZtCzg59pj`6*w;II^y_&c>HmfAA`b2N?*zuVPJg9-IL0U=`5jo%T5~ z6dgK72FpfKL*2(a3|tOk#Qum@Mifp%PeU$?z|zX9DA&Y8GPB1YA z+%;<(AE@?Q#7;j)g-1W3=LB8mX+Novq}h-&QA>D^m7_s+s3FF)KQWmX9R;`I{_vXg za)UvU;-e2fw)+BaUW+d8SQ_iRNc06wx(9uNc;$~Q+>Q=m{ z?2fJf)LF16vhuZ#V9r#bi5kV;l>YXhxJvwg*U{8|jCwPC08|zauS>#Uniu=V#JE4`0ucU{*1E1Iv;bJDdFV zZSTG68$dL9z`PLHRE0q<5EWPj&QC@33k- z5?dwqHg9y^JS{s3j}VnYdMWX+>Gtl|={ne<<>?F%P}d7jcRM_~T9yJlD5uZ@rP!)>na0l{M*)HYmQsbnU!|ubM^@CyUWC$`s z*p?m_eD>%qzu)()T)ZK^datqI;xG{u4o9uj4_%=MS9U;q4sC-9;8?Nua5ab(j8Xm# z?Nz1svd_QnE?o7~`|dAx5f3I3|zVQuHhq!iT6)bXK-beCAql_dcy-lsuMhWWVn~#6=h4R%pCPN?p`VpB3F5_Fc-c z^?t^z4TOruj(+o`S1`poOVIDxN$@4y04U$Wwi$=qvUo;jLPi{e}qQ;T$7v+mhU6tPlr;yz3b^}P!IJ6 z{Lgc9hj~`1c-r^3yHZHKn9?1gkbzS06VzAN%^Ur@2;#i&!Xnuu_FjZV0St3hE1-@X zW+}hGUErSS9NFuU)!8q&BWh*Yn^+CID38DHDDWd$2h0Itr&fEpyGV;5f-qi{0ysJ= zPZUoN!kYbPWN>}hAdC|B0n0Uh8dwYgyn(Nk@595?WSMQ6O7=w6HhnpKo7d;L@RC$J zqGGt@yZ*m#W=0i>bE(L~vQr4c1>{?zW7#3UI-WP+3{du2N2mXTqA&LyY8$H#LM~pR zWl&E^twWP2W4h}|BggsGonZlP8v)$Gnr9JtYr9PS3Ve8>vFvu#^Zw;YaIw%X&sn1% zlMS;Ia(7y~m45S_6?mUI&HY9~g~HgbpJ(rp3+$XV5EVvHwMpluh&=^nQ-QZ^%B`To{!>gGNIKz_W@Z#pCYYYQNLb%jvLM`euws@TlVs z%t;jBe$$asnPa{v4Jg>ya(Y=v%z2-HhrrAsHIQkxiQjl?9GEaMqF5IyhuKzHCfeXv zMbvv8MeM}p!1=^1=Z#nl2^|`-7#nag&5ig-v>^gfQAn2nCCBW-V^nF)_4{BOL@P8h zU;ETy=eLe!cNC1{sf6lVL|&?k#Nll4$Y5m%ubLyMh=>wS3tggkq|-j@H@a8-e;zuY zh=4`rzpW!)+&E!^W(Hf&I~{lah0ex%xXbJd-7)V9jS>^>_b&t;jzGhsz7}H#0i%+p zXQRcU_!#esJ@|e+H(uX-$q4W&;!m6ouIQkjSbeoW*el zKY9(nEuvrQJR&En!``%mA2U&rOUKcN8x(@pd zy8*4Uwpnqip!fZ2eX$(SdJz%5ldh`}7QPc3Hv+f$ptT7GdLmbaPiJSNWx(q9dw~_zT>9dH`pRym(4*p?b z`UI;hRuT13Z`c8cjRKElbk;FeN&N~%xhe^oE7zpQh1F~g@`(^JS}vY>ufJjiu`6kZVk;TaF&R%!N zo%0ia=fk5(2mRAx^jDE{LUac}+?`9tKEIu9OWWx8Va1tVZaR6xs%-5Vayi1eYP`B>_G zapXgv6f@bIt^wXh=LnTnb?Lr9I>p&~mWn0td+yTE7Qrkd1bP=ORGSI6dg8H zey{>;(O@Ax2ttg&`+Ig555z9ZZB*vK z@@TBt)=!ODtuwTSRivj@!9yj&U&xE_7qo2@T{0&}*He#jLC(aBo%cEh`bXD9mkYU; zqw~e$P%9BqA`4_u*)vxrn^aXp-)#rdJ^$TV5Bp#36C46FjJq+epB-oDm0S(1SL`j0 zf0$;Fzr)GlI^eZ1U{7?TU7^%Inr2|Gvtfb{JBFA}CsW;|WNtoQt2~li_POKU zP48cHJb4doYJN zc1c|(_Q8&)le5#r8*2EB&hK(J-_`|19jqwO6~nKfp_Cfpf0>8XjwgYL!D?v8>^G>G z^{84H{zPkV-zPU3<5SzMeHMwfiH#-CVN5n7oVGqROKRWk6 z{jVYdFN0;ZL&e;*5Q~kUuTYccuBx#Tc|upHuPJEkS16J0Qdnx5ejQ!EOgjLgaM+mC zK5g`wo#q$Tjnkgm7-$ zdfoZlmz&Nbg4ZpDmP5o2hvzA2`9}W69&Ak4w$cuHsO5omkJK2lem12(Xr(mOFr^6dg6+Zr zVkaSYto^`l#fyvme%Cvm<)?c6pb$97i*bObJ4bMU`aQoGxKX^ z@T%8XD~!lsY}iff1}-MAyKXk9Ra77140O}r-9`<_pIsRrfRPj5%aW{SwXg6$3I{!k zRC&xAG0hjQP2?>aR1Ln@r>W4ewL0*#BI>2&urhh|ZgO-U6obCqNTBOFSy{pOB=y-} zx)yn?yvQFp6Wb37bsdY-Jc+<*fAzMSbw=E}Ieq9;x-yKe8=_b{Kt4swBZJf1c*KUH zTJe;O&&-HFsD?z%a37c+^n*%Vj$qZG=Dc@+5P+8zw4Xw;M2~4Q(WsCtUa7{ zr6ZbKmY4Q|DhBU6H(fCv6AuEN5z(%8Chrc$PbW*h4DZ7yi9qN3hF#_;*g5#cc2`W3 z$e&>JXbaWXiMy>R*5+!udh9+cB;w%}cw#=y{`SlnwTW}BL~22IQ1$)m=7^4iC6m`s z0Gb)x1no6NuP&Moy-(Lc69QroIWV zWvXaaOt&DKQ8naSI&rd@3rq(F^}d&wTL6yhKpH%%lq&#2beEx>rv7 zS!@b3&>a$5CV#>Qup8TqKp3Q6+9HRDZCu^_t>A^ zzJV9ORE%7cqEojijHyhJm%&Tw8fq3i>6uHa|YZ3D-#$-F7@GH#$Jsp(CF2IPXfPM&APH4 z`ZG{d>ViSjE?VQIH$%6Mx=zY#m@1rVx8tjSJ_V zwAfwC{V#GFD~P`_1#5@Fi+zMQr?l zEY5wQ1Cwi6W0Wp*h9YT|{V(r*oSMzY4N){z^gzIJB!cMF41-j3#;01@aSrZv0S&ULkuq_mLh%RiL&B{jxOiG zEid;TZ;c_P0p09~SYtNM9fts8*P-ut7J3W261M_f#h(1?d@^krkoX@$Pvs+HQN1Py z!J~`RSUXxz(arnD=Qz3ru*<3kF@|z_$cTKJ2Zw~{=Y%sHl_LBtT*GrssP^$8FnwOp z-GUH6DL1B-Ao|sz1rzh!C?0zkPphhzo?b@~(Vd(P+ao#?b@BR`2l2jrJKt5@_DL&> zxA!@$8NJI>pMjH~^*^>=tVb(CEo!~v3nAC)6=X-Ua>~K&j-qQX{#EWnDMrI4XESHw z2bS@v^Bwlbb80Cu=)K_RP(|yPhJ&7qpH+`+HBsKGb-@}rCq~foiDcIJ1{{{|g8Br| zjItbhGV*A&kl&~Iw+iV}#S9`kn5eD;YN~apavA%(0KU-d=dr;EmaMynoM^+ zHpumeA5`~>Jt4U428+hF(_pjIm|Z$?R>vBFVX=Srz0QM*o@6ibMOe5vb*|S}`u|6N z`CWLAk;-@EoD}x#gKA}a^tkU?IkL~XOPK|MwPvRCMU&+hj< zbHCaM_$c3?fOHr5ZP_QTZd53<`>ed^hrOpEq%4Ak*&CP*Sw4jj6#K64;)0;)Y{PT& zUF>tRdOB-7Vf9 zSrMCuN0y^u3HfSv7au@zPnY9f(RGO2DWNe}?kkJEIjtH`dY~w>SM8DU92#-6xR)+d zEWMKq!+)>G|mB|G<|VeEbC6TYapbJVA_}5a!=2!upE|PMJoKGMeNI;p z)jOgTeoCGpgBQWtFLDSfDqVuVH4|7JPv~*C;R)0&BaV?p@RaWKbN5ppJS$qitp81C zYh8;h)RnGHYepXmYhWN#2hFcu#2-52SedZc!KzZ%UpGEzmH2YjC+QvsLn-%#_)$cQ z0C--z19HdyVS;&W{Ha(J2jOV!?M8E{Z;S4e&&`HNdyK&<7EP@7jlE_|CQR+5cQZzS z4ji^?HZTJVjY$m5Bf)Ah%NKnPld|8t{Euo5_2 z9CbFNfu0`PDlvN5dPyovDD? zKuEObdho%pSH4qr4&AYCbV?DU!MyeNfmW$)7kAHkMeZPHz|DG^Bzt?@NH1G2@;6mM&_e{;?y~F6{Q3nm;O7Hjx!oae}L+ z5|Oz;!ap@m_yYTM(zu~C7#KQfDnmRYyaJ0U?y%pX3}Q<)-s-lkG<86*4hj{KwAxQN zh`iVRmbp_M(NIH!DV{`)*gQ4UYW1iPe|1!rz$&z+&pQG&!H=$3)bp-yLFtW5g)S~q zzcJRD$AR9{+Plv(BuMaT-?pZBTz3V7MYW@k*>)qPL$J3*&M+ZJ8!r5*_srOJ=Q1t~ zl0R%THKmw}>Jifo{esP4{vm=;MXCw5P9AL^SWh>JVTx zyUQ3K@eAxi#6`cwhsb@g$f}KD@;s?kOWlKKQ3J2%AN>Aix|^!kJfjI}4{w0)J0^Z^ zXnsWRMo!y-6H^z>Q}K3mhawtT@<4awaUwm~>q1B4qiH#45x;jXeo1bJv)gVIRJXjM zEJnP*)6;~^H6q<;#pjNO+gR%wWib#6YeilN^AtOZLvFfb?3$=Y{QuPWtT@%+s(;`y zuu75Q&pyj?!1&=*q9}L-ZzlHBv*m2Ms=fXnW6=$fKb4omjpY!I@vXl@Lk-iq>f5@9 zv3;;a7zWj!Iv-IW++(N~sY3Kg*y~6%h*pPuU_?juugpQLAsT@~$v0j#qaq241Pt4J z?~1NPlrj>ke{)8iNzt?288*9KD37j(_VR5Xq zZV-F1lG-8rld949es^t{SjXU7j13R{Fpb6CWYy^?wx)AX@bf-UBi##N^7Mx=cC4*< z9P@%xg;7Cuu<<|pLpiB?zxrni&Fkh(lwp;M?f>pI9Q42m)mNxcp+jKvd21OO|I4yt z7oYkzHkx&SPGG2wh`t5Z1C!*LTqCRXqj&UN!kGX6KVB2nY;U&9SvIxQB|n9f$WNA*Sf{efc|^-9-s)+p(H_PZx)YOs5(87zY(rHj%N zm!^U}uoqD!zI|vvL}1M6{`j<3}TS>`bh>9Cx|z<7Jn658^l9zgK;7=sc-^ zDAM-&1Qbp*3}@MG2Jl~3ods7+9kowK0p zMOUc4LDZwpQ@y@t;;c3r{Uzo)s(me1q&LM#!b>(fgZxcJ=H_&dR=YBB%zVGGi_mPf zKil0E>I-?+yRHJNOSd4W-{~8$A=#!r9U>I^0eII^|3eyN0?<#L2kR zzx#jIwdv_YoytnGY|ujUC{_>$IVvx~p79?l{BTQbf{|@CCbi<$4DO9uK!18n8urbT zwP6jiYY2$dKez(1>c?rFpLdtk9f&K$u5u^25luSwRi6jia{Lc={GzL-nP7j!=r}xn z=(72Q!BL<<()1d(N>xHYz1cXrL0Fn7!F}^YAeg5bGF?vCYW`@kX&cadZ&}}VP)2sc#y2&SKB6YLybm4=> z#D2{>zH1e$*)ey0N91X>&}iYHtw8ZIFUhZACR7*kM_>C_6szZ#oSe;A?MSMP^aq1H zQ!=RWlQG~tbS1OnVOU?MS){rVPFi?3>%BrNwKm-uK7b{W|3LKx+FAa;sr;9D1 z7f=wk0EQ@%#`LiFVtH8`uL%?P6wUMLySfeH^6|L*JuXY8LrZ1O?RskguT4QH0-)hM z?mFbD@Bt{7Oh#W;Xv+6SCWBV7Bx~L6$g+Jo6OApFa#RPbc3k>LtB=Ze!HGtS*qcg|>aWXWq{K6QoK1%Z)?PdR~uM=}RH@^3w zZ|a_ggXddR+d(pT_=iTu2C8UNN35P@w<{NEVZEGN-N-}pg;#;Hu}3y#Uh?gHYChWqB*Y%Fq^*@x8a-S7B?SH%AsQD5J zQ>*BXB(kB&r(KhWvsues3HvO*6wlFkpZA--wDNVBoLt$+#5iu&^eo@Zyg0|ta4cti@#wB?LB&j-PV$5 z5I4Ho2t3gWwk4yT^^?vGo{8h?)H+a(QO48$JvC0*jLt0V8P*Jk^}F+^8Ik#mwB&?h zBKmr$D0PM?<7H!@3W8ct9f+^2F&$@gF;`#4fVMWpW}Y6$bCAGtrvUnA!nwBnY@&chETS1(>C;y}!_> zbazngy3jeG({LG`188uq3%QLrMs|7C@$Wl7ABY?A_ib~CSHXHL_j$;Xog{+A+X z(@c3j1N5E0fi%(lS{*7-<-k~SG514P?s*e%d{4kSYeb{k2>L{~Fls?C=wef`HGeKz z7U7Dg?)!%L8~1#xRMb7}~WP|s*W_l&nMS9U%&HK|QAlj#W3KvRquUEMF?xDb{`+33dCCB(eXr{U$fkbp`g&U13p7Pf$4?+=)?(K!wq}NCjEvCRg?iM7TvHX zgZqQXK6eJa3n_`WI}7_vB`E60G5p=}blS24%ro{`q>f*=Pp!v|u8nfhdVo5?wpbEX z>vA3{8=Wl9I)i5cz_@8r|Lm&QdliQuC&!$K5=BOQzFDJM`_^w}aj2Zm`h*%}?AXXG z=GQqk9$}VfaCH)cNFH`h$gt=OatWh{SluhC{)*- z^%>8@wU2#5OlDuPBA%Hc-lCeN4TF?$sH=c$ zEcLT&^mRwFrZ7(Ko?Kofo?KC#Gc?O5U`hii!I8_8$w*H-~@qy`{bdo2Q<) zI%M0A{nfKe^f5Y>J@q+v;YU}5q0w1EzoF6p5iYUX=j|oy7Vjj3fE&`Ds-4wiK~zHF zq?^^~$0MfDhYR-zuaIZlHV{0nv(GTO6gY5G9?PCmQ;Un2{X;^Y z`xHb*te_r)TFA;)E4SWg=q~wvmI>;v#*^I_-&>EmK#1g^j3Sq#-ovc(DKgQa^rTnB zAgjrNV?r&UMU;f}g0xQT$!S01)me53o9BX9Yo5V8upHf8mUn^3StqYH4UwL>L`#$wHBgGer>z= z#l3I>HJ)++{W}-CN4if#hINU+2Uurjk&hJhV-Q#R243AbWa{EO&p|L+T51Z%f0_yV zpQaj1ywj24&@>BF{j`Es#8qci7pz)CM-TfPJ_4m!>ED5;+;uLx9B4l4&uZ{Xs;S}E zDhXu^>d*BTVMSn2A|zUMu_b&19>_MrmnkpV{TIClEua$?O<-5yq>wGj0k(<`6h;J5 zmsP4hX&HMH@_1k7gRlwT^(16!+s#=rM6oI0L>A8zKu(8A7Qh z+BGY(TTz~D1D0lntfEi-5x--P#M=}j;y>$O4Vo@5H{Fp}olR$qx#@d&tv@=OC(7zF zsTx>MGye-hkSv4OSXRBr!PC|ua0MxifS^Z8IA)_!$mX2cGN>cBoPXJ~NcB8MFH3P?7YFsojiw?`vIyIEmf!M4`p5f^JbCIB^_rubNOqtsY2x`FR?dK5X~B zZoOE8>Ua2t7yXXY*y(EZ0-!|ttC7hZ)I{MbV0r2{d~TutRnCf;RTe>W#g(d;_zU%i z&wUr(s$;EPch?zVMe^yBW{sXi1r#?Y@ z1nshl^%}vT$YN;AL{aMFFh6pZqppJbMvf;xg%;4_Sv?dzR1V@R-ObsS<-RG(r|^b^ z4;$jnU|;c9tKEGVtd39PZpo46I+mV|kWw)Ng%kt{qpQOlByzsj=p?LtwWq87bk~{X z(q>GgC-<=v_#yeE$Wrzqx?z>}x(~)8sX#6HE&SLY% zd&&^lVQ85rD~X%oD55m1r#_o(wN(bcR}BDfdDYnHP1Sk$CNDPX4VIgg&93dPPtXBD zY@fPn{o42>6)BI6gO@RLA^=*8*NseE0GrUef?7f!WURXA(iP&<QMAk5DP#W=v_n;qF{9zIB5I^Z7#-g zsiWa1=#A8UP#F(aT6a6DP%F?nJL>#uBB5N5&82>?I%!dfT32?H9)EO0svG6sa4oqK zRE?*+@4N0Um8s|fZVZE`g|gQ~AUJBguBcO0pmDK~qEj`DB5G*CL&x|!-A#J{QU>`~ zw>N4|;hi`g(V}dghK;wC9q4Z^UGf48K6e2F618b zLs2>u6u*0gE}IS>F3e-;b;v^Qb^oBcG#zGvpI|Z6o8Vb6L%h>^ik>?qV8>Z&8S<+2_O5^WFPnl)BI`7fRdIFVR(e4nNOc!z1Yt$C- zZ(c?oao$gmJS?sF8A=72WMg+bBQ#6S#R7^w<{O{92m%dDkwb}jsIjPr#E$07nW!RV z#<1&IM=>Klf75lSNVw}S{7OtfU*j9R&-edPXN#RY&nCd zR*XJt%=S2~2$UDT%F3|?dW!1lGgPNHeg3wqqV4|B+My<*%#q_^0I-EJ33r0G&?#ir zT;ewMQo=^@nR*B5&BO0s^{NOJx++dqK|mcK3g-vdlE;p#hn1KZ7AN<;Zk@^O%-wGD zywI5_nfCfCpZDY*>x@5|?|te5Q8ryUUW?zOvt8>mm`ePItE7jNaq!hgy^4>z?M%>r znxw<795h!r5c~JKo)zC%D zQ()G#k#I%I0tkehf+gkwXd0kRP=w!|MXU>{K4|1TFUE)ZLq(jsV2|#0-{9G}9Exbl zYr1;eDL!Jb_iU#-B+r7T;Bg-M23>^eF*=L&zP-~tQdqo6t+c)`wVV~pz))@4|wa5?6@j&13 z#n&BU=u3X~F6$%mWLc;dA%w%zZ#4sFjZ;Q1I(*l7@F{c(VixuR`l~0NRl?58gjuxp z&hgYI4|@mCY7fwJL7y;GdS&VC3*q_J+^fK)oRFxo$kri(ByZ@;r>~A}boe0c2STy1FfRF7d#*?BtxugwFf#eLTw9XrGwueyiOAvP3d zfZ2H0zcObij2>{RdCZskOqx2Jq)x6_VB81p#g3qcxou3)WXLDJ(UIu2%$b}QZwA-L z2T+TNzO1i>MuRnDmhy0wk|ebwjXGvW*Uq3h%$b!Ow0afriu z%XVPB>;cSjv8$n)(g6o|LSe#&i?ZY~e2n!b@3;P_C)G52!UEo(4P|rW2fUgr8cMM~ z&4&DqLd*W&?#|G?jZ9rO#f#iGe%J}7T(^gz!Lt%{RN=pL7#W;4PY-3F$dLc)(Fp+= zItP)b6%3D;vElPEf$}PMn*JT@VK=JAy6N0V8?h)jeV+93WPPx|JfGzkF&;*a#XUSqa6LS_eAp zlg_Z!y_#z*A}m5J)!52gXO14QP#13HTHX64o zZhXCpcCj>%&TGrY)OD-6l^;`3(l^n{^081&6$?9^#XGzy?Fx=Te*|Zg!L2kh*ryCs z<+`c~m7Oq(#Xc=IWmjks%(uEd@uKV8@B8i_n}*M%0Orr-g0s#8-GNlXC9G;5YjBG& zW6>=Q>Skw#%6dM4z7kZ;G}BfV55u;IhImEM7Ht-VDjV$xluc|OkHo(YrJS8B*TaHP zn&W~Xbc>A|D<;>6w$K%*7@*b^C(t{yXyRWpiFb#b@X~f9EZ^K+G#C7mn4Awg?{{`c z)X!E^$h_-knJ0b{?jyz%x3Pw1mS=W1F^?D%dHZ$0Q~o|ST6q$G1L5OO`H<~Ct16M= zN4zX@oAr6@^=U^IS*xU4>JtysdE|JsL%Uro=2IrAQjZpMae95dF+nV8wq*j;o3t;o z1iMzxC4LYd%sw3S8#V>9FRuOBad$f=mgKIH;^)lLbLW7e>0%|@gh|5j>8T*RSAEBI zQ*Vy`$~0~6BNgLK^99j>G|qSYAKhK7g(wJ;jdc*Si_)oP?H6}saLsa3ah)r(9%1cE zeZu@wY3z4@XtbC6rX5M6^3aGNg)%M(p{!fnYo9_&ZkkEYfKyXqU5c1wZMYgGssv6NZi(%CAM0p5CTYf0+pp&9#z*JE+ zJH@E3F5Zw>lj8A{#GOgf~&xQbIX9rh+aDB2T|YO-YNbqKDZDfhG_+O3EeoXBAQ0syL7Lz?lA)Ay@oxY!XErOl@NS@XXn+~ zFuA2z6GMZ4!@jdu56u>I35NoeXO-zCMVulJ=XE#DvdrGxuql*PkB!TE;_YAbsya@4 zO+@J(n2R-nwSx`L_3p5r5U8b&0;9cZ6lz>&jR_k~k#aE|6>_gn1dDauJ%$uoPgaS~ zVy!W65zDcqYz<#~7LzkuSth3{B;Df#5Dt{X=%YwVPNL)l1oI=m=t1;n4;kWz$(pJh`Q#v_Of zuqm|4I3E5)eocYqF0FM%A|tl*eIpdN%=Mo5LPQTa!Yjk?R=W!Ek~kew2IYn&sXbwf zt~w5lrrn7NfEHT^a0NA%G#TP`{%-I^Pz$2pLaD_( ztPsAG_6u4Kmo{tqLg4q8`}e3dL0|Asf6O#LhTRgasRM^$ZFU}g5%)UYuwZK7;FGRS zR7Hs=w^gw(qVsHO+Gi?MHQKs6J~uM_9eefE_)hyCt7>jto0t#tgAv2`V0FbkI2{?5 z4CX`gciL4@39xr`8>23jAHYbfeT1A@xBoPUSRq<)D*5@oMR&K}`>Jf`yIyKtBXi~0 zK={CXW5(}^&+eM#fl5P!DU)3(r9GtOsiWfNWS;P@uf41D0K5VFhjHI%);=|6xhaHJ z_M|_Iz5Jo0i$N*BJl$E{vWR-4S*Nzu#RnRA*OjW|p5e|ImzFbu>1Q5{$}Jd}mFwYF03e9_M-8Po69xuJoFm5-IC#9TmsaFs`+6PqK^7-FgD;7~SbKYHI zl_0z4tp%DkY}7!HD2mP+4<_lMS=D`%f&*9i_q1R3TRB)+D1=B9KCZe+rbS~#5h-$a z4G@a^{>V^iVql7Dg4HB=g?$%!L9g+YYK6{Qhi`h9Zcncu=%$#F_UC=?nbF-|j`E8yMcns3hj^8=0Z;3zOw9@n#3;FWY7SSYyryZ)um zJnDbyNIEM>yYs;o>7 z6DyeYA6+HA9Ax5SzrE?0;u;x%S_OPKMVP!0n_%TaHFP+kVOPa46!_{uAuO9+i3%MU z5NqI=P%F9MP`e*Dvag-nRnYl*G9xXMT006R?8|yHf7n@;8z%-z*C09KdS^ZCh-}|Q zBV&=Mbsn1oc1#t^eXmlJjtFO=`(uwox8bdJ1WpV_NQWir=MSK9v@c>DY7*)L=!*CV zdV<}Nr%@A7hP`d({SS`WEDgrq=)RhOyhsyt#q}vodlEc$!RA z-au(|+xNst$9;z;L0-sj4lLSARIdZ)!a9rg^|Y~K4;w$^T+O{sLE|rOBk|t&)>)r{&cJk>SLLnB=254@`>;Lyn%(=Q*I_HP z+bUt@vlIYqi-=BU&dTeGil?Wl7QT~nyKE*54Jh)|? z5yoey`={7mM4_}sRVb3V>*fy~fE4R>5s?cCuJnUdMv6$j1Q5(NSl}1%a z(+U%yFv9&^b)0iRJ?PTJ&UP$?<4~aLO9g>~X;IS8de3wI(7e&q?RBoz#=@V&fA%^C z$29LfTIu_)A{U{^r*eXD<49B~VCq!>4u%V&@wxlf7mq@XZUFCd*|qRlY6vNqaGP*I zxCljyya@}Y-cA)A6~DSmj0NU^K3DdvzV4)V*>SiDlzp-PpF38~y7*969nTVzBm=>H z$`eoeJmgKTBE~#uKG<`6i~n*jdtHYmqov2O=*(t(LzSba3Y2jx9EJ;-5L<}y zL_FAQ*d7gpk?}tiOVpz3f>rj@%|cD-CwMnn6LxK@pW!7`>~=D1?pr&>_Xj;a(H{he zS{L5L2h1CZ++oCHA}wfxOwPB}$bM<7C=_{hSrShztHp4dB^FH|7;GfGk48vEfLIUS zBaeh>>L&KN@u(8m?RV&v%mxx9n&Xl6Pr;o&H8RLOzJ~Igu5f4ySZ@*Mb@K_cxbKWO zCp&Se^MC4RT&=8|&!jFjXE>5^9hRJiT&GD)C3ejBKv}uesQjSlWAH$7N?EJ?ObxGI z(|X0PbXO{VUwR$4r_U3ne9g4t3n`d3oZfE;(P}H;RBgKmTu%q4vt4+`P zODlo3yKDqvRNB{}IH6dS&(bWYoYG5XXy~H1c>1*_y24syn>uDE&zESb&@y zc7>-##-~#)c#`6B`7lOgxKyT$(5EbjuE|BR!PIPUvish_S|J0o<&AUcH8v*}% z?ss^-tk;TCDW>WT2FtICIB-sK9PAFoC0|3e&w{{b?325$L1`!#f#hSh%%2LKz0S)M z!L3vQi7Txw+&I+Yw)=R~J*xQ<Y--)GL28?a7szB zn|dQ292Y5SQCY$Mi<;O~wL+us0A&T%j@{!yb!K?z>C3}+dUBW%-kt9~=)N(GycC4N z{o)eL%J@#@)85#8Wnf?PTAqhjY{s~yRk$X<_3Rl@6*Xy ze=7HvyPmo$nhH#YKjvE(1RVBV$G`48EDdx(#Q}CyZo~3=PbMTsv1@oX*tY&@uq0?N zH5+A|xii;rUG;ueA-^Nwrwg5Xuj4!g_J=}Q6)GDF+oMpR@}kpJT_aOwFX2Hn znQCfSD+s>cSF}br1Np1n1SRmK&-#1SU0@j?*tBqz&gzRcy9a&&2jN?YaNqo-70rv$ z;ft-`H*P#K{soE)rE&y3!kUl)V4{aIM|8kHSmhKvG;pkiY=r{!RbzVH`=9!4SXpz4 zC&Phmba&zb6)liiPtFdqRTlw<|^Jvxw&Wm~ja>%yHlQ57X?QhMqoZx%=TeS%l66B6@4=3fD60p~w z`|Yx0sB%;*L!#BU>gy##upjY__tT8)QoEo=wkV@Q6I@>SSm1cM%J{?kX&kc~Cb2 zDdd}3RPl*=QgOI`7Gik}$6jNXrwlX!jsiPs>>VYxuY>}8q z_fzNtA9v8_RegWx2r~io7ZIt?-s^R`NZ$~IP$Jy9vF+gOtrc)%>v6wnSqsg?lm*~w%;&#o(!FvagW^N6*eeypS%Qlus` zlC@!SFZ%aY@5&)X>T(c#gy?a(tKT*4yg?2(;hB{`ccUfrIk9wA$UC&xnNxa%;=>q5ja0CzC zv7Mn}UzS0OEPuM_%qj%F_3V6ikEd#6_#Sfz)zE(j$1cW$h}l`H3-wJB#U3?#_uVzi zr|*DF1cGiA@da=RcJ)*5h{a^XW?ytmpCGPQH6+$%sd2fqbNtsqb54y1TZ59y{`m%K zA}Fz3*_y?v!$y{x1*?<7k7^dKt8ai9Zmmz?Bp{S{OGE}(#pxyO39iR zItTXMEb1hKeUh86b*+WYEAoNi>N=oT1Z+@FXcgh%aBSEc+FA8RW7go!&~kNSm;l$Y zF71rbGgs8;8>ZR0?Vb&F?5uH7^^1&n3H2`GO*WKDgys6y6>xd@ah`)VgpZ|Vz$J@A zLcha!h+d^dlQ%KX~Z(y^5))_<^=S%^i)?qnKascbVGgOZ3?6sJ(n>oEScc zFNDIK=q|w;&^XInbU;|@U3YQZ@ep(x5S@_pHC88d+UIdw>RTba^!t!2JnliClu1E& zFuQcncG*yQsFdW#*?DmnMnOFmiz}L@q>~%j`_{B?PccRqk^L%fUF;5=jqTA53`%y@ z+}ULi0zJ8?GHEjoI|o~UMd!Q3;@BE{40kBQUhOwEAtGC9I@%hlL+e|%^r?BlN51YS zm4G4~D_>TE85C<^KJd*fjgE8AosI5k;5K4d%r6TlI=oX+ zS}8*{F5hD7SVYkk6v&!prNm7#!^`GPRA9wJP*m5SPZsT^-=K72V?I-iv(l*4^3w!j ze6a*-dc+7KX*kkJN9}Zkl>?tpcMhq9@6$X&-DIIE*6kt|m+l2dsW%DlPje4xfZyo| zp)LXPLrpI4hxvT%D))V!{SklC8H=N2jGj3xde#W}5852)z-jM^ukohxRam2{5s@-3 zSpM{(tI%)I8>mzhIjeCHPg+l&m^G&IN8emW(+3@NX1R@ z#zRen@6bczf7#?}NA7l4I`2?P8_iDVJMGVAW8gPw*knprc5wx(A);n+)l$Ri#i}v^ z{+_;L)FOxvC~L&fdTWZ{zI7jaeTwH_?OGyW&(Hp&_rMlHT|^yrpF8Cd)Ck+@`eafP z&Ki%J&4tDW2jA_}P#CB%j7BWTmqI#4Zeli345Uq+8C?>LfDfTb`OvI9c1G1q_+Qpf z<{)Mj7pT?{gLq1?F`mdBsfFF>e_21_HeT-cPP9N`pT^W^nCvuf}%R z+^~Q2YpUWPzea&)yy`5wjSEsaRufj6SD<91(xKDe>?r%5HbKVyI6YmlBA(UA#6m2Y zEKzJ|4B`sBAHIvOOte4&@}`lgTEnYtb)SqzDr^BAg^{LWCgP*78|D)@# z^;s1)uoI(r(|e+7(H{$8UE$MpS9#q#D~<7{<=ZY3LA+1W@DwZp!wPF9K0_kgpa}| z;lRw7sEj?-i63fd#lwi8|2K_Ew&7{|4n(XKzXFF*;|jS^!3`_*{g`67AB_agV+6GP zqFmjgM1U*?MT>PRF0+PoUK2^nVMZ5H^_8RB89O)c460XnM4ffS{*VEcd9>uSUY7~U zg9m5#)E(0j8^PK18Tw{wF7}zK8gBwCkgwSzJd4lTIbtNr6%|O7LH37Ejc_YmkhKn7 zIBqtv8kD5+eR~z6F0&C24DAc8k9<~#w2RKm0*b5ocv^VwXogB- z%%x~-xAlA8l_-7zPUM;LNhp#|2Jl|9FV7L5c`7uK@)x$Ya%{b1`HZPsd~Z+-fA|Sk#b~kNf=4G zPSF!w7w^G3%ZYGFb||h`mmT-cQmIXnLGo3s6U0XxsI!N-!*>JV9_g0pveni9>>7Nm z^}9Q*y?J-3lLcM#e#hxc%iGex!2C{|PZd+LQFegBZn?2TYWY4W2(<)71;3ydDE?c- zApT=XjDNLJ={$bX)1VuA)mjjH!JB&QISe zo?Pma*i?w0On1Gzru>6f@e438J{CJF60r)*jrwjmy%~fZKviYETb&8QOQ$Y^pk|T7 z(fsOtqvsgJM-21Wdv=^m7LH)SD9CTt!(N! zQM5b{zjHZ_bKaTc(ne@?%XvkzlnW=_u{at&M5{o9dC|xqoU@L)Z#*jV;Q4eZB1$a4 zpIsYXgdu=)*b`8AI$Yc$L`@G4b?Dd4COfp$IiMkS+|R}&J7gQgUE(j8nQjT&trPWD zdN@L(b?LGbpxCUu+)38W_F{ruLzaa(@|TT>L<*z()%2#+SleAQ3OjnC|2vZ&(aXcRz$%@i@n1|WObn3u-jTY@hei5Q#z z7d?pNFc+V?qFn_wdFm{#4hdfGwKpC2TkpU0dAPh>0`4fP_^YwWF7y_lFQH~P0xAP4 ztzqvddF2gqaqE`Xz%KF~Y>d2b-Y4}Yx33|&unfJ2%+JdT7fH1XG_blW?=XvNXqFa$8Tc{En&J8`Fb=BF0=U@p$(<8#+;=n_ z`KC1^kEiL!#n7%nY+%%v9YKLAe^xVm*s4$=Co6O3&>;viOa8Wz$*gFvc>oy@UIRxc zgSFZQB4yu;&}Abh-L)KwLKR1-y8xVm_oizQF+l_AI6QgGDP~OmM4Q02K>(n(;yN1s zVG-ShYQ$Ha9~Q)hf9VML?RHm@)&JU=)jC{tH=;Rt^ZV%xVh5;`NEN28ca6?{?u;5> zuh}@BUZd&JBZZx&ILAuu_6~$-U~l{ejE{$7W0pFf{dnCtTR#OhIL~b)eRg^vxQ|+)hKS@&uORq?3<4$PFbd#-se|DQq&Xbigr7LYHd0@krum# zg)vvOfTAW9X>Yo=Y@7;}?`O-bU>z4k;Id14`Q47NCu!hC2kKYop?oI|bvUL(Hm_#} zp3a)XfWRe&CVQ)^ut~5Nc%b3-HRyV0#mQNDYED>}D$8wvvVx$L@Z2z86RgCZD1 zOSvEd;bV+koe^E*b9b%!RSdV@zyI{!b$_u{@O=ss`fm&>Ro!uSyxTQpouXsfeX;vf z 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
68v8)mJGO{sb0X)L!G#=MCXpj|i) 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

_^H<~Mm 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

fvtW+aTBi2MYG?u^T;vuaJMj#7{LCZ^ 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≪bh@E(DCe9kqZ0o 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 literal 0 HcmV?d00001 diff --git a/app/images/tenet.svg b/app/images/tenet.svg new file mode 100644 index 000000000000..af4092c75b34 --- /dev/null +++ b/app/images/tenet.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/images/zk-sync.svg b/app/images/zk-sync.svg index ad3f730f4147..55021930f1da 100644 --- a/app/images/zk-sync.svg +++ b/app/images/zk-sync.svg @@ -1,5 +1,14 @@ - - - - + + + + + + + + + diff --git a/app/images/zkatana.png b/app/images/zkatana.png new file mode 100644 index 0000000000000000000000000000000000000000..e26636312cc9237afeb9932825ca8b6c4c4c5530 GIT binary patch literal 72223 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�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

-s)x=`#0I@lErF5&<(7dYb3y&Gp%=;7M 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/shared/constants/network.ts b/shared/constants/network.ts index 4e408c2f846e..f31becaae071 100644 --- a/shared/constants/network.ts +++ b/shared/constants/network.ts @@ -150,55 +150,55 @@ export const CHAIN_IDS = { const CHAINLIST_CHAIN_IDS_MAP = { ...CHAIN_IDS, SCROLL: '0x82750', - ZORA_MAINNET: '0x76adf1', TAIKO_JOLNIR_L2_MAINNET: '0x28c5f', - POLYGON_ZKEVM: '0x44d', FANTOM_OPERA: '0xfa', CELO_MAINNET: '0xa4ec', + KAVA_EVM: '0x8ae', + HARMONY_MAINNET_SHARD_0: '0x63564c40', + CRONOS_MAINNET_BETA: '0x19', + FUSE_MAINNET: '0x7a', + Q_MAINNET: '0x8a71', + HUOBI_ECO_CHAIN_MAINNET: '0x80', + ACALA_NETWORK: '0x313', ARBITRUM_NOVA: '0xa4ba', - MANTLE: '0x1388', + ASTAR: '0x250', + BAHAMUT_MAINNET: '0x142d', + BLACKFORT_EXCHANGE_NETWORK: '0x1387', + CANTO: '0x1e14', + CONFLUX_ESPACE: '0x406', CORE_BLOCKCHAIN_MAINNET: '0x45c', - MANTA_PACIFIC_MAINNET: '0xa9', - PULSECHAIN_MAINNET: '0x171', - FUSE_GOLD_MAINNET: '0x7a', - KAVA_EVM: '0x8ae', + DEXALOT_SUBNET: '0x6984c', DFK_CHAIN: '0xd2af', - HARMONY_MAINNET_SHARD_0: '0x63564c40', - PGN_PUBLIC_GOODS_NETWORK: '0x1a8', - LIGHTLINK_PHOENIX_MAINNET: '0x762', - NEAR_AURORA_MAINNET: '0x4e454152', - KROMA_MAINNET: '0xff', - NEBULA_MAINNET: '0x585eb4b1', - KLAYTN_MAINNET_CYPRESS: '0x2019', + DOGECHAIN_MAINNET: '0x7d0', ENDURANCE_SMART_CHAIN_MAINNET: '0x288', - CRONOS_MAINNET_BETA: '0x19', - FLARE_MAINNET: '0xe', - KCC_MAINNET: '0x141', - SHARDEUM_SPHINX_1X: '0x1f92', ETHEREUM_CLASSIC_MAINNET: '0x3d', + EVMOS: '0x2329', + FLARE_MAINNET: '0xe', + FUSE_GOLD_MAINNET: '0x7a', HAQQ_NETWORK: '0x2be3', + KCC_MAINNET: '0x141', + KLAYTN_MAINNET_CYPRESS: '0x2019', + KROMA_MAINNET: '0xff', + LIGHTLINK_PHOENIX_MAINNET: '0x762', + MANTA_PACIFIC_MAINNET: '0xa9', + MANTLE: '0x1388', + NEAR_AURORA_MAINNET: '0x4e454152', + NEBULA_MAINNET: '0x585eb4b1', + OASYS_MAINNET: '0xf8', + OKXCHAIN_MAINNET: '0x42', + PGN_PUBLIC_GOODS_NETWORK: '0x1a8', + POLYGON_ZKEVM: '0x44d', + PULSECHAIN_MAINNET: '0x171', SHARDEUM_LIBERTY_2X: '0x1f91', - BLACKFORT_EXCHANGE_NETWORK: '0x1387', - CONFLUX_ESPACE: '0x406', - FUSE_MAINNET: '0x7a', - CANTO: '0x1e14', + SHARDEUM_SPHINX_1X: '0x1f92', SHIB_MAINNET: '0x1b', - OKXCHAIN_MAINNET: '0x42', - ZKATANA: '0x133e40', - DEXALOT_SUBNET: '0x6984c', - ASTAR: '0x250', - EVMOS: '0x2329', - BAHAMUT_MAINNET: '0x142d', SONGBIRD_CANARY_NETWORK: '0x13', STEP_NETWORK: '0x4d2', - VELAS_EVM_MAINNET: '0x6a', - Q_MAINNET: '0x8a71', TELOS_EVM_MAINNET: '0x28', TENET: '0x617', - DOGECHAIN_MAINNET: '0x7d0', - OASYS_MAINNET: '0xf8', - HUOBI_ECO_CHAIN_MAINNET: '0x80', - ACALA_NETWORK: '0x313', + VELAS_EVM_MAINNET: '0x6a', + ZKATANA: '0x133e40', + ZORA_MAINNET: '0x76adf1', } as const; // To add a deprecation warning to a network, add it to the array @@ -344,13 +344,13 @@ const CHAINLIST_CURRENCY_SYMBOLS_MAP = { ACALA_NETWORK: 'ACA', } as const; -export const ETH_TOKEN_IMAGE_URL = './images/eth_logo.png'; +export const ETH_TOKEN_IMAGE_URL = './images/eth_logo.svg'; export const LINEA_GOERLI_TOKEN_IMAGE_URL = './images/linea-logo-testnet.png'; -export const LINEA_MAINNET_TOKEN_IMAGE_URL = './images/linea-logo-mainnet.png'; +export const LINEA_MAINNET_TOKEN_IMAGE_URL = './images/linea-logo-mainnet.svg'; export const TEST_ETH_TOKEN_IMAGE_URL = './images/black-eth-logo.svg'; -export const BNB_TOKEN_IMAGE_URL = './images/bnb.png'; -export const MATIC_TOKEN_IMAGE_URL = './images/matic-token.png'; -export const AVAX_TOKEN_IMAGE_URL = './images/avax-token.png'; +export const BNB_TOKEN_IMAGE_URL = './images/bnb.svg'; +export const MATIC_TOKEN_IMAGE_URL = './images/matic-token.svg'; +export const AVAX_TOKEN_IMAGE_URL = './images/avax-token.svg'; export const AETH_TOKEN_IMAGE_URL = './images/arbitrum.svg'; export const FTM_TOKEN_IMAGE_URL = './images/fantom-opera.svg'; export const HARMONY_ONE_TOKEN_IMAGE_URL = './images/harmony-one.svg'; @@ -359,7 +359,51 @@ export const PALM_TOKEN_IMAGE_URL = './images/palm.svg'; export const CELO_TOKEN_IMAGE_URL = './images/celo.svg'; export const GNOSIS_TOKEN_IMAGE_URL = './images/gnosis.svg'; export const ZK_SYNC_ERA_TOKEN_IMAGE_URL = './images/zk-sync.svg'; -export const BASE_TOKEN_IMAGE_URL = './images/base.png'; +export const BASE_TOKEN_IMAGE_URL = './images/base.svg'; +export const ACALA_TOKEN_IMAGE_URL = './images/acala-network-logo.svg'; +export const ARBITRUM_NOVA_IMAGE_URL = './images/arbitrum-nova-logo.svg'; +export const ASTAR_IMAGE_URL = './images/astar-logo.svg'; +export const BAHAMUT_IMAGE_URL = './images/bahamut.png'; +export const BLACKFORT_IMAGE_URL = './images/blackfort.png'; +export const CANTO_IMAGE_URL = './images/canto.svg'; +export const CONFLUX_ESPACE_IMAGE_URL = './images/conflux.svg'; +export const CORE_BLOCKCHAIN_MAINNET_IMAGE_URL = './images/core.svg'; +export const CRONOS_IMAGE_URL = './images/cronos.svg'; +export const DEXALOT_SUBNET_IMAGE_URL = './images/dexalut-subnet.svg'; +export const DFK_CHAIN_IMAGE_URL = './images/dfk.png'; +export const DOGECHAIN_IMAGE_URL = './images/dogechain.jpeg'; +export const ENDURANCE_SMART_CHAIN_MAINNET_IMAGE_URL = + './images/endurance-smart-chain.png'; +export const ETHEREUM_CLASSIC_MAINNET_IMAGE_URL = './images/eth_classic.svg'; +export const EVMOS_IMAGE_URL = './images/evmos.svg'; +export const FLARE_MAINNET_IMAGE_URL = './images/flare-mainnet.svg'; +export const FUSE_GOLD_MAINNET_IMAGE_URL = './images/fuse-mainnet.jpeg'; +export const HAQQ_NETWORK_IMAGE_URL = './images/haqq.svg'; +export const KCC_MAINNET_IMAGE_URL = './images/kcc-mainnet.svg'; +export const KLAYTN_MAINNET_IMAGE_URL = './images/klaytn.svg'; +export const KROMA_MAINNET_IMAGE_URL = './images/kroma.svg'; +export const LIGHT_LINK_IMAGE_URL = './images/lightlink.svg'; +export const MANTA_PACIFIC_MAINNET_IMAGE_URL = './images/manta.svg'; +export const MANTLE_MAINNET_IMAGE_URL = './images/mantle.svg'; +export const MOONBEAM_IMAGE_URL = './images/moonbeam.svg'; +export const MOONRIVER_IMAGE_URL = './images/moonriver.svg'; +export const NEAR_AURORA_MAINNET_IMAGE_URL = './images/near-aurora.svg'; +export const NEBULA_MAINNET_IMAGE_URL = './images/nebula.svg'; +export const OASYS_MAINNET_IMAGE_URL = './images/oasys.svg'; +export const OKXCHAIN_MAINNET_IMAGE_URL = './images/okx.svg'; +export const PGN_MAINNET_IMAGE_URL = './images/pgn.svg'; +export const ZKEVM_MAINNET_IMAGE_URL = './images/polygon-zkevm.svg'; +export const PULSECHAIN_MAINNET_IMAGE_URL = './images/pulse.svg'; +export const SHARDEUM_LIBERTY_2X_IMAGE_URL = './images/shardeum-2.svg'; +export const SHARDEUM_SPHINX_1X_IMAGE_URL = './images/shardeum-1.svg'; +export const SHIB_MAINNET_IMAGE_URL = './images/shiba.svg'; +export const SONGBIRD_MAINNET_IMAGE_URL = './images/songbird.svg'; +export const STEP_NETWORK_IMAGE_URL = './images/setp.svg'; +export const TELOS_EVM_MAINNET_IMAGE_URL = './images/telos.svg'; +export const TENET_MAINNET_IMAGE_URL = './images/tenet.svg'; +export const VELAS_EVM_MAINNET_IMAGE_URL = './images/velas.svg'; +export const ZKATANA_MAINNET_IMAGE_URL = './images/zkatana.svg'; +export const ZORA_MAINNET_IMAGE_URL = './images/zora.svg'; export const INFURA_PROVIDER_TYPES = [ NETWORK_TYPES.MAINNET, @@ -608,6 +652,53 @@ export const CHAIN_ID_TO_NETWORK_IMAGE_URL_MAP = { [CHAIN_IDS.PALM]: PALM_TOKEN_IMAGE_URL, [CHAIN_IDS.CELO]: CELO_TOKEN_IMAGE_URL, [CHAIN_IDS.GNOSIS]: GNOSIS_TOKEN_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.ACALA_NETWORK]: ACALA_TOKEN_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.ARBITRUM_NOVA]: ARBITRUM_NOVA_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.ASTAR]: ASTAR_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.BAHAMUT_MAINNET]: BAHAMUT_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.BLACKFORT_EXCHANGE_NETWORK]: BLACKFORT_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.CANTO]: CANTO_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.CONFLUX_ESPACE]: CONFLUX_ESPACE_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.CORE_BLOCKCHAIN_MAINNET]: + CORE_BLOCKCHAIN_MAINNET_IMAGE_URL, + [CHAIN_IDS.CRONOS]: CRONOS_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.DEXALOT_SUBNET]: DEXALOT_SUBNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.DFK_CHAIN]: DFK_CHAIN_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.DOGECHAIN_MAINNET]: DOGECHAIN_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.ENDURANCE_SMART_CHAIN_MAINNET]: + ENDURANCE_SMART_CHAIN_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.ETHEREUM_CLASSIC_MAINNET]: + ETHEREUM_CLASSIC_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.EVMOS]: EVMOS_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.FLARE_MAINNET]: FLARE_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.FUSE_GOLD_MAINNET]: FUSE_GOLD_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.HAQQ_NETWORK]: HAQQ_NETWORK_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.KCC_MAINNET]: KCC_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.KLAYTN_MAINNET_CYPRESS]: KLAYTN_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.KROMA_MAINNET]: KROMA_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.LIGHTLINK_PHOENIX_MAINNET]: LIGHT_LINK_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.MANTA_PACIFIC_MAINNET]: + MANTA_PACIFIC_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.MANTLE]: MANTLE_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.MOONBEAM]: MOONBEAM_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.MOONRIVER]: MOONRIVER_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.NEAR_AURORA_MAINNET]: NEAR_AURORA_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.NEBULA_MAINNET]: NEBULA_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.OASYS_MAINNET]: OASYS_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.OKXCHAIN_MAINNET]: OKXCHAIN_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.PGN_PUBLIC_GOODS_NETWORK]: PGN_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.POLYGON_ZKEVM]: ZKEVM_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.PULSECHAIN_MAINNET]: PULSECHAIN_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.SHARDEUM_LIBERTY_2X]: SHARDEUM_LIBERTY_2X_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.SHARDEUM_SPHINX_1X]: SHARDEUM_SPHINX_1X_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.SHIB_MAINNET]: SHIB_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.SONGBIRD_CANARY_NETWORK]: SONGBIRD_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.STEP_NETWORK]: STEP_NETWORK_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.TELOS_EVM_MAINNET]: TELOS_EVM_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.TENET]: TENET_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.VELAS_EVM_MAINNET]: VELAS_EVM_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.ZKATANA]: ZKATANA_MAINNET_IMAGE_URL, + [CHAINLIST_CHAIN_IDS_MAP.ZORA_MAINNET]: ZORA_MAINNET_IMAGE_URL, } as const; export const CHAIN_ID_TO_ETHERS_NETWORK_NAME_MAP = { @@ -627,6 +718,7 @@ export const CHAIN_ID_TOKEN_IMAGE_MAP = { [CHAIN_IDS.OPTIMISM]: ETH_TOKEN_IMAGE_URL, [CHAIN_IDS.CELO]: CELO_TOKEN_IMAGE_URL, [CHAIN_IDS.GNOSIS]: GNOSIS_TOKEN_IMAGE_URL, + [CHAIN_IDS.FANTOM]: FTM_TOKEN_IMAGE_URL, } as const; export const INFURA_BLOCKED_KEY = 'countryBlocked'; diff --git a/ui/components/app/add-network/add-network.stories.js b/ui/components/app/add-network/add-network.stories.js index 37e61398bf31..88de1480c782 100644 --- a/ui/components/app/add-network/add-network.stories.js +++ b/ui/components/app/add-network/add-network.stories.js @@ -1,10 +1,10 @@ import React from 'react'; import AddNetwork from './add-network'; -const MATIC_TOKEN_IMAGE_URL = './images/matic-token.png'; +const MATIC_TOKEN_IMAGE_URL = './images/matic-token.svg'; const ARBITRUM_IMAGE_URL = './images/arbitrum.svg'; const OPTIMISM_IMAGE_URL = './images/optimism.svg'; -const AVALANCHE_IMAGE_URL = './images/avax-token.png'; +const AVALANCHE_IMAGE_URL = './images/avax-token.svg'; const PALM_IMAGE_URL = './images/palm.svg'; const BSC_IMAGE_URL = './images/bsc-filled.svg'; diff --git a/ui/components/app/incoming-trasaction-toggle/__snapshots__/incoming-transaction-toggle.test.js.snap b/ui/components/app/incoming-trasaction-toggle/__snapshots__/incoming-transaction-toggle.test.js.snap index 465ba53bbb89..bd225d94001b 100644 --- a/ui/components/app/incoming-trasaction-toggle/__snapshots__/incoming-transaction-toggle.test.js.snap +++ b/ui/components/app/incoming-trasaction-toggle/__snapshots__/incoming-transaction-toggle.test.js.snap @@ -28,7 +28,7 @@ exports[`IncomingTransactionToggle should render existing incoming transaction p Ethereum Mainnet logo

- + - + A ``` diff --git a/ui/components/component-library/avatar-base/avatar-base.stories.tsx b/ui/components/component-library/avatar-base/avatar-base.stories.tsx index 1a8536fcf2cc..a890f418a213 100644 --- a/ui/components/component-library/avatar-base/avatar-base.stories.tsx +++ b/ui/components/component-library/avatar-base/avatar-base.stories.tsx @@ -112,13 +112,13 @@ export const Size: StoryFn = (args) => ( export const Children: StoryFn = (args) => ( - + - + A { const args = { - src: './images/eth_logo.png', + src: './images/eth_logo.svg', name: 'test', }; diff --git a/ui/components/component-library/avatar-network/README.mdx b/ui/components/component-library/avatar-network/README.mdx index 1d903e464615..f2db6d4ad227 100644 --- a/ui/components/component-library/avatar-network/README.mdx +++ b/ui/components/component-library/avatar-network/README.mdx @@ -74,7 +74,7 @@ import { AvatarNetwork } from '../../component-library'; - + diff --git a/ui/components/component-library/avatar-network/__snapshots__/avatar-network.test.tsx.snap b/ui/components/component-library/avatar-network/__snapshots__/avatar-network.test.tsx.snap index b186d4aa0206..053fae825a3e 100644 --- a/ui/components/component-library/avatar-network/__snapshots__/avatar-network.test.tsx.snap +++ b/ui/components/component-library/avatar-network/__snapshots__/avatar-network.test.tsx.snap @@ -9,7 +9,7 @@ exports[`AvatarNetwork should render correctly 1`] = ` ethereum logo
diff --git a/ui/components/component-library/avatar-network/avatar-network.stories.tsx b/ui/components/component-library/avatar-network/avatar-network.stories.tsx index d4928ff405db..04265930331f 100644 --- a/ui/components/component-library/avatar-network/avatar-network.stories.tsx +++ b/ui/components/component-library/avatar-network/avatar-network.stories.tsx @@ -95,10 +95,10 @@ Name.args = { export const Src: StoryFn = (args) => ( - + - + diff --git a/ui/components/component-library/avatar-network/avatar-network.test.tsx b/ui/components/component-library/avatar-network/avatar-network.test.tsx index 27efe0948e24..ce7e5574cf45 100644 --- a/ui/components/component-library/avatar-network/avatar-network.test.tsx +++ b/ui/components/component-library/avatar-network/avatar-network.test.tsx @@ -13,7 +13,7 @@ import { AvatarNetwork, AvatarNetworkSize } from '.'; describe('AvatarNetwork', () => { const args = { name: 'ethereum', - src: './images/eth_logo.png', + src: './images/eth_logo.svg', showHalo: false, }; diff --git a/ui/components/component-library/avatar-token/README.mdx b/ui/components/component-library/avatar-token/README.mdx index 5587f0c22059..847751bb2072 100644 --- a/ui/components/component-library/avatar-token/README.mdx +++ b/ui/components/component-library/avatar-token/README.mdx @@ -72,7 +72,7 @@ Use the `src` prop to set the image to be rendered of the `AvatarToken`. ```jsx import { AvatarToken } from '../../component-library'; - + @@ -92,7 +92,7 @@ Use the `showHalo` prop to display the component with halo effect. Only works if ```jsx import { AvatarToken } from '../../component-library'; -; +; ``` ### Color, Background Color And Border Color diff --git a/ui/components/component-library/avatar-token/avatar-token.stories.tsx b/ui/components/component-library/avatar-token/avatar-token.stories.tsx index 85c452bea69a..efedf954987d 100644 --- a/ui/components/component-library/avatar-token/avatar-token.stories.tsx +++ b/ui/components/component-library/avatar-token/avatar-token.stories.tsx @@ -56,7 +56,7 @@ export default { }, args: { name: 'eth', - src: './images/eth_logo.png', + src: './images/eth_logo.svg', size: AvatarTokenSize.Md, showHalo: false, }, @@ -121,7 +121,7 @@ export const SizeStory: StoryFn = (args) => ( = (args) => ( = (args) => ( = (args) => ( = (args) => ( = (args) => ( - + } @@ -56,14 +56,14 @@ import { } > @@ -72,7 +72,7 @@ import { } @@ -125,7 +125,7 @@ import { } @@ -216,7 +216,7 @@ import { } @@ -228,7 +228,7 @@ import { } @@ -241,7 +241,7 @@ import { } @@ -254,7 +254,7 @@ import { } @@ -292,7 +292,7 @@ import { } diff --git a/ui/components/component-library/badge-wrapper/badge-wrapper.stories.tsx b/ui/components/component-library/badge-wrapper/badge-wrapper.stories.tsx index 230524c876f8..1be4c474f4d1 100644 --- a/ui/components/component-library/badge-wrapper/badge-wrapper.stories.tsx +++ b/ui/components/component-library/badge-wrapper/badge-wrapper.stories.tsx @@ -70,7 +70,7 @@ const Template: ComponentStory = (args) => ( } @@ -95,7 +95,7 @@ export const Children: ComponentStory = () => ( } @@ -107,14 +107,14 @@ export const Children: ComponentStory = () => ( } > @@ -123,7 +123,7 @@ export const Children: ComponentStory = () => ( } @@ -147,7 +147,7 @@ export const Badge: ComponentStory = () => ( } @@ -215,7 +215,7 @@ export const Position: ComponentStory = () => ( } @@ -227,7 +227,7 @@ export const Position: ComponentStory = () => ( } @@ -240,7 +240,7 @@ export const Position: ComponentStory = () => ( } @@ -253,7 +253,7 @@ export const Position: ComponentStory = () => ( } @@ -270,7 +270,7 @@ export const PositionObj: ComponentStory = () => ( } diff --git a/ui/components/component-library/picker-network/README.mdx b/ui/components/component-library/picker-network/README.mdx index 2a46c0b60a07..96377c2ddac3 100644 --- a/ui/components/component-library/picker-network/README.mdx +++ b/ui/components/component-library/picker-network/README.mdx @@ -26,7 +26,7 @@ Use the `label` prop for the text content of the `PickerNetwork` component. For ```jsx import { PickerNetwork } from '../../ui/component-library'; - + @@ -44,7 +44,7 @@ Use the `src` prop with an image url to render the `AvatarNetwork`. Use the `ava ```jsx import { PickerNetwork } from '../../ui/component-library'; - + ``` @@ -60,9 +60,9 @@ The width of the `PickerNetwork` is set to auto by default. Use the style utilit import { PickerNetwork } from '../../ui/component-library'; import { BlockSize } from '../../../helpers/constants/design-system'; -; +; ; diff --git a/ui/components/component-library/picker-network/picker-network.stories.tsx b/ui/components/component-library/picker-network/picker-network.stories.tsx index 91536945bc1c..b426b5a28a1b 100644 --- a/ui/components/component-library/picker-network/picker-network.stories.tsx +++ b/ui/components/component-library/picker-network/picker-network.stories.tsx @@ -28,7 +28,7 @@ export default { }, args: { label: 'Avalanche C-Chain', - src: './images/avax-token.png', + src: './images/avax-token.svg', }, } as Meta; @@ -66,7 +66,7 @@ export const Src: StoryFn = (args) => ( diff --git a/ui/components/component-library/picker-network/picker-network.test.tsx b/ui/components/component-library/picker-network/picker-network.test.tsx index a942276c4ab0..ce1c9d553296 100644 --- a/ui/components/component-library/picker-network/picker-network.test.tsx +++ b/ui/components/component-library/picker-network/picker-network.test.tsx @@ -17,12 +17,12 @@ describe('PickerNetwork', () => { , ); const image = screen.getByRole('img'); expect(image).toBeDefined(); - expect(image).toHaveAttribute('src', './images/matic-token.png'); + expect(image).toHaveAttribute('src', './images/matic-token.svg'); }); it('should render avatar network inside the PickerNetwork with custom props', () => { const container = ( diff --git a/ui/components/component-library/text-field/text-field.stories.tsx b/ui/components/component-library/text-field/text-field.stories.tsx index c5985de98fa6..4de3e956fb61 100644 --- a/ui/components/component-library/text-field/text-field.stories.tsx +++ b/ui/components/component-library/text-field/text-field.stories.tsx @@ -239,7 +239,7 @@ export const StartAccessoryEndAccessory = (args) => { > ETH diff --git a/ui/components/multichain/activity-list-item/activity-list-item.stories.js b/ui/components/multichain/activity-list-item/activity-list-item.stories.js index dd3ca5718e05..9dedaf56f0df 100644 --- a/ui/components/multichain/activity-list-item/activity-list-item.stories.js +++ b/ui/components/multichain/activity-list-item/activity-list-item.stories.js @@ -44,7 +44,7 @@ DefaultStory.args = { data-testid="activity-tx-network-badge" size={AvatarNetworkSize.Xs} name="Network Name" - src="./images/eth_logo.png" + src="./images/eth_logo.svg" borderWidth={1} borderColor={BackgroundColor.backgroundDefault} /> diff --git a/ui/components/multichain/avatar-group/__snapshots__/avatar-group.test.tsx.snap b/ui/components/multichain/avatar-group/__snapshots__/avatar-group.test.tsx.snap index dbba54f9e6d8..59ad45e3a299 100644 --- a/ui/components/multichain/avatar-group/__snapshots__/avatar-group.test.tsx.snap +++ b/ui/components/multichain/avatar-group/__snapshots__/avatar-group.test.tsx.snap @@ -19,7 +19,7 @@ exports[`AvatarGroup should render AvatarGroup component 1`] = ` AVAX logo @@ -47,7 +47,7 @@ exports[`AvatarGroup should render AvatarGroup component 1`] = ` MATIC logo @@ -61,7 +61,7 @@ exports[`AvatarGroup should render AvatarGroup component 1`] = ` ETH logo diff --git a/ui/components/multichain/avatar-group/avatar-group.stories.tsx b/ui/components/multichain/avatar-group/avatar-group.stories.tsx index f4397c18eb21..01b95ffa4f7c 100644 --- a/ui/components/multichain/avatar-group/avatar-group.stories.tsx +++ b/ui/components/multichain/avatar-group/avatar-group.stories.tsx @@ -15,10 +15,10 @@ export default { }, args: { members: [ - { symbol: 'ETH', iconUrl: './images/eth_logo.png' }, - { symbol: 'MATIC', iconUrl: './images/matic-token.png' }, + { symbol: 'ETH', iconUrl: './images/eth_logo.svg' }, + { symbol: 'MATIC', iconUrl: './images/matic-token.svg' }, { symbol: 'OP', iconUrl: './images/optimism.svg' }, - { symbol: 'AVAX', iconUrl: './images/avax-token.png' }, + { symbol: 'AVAX', iconUrl: './images/avax-token.svg' }, ], limit: 4, }, @@ -34,10 +34,10 @@ export const WithTag: StoryFn = (args) => ( ); WithTag.args = { members: [ - { symbol: 'ETH', iconUrl: './images/eth_logo.png' }, - { symbol: 'MATIC', iconUrl: './images/matic-token.png' }, + { symbol: 'ETH', iconUrl: './images/eth_logo.svg' }, + { symbol: 'MATIC', iconUrl: './images/matic-token.svg' }, { symbol: 'OP', iconUrl: './images/optimism.svg' }, - { symbol: 'AVAX', iconUrl: './images/avax-token.png' }, + { symbol: 'AVAX', iconUrl: './images/avax-token.svg' }, { symbol: 'PALM', iconUrl: './images/palm.svg' }, ], limit: 2, diff --git a/ui/components/multichain/avatar-group/avatar-group.test.tsx b/ui/components/multichain/avatar-group/avatar-group.test.tsx index 76f6b12347da..fb140e472334 100644 --- a/ui/components/multichain/avatar-group/avatar-group.test.tsx +++ b/ui/components/multichain/avatar-group/avatar-group.test.tsx @@ -5,10 +5,10 @@ import React from 'react'; import { AvatarGroup } from './avatar-group'; const members = [ - { symbol: 'ETH', iconUrl: './images/eth_logo.png' }, - { symbol: 'MATIC', iconUrl: './images/matic-token.png' }, + { symbol: 'ETH', iconUrl: './images/eth_logo.svg' }, + { symbol: 'MATIC', iconUrl: './images/matic-token.svg' }, { symbol: 'OP', iconUrl: './images/optimism.svg' }, - { symbol: 'AVAX', iconUrl: './images/avax-token.png' }, + { symbol: 'AVAX', iconUrl: './images/avax-token.svg' }, { symbol: 'PALM', iconUrl: './images/palm.svg' }, ]; diff --git a/ui/components/multichain/network-list-item/__snapshots__/network-list-item.test.js.snap b/ui/components/multichain/network-list-item/__snapshots__/network-list-item.test.js.snap index 2114f49b3482..6a99892cda46 100644 --- a/ui/components/multichain/network-list-item/__snapshots__/network-list-item.test.js.snap +++ b/ui/components/multichain/network-list-item/__snapshots__/network-list-item.test.js.snap @@ -11,7 +11,7 @@ exports[`NetworkListItem renders properly 1`] = ` Polygon logo
(
); -IconStory.args = { iconSrc: './images/matic-token.png', name: 'Polygon' }; +IconStory.args = { iconSrc: './images/matic-token.svg', name: 'Polygon' }; export const SelectedStory = (args) => (
diff --git a/ui/components/multichain/token-list-item/token-list-item.stories.js b/ui/components/multichain/token-list-item/token-list-item.stories.js index f104439f7656..473fd6e2affb 100644 --- a/ui/components/multichain/token-list-item/token-list-item.stories.js +++ b/ui/components/multichain/token-list-item/token-list-item.stories.js @@ -34,7 +34,7 @@ export default { args: { secondary: '$9.80 USD', primary: '88.0068', - tokenImage: './images/eth_logo.png', + tokenImage: './images/eth_logo.svg', tokenSymbol: CURRENCY_SYMBOLS.ETH, title: 'Ethereum', isOriginalTokenSymbol: true, diff --git a/ui/components/ui/identicon/identicon.stories.js b/ui/components/ui/identicon/identicon.stories.js index 0469ff50d3ff..eff3050a4cb5 100644 --- a/ui/components/ui/identicon/identicon.stories.js +++ b/ui/components/ui/identicon/identicon.stories.js @@ -40,7 +40,7 @@ WithImage.args = { addBorder: false, diameter: 32, useBlockie: false, - image: './images/eth_logo.png', + image: './images/eth_logo.svg', alt: 'Ethereum', imageBorder: true, }; diff --git a/ui/components/ui/site-icon/site-icon.stories.js b/ui/components/ui/site-icon/site-icon.stories.js index 893800cfa61a..bb1c7998ee7c 100644 --- a/ui/components/ui/site-icon/site-icon.stories.js +++ b/ui/components/ui/site-icon/site-icon.stories.js @@ -31,7 +31,7 @@ DefaultStory.storyName = 'Default'; DefaultStory.args = { name: 'eth', - icon: './images/eth_logo.png', + icon: './images/eth_logo.svg', size: 24, }; diff --git a/ui/components/ui/site-icon/site-icon.test.js b/ui/components/ui/site-icon/site-icon.test.js index a78f2b8d0b81..f1e793c3ba51 100644 --- a/ui/components/ui/site-icon/site-icon.test.js +++ b/ui/components/ui/site-icon/site-icon.test.js @@ -6,7 +6,7 @@ describe('SiteIcon', () => { const args = { size: 32, name: 'Snap name', - icon: './images/eth_logo.png', + icon: './images/eth_logo.svg', className: 'classname-test', fallbackClassName: 'fallback-classname-test', }; diff --git a/ui/hooks/confirm/useConfirmationNetworkInfo.test.ts b/ui/hooks/confirm/useConfirmationNetworkInfo.test.ts index 22b31d6f1748..2924483d2337 100644 --- a/ui/hooks/confirm/useConfirmationNetworkInfo.test.ts +++ b/ui/hooks/confirm/useConfirmationNetworkInfo.test.ts @@ -15,7 +15,7 @@ describe('useConfirmationNetworkInfo', () => { ); expect(result.current.networkDisplayName).toBe('Ethereum Mainnet'); - expect(result.current.networkImageUrl).toBe('./images/eth_logo.png'); + expect(result.current.networkImageUrl).toBe('./images/eth_logo.svg'); }); it('returns display name and image of provider chainId when confirmation chainId is not present', () => { diff --git a/ui/hooks/useAccountTotalFiatBalance.test.js b/ui/hooks/useAccountTotalFiatBalance.test.js index 70dd78211f7b..3c1e5a52bc01 100644 --- a/ui/hooks/useAccountTotalFiatBalance.test.js +++ b/ui/hooks/useAccountTotalFiatBalance.test.js @@ -131,7 +131,7 @@ describe('useAccountTotalFiatBalance', () => { orderedTokenList: [ { fiatBalance: '1.85', - iconUrl: './images/eth_logo.png', + iconUrl: './images/eth_logo.svg', symbol: 'ETH', }, { diff --git a/ui/pages/confirm-add-suggested-nft/__snapshots__/confirm-add-suggested-nft.test.js.snap b/ui/pages/confirm-add-suggested-nft/__snapshots__/confirm-add-suggested-nft.test.js.snap index e807bd5915fc..b4c97ffbaf7d 100644 --- a/ui/pages/confirm-add-suggested-nft/__snapshots__/confirm-add-suggested-nft.test.js.snap +++ b/ui/pages/confirm-add-suggested-nft/__snapshots__/confirm-add-suggested-nft.test.js.snap @@ -72,7 +72,7 @@ exports[`ConfirmAddSuggestedNFT Component should match snapshot 1`] = ` > Ethereum Mainnet @@ -282,7 +282,7 @@ exports[`ConfirmAddSuggestedNFT Component should match snapshot 1`] = ` > Ethereum Mainnet diff --git a/ui/pages/confirmation/stories/switch-ethereum-chain.stories.js b/ui/pages/confirmation/stories/switch-ethereum-chain.stories.js index 9b4ab2193129..22aaca937d3b 100644 --- a/ui/pages/confirmation/stories/switch-ethereum-chain.stories.js +++ b/ui/pages/confirmation/stories/switch-ethereum-chain.stories.js @@ -51,7 +51,7 @@ export default { args: { fromNetworkConfigurationNickname: 'Test Network 1', fromNetworkConfigurationChainId: '0x123', - fromNetworkConfigurationIconURL: './images/eth_logo.png', + fromNetworkConfigurationIconURL: './images/eth_logo.svg', toNetworkConfigurationNickname: 'Test Network 2', toNetworkConfigurationChainId: '0x456', toNetworkConfigurationIconURL: './images/bnb.png', diff --git a/ui/pages/settings/security-tab/__snapshots__/security-tab.test.js.snap b/ui/pages/settings/security-tab/__snapshots__/security-tab.test.js.snap index 491d51008209..00e48a60a597 100644 --- a/ui/pages/settings/security-tab/__snapshots__/security-tab.test.js.snap +++ b/ui/pages/settings/security-tab/__snapshots__/security-tab.test.js.snap @@ -318,7 +318,7 @@ exports[`Security Tab should match snapshot 1`] = ` Custom Mainnet RPC logo
Date: Thu, 25 Jan 2024 23:03:15 +0800 Subject: [PATCH 08/45] feat: update UI elements to use `getSelectedInternalAccount` selector (#21553) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## **Description** Currently, MetaMask faces tight coupling between its UI and the keyring-controller. The UI heavily relies on the keyring-controller's state while also amalgamating information from various sources, such as preferences and balances. However, this approach presents some challenges. The keyring-controller must be aware of the UI's limitations, like the need for instant account list provision to avoid lag. Moreover, it takes on the responsibility of adding metadata to accounts, such as the associated keyring type, required for displaying account details. To address these issues, the introduction of the accounts-controller comes into play as a new abstraction layer between the UI and the keyring-controller. This separation of responsibilities allows the keyring-controller to focus on two main tasks: - Routing requests to the appropriate keyring. - Persisting the state of the keyrings. This PR replaces the usage of `getSelectedAddress` with `getSelectedInternalAccount` Depends on: https://github.com/MetaMask/metamask-extension/pull/21554 ## **Related issues** Resolves https://github.com/MetaMask/accounts-planning/issues/135 ## **Manual testing steps** 1. Use a hardware wallet to test all the flows ## **Screenshots/Recordings** No UI/UX changes ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md). - [x] I've clearly explained: - [x] What problem this PR is solving. - [x] How this problem was solved. - [x] How reviewers can test my changes. - [x] I’ve indicated what issue this PR is linked to: Fixes #??? - [x] I’ve included tests if applicable. - [x] I’ve documented any added code. - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)). - [x] I’ve properly set the pull request status: - [ ] In case it's not yet "ready for review", I've set it to "draft". - [ ] In case it's "ready for review", I've changed it from "draft" to "non-draft". ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --------- Co-authored-by: MetaMask Bot Co-authored-by: gantunesr Co-authored-by: Gustavo Antunes <17601467+gantunesr@users.noreply.github.com> Co-authored-by: Howard Braham Co-authored-by: chloeYue <105063779+chloeYue@users.noreply.github.com> Co-authored-by: Harsh Shukla <125105825+PrgrmrHarshShukla@users.noreply.github.com> Co-authored-by: Olusegun Akintayo Co-authored-by: Ariella Vu <20778143+digiwand@users.noreply.github.com> Co-authored-by: David Walsh Co-authored-by: Sébastien Van Eyck Co-authored-by: Mark Stacey Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com> Co-authored-by: Mako Shan Co-authored-by: Sébastien Van Eyck --- app/scripts/controllers/metametrics.js | 3 +- app/scripts/controllers/metametrics.test.js | 31 +++ app/scripts/lib/backup.test.js | 9 +- app/scripts/lib/snap-keyring/snap-keyring.ts | 21 +- app/scripts/lib/transaction/util.test.ts | 4 +- app/scripts/lib/transaction/util.ts | 2 +- app/scripts/metamask-controller.js | 4 +- lavamoat/browserify/beta/policy.json | 10 +- lavamoat/browserify/desktop/policy.json | 10 +- lavamoat/browserify/flask/policy.json | 10 +- lavamoat/browserify/main/policy.json | 10 +- lavamoat/browserify/mmi/policy.json | 10 +- package.json | 4 +- test/data/mock-send-state.json | 93 +++++++ ...rs-after-init-opt-in-background-state.json | 29 +-- .../errors-after-init-opt-in-ui-state.json | 56 ++-- .../advanced-gas-controls.test.js | 2 +- .../unconnected-account-alert.js | 24 +- .../unconnected-account-alert.test.js | 2 +- ui/components/app/asset-list/asset-list.js | 4 +- ...m-page-container-content.component.test.js | 4 + .../confirm-page-container.component.js | 6 +- .../confirm-page-container.container.js | 6 +- .../connected-accounts-list.component.js | 18 +- .../connected-accounts-list.stories.js | 17 ++ .../connected-status-indicator.js | 4 +- ui/components/app/nfts-items/nfts-items.js | 4 +- ui/components/app/nfts-tab/nfts-tab.test.js | 19 ++ .../signature-request-data.js | 6 +- .../signature-request-data.test.js | 42 ++- .../signature-request.test.js | 64 ++++- .../transaction-list.component.js | 4 +- .../interactive-replacement-token-modal.js | 4 +- ...eractive-replacement-token-notification.js | 7 +- .../address-copy-button.js | 4 +- .../multichain/app-footer/app-footer.js | 7 +- .../multichain/app-header/app-header.js | 2 + .../multichain/global-menu/global-menu.js | 28 +- .../import-nfts-modal/import-nfts-modal.js | 10 +- .../import-nfts-modal.test.js | 6 +- .../import-tokens-modal.js | 17 +- ui/ducks/alerts/unconnected-account.js | 20 +- ui/ducks/send/send.js | 13 +- ui/hooks/useAddressDetails.js | 12 +- ui/hooks/useAddressDetails.test.js | 41 ++- ui/hooks/useAssetDetails.test.js | 19 ++ ui/hooks/useNftsCollections.js | 4 +- ui/hooks/useTokenTracker.js | 7 +- ui/index.js | 6 +- .../confirm-signature-request/index.test.js | 1 - .../confirm-token-transaction-base.js | 4 +- .../confirm-transaction-base.test.js.snap | 4 +- .../confirm-transaction-base.container.js | 8 +- .../connected-accounts.component.js | 14 +- .../connected-accounts.container.js | 9 +- .../connected-accounts.stories.js | 23 +- .../connected-sites.container.js | 7 +- .../permissions-connect.container.js | 4 +- .../send-asset-row.container.js | 3 +- ui/pages/send/send.test.js | 36 +-- .../token-details/token-details-page.test.js | 19 ++ ui/selectors/permissions.js | 18 +- ui/selectors/selectors.js | 60 +++-- ui/selectors/selectors.test.js | 92 +++++++ ui/selectors/transactions.js | 12 +- ui/selectors/transactions.test.js | 88 +++++++ ui/store/actions.test.js | 134 +++++++++- ui/store/actions.ts | 54 +++- yarn.lock | 242 +++--------------- 69 files changed, 1069 insertions(+), 502 deletions(-) diff --git a/app/scripts/controllers/metametrics.js b/app/scripts/controllers/metametrics.js index 7ab11ecbb908..02f92febca48 100644 --- a/app/scripts/controllers/metametrics.js +++ b/app/scripts/controllers/metametrics.js @@ -156,6 +156,7 @@ export default class MetaMetricsController { metaMetricsId: null, eventsBeforeMetricsOptIn: [], traits: {}, + previousUserTraits: {}, ...initState, fragments: { ...initState?.fragments, @@ -790,7 +791,7 @@ export default class MetaMetricsController { [MetaMetricsUserTrait.NftAutodetectionEnabled]: metamaskState.useNftDetection, [MetaMetricsUserTrait.NumberOfAccounts]: Object.values( - metamaskState.identities, + metamaskState.internalAccounts.accounts, ).length, [MetaMetricsUserTrait.NumberOfNftCollections]: this._getAllUniqueNFTAddressesLength(metamaskState.allNfts), diff --git a/app/scripts/controllers/metametrics.test.js b/app/scripts/controllers/metametrics.test.js index 82517c821a05..9a7540c078f4 100644 --- a/app/scripts/controllers/metametrics.test.js +++ b/app/scripts/controllers/metametrics.test.js @@ -1024,6 +1024,12 @@ describe('MetaMetricsController', function () { }, 'network-configuration-id-3': { chainId: '0xaf' }, }, + internalAccounts: { + accounts: { + mock1: {}, + mock2: {}, + }, + }, identities: [{}, {}], ledgerTransportType: 'web-hid', openSeaEnabled: true, @@ -1115,6 +1121,12 @@ describe('MetaMetricsController', function () { }, ledgerTransportType: 'web-hid', openSeaEnabled: true, + internalAccounts: { + accounts: { + mock1: {}, + mock2: {}, + }, + }, identities: [{}, {}], useNftDetection: false, theme: 'default', @@ -1139,6 +1151,13 @@ describe('MetaMetricsController', function () { }, ledgerTransportType: 'web-hid', openSeaEnabled: false, + internalAccounts: { + accounts: { + mock1: {}, + mock2: {}, + mock3: {}, + }, + }, identities: [{}, {}, {}], useNftDetection: false, theme: 'default', @@ -1170,6 +1189,12 @@ describe('MetaMetricsController', function () { }, ledgerTransportType: 'web-hid', openSeaEnabled: true, + internalAccounts: { + accounts: { + mock1: {}, + mock2: {}, + }, + }, identities: [{}, {}], useNftDetection: true, theme: 'default', @@ -1190,6 +1215,12 @@ describe('MetaMetricsController', function () { }, ledgerTransportType: 'web-hid', openSeaEnabled: true, + internalAccounts: { + accounts: { + mock1: {}, + mock2: {}, + }, + }, identities: [{}, {}], useNftDetection: true, theme: 'default', diff --git a/app/scripts/lib/backup.test.js b/app/scripts/lib/backup.test.js index 43be1dcb0db8..ceab30f28188 100644 --- a/app/scripts/lib/backup.test.js +++ b/app/scripts/lib/backup.test.js @@ -183,7 +183,14 @@ const jsonData = JSON.stringify({ lastSelected: 1693289751176, }, options: {}, - methods: [...Object.values(EthMethod)], + methods: [ + EthMethod.PersonalSign, + EthMethod.Sign, + EthMethod.SignTransaction, + EthMethod.SignTypedDataV1, + EthMethod.SignTypedDataV3, + EthMethod.SignTypedDataV4, + ], type: EthAccountType.Eoa, }, }, diff --git a/app/scripts/lib/snap-keyring/snap-keyring.ts b/app/scripts/lib/snap-keyring/snap-keyring.ts index 755bcac8d50e..885df9f1cbef 100644 --- a/app/scripts/lib/snap-keyring/snap-keyring.ts +++ b/app/scripts/lib/snap-keyring/snap-keyring.ts @@ -16,6 +16,10 @@ import { RestrictedControllerMessenger } from '@metamask/base-controller'; import { MaybeUpdateState, TestOrigin } from '@metamask/phishing-controller'; import { SnapId } from '@metamask/snaps-sdk'; import { GetSubjectMetadata } from '@metamask/permission-controller'; +import { + AccountsControllerGetAccountByAddressAction, + AccountsControllerSetSelectedAccountAction, +} from '@metamask/accounts-controller'; import { SNAP_MANAGE_ACCOUNTS_CONFIRMATION_TYPES } from '../../../../shared/constants/app'; import { t } from '../../translate'; import MetamaskController from '../../metamask-controller'; @@ -49,7 +53,9 @@ type SnapKeyringBuilderAllowActions = | MaybeUpdateState | TestOrigin | KeyringControllerGetAccountsAction - | GetSubjectMetadata; + | GetSubjectMetadata + | AccountsControllerSetSelectedAccountAction + | AccountsControllerGetAccountByAddressAction; type snapKeyringBuilderMessenger = RestrictedControllerMessenger< 'SnapKeyringBuilder', @@ -172,6 +178,19 @@ export const snapKeyringBuilder = ( await handleUserInput(confirmationResult); await persistKeyringHelper(); setSelectedAccountHelper(address); + const internalAccount = controllerMessenger.call( + 'AccountsController:getAccountByAddress', + address, + ); + if (!internalAccount) { + throw new Error( + `Internal account not found for address: ${address}`, + ); + } + controllerMessenger.call( + 'AccountsController:setSelectedAccount', + internalAccount.id, + ); await controllerMessenger.call('ApprovalController:showSuccess', { header: [snapAuthorshipHeader], title: t('snapAccountCreated') as string, diff --git a/app/scripts/lib/transaction/util.test.ts b/app/scripts/lib/transaction/util.test.ts index 0ea9b58d8300..fbb8cb9b198a 100644 --- a/app/scripts/lib/transaction/util.test.ts +++ b/app/scripts/lib/transaction/util.test.ts @@ -205,7 +205,7 @@ describe('Transaction Utils', () => { describe('if selected account is smart contract', () => { beforeEach(() => { - request.selectedAccount.type = 'eip155:eip4337'; + request.selectedAccount.type = 'eip155:erc4337'; }); it('adds user operation', async () => { @@ -499,7 +499,7 @@ describe('Transaction Utils', () => { describe('if selected account is smart contract', () => { beforeEach(() => { - request.selectedAccount.type = 'eip155:eip4337'; + request.selectedAccount.type = 'eip155:erc4337'; }); it('adds user operation', async () => { diff --git a/app/scripts/lib/transaction/util.ts b/app/scripts/lib/transaction/util.ts index 373c0b494899..8e4420b1bc50 100644 --- a/app/scripts/lib/transaction/util.ts +++ b/app/scripts/lib/transaction/util.ts @@ -149,7 +149,7 @@ async function addTransactionOrUserOperation( ) { const { selectedAccount } = request; - const isSmartContractAccount = selectedAccount.type === 'eip155:eip4337'; + const isSmartContractAccount = selectedAccount.type === 'eip155:erc4337'; if (isSmartContractAccount) { return addUserOperationWithController(request); diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 433c0bc966d7..2d030212fc61 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -972,6 +972,8 @@ export default class MetamaskController extends EventEmitter { 'PhishingController:maybeUpdateState', 'KeyringController:getAccounts', 'SubjectMetadataController:getSubjectMetadata', + 'AccountsController:setSelectedAccount', + 'AccountsController:getAccountByAddress', ], }); @@ -1455,7 +1457,7 @@ export default class MetamaskController extends EventEmitter { this.networkController.state.providerConfig.chainId ], getSelectedAddress: () => - this.preferencesController.store.getState().selectedAddress, + this.accountsController.getSelectedAccount().address, incomingTransactions: { includeTokenTransfers: false, isEnabled: () => diff --git a/lavamoat/browserify/beta/policy.json b/lavamoat/browserify/beta/policy.json index 562924a719cf..8ed58efdfc6c 100644 --- a/lavamoat/browserify/beta/policy.json +++ b/lavamoat/browserify/beta/policy.json @@ -709,7 +709,7 @@ }, "@metamask/accounts-controller": { "packages": { - "@metamask/accounts-controller>@metamask/base-controller": true, + "@metamask/base-controller": true, "@metamask/eth-snap-keyring": true, "@metamask/keyring-api": true, "@metamask/keyring-controller": true, @@ -717,14 +717,6 @@ "uuid": true } }, - "@metamask/accounts-controller>@metamask/base-controller": { - "globals": { - "setTimeout": true - }, - "packages": { - "immer": true - } - }, "@metamask/address-book-controller": { "packages": { "@metamask/address-book-controller>@metamask/base-controller": true, diff --git a/lavamoat/browserify/desktop/policy.json b/lavamoat/browserify/desktop/policy.json index adbb7d8f0679..e153c85706b9 100644 --- a/lavamoat/browserify/desktop/policy.json +++ b/lavamoat/browserify/desktop/policy.json @@ -709,7 +709,7 @@ }, "@metamask/accounts-controller": { "packages": { - "@metamask/accounts-controller>@metamask/base-controller": true, + "@metamask/base-controller": true, "@metamask/eth-snap-keyring": true, "@metamask/keyring-api": true, "@metamask/keyring-controller": true, @@ -717,14 +717,6 @@ "uuid": true } }, - "@metamask/accounts-controller>@metamask/base-controller": { - "globals": { - "setTimeout": true - }, - "packages": { - "immer": true - } - }, "@metamask/address-book-controller": { "packages": { "@metamask/address-book-controller>@metamask/base-controller": true, diff --git a/lavamoat/browserify/flask/policy.json b/lavamoat/browserify/flask/policy.json index cc1cacd9cc1f..d475accd352f 100644 --- a/lavamoat/browserify/flask/policy.json +++ b/lavamoat/browserify/flask/policy.json @@ -709,7 +709,7 @@ }, "@metamask/accounts-controller": { "packages": { - "@metamask/accounts-controller>@metamask/base-controller": true, + "@metamask/base-controller": true, "@metamask/eth-snap-keyring": true, "@metamask/keyring-api": true, "@metamask/keyring-controller": true, @@ -717,14 +717,6 @@ "uuid": true } }, - "@metamask/accounts-controller>@metamask/base-controller": { - "globals": { - "setTimeout": true - }, - "packages": { - "immer": true - } - }, "@metamask/address-book-controller": { "packages": { "@metamask/address-book-controller>@metamask/base-controller": true, diff --git a/lavamoat/browserify/main/policy.json b/lavamoat/browserify/main/policy.json index 71332c1776ca..0a169bea7d35 100644 --- a/lavamoat/browserify/main/policy.json +++ b/lavamoat/browserify/main/policy.json @@ -709,7 +709,7 @@ }, "@metamask/accounts-controller": { "packages": { - "@metamask/accounts-controller>@metamask/base-controller": true, + "@metamask/base-controller": true, "@metamask/eth-snap-keyring": true, "@metamask/keyring-api": true, "@metamask/keyring-controller": true, @@ -717,14 +717,6 @@ "uuid": true } }, - "@metamask/accounts-controller>@metamask/base-controller": { - "globals": { - "setTimeout": true - }, - "packages": { - "immer": true - } - }, "@metamask/address-book-controller": { "packages": { "@metamask/address-book-controller>@metamask/base-controller": true, diff --git a/lavamoat/browserify/mmi/policy.json b/lavamoat/browserify/mmi/policy.json index 46dbf6ec2554..f311b03a3bd9 100644 --- a/lavamoat/browserify/mmi/policy.json +++ b/lavamoat/browserify/mmi/policy.json @@ -841,7 +841,7 @@ }, "@metamask/accounts-controller": { "packages": { - "@metamask/accounts-controller>@metamask/base-controller": true, + "@metamask/base-controller": true, "@metamask/eth-snap-keyring": true, "@metamask/keyring-api": true, "@metamask/keyring-controller": true, @@ -849,14 +849,6 @@ "uuid": true } }, - "@metamask/accounts-controller>@metamask/base-controller": { - "globals": { - "setTimeout": true - }, - "packages": { - "immer": true - } - }, "@metamask/address-book-controller": { "packages": { "@metamask/address-book-controller>@metamask/base-controller": true, diff --git a/package.json b/package.json index fa3b0d3ddfc5..6ec20d359401 100644 --- a/package.json +++ b/package.json @@ -245,7 +245,7 @@ "@metamask-institutional/rpc-allowlist": "^1.0.0", "@metamask-institutional/sdk": "^0.1.23", "@metamask-institutional/transaction-update": "^0.1.32", - "@metamask/accounts-controller": "patch:@metamask/accounts-controller@npm%3A5.0.0#~/.yarn/patches/@metamask-accounts-controller-npm-5.0.0-f877105fa0.patch", + "@metamask/accounts-controller": "^10.0.0", "@metamask/address-book-controller": "^3.0.0", "@metamask/announcement-controller": "^5.0.1", "@metamask/approval-controller": "^5.1.1", @@ -269,7 +269,7 @@ "@metamask/ethjs-query": "^0.5.3", "@metamask/gas-fee-controller": "^12.0.0", "@metamask/jazzicon": "^2.0.0", - "@metamask/keyring-api": "^1.0.0", + "@metamask/keyring-api": "^3.0.0", "@metamask/keyring-controller": "patch:@metamask/keyring-controller@npm%3A9.0.0#~/.yarn/patches/@metamask-keyring-controller-npm-9.0.0-f57ed3ebea.patch", "@metamask/logging-controller": "^1.0.1", "@metamask/logo": "^3.1.2", diff --git a/test/data/mock-send-state.json b/test/data/mock-send-state.json index 71bea504a325..772d806174f2 100644 --- a/test/data/mock-send-state.json +++ b/test/data/mock-send-state.json @@ -211,6 +211,99 @@ }, "selectedAccount": "cf8dace4-9439-4bd4-b3a8-88c821c8fcb3" }, + "internalAccounts": { + "accounts": { + "cf8dace4-9439-4bd4-b3a8-88c821c8fcb3": { + "address": "0x0dcd5d886577d5081b0c52e242ef29e70be3e7bc", + "id": "cf8dace4-9439-4bd4-b3a8-88c821c8fcb3", + "metadata": { + "keyring": { + "type": "HD Key Tree" + } + }, + "name": "Test Account", + "options": {}, + "methods": [ + "personal_sign", + "eth_sendTransaction", + "eth_sign", + "eth_signTransaction", + "eth_signTypedData_v1", + "eth_signTypedData_v2", + "eth_signTypedData_v3", + "eth_signTypedData_v4" + ], + "type": "eip155:eoa" + }, + "07c2cfec-36c9-46c4-8115-3836d3ac9047": { + "address": "0xec1adf982415d2ef5ec55899b9bfb8bc0f29251b", + "id": "07c2cfec-36c9-46c4-8115-3836d3ac9047", + "metadata": { + "keyring": { + "type": "HD Key Tree" + } + }, + "name": "Test Account 2", + "options": {}, + "methods": [ + "personal_sign", + "eth_sendTransaction", + "eth_sign", + "eth_signTransaction", + "eth_signTypedData_v1", + "eth_signTypedData_v2", + "eth_signTypedData_v3", + "eth_signTypedData_v4" + ], + "type": "eip155:eoa" + }, + "15e69915-2a1a-4019-93b3-916e11fd432f": { + "address": "0xc42edfcc21ed14dda456aa0756c153f7985d8813", + "id": "15e69915-2a1a-4019-93b3-916e11fd432f", + "metadata": { + "keyring": { + "type": "Ledger Hardware" + } + }, + "name": "Ledger Hardware 2", + "options": {}, + "methods": [ + "personal_sign", + "eth_sendTransaction", + "eth_sign", + "eth_signTransaction", + "eth_signTypedData_v1", + "eth_signTypedData_v2", + "eth_signTypedData_v3", + "eth_signTypedData_v4" + ], + "type": "eip155:eoa" + }, + "784225f4-d30b-4e77-a900-c8bbce735b88": { + "address": "0xec1adf982415d2ef5ec55899b9bfb8bc0f29251b", + "id": "784225f4-d30b-4e77-a900-c8bbce735b88", + "metadata": { + "keyring": { + "type": "HD Key Tree" + } + }, + "name": "Test Account 3", + "options": {}, + "methods": [ + "personal_sign", + "eth_sendTransaction", + "eth_sign", + "eth_signTransaction", + "eth_signTypedData_v1", + "eth_signTypedData_v2", + "eth_signTypedData_v3", + "eth_signTypedData_v4" + ], + "type": "eip155:eoa" + } + }, + "selectedAccount": "cf8dace4-9439-4bd4-b3a8-88c821c8fcb3" + }, "keyrings": [ { "type": "HD Key Tree", diff --git a/test/e2e/tests/state-snapshots/errors-after-init-opt-in-background-state.json b/test/e2e/tests/state-snapshots/errors-after-init-opt-in-background-state.json index e373bbc7b870..28fbd2b76d2f 100644 --- a/test/e2e/tests/state-snapshots/errors-after-init-opt-in-background-state.json +++ b/test/e2e/tests/state-snapshots/errors-after-init-opt-in-background-state.json @@ -3,10 +3,7 @@ "pinnedAccountList": {}, "hiddenAccountList": {} }, - "AccountTracker": { - "accounts": "object", - "accountsByChainId": "object" - }, + "AccountTracker": { "accounts": "object", "accountsByChainId": "object" }, "AccountsController": { "internalAccounts": { "accounts": "object", "selectedAccount": "string" } }, @@ -55,14 +52,14 @@ }, "CronjobController": { "jobs": "object" }, "CurrencyController": { - "currentCurrency": "usd", "currencyRates": { "ETH": { "conversionDate": "number", "conversionRate": 1700, "usdConversionRate": 1700 } - } + }, + "currentCurrency": "usd" }, "DecryptMessageController": { "unapprovedDecryptMsgs": "object", @@ -74,8 +71,8 @@ }, "EnsController": { "ensResolutionsByAddress": "object" }, "GasFeeController": { - "gasFeeEstimates": {}, "gasFeeEstimatesByChainId": {}, + "gasFeeEstimates": {}, "estimatedGasFeeTimeBounds": {}, "gasEstimateType": "none" }, @@ -90,9 +87,9 @@ "metaMetricsId": "fake-metrics-id", "eventsBeforeMetricsOptIn": "object", "traits": "object", + "previousUserTraits": "object", "fragments": "object", - "segmentApiCalls": "object", - "previousUserTraits": "object" + "segmentApiCalls": "object" }, "NetworkController": { "selectedNetworkClientId": "string", @@ -147,12 +144,12 @@ "dismissSeedBackUpReminder": true, "disabledRpcMethodPreferences": { "eth_sign": false }, "useMultiAccountBalanceChecker": true, - "useRequestQueue": false, "useSafeChainsListValidation": "boolean", "useTokenDetection": false, "useNftDetection": false, "use4ByteResolution": true, "useCurrencyRateCheck": true, + "useRequestQueue": false, "openSeaEnabled": false, "securityAlertsEnabled": "boolean", "addSnapAccountEnabled": "boolean", @@ -182,9 +179,7 @@ "selectedAddress": "string" }, "SelectedNetworkController": { - "domains": { - "metamask": "networkConfigurationId" - }, + "domains": { "metamask": "networkConfigurationId" }, "perDomainNetwork": "boolean" }, "SignatureController": { @@ -255,11 +250,9 @@ "allDetectedTokens": {} }, "TxController": { - "lastFetchedBlockNumbers": "object", "methodData": "object", - "transactions": "object" + "transactions": "object", + "lastFetchedBlockNumbers": "object" }, - "UserOperationController": { - "userOperations": "object" - } + "UserOperationController": { "userOperations": "object" } } diff --git a/test/e2e/tests/state-snapshots/errors-after-init-opt-in-ui-state.json b/test/e2e/tests/state-snapshots/errors-after-init-opt-in-ui-state.json index d54be045b0b9..f50bd15db973 100644 --- a/test/e2e/tests/state-snapshots/errors-after-init-opt-in-ui-state.json +++ b/test/e2e/tests/state-snapshots/errors-after-init-opt-in-ui-state.json @@ -19,11 +19,9 @@ "addressBook": "object", "contractExchangeRates": "object", "confirmationExchangeRates": {}, - "contractExchangeRatesByChainId": "object", "pendingTokens": "object", "customNonceValue": "", "useBlockie": false, - "useRequestQueue": false, "featureFlags": {}, "welcomeScreenSeen": false, "currentLocale": "en", @@ -40,6 +38,22 @@ "use4ByteResolution": true, "participateInMetaMetrics": true, "nextNonce": null, + "currencyRates": { + "ETH": { + "conversionDate": "number", + "conversionRate": 1300, + "usdConversionRate": 1300 + } + }, + "providerConfig": { + "chainId": "0x539", + "nickname": "Localhost 8545", + "rpcPrefs": "object", + "rpcUrl": "string", + "ticker": "ETH", + "type": "rpc", + "id": "networkConfigurationId" + }, "internalAccounts": { "accounts": "object", "selectedAccount": "string" }, "connectedStatusPopoverHasBeenShown": true, "defaultHomeActiveTabName": null, @@ -69,15 +83,6 @@ "previousMigrationVersion": 0, "currentMigrationVersion": "number", "selectedNetworkClientId": "string", - "providerConfig": { - "chainId": "0x539", - "nickname": "Localhost 8545", - "rpcPrefs": "object", - "rpcUrl": "string", - "ticker": "ETH", - "type": "rpc", - "id": "networkConfigurationId" - }, "networksMetadata": { "networkConfigurationId": { "EIPS": { "1559": false }, @@ -94,6 +99,7 @@ "useTokenDetection": false, "useNftDetection": false, "useCurrencyRateCheck": true, + "useRequestQueue": false, "openSeaEnabled": false, "securityAlertsEnabled": "boolean", "addSnapAccountEnabled": "boolean", @@ -113,17 +119,10 @@ "metaMetricsId": "fake-metrics-id", "eventsBeforeMetricsOptIn": "object", "traits": "object", + "previousUserTraits": "object", "fragments": "object", "segmentApiCalls": "object", - "previousUserTraits": "object", "currentCurrency": "usd", - "currencyRates": { - "ETH": { - "conversionDate": "number", - "conversionRate": 1300, - "usdConversionRate": 1300 - } - }, "alertEnabledness": { "unconnectedAccount": true, "web3ShimUsage": true }, "unconnectedAccountAlertShownOrigins": "object", "web3ShimUsageOrigins": "object", @@ -137,8 +136,8 @@ "orderedNetworkList": { "0": "string", "1": "string", "2": "string" }, "pinnedAccountList": {}, "hiddenAccountList": {}, - "gasFeeEstimates": {}, "gasFeeEstimatesByChainId": {}, + "gasFeeEstimates": {}, "estimatedGasFeeTimeBounds": {}, "gasEstimateType": "none", "tokenList": "object", @@ -158,11 +157,11 @@ "allNftContracts": "object", "allNfts": "object", "ignoredNfts": "object", - "domains": { - "metamask": "networkConfigurationId" - }, + "domains": { "metamask": "networkConfigurationId" }, "perDomainNetwork": "boolean", "logs": "object", + "methodData": "object", + "lastFetchedBlockNumbers": "object", "snaps": "object", "snapStates": "object", "unencryptedSnapStates": "object", @@ -170,8 +169,10 @@ "database": "object", "lastUpdated": "object", "notifications": "object", + "userOperations": "object", "accounts": "object", "accountsByChainId": "object", + "contractExchangeRatesByChainId": "object", "unapprovedDecryptMsgs": "object", "unapprovedDecryptMsgCount": 0, "unapprovedEncryptionPublicKeyMsgs": "object", @@ -212,14 +213,9 @@ "pendingApprovals": "object", "pendingApprovalCount": "number", "approvalFlows": "object", - "lastFetchedBlockNumbers": "object", - "methodData": "object", "storageMetadata": {}, - "chainStatus": { - "0x539": { "chainId": "0x539", "versionInfo": [] } - }, - "versionFileETag": "string", - "userOperations": "object" + "chainStatus": { "0x539": { "chainId": "0x539", "versionInfo": [] } }, + "versionFileETag": "string" }, "send": "object", "swaps": "object", diff --git a/ui/components/app/advanced-gas-controls/advanced-gas-controls.test.js b/ui/components/app/advanced-gas-controls/advanced-gas-controls.test.js index 6a15f9c6b4a2..7ce522dd6325 100644 --- a/ui/components/app/advanced-gas-controls/advanced-gas-controls.test.js +++ b/ui/components/app/advanced-gas-controls/advanced-gas-controls.test.js @@ -7,7 +7,7 @@ import AdvancedGasControls from './advanced-gas-controls.component'; const renderComponent = (props) => { const store = configureMockStore([])({ - metamask: { identities: [], providerConfig: {} }, + metamask: { providerConfig: {} }, }); return renderWithProvider(, store); }; diff --git a/ui/components/app/alerts/unconnected-account-alert/unconnected-account-alert.js b/ui/components/app/alerts/unconnected-account-alert/unconnected-account-alert.js index f4f96db10a02..ae3643108bc0 100644 --- a/ui/components/app/alerts/unconnected-account-alert/unconnected-account-alert.js +++ b/ui/components/app/alerts/unconnected-account-alert/unconnected-account-alert.js @@ -12,8 +12,7 @@ import { import { getOriginOfCurrentTab, getOrderedConnectedAccountsForActiveTab, - getSelectedAddress, - getSelectedIdentity, + getSelectedInternalAccount, getInternalAccounts, } from '../../../../selectors'; import { isExtensionUrl, getURLHost } from '../../../../helpers/utils/util'; @@ -46,16 +45,8 @@ const UnconnectedAccountAlert = () => { })); const origin = useSelector(getOriginOfCurrentTab); - const selectedIdentity = useSelector(getSelectedIdentity); - // Temporary fix until https://github.com/MetaMask/metamask-extension/pull/21553 - const selectedIdentityWithName = { - ...selectedIdentity, - name: internalAccounts.find( - (internalAccount) => - internalAccount.address === selectedIdentity?.address, - )?.metadata.name, - }; - const selectedAddress = useSelector(getSelectedAddress); + const account = useSelector(getSelectedInternalAccount); + const { address: selectedAddress } = account; const [dontShowThisAgain, setDontShowThisAgain] = useState(false); const onClose = async () => { @@ -118,11 +109,16 @@ const UnconnectedAccountAlert = () => { footer={footer} > dispatch(connectAccount(selectedAddress))} connectedAccounts={connectedAccountsWithName} selectedAddress={selectedAddress} - setSelectedAddress={(address) => dispatch(switchToAccount(address))} + setSelectedAddress={(address) => { + const { id: accountId } = internalAccounts.find( + (internalAccount) => internalAccount.address === address, + ); + dispatch(switchToAccount(accountId)); + }} shouldRenderListOptions={false} /> diff --git a/ui/components/app/alerts/unconnected-account-alert/unconnected-account-alert.test.js b/ui/components/app/alerts/unconnected-account-alert/unconnected-account-alert.test.js index a5360353d597..be95cef4a70f 100644 --- a/ui/components/app/alerts/unconnected-account-alert/unconnected-account-alert.test.js +++ b/ui/components/app/alerts/unconnected-account-alert/unconnected-account-alert.test.js @@ -107,9 +107,9 @@ describe('Unconnected Account Alert', () => { metamask: { selectedAddress, identities, + internalAccounts, accounts, accountsByChainId, - internalAccounts, keyrings, providerConfig: { chainId: CHAIN_IDS.MAINNET, diff --git a/ui/components/app/asset-list/asset-list.js b/ui/components/app/asset-list/asset-list.js index c6575d1e6a1f..bf75a9d3e050 100644 --- a/ui/components/app/asset-list/asset-list.js +++ b/ui/components/app/asset-list/asset-list.js @@ -14,7 +14,7 @@ import { getIsBuyableChain, getCurrentChainId, getSwapsDefaultToken, - getSelectedAddress, + getSelectedAccount, getPreferences, getIsMainnet, } from '../../../selectors'; @@ -68,7 +68,7 @@ const AssetList = ({ onClickAsset }) => { const trackEvent = useContext(MetaMetricsContext); const balance = useSelector(getSelectedAccountCachedBalance); const balanceIsLoading = !balance; - const selectedAddress = useSelector(getSelectedAddress); + const { address: selectedAddress } = useSelector(getSelectedAccount); const shouldHideZeroBalanceTokens = useSelector( getShouldHideZeroBalanceTokens, ); diff --git a/ui/components/app/confirm-page-container/confirm-page-container-content/confirm-page-container-content.component.test.js b/ui/components/app/confirm-page-container/confirm-page-container-content/confirm-page-container-content.component.test.js index 31a1893ab0ea..540c5c61bb4c 100644 --- a/ui/components/app/confirm-page-container/confirm-page-container-content/confirm-page-container-content.component.test.js +++ b/ui/components/app/confirm-page-container/confirm-page-container-content/confirm-page-container-content.component.test.js @@ -28,6 +28,10 @@ describe('Confirm Page Container Content', () => { }, identities: {}, tokenList: {}, + internalAccounts: { + accounts: {}, + selectedAccount: '', + }, }, confirmTransaction: { txData: { diff --git a/ui/components/app/confirm-page-container/confirm-page-container.component.js b/ui/components/app/confirm-page-container/confirm-page-container.component.js index 8c6554534257..d52ac9ff1b9c 100644 --- a/ui/components/app/confirm-page-container/confirm-page-container.component.js +++ b/ui/components/app/confirm-page-container/confirm-page-container.component.js @@ -46,9 +46,9 @@ import TxInsightWarnings from '../snaps/tx-insight-warnings/tx-insight-warnings' import { getAccountName, getAddressBookEntry, + getInternalAccounts, getIsBuyableChain, getMetadataContractName, - getMetaMaskIdentities, getNetworkIdentifier, getSwapsDefaultToken, } from '../../../selectors'; @@ -128,8 +128,8 @@ const ConfirmPageContainer = (props) => { const networkIdentifier = useSelector(getNetworkIdentifier); const defaultToken = useSelector(getSwapsDefaultToken); const accountBalance = defaultToken.string; - const identities = useSelector(getMetaMaskIdentities); - const ownedAccountName = getAccountName(identities, toAddress); + const internalAccounts = useSelector(getInternalAccounts); + const ownedAccountName = getAccountName(internalAccounts, toAddress); const toName = ownedAccountName || contact?.name; const recipientIsOwnedAccount = Boolean(ownedAccountName); const toMetadataName = useSelector((state) => diff --git a/ui/components/app/confirm-page-container/confirm-page-container.container.js b/ui/components/app/confirm-page-container/confirm-page-container.container.js index fb628fbb2ee5..d928b9be6137 100644 --- a/ui/components/app/confirm-page-container/confirm-page-container.container.js +++ b/ui/components/app/confirm-page-container/confirm-page-container.container.js @@ -6,7 +6,7 @@ import { getSwapsDefaultToken, getMetadataContractName, getAccountName, - getMetaMaskIdentities, + getInternalAccounts, } from '../../../selectors'; import ConfirmPageContainer from './confirm-page-container.component'; @@ -17,8 +17,8 @@ function mapStateToProps(state, ownProps) { const networkIdentifier = getNetworkIdentifier(state); const defaultToken = getSwapsDefaultToken(state); const accountBalance = defaultToken.string; - const identities = getMetaMaskIdentities(state); - const ownedAccountName = getAccountName(identities, to); + const internalAccounts = getInternalAccounts(state); + const ownedAccountName = getAccountName(internalAccounts, to); const toName = ownedAccountName || contact?.name; const toMetadataName = getMetadataContractName(state, to); diff --git a/ui/components/app/connected-accounts-list/connected-accounts-list.component.js b/ui/components/app/connected-accounts-list/connected-accounts-list.component.js index a1f0bbba2124..7f4d58655de8 100644 --- a/ui/components/app/connected-accounts-list/connected-accounts-list.component.js +++ b/ui/components/app/connected-accounts-list/connected-accounts-list.component.js @@ -25,8 +25,17 @@ export default class ConnectedAccountsList extends PureComponent { static propTypes = { accountToConnect: PropTypes.shape({ + id: PropTypes.string.isRequired, address: PropTypes.string.isRequired, - name: PropTypes.string.isRequired, + metadata: PropTypes.shape({ + name: PropTypes.string.isRequired, + keyring: PropTypes.shape({ + type: PropTypes.string.isRequired, + }).isRequired, + }).isRequired, + options: PropTypes.object.isRequired, + methods: PropTypes.arrayOf(PropTypes.string).isRequired, + type: PropTypes.string.isRequired, }), connectedAccounts: PropTypes.arrayOf( PropTypes.shape({ @@ -85,7 +94,10 @@ export default class ConnectedAccountsList extends PureComponent { return null; } - const { address, name } = accountToConnect; + const { + address, + metadata: { name }, + } = accountToConnect; return ( connectAccount(accountToConnect.address)} + onClick={() => connectAccount(address)} size={ButtonLinkSize.Inherit} > {t('connect')} diff --git a/ui/components/app/connected-accounts-list/connected-accounts-list.stories.js b/ui/components/app/connected-accounts-list/connected-accounts-list.stories.js index 793b0acca9b4..398b2e88d1b3 100644 --- a/ui/components/app/connected-accounts-list/connected-accounts-list.stories.js +++ b/ui/components/app/connected-accounts-list/connected-accounts-list.stories.js @@ -1,4 +1,5 @@ import React from 'react'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import ConnectedAccountsList from '.'; export default { @@ -14,6 +15,9 @@ export default { shouldRenderListOptions: { control: 'boolean', }, + accountToConnect: { + control: 'object', + }, }, args: { connectedAccounts: [ @@ -30,6 +34,19 @@ export default { balance: '0x2d3142f5000', }, ], + accountToConnect: { + address: '0x64a845a5b02460acf8a3d84503b0d68d028b4bb4', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'This is a Really Long Account Name', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, }, }; diff --git a/ui/components/app/connected-status-indicator/connected-status-indicator.js b/ui/components/app/connected-status-indicator/connected-status-indicator.js index 991420145af9..2a0b927542d6 100644 --- a/ui/components/app/connected-status-indicator/connected-status-indicator.js +++ b/ui/components/app/connected-status-indicator/connected-status-indicator.js @@ -18,14 +18,14 @@ import { getAddressConnectedSubjectMap, getOriginOfCurrentTab, getPermissionsForActiveTab, - getSelectedAddress, + getSelectedInternalAccount, } from '../../../selectors'; import { ConnectedSiteMenu } from '../../multichain'; export default function ConnectedStatusIndicator({ onClick }) { const t = useI18nContext(); - const selectedAddress = useSelector(getSelectedAddress); + const { address: selectedAddress } = useSelector(getSelectedInternalAccount); const permissionsForActiveTab = useSelector(getPermissionsForActiveTab); diff --git a/ui/components/app/nfts-items/nfts-items.js b/ui/components/app/nfts-items/nfts-items.js index c17eb0d0a3ba..22a298bf5b66 100644 --- a/ui/components/app/nfts-items/nfts-items.js +++ b/ui/components/app/nfts-items/nfts-items.js @@ -20,7 +20,7 @@ import { getEnvironmentType } from '../../../../app/scripts/lib/util'; import { getCurrentChainId, getIpfsGateway, - getSelectedAddress, + getSelectedInternalAccount, getCurrentNetwork, getOpenSeaEnabled, } from '../../../selectors'; @@ -62,7 +62,7 @@ export default function NftsItems({ const collectionsKeys = Object.keys(collections); const nftsDropdownState = useSelector(getNftsDropdownState); const previousCollectionKeys = usePrevious(collectionsKeys); - const selectedAddress = useSelector(getSelectedAddress); + const { address: selectedAddress } = useSelector(getSelectedInternalAccount); const chainId = useSelector(getCurrentChainId); const currentChain = useSelector(getCurrentNetwork); const t = useI18nContext(); diff --git a/ui/components/app/nfts-tab/nfts-tab.test.js b/ui/components/app/nfts-tab/nfts-tab.test.js index c4f3d6c73de0..47cde9b8f44a 100644 --- a/ui/components/app/nfts-tab/nfts-tab.test.js +++ b/ui/components/app/nfts-tab/nfts-tab.test.js @@ -1,6 +1,7 @@ import React from 'react'; import { fireEvent, screen } from '@testing-library/react'; import reactRouterDom from 'react-router-dom'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import configureStore from '../../../store/store'; import { renderWithProvider } from '../../../../test/jest'; import { SECURITY_ROUTE } from '../../../helpers/constants/routes'; @@ -165,6 +166,24 @@ const render = ({ }, providerConfig: { chainId }, selectedAddress, + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: selectedAddress, + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, useNftDetection, nftsDropdownState, }, diff --git a/ui/components/app/signature-request/signature-request-data/signature-request-data.js b/ui/components/app/signature-request/signature-request-data/signature-request-data.js index e6a4a97d12e6..2e2f058f188b 100644 --- a/ui/components/app/signature-request/signature-request-data/signature-request-data.js +++ b/ui/components/app/signature-request/signature-request-data/signature-request-data.js @@ -4,7 +4,7 @@ import { isEqual } from 'lodash'; import PropTypes from 'prop-types'; import { NameType } from '@metamask/name-controller'; import { - getMemoizedMetaMaskIdentities, + getMemoizedMetaMaskInternalAccounts, getAccountName, } from '../../../../selectors'; import Address from '../../transaction-decoding/components/decoding/address'; @@ -24,7 +24,7 @@ import { usePetnamesEnabled } from '../../../../hooks/usePetnamesEnabled'; import Name from '../../name/name'; function SignatureRequestData({ data }) { - const identities = useSelector(getMemoizedMetaMaskIdentities); + const internalAccounts = useSelector(getMemoizedMetaMaskInternalAccounts); const petnamesEnabled = usePetnamesEnabled(); return ( @@ -75,7 +75,7 @@ function SignatureRequestData({ data }) {
)} diff --git a/ui/components/app/signature-request/signature-request-data/signature-request-data.test.js b/ui/components/app/signature-request/signature-request-data/signature-request-data.test.js index ec59fad31b15..f42c24cd43c4 100644 --- a/ui/components/app/signature-request/signature-request-data/signature-request-data.test.js +++ b/ui/components/app/signature-request/signature-request-data/signature-request-data.test.js @@ -1,5 +1,6 @@ import React from 'react'; import configureMockStore from 'redux-mock-store'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import { renderWithProvider } from '../../../../../test/lib/render-helpers'; import { sanitizeMessage } from '../../../../helpers/utils/util'; import Identicon from '../../../ui/identicon'; @@ -48,6 +49,37 @@ describe('Signature Request Data', () => { address: '0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF', }, }, + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Account 1', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + '07c2cfec-36c9-46c4-8115-3836d3ac9047': { + address: '0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF', + id: '07c2cfec-36c9-46c4-8115-3836d3ac9047', + metadata: { + name: 'Account 2', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, addressBook: { '0x5': { '0x06195827297c7A80a443b6894d3BDB8824b43896': { @@ -180,7 +212,7 @@ describe('Signature Request Data', () => { expect(iconImage).toBeDefined(); }); - it('should render first account name from wallets array if address exists in identities object', () => { + it('should render first account name from wallets array if address exists in internal account object', () => { const { getByText } = renderWithProvider( , store, @@ -199,7 +231,7 @@ describe('Signature Request Data', () => { expect(iconImage).toBeDefined(); }); - it('should render second account name from wallets array if address exists in identities object', () => { + it('should render second account name from wallets array if address exists in internal account object', () => { const { getByText } = renderWithProvider( , store, @@ -264,7 +296,7 @@ describe('Signature Request Data', () => { expect(iconImage).toBeDefined(); }); - it('should render first shorten address from wallets array if address does not exists in identities and address book objects', () => { + it('should render first shorten address from wallets array if address does not exists in internal account and address book objects', () => { const { getByText } = renderWithProvider( , store, @@ -283,7 +315,7 @@ describe('Signature Request Data', () => { expect(iconImage).toBeDefined(); }); - it('should render second shorten address from wallets array if address does not exists in identities and address book objects', () => { + it('should render second shorten address from wallets array if address does not exists in internal account and address book objects', () => { const { getByText } = renderWithProvider( , store, @@ -302,7 +334,7 @@ describe('Signature Request Data', () => { expect(iconImage).toBeDefined(); }); - it('should render third shorten address from wallets array if address does not exists in identities and address book objects', () => { + it('should render third shorten address from wallets array if address does not exists in internal account and address book objects', () => { const { getByText } = renderWithProvider( , store, diff --git a/ui/components/app/signature-request/signature-request.test.js b/ui/components/app/signature-request/signature-request.test.js index c7ddf4ad32cd..2a60a410b215 100644 --- a/ui/components/app/signature-request/signature-request.test.js +++ b/ui/components/app/signature-request/signature-request.test.js @@ -2,6 +2,7 @@ import React from 'react'; import { useSelector } from 'react-redux'; import { fireEvent } from '@testing-library/react'; import configureMockStore from 'redux-mock-store'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import { showCustodianDeepLink } from '@metamask-institutional/extension'; import mockState from '../../../../test/data/mock-state.json'; import { renderWithProvider } from '../../../../test/lib/render-helpers'; @@ -15,12 +16,13 @@ import { conversionRateSelector, getCurrentCurrency, getMemoizedAddressBook, - getMemoizedMetaMaskIdentities, getPreferences, getSelectedAccount, getTotalUnapprovedMessagesCount, + getInternalAccounts, unconfirmedTransactionsHashSelector, getAccountType, + getMemoizedMetaMaskInternalAccounts, } from '../../../selectors'; import SignatureRequest from './signature-request'; @@ -52,6 +54,25 @@ const mockStore = { }, }, selectedAddress: '0xd8f6a2ffb0fc5952d16c9768b71cfd35b6399aa5', + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xd8f6a2ffb0fc5952d16c9768b71cfd35b6399aa5', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'John Doe', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, + nativeCurrency: 'ETH', currentCurrency: 'usd', currencyRates: { ETH: { @@ -98,6 +119,10 @@ const generateUseSelectorRouter = (opts) => (selector) => { ?.conversionRate; case getSelectedAccount: return opts.metamask.accounts[opts.metamask.selectedAddress]; + case getInternalAccounts: + return Object.values(opts.metamask.internalAccounts.accounts); + case getMemoizedMetaMaskInternalAccounts: + return Object.values(opts.metamask.internalAccounts.accounts); case getMemoizedAddressBook: return []; case accountsWithSendEtherInfoSelector: @@ -105,7 +130,6 @@ const generateUseSelectorRouter = (opts) => (selector) => { case getAccountType: return 'custody'; case unconfirmedTransactionsHashSelector: - case getMemoizedMetaMaskIdentities: return {}; default: return undefined; @@ -449,6 +473,42 @@ describe('Signature Request Component', () => { balance: '0x0', name: 'Account 1', }, + '0xd8f6a2ffb0fc5952d16c9768b71cfd35b6399aa5': { + address: '0xd8f6a2ffb0fc5952d16c9768b71cfd35b6399aa5', + balance: '0x0', + name: 'Account 2', + }, + }, + internalAccounts: { + accounts: { + 'b7e813d6-e31c-4bad-8615-8d4eff9f44f1': { + address: '0x0dcd5d886577d5081b0c52e242ef29e70be3e7bc', + id: 'b7e813d6-e31c-4bad-8615-8d4eff9f44f1', + metadata: { + name: 'Account 1', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xd8f6a2ffb0fc5952d16c9768b71cfd35b6399aa5', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Account 2', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'b7e813d6-e31c-4bad-8615-8d4eff9f44f1', }, }, }), diff --git a/ui/components/app/transaction-list/transaction-list.component.js b/ui/components/app/transaction-list/transaction-list.component.js index 6cf6fc4c0939..e8719969ea44 100644 --- a/ui/components/app/transaction-list/transaction-list.component.js +++ b/ui/components/app/transaction-list/transaction-list.component.js @@ -6,7 +6,7 @@ import { nonceSortedCompletedTransactionsSelector, nonceSortedPendingTransactionsSelector, } from '../../../selectors/transactions'; -import { getCurrentChainId, getSelectedAddress } from '../../../selectors'; +import { getCurrentChainId, getSelectedAccount } from '../../../selectors'; import { useI18nContext } from '../../../hooks/useI18nContext'; import TransactionListItem from '../transaction-list-item'; import SmartTransactionListItem from '../transaction-list-item/smart-transaction-list-item.component'; @@ -113,7 +113,7 @@ export default function TransactionList({ nonceSortedCompletedTransactionsSelector, ); const chainId = useSelector(getCurrentChainId); - const selectedAddress = useSelector(getSelectedAddress); + const { address: selectedAddress } = useSelector(getSelectedAccount); const renderDateStamp = (index, dateGroup) => { return index === 0 ? ( { const { custodians } = useSelector( (state) => state.metamask.mmiConfiguration, ); - const address = useSelector(getSelectedAddress); + const { address } = useSelector(getSelectedInternalAccount); const custodyAccountDetails = useSelector( (state) => state.metamask.custodyAccountDetails[toChecksumHexAddress(address)], diff --git a/ui/components/institutional/interactive-replacement-token-notification/interactive-replacement-token-notification.js b/ui/components/institutional/interactive-replacement-token-notification/interactive-replacement-token-notification.js index 55da0f9a723e..d8edd4fa9392 100644 --- a/ui/components/institutional/interactive-replacement-token-notification/interactive-replacement-token-notification.js +++ b/ui/components/institutional/interactive-replacement-token-notification/interactive-replacement-token-notification.js @@ -1,7 +1,10 @@ import React, { useState, useEffect } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import PropTypes from 'prop-types'; -import { getCurrentKeyring, getSelectedAddress } from '../../../selectors'; +import { + getCurrentKeyring, + getSelectedInternalAccount, +} from '../../../selectors'; import { getInteractiveReplacementToken } from '../../../selectors/institutional/selectors'; import { getIsUnlocked } from '../../../ducks/metamask/metamask'; import { useI18nContext } from '../../../hooks/useI18nContext'; @@ -34,7 +37,7 @@ const InteractiveReplacementTokenNotification = ({ isVisible }) => { const mmiActions = mmiActionsFactory(); const keyring = useSelector(getCurrentKeyring); - const address = useSelector(getSelectedAddress); + const { address } = useSelector(getSelectedInternalAccount); const isUnlocked = useSelector(getIsUnlocked); const interactiveReplacementToken = useSelector( getInteractiveReplacementToken, diff --git a/ui/components/multichain/address-copy-button/address-copy-button.js b/ui/components/multichain/address-copy-button/address-copy-button.js index ce92fa26ac32..9ae846d1fafd 100644 --- a/ui/components/multichain/address-copy-button/address-copy-button.js +++ b/ui/components/multichain/address-copy-button/address-copy-button.js @@ -4,7 +4,7 @@ import classnames from 'classnames'; import { toChecksumHexAddress } from '@metamask/controller-utils'; ///: BEGIN:ONLY_INCLUDE_IF(build-mmi) import { useSelector } from 'react-redux'; -import { getSelectedAddress } from '../../../selectors'; +import { getSelectedInternalAccount } from '../../../selectors'; import { getIsCustodianSupportedChain, getCustodianIconForAddress, @@ -41,7 +41,7 @@ export const AddressCopyButton = ({ const t = useI18nContext(); ///: BEGIN:ONLY_INCLUDE_IF(build-mmi) - const selectedAddress = useSelector(getSelectedAddress); + const { address: selectedAddress } = useSelector(getSelectedInternalAccount); const custodianIcon = useSelector((state) => getCustodianIconForAddress(state, selectedAddress), ); diff --git a/ui/components/multichain/app-footer/app-footer.js b/ui/components/multichain/app-footer/app-footer.js index 1c366a18eb1a..4490b87bcd34 100644 --- a/ui/components/multichain/app-footer/app-footer.js +++ b/ui/components/multichain/app-footer/app-footer.js @@ -38,7 +38,7 @@ import { getConnectedSubjectsForAllAddresses, getCurrentNetwork, getOriginOfCurrentTab, - getSelectedAddress, + getSelectedInternalAccount, getTestNetworkBackgroundColor, } from '../../../selectors'; import { getEnvironmentType } from '../../../../app/scripts/lib/util'; @@ -55,7 +55,10 @@ export const AppFooter = () => { const activeConnections = location.pathname === CONNECTIONS; const isUnlocked = useSelector((state) => state.metamask.isUnlocked); const isFullScreen = getEnvironmentType() === ENVIRONMENT_TYPE_FULLSCREEN; - const selectedAddress = useSelector(getSelectedAddress); + const selectedAccount = useSelector(getSelectedInternalAccount); + + // During onboarding there is no selected internal account + const selectedAddress = selectedAccount?.address; const currentTabOrigin = useSelector(getOriginOfCurrentTab); const connectedSites = useSelector(getConnectedSubjectsForAllAddresses); diff --git a/ui/components/multichain/app-header/app-header.js b/ui/components/multichain/app-header/app-header.js index 0b4fdb5cf754..f5efcb66a351 100644 --- a/ui/components/multichain/app-header/app-header.js +++ b/ui/components/multichain/app-header/app-header.js @@ -96,6 +96,8 @@ export const AppHeader = ({ location }) => { const testNetworkBackgroundColor = useSelector(getTestNetworkBackgroundColor); // Used for copy button + + // During onboarding there is no selected internal account const currentAddress = internalAccount?.address; const checksummedCurrentAddress = toChecksumHexAddress(currentAddress); const [copied, handleCopy] = useCopyToClipboard(MINUTE); diff --git a/ui/components/multichain/global-menu/global-menu.js b/ui/components/multichain/global-menu/global-menu.js index f877be24eb1a..5297312d0795 100644 --- a/ui/components/multichain/global-menu/global-menu.js +++ b/ui/components/multichain/global-menu/global-menu.js @@ -47,7 +47,7 @@ import { ///: BEGIN:ONLY_INCLUDE_IF(build-mmi) getMetaMetricsId, ///: END:ONLY_INCLUDE_IF(build-mmi) - getSelectedAddress, + getSelectedInternalAccount, getUnapprovedTransactions, ///: BEGIN:ONLY_INCLUDE_IF(snaps) getNotifySnaps, @@ -78,7 +78,7 @@ export const GlobalMenu = ({ closeMenu, anchorElement, isOpen }) => { const dispatch = useDispatch(); const trackEvent = useContext(MetaMetricsContext); const history = useHistory(); - const address = useSelector(getSelectedAddress); + const account = useSelector(getSelectedInternalAccount); const unapprovedTransactons = useSelector(getUnapprovedTransactions); ///: BEGIN:ONLY_INCLUDE_IF(snaps) @@ -143,16 +143,20 @@ export const GlobalMenu = ({ closeMenu, anchorElement, isOpen }) => { borderStyle={BorderStyle.none} position={PopoverPosition.BottomEnd} > - - + {account && ( + <> + + + + )} { const isDisplayNFTMediaToggleEnabled = useSelector(getOpenSeaEnabled); const isMainnet = useSelector(getIsMainnet); const nftsDropdownState = useSelector(getNftsDropdownState); - const selectedAddress = useSelector(getSelectedAddress); + const selectedAccount = useSelector(getSelectedInternalAccount); const chainId = useSelector(getCurrentChainId); const { tokenAddress: initialTokenAddress, @@ -84,10 +84,10 @@ export const ImportNftsModal = ({ onClose }) => { await dispatch(addNftVerifyOwnership(nftAddress, tokenId)); const newNftDropdownState = { ...nftsDropdownState, - [selectedAddress]: { - ...nftsDropdownState?.[selectedAddress], + [selectedAccount.address]: { + ...nftsDropdownState?.[selectedAccount.address], [chainId]: { - ...nftsDropdownState?.[selectedAddress]?.[chainId], + ...nftsDropdownState?.[selectedAccount.address]?.[chainId], [nftAddress]: true, }, }, diff --git a/ui/components/multichain/import-nfts-modal/import-nfts-modal.test.js b/ui/components/multichain/import-nfts-modal/import-nfts-modal.test.js index 778591258d29..72b0122db0a5 100644 --- a/ui/components/multichain/import-nfts-modal/import-nfts-modal.test.js +++ b/ui/components/multichain/import-nfts-modal/import-nfts-modal.test.js @@ -51,7 +51,7 @@ describe('ImportNftsModal', () => { it('should enable the "Import" button when valid entries are input into both Address and TokenId fields', () => { const { getByText, getByPlaceholderText } = renderWithProvider( - , + , store, ); expect(getByText('Import')).not.toBeEnabled(); @@ -68,7 +68,7 @@ describe('ImportNftsModal', () => { it('should not enable the "Import" button when an invalid entry is input into one or both Address and TokenId fields', () => { const { getByText, getByPlaceholderText } = renderWithProvider( - , + , store, ); expect(getByText('Import')).not.toBeEnabled(); @@ -144,7 +144,7 @@ describe('ImportNftsModal', () => { ); const { getByTestId, getByText, getByPlaceholderText } = renderWithProvider( - , + , store, ); const addressInput = getByPlaceholderText('0x...'); diff --git a/ui/components/multichain/import-tokens-modal/import-tokens-modal.js b/ui/components/multichain/import-tokens-modal/import-tokens-modal.js index 9aa7f0f837fb..4ec483f13ff8 100644 --- a/ui/components/multichain/import-tokens-modal/import-tokens-modal.js +++ b/ui/components/multichain/import-tokens-modal/import-tokens-modal.js @@ -13,14 +13,14 @@ import { Tab, Tabs } from '../../ui/tabs'; import { useI18nContext } from '../../../hooks/useI18nContext'; import { getCurrentChainId, + getInternalAccounts, getIsDynamicTokenListAvailable, getIsMainnet, getIsTokenDetectionInactiveOnMainnet, getIsTokenDetectionSupported, getIstokenDetectionInactiveOnNonMainnetSupportedNetwork, - getMetaMaskIdentities, getRpcPrefsForCurrentProvider, - getSelectedAddress, + getSelectedInternalAccount, getSelectedNetworkClientId, getTokenDetectionSupportNetworkByChainId, getTokenList, @@ -132,9 +132,9 @@ export const ImportTokensModal = ({ onClose }) => { const isDynamicTokenListAvailable = useSelector( getIsDynamicTokenListAvailable, ); - const selectedAddress = useSelector(getSelectedAddress); + const selectedAccount = useSelector(getSelectedInternalAccount); const isMainnet = useSelector(getIsMainnet); - const identities = useSelector(getMetaMaskIdentities); + const accounts = useSelector(getInternalAccounts); const tokens = useSelector((state) => state.metamask.tokens); const rpcPrefs = useSelector(getRpcPrefsForCurrentProvider); const contractExchangeRates = useSelector(contractExchangeRateSelector); @@ -411,7 +411,7 @@ export const ImportTokensModal = ({ onClose }) => { try { ({ standard } = await getTokenStandardAndDetails( standardAddress, - selectedAddress, + selectedAccount.address, null, )); } catch (error) { @@ -459,7 +459,12 @@ export const ImportTokensModal = ({ onClose }) => { setShowSymbolAndDecimals(false); break; - case Boolean(identities[standardAddress]): + case Boolean( + accounts.find( + (internalAccount) => + internalAccount.address.toLowerCase() === standardAddress, + ), + ): setCustomAddressError(t('personalAddressDetected')); setShowSymbolAndDecimals(false); break; diff --git a/ui/ducks/alerts/unconnected-account.js b/ui/ducks/alerts/unconnected-account.js index a1cc12ba6058..64e7b1294bc0 100644 --- a/ui/ducks/alerts/unconnected-account.js +++ b/ui/ducks/alerts/unconnected-account.js @@ -6,9 +6,14 @@ import * as actionConstants from '../../store/actionConstants'; import { addPermittedAccount, setAlertEnabledness, - setSelectedAddress, + setSelectedAccount, + setSelectedInternalAccount, } from '../../store/actions'; -import { getOriginOfCurrentTab, getSelectedAddress } from '../../selectors'; +import { + getInternalAccount, + getOriginOfCurrentTab, + getSelectedInternalAccount, +} from '../../selectors'; import { ALERT_STATE } from './enums'; // Constants @@ -111,11 +116,14 @@ export const dismissAndDisableAlert = () => { }; }; -export const switchToAccount = (address) => { - return async (dispatch) => { +export const switchToAccount = (accountId) => { + return async (dispatch, getState) => { + const state = getState(); try { await dispatch(switchAccountRequested()); - await dispatch(setSelectedAddress(address)); + await dispatch(setSelectedInternalAccount(accountId)); + const internalAccount = getInternalAccount(state, accountId); + await dispatch(setSelectedAccount(internalAccount.address)); await dispatch(switchAccountSucceeded()); } catch (error) { console.error(error); @@ -128,7 +136,7 @@ export const switchToAccount = (address) => { export const connectAccount = () => { return async (dispatch, getState) => { const state = getState(); - const selectedAddress = getSelectedAddress(state); + const { address: selectedAddress } = getSelectedInternalAccount(state); const origin = getOriginOfCurrentTab(state); try { await dispatch(connectAccountRequested()); diff --git a/ui/ducks/send/send.js b/ui/ducks/send/send.js index 2257440b1e1a..724d620f9d35 100644 --- a/ui/ducks/send/send.js +++ b/ui/ducks/send/send.js @@ -45,7 +45,8 @@ import { getIsMultiLayerFeeNetwork, getEnsResolutionByAddress, getSelectedAccount, - getSelectedAddress, + getSelectedInternalAccount, + getSelectedInternalAccountWithBalance, getUnapprovedTransactions, } from '../../selectors'; import { @@ -509,6 +510,7 @@ export const computeEstimatedGasLimit = createAsyncThunk( const transaction = unapprovedTxs[draftTransaction.id]; const isNonStandardEthChain = getIsNonStandardEthChain(state); const chainId = getCurrentChainId(state); + const selectedAccount = getSelectedInternalAccountWithBalance(state); let gasTotalForLayer1; if (isMultiLayerFeeNetwork) { @@ -536,7 +538,7 @@ export const computeEstimatedGasLimit = createAsyncThunk( const gasLimit = await estimateGasLimitForSend({ gasPrice: draftTransaction.gas.gasPrice, blockGasLimit: metamask.currentBlockGasLimit, - selectedAddress: metamask.selectedAddress, + selectedAddress: selectedAccount.address, sendToken: draftTransaction.asset.details, to: draftTransaction.recipient.address?.toLowerCase(), value: draftTransaction.amount.value, @@ -672,7 +674,8 @@ export const initializeSendState = createAsyncThunk( blockGasLimit: metamask.currentBlockGasLimit, selectedAddress: draftTransaction.fromAccount?.address ?? - sendState.selectedAccount.address, + sendState.selectedAccount.address ?? + account.address, sendToken: draftTransaction.asset.details, to: draftTransaction.recipient.address.toLowerCase(), value: draftTransaction.amount.value, @@ -1952,7 +1955,7 @@ export function updateRecipientUserInput(userInput) { const sendingAddress = draftTransaction.fromAccount?.address ?? state[name].selectedAccount.address ?? - getSelectedAddress(state); + getSelectedInternalAccount(state).address; const chainId = getCurrentChainId(state); const tokens = getTokens(state); const useTokenDetection = getUseTokenDetection(state); @@ -2074,7 +2077,7 @@ export function updateSendAsset( const sendingAddress = draftTransaction.fromAccount?.address ?? state[name].selectedAccount.address ?? - getSelectedAddress(state); + getSelectedInternalAccount(state).address; const account = getTargetAccount(state, sendingAddress); if (type === AssetType.native) { const unapprovedTxs = getUnapprovedTransactions(state); diff --git a/ui/hooks/useAddressDetails.js b/ui/hooks/useAddressDetails.js index 63a1b58ec25e..96a7ed0f7e37 100644 --- a/ui/hooks/useAddressDetails.js +++ b/ui/hooks/useAddressDetails.js @@ -3,28 +3,32 @@ import { useSelector } from 'react-redux'; import { toChecksumHexAddress } from '../../shared/modules/hexstring-utils'; import { getAddressBook, - getMetaMaskIdentities, + getInternalAccounts, getTokenList, } from '../selectors'; import { shortenAddress } from '../helpers/utils/util'; const useAddressDetails = (toAddress) => { const addressBook = useSelector(getAddressBook); - const identities = useSelector(getMetaMaskIdentities); + const accounts = useSelector(getInternalAccounts); const tokenList = useSelector(getTokenList); const checksummedAddress = toChecksumHexAddress(toAddress); if (!toAddress) { return {}; } + const toAccount = accounts.find( + (account) => toChecksumHexAddress(account.address) === checksummedAddress, + ); + const addressBookEntryObject = addressBook.find( (entry) => entry.address === checksummedAddress, ); if (addressBookEntryObject?.name) { return { toName: addressBookEntryObject.name, isTrusted: true }; } - if (identities[toAddress]?.name) { - return { toName: identities[toAddress].name, isTrusted: true }; + if (toAccount) { + return { toName: toAccount.metadata.name, isTrusted: true }; } if (tokenList[toAddress?.toLowerCase()]?.name) { return { diff --git a/ui/hooks/useAddressDetails.test.js b/ui/hooks/useAddressDetails.test.js index a8c2cfa26047..4c723d318bba 100644 --- a/ui/hooks/useAddressDetails.test.js +++ b/ui/hooks/useAddressDetails.test.js @@ -1,6 +1,7 @@ import React from 'react'; import { Provider } from 'react-redux'; import { renderHook } from '@testing-library/react-hooks'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import configureStore from '../store/store'; import useAddressDetails from './useAddressDetails'; @@ -13,6 +14,24 @@ const renderUseAddressDetails = (toAddress, stateVariables = {}) => { chainId: '0x5', }, tokenList: {}, + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0x0dcd5d886577d5081b0c52e242ef29e70be3e7bc', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, ...stateVariables, }, }; @@ -54,15 +73,27 @@ describe('useAddressDetails', () => { expect(isTrusted).toBe(true); }); - it('should return name from identities if address is present in identities', () => { + it('should return name from internal account if address is present in internalAccounts', () => { const { result } = renderUseAddressDetails( '0x06195827297c7A80a443b6894d3BDB8824b43896', { - identities: { - '0x06195827297c7A80a443b6894d3BDB8824b43896': { - address: '0x06195827297c7A80a443b6894d3BDB8824b43896', - name: 'Account 1', + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0x06195827297c7A80a443b6894d3BDB8824b43896', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Account 1', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', }, }, ); diff --git a/ui/hooks/useAssetDetails.test.js b/ui/hooks/useAssetDetails.test.js index 074a3aec65c8..a62091ac228b 100644 --- a/ui/hooks/useAssetDetails.test.js +++ b/ui/hooks/useAssetDetails.test.js @@ -1,6 +1,7 @@ import React from 'react'; import { Provider } from 'react-redux'; import { renderHook } from '@testing-library/react-hooks'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import configureStore from '../store/store'; import * as Actions from '../store/actions'; @@ -20,6 +21,24 @@ const renderUseAssetDetails = ({ }, tokenList: {}, tokens: [], + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: userAddress, + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, }, }; diff --git a/ui/hooks/useNftsCollections.js b/ui/hooks/useNftsCollections.js index f0b4ebdbd5f3..cfb3958da6b3 100644 --- a/ui/hooks/useNftsCollections.js +++ b/ui/hooks/useNftsCollections.js @@ -2,7 +2,7 @@ import { useEffect, useState } from 'react'; import { useSelector } from 'react-redux'; import { isEqual } from 'lodash'; import { getNfts, getNftContracts } from '../ducks/metamask/metamask'; -import { getCurrentChainId, getSelectedAddress } from '../selectors'; +import { getCurrentChainId, getSelectedInternalAccount } from '../selectors'; import { usePrevious } from './usePrevious'; import { useI18nContext } from './useI18nContext'; @@ -18,7 +18,7 @@ export function useNftsCollections() { }); const nfts = useSelector(getNfts); const [nftsLoading, setNftsLoading] = useState(() => nfts?.length >= 0); - const selectedAddress = useSelector(getSelectedAddress); + const { address: selectedAddress } = useSelector(getSelectedInternalAccount); const chainId = useSelector(getCurrentChainId); const nftContracts = useSelector(getNftContracts); const prevNfts = usePrevious(nfts); diff --git a/ui/hooks/useTokenTracker.js b/ui/hooks/useTokenTracker.js index 8af18f464be9..93b8fa08214e 100644 --- a/ui/hooks/useTokenTracker.js +++ b/ui/hooks/useTokenTracker.js @@ -1,7 +1,7 @@ import { useState, useEffect, useRef, useCallback } from 'react'; import TokenTracker from '@metamask/eth-token-tracker'; import { shallowEqual, useSelector } from 'react-redux'; -import { getCurrentChainId, getSelectedAddress } from '../selectors'; +import { getCurrentChainId, getSelectedInternalAccount } from '../selectors'; import { SECOND } from '../../shared/constants/time'; import { isEqualCaseInsensitive } from '../../shared/modules/string-utils'; import { useEqualityCheck } from './useEqualityCheck'; @@ -13,8 +13,11 @@ export function useTokenTracker({ hideZeroBalanceTokens = false, }) { const chainId = useSelector(getCurrentChainId); + const { address: selectedAddress } = useSelector( + getSelectedInternalAccount, + shallowEqual, + ); - const selectedAddress = useSelector(getSelectedAddress, shallowEqual); const userAddress = address ?? selectedAddress; const [loading, setLoading] = useState(() => tokens?.length >= 0); diff --git a/ui/index.js b/ui/index.js index b27d608cb326..b58f05380571 100644 --- a/ui/index.js +++ b/ui/index.js @@ -17,7 +17,7 @@ import * as actions from './store/actions'; import configureStore from './store/store'; import { getPermittedAccountsForCurrentTab, - getSelectedAddress, + getSelectedInternalAccount, getUnapprovedTransactions, } from './selectors'; import { ALERT_STATE } from './ducks/alerts'; @@ -131,7 +131,8 @@ async function startApp(metamaskState, backgroundConnection, opts) { const { origin } = draftInitialState.activeTab; const permittedAccountsForCurrentTab = getPermittedAccountsForCurrentTab(draftInitialState); - const selectedAddress = getSelectedAddress(draftInitialState); + const selectedAddress = + getSelectedInternalAccount(draftInitialState)?.address ?? ''; const unconnectedAccountAlertShownOrigins = getUnconnectedAccountAlertShown(draftInitialState); const unconnectedAccountAlertIsEnabled = @@ -164,6 +165,7 @@ async function startApp(metamaskState, backgroundConnection, opts) { metamaskState.unapprovedDecryptMsgs, metamaskState.unapprovedEncryptionPublicKeyMsgs, metamaskState.unapprovedTypedMessages, + metamaskState.networkId, metamaskState.providerConfig.chainId, ); const numberOfUnapprovedTx = unapprovedTxsAll.length; diff --git a/ui/pages/confirm-signature-request/index.test.js b/ui/pages/confirm-signature-request/index.test.js index e7db0dece355..be7fc0a52bfa 100644 --- a/ui/pages/confirm-signature-request/index.test.js +++ b/ui/pages/confirm-signature-request/index.test.js @@ -64,7 +64,6 @@ const mockState = { balance: '0x7e64033f2fdb0436', }, }, - selectedAddress: '0x8eeee1781fd885ff5ddef7789486676961873d12', addressBook: {}, tokenList: {}, preferences: {}, diff --git a/ui/pages/confirm-token-transaction-base/confirm-token-transaction-base.js b/ui/pages/confirm-token-transaction-base/confirm-token-transaction-base.js index c4e47fd12ddd..e1723cb7c2f4 100644 --- a/ui/pages/confirm-token-transaction-base/confirm-token-transaction-base.js +++ b/ui/pages/confirm-token-transaction-base/confirm-token-transaction-base.js @@ -18,7 +18,7 @@ import { getCurrentChainId, getCurrentCurrency, getRpcPrefsForCurrentProvider, - getSelectedAddress, + getSelectedInternalAccount, } from '../../selectors'; import { getConversionRate, @@ -54,7 +54,7 @@ export default function ConfirmTokenTransactionBase({ const conversionRate = useSelector(getConversionRate); const rpcPrefs = useSelector(getRpcPrefsForCurrentProvider); const chainId = useSelector(getCurrentChainId); - const userAddress = useSelector(getSelectedAddress); + const { address: userAddress } = useSelector(getSelectedInternalAccount); const nftCollections = useSelector(getNftContracts); const ethTransactionTotalMaxAmount = Number( diff --git a/ui/pages/confirm-transaction-base/__snapshots__/confirm-transaction-base.test.js.snap b/ui/pages/confirm-transaction-base/__snapshots__/confirm-transaction-base.test.js.snap index a1385843c529..2f64281591fc 100644 --- a/ui/pages/confirm-transaction-base/__snapshots__/confirm-transaction-base.test.js.snap +++ b/ui/pages/confirm-transaction-base/__snapshots__/confirm-transaction-base.test.js.snap @@ -140,7 +140,9 @@ exports[`Confirm Transaction Base should match snapshot 1`] = ` >
+ > + Account 1 +
diff --git a/ui/pages/confirm-transaction-base/confirm-transaction-base.container.js b/ui/pages/confirm-transaction-base/confirm-transaction-base.container.js index b13346bdfc15..a9b4042b7aff 100644 --- a/ui/pages/confirm-transaction-base/confirm-transaction-base.container.js +++ b/ui/pages/confirm-transaction-base/confirm-transaction-base.container.js @@ -49,6 +49,7 @@ import { getFullTxData, getUseCurrencyRateCheck, getUnapprovedTransactions, + getInternalAccountByAddress, } from '../../selectors'; import { getMostRecentOverviewPage } from '../../ducks/history/history'; import { @@ -135,7 +136,7 @@ const mapStateToProps = (state, ownProps) => { const isBuyableChain = getIsBuyableChain(state); const { confirmTransaction, metamask } = state; const conversionRate = getConversionRate(state); - const { identities, addressBook, nextNonce } = metamask; + const { addressBook, nextNonce } = metamask; const unapprovedTxs = getUnapprovedTransactions(state); const { chainId } = getProviderConfig(state); const { tokenData, txData, tokenProps, nonce } = confirmTransaction; @@ -156,7 +157,8 @@ const mapStateToProps = (state, ownProps) => { const tokenToAddress = getTokenAddressParam(transactionData); const { balance } = accounts[fromAddress]; - const { name: fromName } = identities[fromAddress]; + const fromName = getInternalAccountByAddress(state, fromAddress)?.metadata + .name; const keyring = findKeyringForAddress(state, fromAddress); const isSendingAmount = @@ -171,7 +173,7 @@ const mapStateToProps = (state, ownProps) => { const tokenList = getTokenList(state); const toName = - identities[toAddress]?.name || + getInternalAccountByAddress(state, toAddress)?.metadata.name || tokenList[toAddress?.toLowerCase()]?.name || shortenAddress(toChecksumHexAddress(toAddress)); diff --git a/ui/pages/connected-accounts/connected-accounts.component.js b/ui/pages/connected-accounts/connected-accounts.component.js index eb3b5d107c20..de4a9dd3d6d2 100644 --- a/ui/pages/connected-accounts/connected-accounts.component.js +++ b/ui/pages/connected-accounts/connected-accounts.component.js @@ -1,5 +1,6 @@ import PropTypes from 'prop-types'; import React from 'react'; +import { useSelector } from 'react-redux'; import { WALLET_SNAP_PERMISSION_KEY } from '@metamask/snaps-utils'; import Popover from '../../components/ui/popover'; import ConnectedAccountsList from '../../components/app/connected-accounts-list'; @@ -9,6 +10,7 @@ import { useI18nContext } from '../../hooks/useI18nContext'; import ConnectedSnaps from '../../components/app/connected-sites-list/connected-snaps'; import { TextColor, TextVariant } from '../../helpers/constants/design-system'; import { Box, Text } from '../../components/component-library'; +import { getInternalAccounts } from '../../selectors'; export default function ConnectedAccounts({ accountToConnect = null, @@ -21,12 +23,13 @@ export default function ConnectedAccounts({ permissions = undefined, selectedAddress, removePermittedAccount, - setSelectedAddress, + setSelectedAccount, subjectMetadata, originOfActiveTab, permissionSubjects, }) { const t = useI18nContext(); + const internalAccounts = useSelector(getInternalAccounts); const connectedSubjectsMetadata = subjectMetadata[originOfActiveTab]; const subjectHasSnaps = permissionSubjects[originOfActiveTab]?.origin === @@ -99,7 +102,12 @@ export default function ConnectedAccounts({ connectedAccounts={connectedAccounts} selectedAddress={selectedAddress} removePermittedAccount={removePermittedAccount} - setSelectedAddress={setSelectedAddress} + setSelectedAddress={(address) => { + const { id: accountId } = internalAccounts.find( + (internalAccount) => internalAccount.address === address, + ); + setSelectedAccount(accountId); + }} shouldRenderListOptions /> @@ -130,7 +138,7 @@ ConnectedAccounts.propTypes = { isActiveTabExtension: PropTypes.bool.isRequired, selectedAddress: PropTypes.string.isRequired, removePermittedAccount: PropTypes.func.isRequired, - setSelectedAddress: PropTypes.func.isRequired, + setSelectedAccount: PropTypes.func.isRequired, history: PropTypes.object.isRequired, subjectMetadata: PropTypes.arrayOf(PropTypes.object).isRequired, originOfActiveTab: PropTypes.string, diff --git a/ui/pages/connected-accounts/connected-accounts.container.js b/ui/pages/connected-accounts/connected-accounts.container.js index ed10454d9d88..8530ca0f1c4a 100644 --- a/ui/pages/connected-accounts/connected-accounts.container.js +++ b/ui/pages/connected-accounts/connected-accounts.container.js @@ -4,8 +4,8 @@ import { getOrderedConnectedAccountsForActiveTab, getOriginOfCurrentTab, getPermissionsForActiveTab, + getSelectedInternalAccount, getPermissionSubjects, - getSelectedAddress, getSubjectMetadata, getInternalAccounts, } from '../../selectors'; @@ -13,7 +13,7 @@ import { isExtensionUrl } from '../../helpers/utils/util'; import { addPermittedAccount, removePermittedAccount, - setSelectedAddress, + setSelectedInternalAccount, } from '../../store/actions'; import { getMostRecentOverviewPage } from '../../ducks/history/history'; import ConnectedAccounts from './connected-accounts.component'; @@ -40,7 +40,7 @@ const mapStateToProps = (state) => { )?.metadata.name, }; const permissions = getPermissionsForActiveTab(state); - const selectedAddress = getSelectedAddress(state); + const { address: selectedAddress } = getSelectedInternalAccount(state); const subjectMetadata = getSubjectMetadata(state); const originOfActiveTab = getOriginOfCurrentTab(state); const permissionSubjects = getPermissionSubjects(state); @@ -66,7 +66,8 @@ const mapDispatchToProps = (dispatch) => { dispatch(addPermittedAccount(origin, address)), removePermittedAccount: (origin, address) => dispatch(removePermittedAccount(origin, address)), - setSelectedAddress: (address) => dispatch(setSelectedAddress(address)), + setSelectedAccount: (accountId) => + dispatch(setSelectedInternalAccount(accountId)), }; }; diff --git a/ui/pages/connected-accounts/connected-accounts.stories.js b/ui/pages/connected-accounts/connected-accounts.stories.js index 49e297194a24..eb42c31afd5e 100644 --- a/ui/pages/connected-accounts/connected-accounts.stories.js +++ b/ui/pages/connected-accounts/connected-accounts.stories.js @@ -60,16 +60,33 @@ const account = [ address: '0x983211ce699ea5ab57cc528086154b6db1ad8e55', }, ]; -const identities = { - name: 'Account 1', +const internalAccount = { address: '0x64a845a5b02460acf8a3d84503b0d68d028b4bb4', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Account 1', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [ + 'personal_sign', + 'eth_sign', + 'eth_signTransaction', + 'eth_signTypedData_v1', + 'eth_signTypedData_v3', + 'eth_signTypedData_v4', + ], + type: 'eip155:eoa', }; + export const DefaultStory = () => { return ( { const connectedSubjects = getConnectedSubjectsForSelectedAddress(state); const originOfCurrentTab = getOriginOfCurrentTab(state); const permittedAccountsByOrigin = getPermittedAccountsByOrigin(state); - const selectedAddress = getSelectedAddress(state); + const { address: selectedAddress } = getSelectedInternalAccount(state); const currentTabHasNoAccounts = !permittedAccountsByOrigin[originOfCurrentTab]?.length; @@ -36,7 +35,7 @@ const mapStateToProps = (state) => { } return { - accountLabel: getCurrentAccountWithSendEtherInfo(state).name, + accountLabel: getSelectedInternalAccount(state).metadata.name, connectedSubjects, subjects: getPermissionSubjects(state), mostRecentOverviewPage: getMostRecentOverviewPage(state), diff --git a/ui/pages/permissions-connect/permissions-connect.container.js b/ui/pages/permissions-connect/permissions-connect.container.js index caf2af9ff00a..ec95d67bf90a 100644 --- a/ui/pages/permissions-connect/permissions-connect.container.js +++ b/ui/pages/permissions-connect/permissions-connect.container.js @@ -8,7 +8,7 @@ import { getAccountsWithLabels, getLastConnectedInfo, getPermissionsRequests, - getSelectedAddress, + getSelectedInternalAccount, ///: BEGIN:ONLY_INCLUDE_IF(snaps) getSnapInstallOrUpdateRequests, getRequestState, @@ -57,7 +57,7 @@ const mapStateToProps = (state, ownProps) => { ...getSnapInstallOrUpdateRequests(state), ]; ///: END:ONLY_INCLUDE_IF - const currentAddress = getSelectedAddress(state); + const { address: currentAddress } = getSelectedInternalAccount(state); const permissionsRequest = permissionsRequests.find( (req) => req.metadata.id === permissionsRequestId, diff --git a/ui/pages/send/send-content/send-asset-row/send-asset-row.container.js b/ui/pages/send/send-content/send-asset-row/send-asset-row.container.js index 63c579c57705..5b3d43e5fc82 100644 --- a/ui/pages/send/send-content/send-asset-row/send-asset-row.container.js +++ b/ui/pages/send/send-content/send-asset-row/send-asset-row.container.js @@ -7,6 +7,7 @@ import { import { getMetaMaskAccounts, getNativeCurrencyImage, + getSelectedInternalAccount, } from '../../../../selectors'; import { updateSendAsset, getSendAsset } from '../../../../ducks/send'; import SendAssetRow from './send-asset-row.component'; @@ -14,7 +15,7 @@ import SendAssetRow from './send-asset-row.component'; function mapStateToProps(state) { return { tokens: state.metamask.tokens, - selectedAddress: state.metamask.selectedAddress, + selectedAddress: getSelectedInternalAccount(state).address, nfts: getNfts(state), collections: getNftContracts(state), sendAsset: getSendAsset(state), diff --git a/ui/pages/send/send.test.js b/ui/pages/send/send.test.js index fa8c9f22c3c9..b156f1d0848f 100644 --- a/ui/pages/send/send.test.js +++ b/ui/pages/send/send.test.js @@ -83,6 +83,24 @@ const baseStore = { fast: '2', }, selectedAddress: '0x0', + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0x0', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, keyrings: [ { type: KeyringType.hdKeyTree, @@ -118,24 +136,6 @@ const baseStore = { '0x0': { balance: '0x0', address: '0x0' }, }, identities: { '0x0': { address: '0x0' } }, - internalAccounts: { - accounts: { - 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { - address: '0x1', - id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', - metadata: { - name: 'Test Account', - keyring: { - type: 'HD Key Tree', - }, - }, - options: {}, - methods: [...Object.values(EthMethod)], - type: EthAccountType.Eoa, - }, - }, - selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', - }, tokenAddress: '0x32e6c34cd57087abbd59b5a4aecc4cb495924356', tokenList: { '0x32e6c34cd57087abbd59b5a4aecc4cb495924356': { diff --git a/ui/pages/token-details/token-details-page.test.js b/ui/pages/token-details/token-details-page.test.js index 237f7441f7a2..6a4eba037425 100644 --- a/ui/pages/token-details/token-details-page.test.js +++ b/ui/pages/token-details/token-details-page.test.js @@ -1,5 +1,6 @@ import React from 'react'; import configureMockStore from 'redux-mock-store'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import { fireEvent } from '@testing-library/react'; import { renderWithProvider } from '../../../test/lib/render-helpers'; import Identicon from '../../components/ui/identicon'; @@ -10,6 +11,24 @@ const testTokenAddress = '0xC011a73ee8576Fb46F5E1c5751cA3B9Fe0af2a6F'; const state = { metamask: { selectedAddress: '0xAddress', + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xAddress', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, contractExchangeRates: { '0xAnotherToken': 0.015, }, diff --git a/ui/selectors/permissions.js b/ui/selectors/permissions.js index d8051433d318..2b3ceb2ac381 100644 --- a/ui/selectors/permissions.js +++ b/ui/selectors/permissions.js @@ -6,9 +6,10 @@ import { CaveatTypes } from '../../shared/constants/permissions'; import { getApprovalRequestsByType } from './approvals'; import { createDeepEqualSelector } from './util'; import { + getInternalAccount, getMetaMaskAccountsOrdered, getOriginOfCurrentTab, - getSelectedAddress, + getSelectedInternalAccount, getSubjectMetadata, getTargetSubjectMetadata, } from '.'; @@ -250,23 +251,26 @@ function subjectSelector(state, origin) { } export function getAccountToConnectToActiveTab(state) { - const selectedAddress = getSelectedAddress(state); + const selectedInternalAccount = getSelectedInternalAccount(state); const connectedAccounts = getPermittedAccountsForCurrentTab(state); const { - metamask: { identities }, + metamask: { + internalAccounts: { accounts }, + }, } = state; - const numberOfAccounts = Object.keys(identities).length; + const numberOfAccounts = Object.keys(accounts).length; if ( connectedAccounts.length && connectedAccounts.length !== numberOfAccounts ) { if ( - connectedAccounts.findIndex((address) => address === selectedAddress) === - -1 + connectedAccounts.findIndex( + (address) => address === selectedInternalAccount.address, + ) === -1 ) { - return identities[selectedAddress]; + return getInternalAccount(state, selectedInternalAccount.id); } } diff --git a/ui/selectors/selectors.js b/ui/selectors/selectors.js index 575e17b67af1..07ccdba9772e 100644 --- a/ui/selectors/selectors.js +++ b/ui/selectors/selectors.js @@ -75,9 +75,6 @@ import { isEIP1559Network, getLedgerTransportType, isAddressLedger, - ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) - findKeyringForAddress, - ///: END:ONLY_INCLUDE_IF } from '../ducks/metamask/metamask'; import { getLedgerWebHidConnectedStatus, @@ -303,18 +300,29 @@ export function getSelectedIdentity(state) { return identities[selectedAddress]; } +export function getInternalAccountByAddress(state, address) { + return Object.values(state.metamask.internalAccounts.accounts).find( + (account) => isEqualCaseInsensitive(account.address, address), + ); +} + export function getSelectedInternalAccount(state) { const accountId = state.metamask.internalAccounts.selectedAccount; return state.metamask.internalAccounts.accounts[accountId]; } +export function checkIfMethodIsEnabled(state, methodName) { + const internalAccount = getSelectedInternalAccount(state); + return Boolean(internalAccount.methods.includes(methodName)); +} + export function getSelectedInternalAccountWithBalance(state) { const selectedAccount = getSelectedInternalAccount(state); const rawAccount = getMetaMaskAccountBalances(state)[selectedAccount.address]; const selectedAccountWithBalance = { ...selectedAccount, - balance: rawAccount ? rawAccount.balance : 0, + balance: rawAccount ? rawAccount.balance : '0x0', }; return selectedAccountWithBalance; @@ -410,8 +418,9 @@ export const getMetaMaskAccountsConnected = createSelector( ); export function isBalanceCached(state) { + const { address: selectedAddress } = getSelectedInternalAccount(state); const selectedAccountBalance = - getMetaMaskAccountBalances(state)[getSelectedAddress(state)]?.balance; + getMetaMaskAccountBalances(state)[selectedAddress]?.balance; const cachedBalance = getSelectedAccountCachedBalance(state); return Boolean(!selectedAccountBalance && cachedBalance); @@ -465,9 +474,7 @@ export function getEnsResolutionByAddress(state, address) { const entry = getAddressBookEntry(state, address) || - Object.values(state.metamask.identities).find((identity) => - isEqualCaseInsensitive(identity.address, address), - ); + getInternalAccountByAddress(state, address); return entry?.name || ''; } @@ -493,11 +500,11 @@ export function getAddressBookEntryOrAccountName(state, address) { return internalAccount?.metadata.name || address; } -export function getAccountName(identities, address) { - const entry = Object.values(identities).find((identity) => - isEqualCaseInsensitive(identity.address, address), +export function getAccountName(accounts, accountAddress) { + const account = accounts.find((internalAccount) => + isEqualCaseInsensitive(internalAccount.address, accountAddress), ); - return entry && entry.name !== '' ? entry.name : ''; + return account && account.metadata.name !== '' ? account.metadata.name : ''; } export function getMetadataContractName(state, address) { @@ -537,7 +544,7 @@ export function getAccountsWithLabels(state) { } export function getCurrentAccountWithSendEtherInfo(state) { - const currentAddress = getSelectedAddress(state); + const { address: currentAddress } = getSelectedInternalAccount(state); const accounts = accountsWithSendEtherInfoSelector(state); return getAccountByAddress(accounts, currentAddress); @@ -992,6 +999,11 @@ export const getMemoizedMetaMaskIdentities = createDeepEqualSelector( (identities) => identities, ); +export const getMemoizedMetaMaskInternalAccounts = createDeepEqualSelector( + getInternalAccounts, + (internalAccounts) => internalAccounts, +); + export const getMemoizedAddressBook = createDeepEqualSelector( getAddressBook, (addressBook) => addressBook, @@ -1665,7 +1677,7 @@ export function getIsDynamicTokenListAvailable(state) { */ export function getDetectedTokensInCurrentNetwork(state) { const currentChainId = getCurrentChainId(state); - const selectedAddress = getSelectedAddress(state); + const { address: selectedAddress } = getSelectedInternalAccount(state); return state.metamask.allDetectedTokens?.[currentChainId]?.[selectedAddress]; } @@ -1831,7 +1843,12 @@ export function getAllAccountsOnNetworkAreEmpty(state) { export function getShouldShowSeedPhraseReminder(state) { const { tokens, seedPhraseBackedUp, dismissSeedBackUpReminder } = state.metamask; - const accountBalance = getCurrentEthBalance(state) ?? 0; + + // if there is no account, we don't need to show the seed phrase reminder + const accountBalance = getSelectedInternalAccount(state) + ? getCurrentEthBalance(state) + : 0; + return ( seedPhraseBackedUp === false && (parseInt(accountBalance, 16) > 0 || tokens.length > 0) && @@ -1978,13 +1995,14 @@ export function getSnapRegistry(state) { } export function getKeyringSnapAccounts(state) { - const identities = getMetaMaskIdentities(state); + const internalAccounts = getInternalAccounts(state); - const keyringAccounts = Object.values(identities).filter((identity) => { - return ( - findKeyringForAddress(state, identity.address).type === 'Snap Keyring' - ); - }); + const keyringAccounts = Object.values(internalAccounts).filter( + (internalAccount) => { + const { keyring } = internalAccount.metadata; + return keyring.type === KeyringType.snap; + }, + ); return keyringAccounts; } diff --git a/ui/selectors/selectors.test.js b/ui/selectors/selectors.test.js index daa32d2d48b5..31a9c6e79d58 100644 --- a/ui/selectors/selectors.test.js +++ b/ui/selectors/selectors.test.js @@ -1026,3 +1026,95 @@ describe('Selectors', () => { ).toStrictEqual(expectedResult); }); }); + +describe('#getKeyringSnapAccounts', () => { + it('returns an empty array if no keyring snap accounts exist', () => { + const state = { + metamask: { + internalAccounts: { + accounts: { + 1: { + address: '0x123456789', + metadata: { + name: 'Account 1', + keyring: { + type: 'HD Key Tree', + }, + }, + }, + 2: { + address: '0x987654321', + metadata: { + name: 'Account 2', + keyring: { + type: 'Simple Key Pair', + }, + }, + }, + }, + }, + }, + }; + + expect(selectors.getKeyringSnapAccounts(state)).toStrictEqual([]); + }); + + it('returns an array of keyring snap accounts', () => { + const state = { + metamask: { + internalAccounts: { + accounts: { + 'mock-id-1': { + address: '0x123456789', + metadata: { + name: 'Account 1', + keyring: { + type: 'Ledger', + }, + }, + }, + 'mock-id-2': { + address: '0x987654321', + metadata: { + name: 'Account 2', + keyring: { + type: 'Snap Keyring', + }, + }, + }, + 'mock-id-3': { + address: '0xabcdef123', + metadata: { + name: 'Account 3', + keyring: { + type: 'Snap Keyring', + }, + }, + }, + }, + }, + }, + }; + + expect(selectors.getKeyringSnapAccounts(state)).toStrictEqual([ + { + address: '0x987654321', + metadata: { + name: 'Account 2', + keyring: { + type: 'Snap Keyring', + }, + }, + }, + { + address: '0xabcdef123', + metadata: { + name: 'Account 3', + keyring: { + type: 'Snap Keyring', + }, + }, + }, + ]); + }); +}); diff --git a/ui/selectors/transactions.js b/ui/selectors/transactions.js index c3809992122e..13496dd32a79 100644 --- a/ui/selectors/transactions.js +++ b/ui/selectors/transactions.js @@ -12,7 +12,7 @@ import txHelper from '../helpers/utils/tx-helper'; import { SmartTransactionStatus } from '../../shared/constants/transaction'; import { hexToDecimal } from '../../shared/modules/conversion.utils'; import { getProviderConfig } from '../ducks/metamask/metamask'; -import { getCurrentChainId, getSelectedAddress } from './selectors'; +import { getCurrentChainId, getSelectedInternalAccount } from './selectors'; import { hasPendingApprovals, getApprovalRequestsByType } from './approvals'; import { createDeepEqualSelector } from './util'; @@ -64,7 +64,7 @@ export const incomingTxListSelector = createDeepEqualSelector( } const currentNetworkTransactions = getCurrentNetworkTransactions(state); - const selectedAddress = getSelectedAddress(state); + const { address: selectedAddress } = getSelectedInternalAccount(state); return currentNetworkTransactions.filter( (tx) => @@ -98,12 +98,14 @@ export const smartTransactionsListSelector = (state) => })); export const selectedAddressTxListSelector = createSelector( - getSelectedAddress, + getSelectedInternalAccount, getCurrentNetworkTransactions, smartTransactionsListSelector, - (selectedAddress, transactions = [], smTransactions = []) => { + (selectedInternalAccount, transactions = [], smTransactions = []) => { return transactions - .filter(({ txParams }) => txParams.from === selectedAddress) + .filter( + ({ txParams }) => txParams.from === selectedInternalAccount.address, + ) .filter(({ type }) => type !== TransactionType.incoming) .concat(smTransactions); }, diff --git a/ui/selectors/transactions.test.js b/ui/selectors/transactions.test.js index 5a4ecd408bd1..697ef64f841f 100644 --- a/ui/selectors/transactions.test.js +++ b/ui/selectors/transactions.test.js @@ -1,4 +1,5 @@ import { ApprovalType } from '@metamask/controller-utils'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import { TransactionStatus } from '@metamask/transaction-controller'; import { CHAIN_IDS } from '../../shared/constants/network'; import { @@ -34,6 +35,24 @@ describe('Transaction Selectors', () => { providerConfig: { chainId: '0x5', }, + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xAddress', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, }, }; @@ -115,6 +134,24 @@ describe('Transaction Selectors', () => { }, featureFlags: {}, selectedAddress: '0xAddress', + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xAddress', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, transactions: [ { id: 0, @@ -156,6 +193,21 @@ describe('Transaction Selectors', () => { }, featureFlags: {}, selectedAddress: '0xAddress', + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + address: '0xAddress', + }, + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, transactions: [ { id: 0, @@ -231,6 +283,24 @@ describe('Transaction Selectors', () => { chainId: CHAIN_IDS.MAINNET, }, selectedAddress: '0xAddress', + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xAddress', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, featureFlags: {}, transactions: [tx1, tx2], }, @@ -317,6 +387,24 @@ describe('Transaction Selectors', () => { chainId: CHAIN_IDS.MAINNET, }, selectedAddress: '0xAddress', + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xAddress', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, featureFlags: {}, transactions: [submittedTx, unapprovedTx, approvedTx, confirmedTx], }, diff --git a/ui/store/actions.test.js b/ui/store/actions.test.js index 529c6eb46777..ec2fefaed364 100644 --- a/ui/store/actions.test.js +++ b/ui/store/actions.test.js @@ -1,6 +1,7 @@ import sinon from 'sinon'; import configureStore from 'redux-mock-store'; import thunk from 'redux-thunk'; +import { EthAccountType, EthMethod } from '@metamask/keyring-api'; import { TransactionStatus } from '@metamask/transaction-controller'; import enLocale from '../../app/_locales/en/messages.json'; import MetaMaskController from '../../app/scripts/metamask-controller'; @@ -22,6 +23,24 @@ const defaultState = { balance: '0x0', }, }, + internalAccounts: { + accounts: { + 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3': { + address: '0xFirstAddress', + id: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: 'cf8dace4-9439-4bd4-b3a8-88c821c8fcb3', + }, identities: { '0xFirstAddress': {}, }, @@ -237,6 +256,24 @@ describe('Actions', () => { identities: { '0xAnotherAddress': {}, }, + internalAccounts: { + accounts: { + '22497cc9-e791-42b8-adef-2f13ef216b86': { + address: '0xAnotherAddress', + id: '22497cc9-e791-42b8-adef-2f13ef216b86', + metadata: { + name: 'Test Account 2', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: '22497cc9-e791-42b8-adef-2f13ef216b86', + }, }), ); @@ -818,33 +855,89 @@ describe('Actions', () => { it('#setSelectedAccount', async () => { const store = mockStore({ activeTab: {}, - metamask: { alertEnabledness: {}, selectedAddress: '0x123' }, + metamask: { + alertEnabledness: {}, + internalAccounts: { + accounts: { + 'mock-id': { + address: '0x123', + id: 'mock-id', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [ + 'personal_sign', + 'eth_sign', + 'eth_signTransaction', + 'eth_signTypedData_v1', + 'eth_signTypedData_v3', + 'eth_signTypedData_v4', + ], + type: 'eip155:eoa', + }, + }, + selectedAccount: 'mock-id', + }, + }, }); - const setSelectedAddressSpy = sinon.stub().callsFake((_, cb) => cb()); + const setSelectedInternalAccountSpy = sinon + .stub() + .callsFake((_, cb) => cb()); background.getApi.returns({ - setSelectedAddress: setSelectedAddressSpy, + setSelectedInternalAccount: setSelectedInternalAccountSpy, }); setBackgroundConnection(background.getApi()); - await store.dispatch(actions.setSelectedAccount()); - expect(setSelectedAddressSpy.callCount).toStrictEqual(1); + await store.dispatch(actions.setSelectedAccount('0x123')); + expect(setSelectedInternalAccountSpy.callCount).toStrictEqual(1); }); it('displays warning if setSelectedAccount throws', async () => { const store = mockStore({ activeTab: {}, - metamask: { alertEnabledness: {}, selectedAddress: '0x123' }, + metamask: { + alertEnabledness: {}, + internalAccounts: { + accounts: { + 'mock-id': { + address: '0x123', + id: 'mock-id', + metadata: { + name: 'Test Account', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [ + 'personal_sign', + 'eth_sign', + 'eth_signTransaction', + 'eth_signTypedData_v1', + 'eth_signTypedData_v3', + 'eth_signTypedData_v4', + ], + type: 'eip155:eoa', + }, + }, + selectedAccount: 'mock-id', + }, + }, }); - const setSelectedAddressSpy = sinon + const setSelectedInternalAccountSpy = sinon .stub() .callsFake((_, cb) => cb(new Error('error'))); background.getApi.returns({ - setSelectedAddress: setSelectedAddressSpy, + setSelectedInternalAccount: setSelectedInternalAccountSpy, }); setBackgroundConnection(background.getApi()); @@ -855,7 +948,7 @@ describe('Actions', () => { { type: 'HIDE_LOADING_INDICATION' }, ]; - await store.dispatch(actions.setSelectedAccount()); + await store.dispatch(actions.setSelectedAccount('0x123')); expect(store.getActions()).toStrictEqual(expectedActions); }); }); @@ -1976,6 +2069,29 @@ describe('Actions', () => { identities: { '0xFirstAddress': {}, }, + internalAccounts: { + accounts: { + '8e110453-2231-4e62-82de-29b913dfef4b': { + address: '0xFirstAddress', + id: '8e110453-2231-4e62-82de-29b913dfef4b', + metadata: { + name: 'Test Account 2', + keyring: { + type: 'HD Key Tree', + }, + }, + options: {}, + methods: [...Object.values(EthMethod)], + type: EthAccountType.Eoa, + }, + }, + selectedAccount: '8e110453-2231-4e62-82de-29b913dfef4b', + }, + cachedBalances: { + '0x1': { + '0xFirstAddress': '0x0', + }, + }, }), ), }); diff --git a/ui/store/actions.ts b/ui/store/actions.ts index aedd6ebf888a..6d18be0f5d02 100644 --- a/ui/store/actions.ts +++ b/ui/store/actions.ts @@ -38,7 +38,6 @@ import { getEnvironmentType, addHexPrefix } from '../../app/scripts/lib/util'; import { getMetaMaskAccounts, getPermittedAccountsForCurrentTab, - getSelectedAddress, hasTransactionPendingApprovals, getApprovalFlows, getCurrentNetworkTransactions, @@ -50,6 +49,8 @@ import { getPermissionSubjects, getFirstSnapInstallOrUpdateRequest, ///: END:ONLY_INCLUDE_IF + getInternalAccountByAddress, + getSelectedInternalAccount, } from '../selectors'; import { computeEstimatedGasLimit, @@ -1550,12 +1551,15 @@ export function updateMetamaskState( const providerConfig = getProviderConfig(state); const { metamask: currentState } = state; - const { currentLocale, selectedAddress } = currentState; - const { - currentLocale: newLocale, - selectedAddress: newSelectedAddress, - providerConfig: newProviderConfig, - } = newState; + const { currentLocale } = currentState; + const currentInternalAccount = getSelectedInternalAccount(state); + const selectedAddress = currentInternalAccount?.address; + const { currentLocale: newLocale, providerConfig: newProviderConfig } = + newState; + const newInternalAccount = getSelectedInternalAccount({ + metamask: newState, + }); + const newSelectedAddress = newInternalAccount?.address; if (currentLocale && newLocale && currentLocale !== newLocale) { dispatch(updateCurrentLocale(newLocale)); @@ -1700,6 +1704,34 @@ export function setSelectedAddress( }; } +async function _setSelectedInternalAccount(accountId: string): Promise { + log.debug(`background.setSelectedInternalAccount`); + await submitRequestToBackground('setSelectedInternalAccount', [accountId]); +} + +/** + * Sets the selected internal account. + * + * @param accountId - The ID of the account to set as selected. + * @returns A thunk action that dispatches loading and warning indications. + */ +export function setSelectedInternalAccount( + accountId: string, +): ThunkAction { + return async (dispatch: MetaMaskReduxDispatch) => { + dispatch(showLoadingIndication()); + log.debug(`background.setSelectedInternalAccount`); + try { + await _setSelectedInternalAccount(accountId); + } catch (error) { + dispatch(displayWarning(error)); + return; + } finally { + dispatch(hideLoadingIndication()); + } + }; +} + export function setSelectedAccount( address: string, ): ThunkAction { @@ -1711,12 +1743,12 @@ export function setSelectedAccount( const unconnectedAccountAccountAlertIsEnabled = getUnconnectedAccountAlertEnabledness(state); const activeTabOrigin = state.activeTab.origin; - const selectedAddress = getSelectedAddress(state); + const internalAccount = getInternalAccountByAddress(state, address); const permittedAccountsForCurrentTab = getPermittedAccountsForCurrentTab(state); const currentTabIsConnectedToPreviousAddress = Boolean(activeTabOrigin) && - permittedAccountsForCurrentTab.includes(selectedAddress); + permittedAccountsForCurrentTab.includes(internalAccount.address); const currentTabIsConnectedToNextAddress = Boolean(activeTabOrigin) && permittedAccountsForCurrentTab.includes(address); @@ -1725,7 +1757,7 @@ export function setSelectedAccount( !currentTabIsConnectedToNextAddress; try { - await _setSelectedAddress(address); + await _setSelectedInternalAccount(internalAccount.id); await forceUpdateMetamaskState(dispatch); } catch (error) { dispatch(displayWarning(error)); @@ -4018,7 +4050,7 @@ export function getNextNonce(): ThunkAction< AnyAction > { return async (dispatch, getState) => { - const address = getState().metamask.selectedAddress; + const { address } = getSelectedInternalAccount(getState()); let nextNonce; try { nextNonce = await submitRequestToBackground('getNextNonce', [ diff --git a/yarn.lock b/yarn.lock index fbb1fd75a6f6..92b68bbc139d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1921,13 +1921,6 @@ __metadata: languageName: node linkType: hard -"@endo/env-options@npm:^0.1.4": - version: 0.1.4 - resolution: "@endo/env-options@npm:0.1.4" - checksum: 0d6b82bdf07602dfc373a475234a206b61e9d0ab6ea886fdcbd111a37d9ce4e55ead5dbc1c7af52cf67a11a7185b40e7b30c3367da3928897082502d7e1274f1 - languageName: node - linkType: hard - "@endo/env-options@npm:^1.1.0": version: 1.1.0 resolution: "@endo/env-options@npm:1.1.0" @@ -3773,41 +3766,24 @@ __metadata: languageName: node linkType: hard -"@metamask/accounts-controller@npm:5.0.0": - version: 5.0.0 - resolution: "@metamask/accounts-controller@npm:5.0.0" - dependencies: - "@metamask/base-controller": "npm:^3.2.3" - "@metamask/eth-snap-keyring": "npm:^2.0.0" - "@metamask/keyring-api": "npm:^1.1.0" - "@metamask/snaps-utils": "npm:^3.2.0" - "@metamask/utils": "npm:^8.2.0" - deepmerge: "npm:^4.2.2" - ethereumjs-util: "npm:^7.0.10" - immer: "npm:^9.0.6" - uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/keyring-controller": ^9.0.0 - checksum: 7f1759a89603ae6072cd9a475d61d1c58300ebd32f9a42111329da0403cce41f991c85cfd52811171ffbfc762b94f8470d15885c7b79620288c39e146fb0ae4d - languageName: node - linkType: hard - -"@metamask/accounts-controller@patch:@metamask/accounts-controller@npm%3A5.0.0#~/.yarn/patches/@metamask-accounts-controller-npm-5.0.0-f877105fa0.patch": - version: 5.0.0 - resolution: "@metamask/accounts-controller@patch:@metamask/accounts-controller@npm%3A5.0.0#~/.yarn/patches/@metamask-accounts-controller-npm-5.0.0-f877105fa0.patch::version=5.0.0&hash=aa3146" +"@metamask/accounts-controller@npm:^10.0.0": + version: 10.0.0 + resolution: "@metamask/accounts-controller@npm:10.0.0" dependencies: - "@metamask/base-controller": "npm:^3.2.3" - "@metamask/eth-snap-keyring": "npm:^2.0.0" - "@metamask/keyring-api": "npm:^1.1.0" - "@metamask/snaps-utils": "npm:^3.2.0" - "@metamask/utils": "npm:^8.2.0" + "@metamask/base-controller": "npm:^4.1.1" + "@metamask/eth-snap-keyring": "npm:^2.1.1" + "@metamask/keyring-api": "npm:^3.0.0" + "@metamask/snaps-sdk": "npm:^1.3.2" + "@metamask/snaps-utils": "npm:^5.1.2" + "@metamask/utils": "npm:^8.3.0" deepmerge: "npm:^4.2.2" ethereumjs-util: "npm:^7.0.10" immer: "npm:^9.0.6" uuid: "npm:^8.3.2" peerDependencies: - "@metamask/keyring-controller": ^9.0.0 - checksum: 83d027fdc604cb13242b91fe87b7408986d06ae9de8015797961ad744d702052220551817292ee2f2f03be430d2819b038984e841dac420d410fb8f5bfdc3474 + "@metamask/keyring-controller": ^12.2.0 + "@metamask/snaps-controllers": ^4.0.0 + checksum: 67bde84bd7d4215635ac1e5121fefca43a111743e922d6b8c050b136571a7887119bd8d1c08e41c5806292260309b27853fe959ff593731434bcbdbb7a22b076 languageName: node linkType: hard @@ -3893,7 +3869,7 @@ __metadata: languageName: node linkType: hard -"@metamask/base-controller@npm:^3.0.0, @metamask/base-controller@npm:^3.2.0, @metamask/base-controller@npm:^3.2.1, @metamask/base-controller@npm:^3.2.3": +"@metamask/base-controller@npm:^3.0.0, @metamask/base-controller@npm:^3.2.1, @metamask/base-controller@npm:^3.2.3": version: 3.2.3 resolution: "@metamask/base-controller@npm:3.2.3" dependencies: @@ -3903,13 +3879,13 @@ __metadata: languageName: node linkType: hard -"@metamask/base-controller@npm:^4.0.0, @metamask/base-controller@npm:^4.0.1, @metamask/base-controller@npm:^4.1.0": - version: 4.1.0 - resolution: "@metamask/base-controller@npm:4.1.0" +"@metamask/base-controller@npm:^4.0.0, @metamask/base-controller@npm:^4.0.1, @metamask/base-controller@npm:^4.1.0, @metamask/base-controller@npm:^4.1.1": + version: 4.1.1 + resolution: "@metamask/base-controller@npm:4.1.1" dependencies: - "@metamask/utils": "npm:^8.2.0" + "@metamask/utils": "npm:^8.3.0" immer: "npm:^9.0.6" - checksum: a30a404429a2fe7f0e8a291e0f996e81489ca34230d679462a6d8dccaf066b9594fc8935f2fa187cd4f7ab31509d18ce58f8985ae3dea72e4c1f3b61fea19b40 + checksum: c3481179af62ae3ec16794f8eca0b54dd4ce9abf39278ceb766fd0d295b66399c5d58f605fe1ba24d296d52bb0e1180fb99e3e6e9db7b8a4115a02b15653c447 languageName: node linkType: hard @@ -4199,7 +4175,7 @@ __metadata: languageName: node linkType: hard -"@metamask/eth-snap-keyring@npm:^2.0.0, @metamask/eth-snap-keyring@npm:^2.1.1": +"@metamask/eth-snap-keyring@npm:^2.1.1": version: 2.1.1 resolution: "@metamask/eth-snap-keyring@npm:2.1.1" dependencies: @@ -4392,7 +4368,7 @@ __metadata: languageName: node linkType: hard -"@metamask/json-rpc-engine@npm:^7.1.1, @metamask/json-rpc-engine@npm:^7.2.0, @metamask/json-rpc-engine@npm:^7.3.0, @metamask/json-rpc-engine@npm:^7.3.1": +"@metamask/json-rpc-engine@npm:^7.1.1, @metamask/json-rpc-engine@npm:^7.2.0, @metamask/json-rpc-engine@npm:^7.3.1": version: 7.3.1 resolution: "@metamask/json-rpc-engine@npm:7.3.1" dependencies: @@ -4417,35 +4393,33 @@ __metadata: languageName: node linkType: hard -"@metamask/keyring-api@npm:^1.0.0, @metamask/keyring-api@npm:^1.1.0": - version: 1.1.0 - resolution: "@metamask/keyring-api@npm:1.1.0" +"@metamask/keyring-api@npm:^2.0.0": + version: 2.0.0 + resolution: "@metamask/keyring-api@npm:2.0.0" dependencies: - "@metamask/providers": "npm:^13.0.0" - "@metamask/snaps-controllers": "npm:^3.1.0" - "@metamask/snaps-rpc-methods": "npm:^3.1.0" - "@metamask/snaps-utils": "npm:^3.0.0" + "@metamask/providers": "npm:^14.0.1" + "@metamask/snaps-controllers": "npm:^3.4.1" + "@metamask/snaps-sdk": "npm:^1.2.0" + "@metamask/snaps-utils": "npm:^5.0.0" "@metamask/utils": "npm:^8.1.0" "@types/uuid": "npm:^9.0.1" superstruct: "npm:^1.0.3" uuid: "npm:^9.0.0" - checksum: a14791d40d1f77c734e434de37f837f25346614d93fb68b9f1235a5fca89f33dd5becfbbedff2ca531bf5c3191074cede53950978944b6f5b9dc36175ee08c01 + checksum: 65dcca4d7f94102fafbccbb3ee79647f94f92985e8e3dab795fde5ee563fd3ff050ec59ee16c0276d06bb7d474a2281c504d2dc7cac60df3b2bfc918aa17615f languageName: node linkType: hard -"@metamask/keyring-api@npm:^2.0.0": - version: 2.0.0 - resolution: "@metamask/keyring-api@npm:2.0.0" +"@metamask/keyring-api@npm:^3.0.0": + version: 3.0.0 + resolution: "@metamask/keyring-api@npm:3.0.0" dependencies: "@metamask/providers": "npm:^14.0.1" - "@metamask/snaps-controllers": "npm:^3.4.1" - "@metamask/snaps-sdk": "npm:^1.2.0" - "@metamask/snaps-utils": "npm:^5.0.0" + "@metamask/snaps-sdk": "npm:^1.3.2" "@metamask/utils": "npm:^8.1.0" "@types/uuid": "npm:^9.0.1" superstruct: "npm:^1.0.3" uuid: "npm:^9.0.0" - checksum: 65dcca4d7f94102fafbccbb3ee79647f94f92985e8e3dab795fde5ee563fd3ff050ec59ee16c0276d06bb7d474a2281c504d2dc7cac60df3b2bfc918aa17615f + checksum: ca07392e2cef1f5f7056e73c7a5d0a4092234b3d794aa3bca1ce3a1df0dc40832ec3fc0026965b54c07aec0ee175267de365033b028909484bc6d9fe4fb4c329 languageName: node linkType: hard @@ -4600,17 +4574,6 @@ __metadata: languageName: node linkType: hard -"@metamask/object-multiplex@npm:^1.1.0": - version: 1.2.0 - resolution: "@metamask/object-multiplex@npm:1.2.0" - dependencies: - end-of-stream: "npm:^1.4.4" - once: "npm:^1.4.0" - readable-stream: "npm:^2.3.3" - checksum: 7c622639cc164c3b780294d790311e4bcb327faf14626717728022e95da5834f32fe4e242d8f4e7d9b8c2b83f0c76450922786b2f6ef50e777bfe119b78bdab7 - languageName: node - linkType: hard - "@metamask/object-multiplex@npm:^2.0.0": version: 2.0.0 resolution: "@metamask/object-multiplex@npm:2.0.0" @@ -4652,26 +4615,6 @@ __metadata: languageName: node linkType: hard -"@metamask/permission-controller@npm:^5.0.0": - version: 5.0.1 - resolution: "@metamask/permission-controller@npm:5.0.1" - dependencies: - "@metamask/approval-controller": "npm:^4.1.0" - "@metamask/base-controller": "npm:^3.2.3" - "@metamask/controller-utils": "npm:^5.0.2" - "@metamask/json-rpc-engine": "npm:^7.3.0" - "@metamask/rpc-errors": "npm:^6.1.0" - "@metamask/utils": "npm:^8.2.0" - "@types/deep-freeze-strict": "npm:^1.1.0" - deep-freeze-strict: "npm:^1.1.1" - immer: "npm:^9.0.6" - nanoid: "npm:^3.1.31" - peerDependencies: - "@metamask/approval-controller": ^4.1.0 - checksum: 864c83c5e590a4ba251904b7d164a10413185db7f6e6fb474874a7eadac2261af773e796d75fc782c6add1f544e860b35e3f9a0c1d4c3e5bf2b66935ed207b49 - languageName: node - linkType: hard - "@metamask/permission-controller@npm:^7.0.0, @metamask/permission-controller@npm:^7.1.0": version: 7.1.0 resolution: "@metamask/permission-controller@npm:7.1.0" @@ -4783,25 +4726,6 @@ __metadata: languageName: node linkType: hard -"@metamask/providers@npm:^13.0.0": - version: 13.1.0 - resolution: "@metamask/providers@npm:13.1.0" - dependencies: - "@metamask/json-rpc-engine": "npm:^7.1.1" - "@metamask/object-multiplex": "npm:^1.1.0" - "@metamask/rpc-errors": "npm:^6.0.0" - "@metamask/safe-event-emitter": "npm:^3.0.0" - "@metamask/utils": "npm:^8.1.0" - detect-browser: "npm:^5.2.0" - extension-port-stream: "npm:^2.1.1" - fast-deep-equal: "npm:^3.1.3" - is-stream: "npm:^2.0.0" - json-rpc-middleware-stream: "npm:^4.2.1" - webextension-polyfill: "npm:^0.10.0" - checksum: 2ee1802d92d0fd2c733c5d98137e4f92c77a42fbf008a6b19de25d84d48321502031b82aa66501c4ce9c7e863a82c1866fe477349b48ba1151d4b8c2114233e8 - languageName: node - linkType: hard - "@metamask/providers@npm:^14.0.1, @metamask/providers@npm:^14.0.2": version: 14.0.2 resolution: "@metamask/providers@npm:14.0.2" @@ -4966,7 +4890,7 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-controllers@npm:^3.1.0, @metamask/snaps-controllers@npm:^3.4.1": +"@metamask/snaps-controllers@npm:^3.4.1": version: 3.6.0 resolution: "@metamask/snaps-controllers@npm:3.6.0" dependencies: @@ -5038,17 +4962,6 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-registry@npm:^2.1.0": - version: 2.1.1 - resolution: "@metamask/snaps-registry@npm:2.1.1" - dependencies: - "@metamask/utils": "npm:^8.1.0" - "@noble/secp256k1": "npm:^1.7.1" - superstruct: "npm:^1.0.3" - checksum: f2456314369f3fcf69626903378e8ee5594ff373d74cdcfc53bf9a23d0b16bfc4c341f67b63344ed233972ced8891dc8f05a47fe34cb8ca34cffcb0675d28cdc - languageName: node - linkType: hard - "@metamask/snaps-registry@npm:^3.0.0": version: 3.0.0 resolution: "@metamask/snaps-registry@npm:3.0.0" @@ -5061,22 +4974,6 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-rpc-methods@npm:^3.1.0": - version: 3.3.0 - resolution: "@metamask/snaps-rpc-methods@npm:3.3.0" - dependencies: - "@metamask/key-tree": "npm:^9.0.0" - "@metamask/permission-controller": "npm:^5.0.0" - "@metamask/rpc-errors": "npm:^6.1.0" - "@metamask/snaps-ui": "npm:^3.1.0" - "@metamask/snaps-utils": "npm:^3.3.0" - "@metamask/utils": "npm:^8.1.0" - "@noble/hashes": "npm:^1.3.1" - superstruct: "npm:^1.0.3" - checksum: 4242ddb31fa35858d1f8607640798a70ec878ee22371c0bcf50a6b23f45439b442b49a54b43d54489449aed1600b07880e531520a68e5cb617df462c16ce2baf - languageName: node - linkType: hard - "@metamask/snaps-rpc-methods@npm:^4.1.0": version: 4.1.0 resolution: "@metamask/snaps-rpc-methods@npm:4.1.0" @@ -5109,7 +5006,7 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-sdk@npm:^1.2.0, @metamask/snaps-sdk@npm:^1.3.1, @metamask/snaps-sdk@npm:^1.4.0": +"@metamask/snaps-sdk@npm:^1.2.0, @metamask/snaps-sdk@npm:^1.3.1, @metamask/snaps-sdk@npm:^1.3.2, @metamask/snaps-sdk@npm:^1.4.0": version: 1.4.0 resolution: "@metamask/snaps-sdk@npm:1.4.0" dependencies: @@ -5123,47 +5020,7 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-ui@npm:^3.1.0": - version: 3.1.0 - resolution: "@metamask/snaps-ui@npm:3.1.0" - dependencies: - "@metamask/utils": "npm:^8.1.0" - is-svg: "npm:^4.4.0" - superstruct: "npm:^1.0.3" - checksum: 920601fbfa331a52b3f8038f537fad37fabfce1e02f5dc8915b701dde051a02d07d2b7ca7301f7e0d6969c38d57a06a6902ab1c595a33c7ea890ce333af0efdb - languageName: node - linkType: hard - -"@metamask/snaps-utils@npm:^3.0.0, @metamask/snaps-utils@npm:^3.2.0, @metamask/snaps-utils@npm:^3.3.0": - version: 3.3.0 - resolution: "@metamask/snaps-utils@npm:3.3.0" - dependencies: - "@babel/core": "npm:^7.23.2" - "@babel/types": "npm:^7.23.0" - "@metamask/base-controller": "npm:^3.2.0" - "@metamask/key-tree": "npm:^9.0.0" - "@metamask/permission-controller": "npm:^5.0.0" - "@metamask/rpc-errors": "npm:^6.1.0" - "@metamask/snaps-registry": "npm:^2.1.0" - "@metamask/snaps-ui": "npm:^3.1.0" - "@metamask/utils": "npm:^8.1.0" - "@noble/hashes": "npm:^1.3.1" - "@scure/base": "npm:^1.1.1" - chalk: "npm:^4.1.2" - cron-parser: "npm:^4.5.0" - fast-deep-equal: "npm:^3.1.3" - fast-json-stable-stringify: "npm:^2.1.0" - is-svg: "npm:^4.4.0" - rfdc: "npm:^1.3.0" - semver: "npm:^7.5.4" - ses: "npm:^0.18.8" - superstruct: "npm:^1.0.3" - validate-npm-package-name: "npm:^5.0.0" - checksum: e74f61ab1fb9a623a8bba701df882b844a2a49c4b7876531c75feb0953afe5ad7697409d8f512a4ca9860ca9a3fd7355c205b68b5333dd219ed6001eb31b814c - languageName: node - linkType: hard - -"@metamask/snaps-utils@npm:^5.0.0, @metamask/snaps-utils@npm:^5.1.1, @metamask/snaps-utils@npm:^5.2.0": +"@metamask/snaps-utils@npm:^5.0.0, @metamask/snaps-utils@npm:^5.1.1, @metamask/snaps-utils@npm:^5.1.2, @metamask/snaps-utils@npm:^5.2.0": version: 5.2.0 resolution: "@metamask/snaps-utils@npm:5.2.0" dependencies: @@ -5412,7 +5269,7 @@ __metadata: languageName: node linkType: hard -"@noble/secp256k1@npm:^1.5.5, @noble/secp256k1@npm:^1.7.0, @noble/secp256k1@npm:^1.7.1": +"@noble/secp256k1@npm:^1.5.5, @noble/secp256k1@npm:^1.7.0": version: 1.7.1 resolution: "@noble/secp256k1@npm:1.7.1" checksum: 214d4756c20ed20809d948d0cc161e95664198cb127266faf747fd7deffe5444901f05fe9f833787738f2c6e60b09e544c2f737f42f73b3699e3999ba15b1b63 @@ -17482,7 +17339,7 @@ __metadata: languageName: node linkType: hard -"extension-port-stream@npm:^2.0.0, extension-port-stream@npm:^2.1.1": +"extension-port-stream@npm:^2.0.0": version: 2.1.1 resolution: "extension-port-stream@npm:2.1.1" dependencies: @@ -22837,16 +22694,6 @@ __metadata: languageName: node linkType: hard -"json-rpc-middleware-stream@npm:^4.2.1": - version: 4.2.1 - resolution: "json-rpc-middleware-stream@npm:4.2.1" - dependencies: - "@metamask/safe-event-emitter": "npm:^2.0.0" - readable-stream: "npm:^2.3.3" - checksum: 7cf1b521cb2dd24fc06a38f80960aa0bd53e020b955feb92119a64831986be474ba695bfa4851ed0bf9e7828a07b49f70fdc38a58bc2c62502abe874d4acff6c - languageName: node - linkType: hard - "json-rpc-middleware-stream@npm:^5.0.0, json-rpc-middleware-stream@npm:^5.0.1": version: 5.0.1 resolution: "json-rpc-middleware-stream@npm:5.0.1" @@ -24686,7 +24533,7 @@ __metadata: "@metamask-institutional/rpc-allowlist": "npm:^1.0.0" "@metamask-institutional/sdk": "npm:^0.1.23" "@metamask-institutional/transaction-update": "npm:^0.1.32" - "@metamask/accounts-controller": "patch:@metamask/accounts-controller@npm%3A5.0.0#~/.yarn/patches/@metamask-accounts-controller-npm-5.0.0-f877105fa0.patch" + "@metamask/accounts-controller": "npm:^10.0.0" "@metamask/address-book-controller": "npm:^3.0.0" "@metamask/announcement-controller": "npm:^5.0.1" "@metamask/approval-controller": "npm:^5.1.1" @@ -24718,7 +24565,7 @@ __metadata: "@metamask/forwarder": "npm:^1.1.0" "@metamask/gas-fee-controller": "npm:^12.0.0" "@metamask/jazzicon": "npm:^2.0.0" - "@metamask/keyring-api": "npm:^1.0.0" + "@metamask/keyring-api": "npm:^3.0.0" "@metamask/keyring-controller": "patch:@metamask/keyring-controller@npm%3A9.0.0#~/.yarn/patches/@metamask-keyring-controller-npm-9.0.0-f57ed3ebea.patch" "@metamask/logging-controller": "npm:^1.0.1" "@metamask/logo": "npm:^3.1.2" @@ -31221,15 +31068,6 @@ __metadata: languageName: node linkType: hard -"ses@npm:^0.18.8": - version: 0.18.8 - resolution: "ses@npm:0.18.8" - dependencies: - "@endo/env-options": "npm:^0.1.4" - checksum: 243b8d546ca2f0ad68cda1178689c4a4bfab8ac25fd03daccaf6c4b94ee0c10b07eb10b8d477c73ceef9ba10a2205d2bef0bd3c64b8c98130c01adfd9c873103 - languageName: node - linkType: hard - "ses@npm:^1.1.0": version: 1.1.0 resolution: "ses@npm:1.1.0" From 913979cd1605a7c58fc2a90e53bdd4e6ff72014e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Martyk=C3=A1n?= Date: Thu, 25 Jan 2024 17:19:09 +0100 Subject: [PATCH 09/45] fix: Trezor connect - update to v9 in trezor-usb-permissions (#22591) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## **Description** We found some issues at Trezor with the Metamask integration, one of them related to the USB permissions page being linked to a deprecated version of our SDK. Metamask already uses the v9 package, but in this particular instance it's hardcoded to load from v5. We added a workaround on our side for now, by adding a redirect. This PR solves the problem properly by updating the version in the code. # **Related issues** Unknown ## **Manual testing steps** NA ## **Screenshots/Recordings** NA Co-authored-by: Brad Decker Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com> Co-authored-by: Sébastien Van Eyck --- app/trezor-usb-permissions.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/trezor-usb-permissions.html b/app/trezor-usb-permissions.html index ee92fa7c1c9c..0903f12d712d 100644 --- a/app/trezor-usb-permissions.html +++ b/app/trezor-usb-permissions.html @@ -30,6 +30,6 @@ - + From 803948a0e2332038fa336f90ec34977304c67d97 Mon Sep 17 00:00:00 2001 From: Daniel <80175477+dan437@users.noreply.github.com> Date: Thu, 25 Jan 2024 17:38:26 +0100 Subject: [PATCH 10/45] Update Gas API URL (#22544) --- privacy-snapshot.json | 2 +- shared/constants/swaps.ts | 2 +- test/e2e/mock-e2e.js | 10 ++++------ test/e2e/tests/gas-estimates.spec.js | 11 ++++------- test/e2e/tests/metrics/swaps.spec.js | 3 ++- test/e2e/tests/network-error.spec.js | 5 ++--- test/jest/constants.js | 2 +- 7 files changed, 15 insertions(+), 20 deletions(-) diff --git a/privacy-snapshot.json b/privacy-snapshot.json index c04b77708e6d..97e3501b5b43 100644 --- a/privacy-snapshot.json +++ b/privacy-snapshot.json @@ -16,7 +16,7 @@ "etherscan.io", "execution.metamask.io", "fonts.gstatic.com", - "gas-api.metaswap.codefi.network", + "gas.api.cx.metamask.io", "github.com", "goerli.infura.io", "localhost:8000", diff --git a/shared/constants/swaps.ts b/shared/constants/swaps.ts index ea738d76b740..145b7ee360cc 100644 --- a/shared/constants/swaps.ts +++ b/shared/constants/swaps.ts @@ -151,7 +151,7 @@ const SWAPS_TESTNET_CHAIN_ID = '0x539'; export const SWAPS_API_V2_BASE_URL = 'https://swap.metaswap.codefi.network'; export const SWAPS_DEV_API_V2_BASE_URL = 'https://swap.dev-api.cx.metamask.io'; -export const GAS_API_BASE_URL = 'https://gas-api.metaswap.codefi.network'; +export const GAS_API_BASE_URL = 'https://gas.api.cx.metamask.io'; export const GAS_DEV_API_BASE_URL = 'https://gas.uat-api.cx.metamask.io'; const BSC_DEFAULT_BLOCK_EXPLORER_URL = 'https://bscscan.com/'; diff --git a/test/e2e/mock-e2e.js b/test/e2e/mock-e2e.js index 360913879c27..cffd2109277c 100644 --- a/test/e2e/mock-e2e.js +++ b/test/e2e/mock-e2e.js @@ -1,3 +1,5 @@ +const { GAS_API_BASE_URL } = require('../../shared/constants/swaps'); + const blacklistedHosts = [ 'arbitrum-mainnet.infura.io', 'goerli.infura.io', @@ -158,9 +160,7 @@ async function setupMocking(server, testSpecificMock, { chainId }) { }); await server - .forGet( - `https://gas-api.metaswap.codefi.network/networks/${chainId}/gasPrices`, - ) + .forGet(`${GAS_API_BASE_URL}/networks/${chainId}/gasPrices`) .thenCallback(() => { return { statusCode: 200, @@ -190,9 +190,7 @@ async function setupMocking(server, testSpecificMock, { chainId }) { }); await server - .forGet( - `https://gas-api.metaswap.codefi.network/networks/${chainId}/suggestedGasFees`, - ) + .forGet(`${GAS_API_BASE_URL}/networks/${chainId}/suggestedGasFees`) .thenCallback(() => { return { statusCode: 200, diff --git a/test/e2e/tests/gas-estimates.spec.js b/test/e2e/tests/gas-estimates.spec.js index f19c16ed3455..dcb7ce706e78 100644 --- a/test/e2e/tests/gas-estimates.spec.js +++ b/test/e2e/tests/gas-estimates.spec.js @@ -6,6 +6,7 @@ const { } = require('../helpers'); const FixtureBuilder = require('../fixture-builder'); const { CHAIN_IDS } = require('../../../shared/constants/network'); +const { GAS_API_BASE_URL } = require('../../../shared/constants/swaps'); describe('Gas estimates generated by MetaMask', function () { const preLondonGanacheOptions = generateGanacheOptions({ @@ -53,9 +54,7 @@ describe('Gas estimates generated by MetaMask', function () { ganacheOptions: postLondonGanacheOptions, testSpecificMock: (mockServer) => { mockServer - .forGet( - 'https://gas-api.metaswap.codefi.network/networks/1337/suggestedGasFees', - ) + .forGet(`${GAS_API_BASE_URL}/networks/1337/suggestedGasFees`) .thenCallback(() => { return { json: { @@ -97,9 +96,7 @@ describe('Gas estimates generated by MetaMask', function () { ganacheOptions: postLondonGanacheOptions, testSpecificMock: (mockServer) => { mockServer - .forGet( - 'https://gas-api.metaswap.codefi.network/networks/1337/suggestedGasFees', - ) + .forGet(`${GAS_API_BASE_URL}/networks/1337/suggestedGasFees`) .thenCallback(() => { return { statusCode: 422, @@ -177,7 +174,7 @@ describe('Gas estimates generated by MetaMask', function () { testSpecificMock: (mockServer) => { mockServer .forGet( - `https://gas-api.metaswap.codefi.network/networks/${parseInt( + `${GAS_API_BASE_URL}/networks/${parseInt( CHAIN_IDS.BSC, 16, )}/gasPrices`, diff --git a/test/e2e/tests/metrics/swaps.spec.js b/test/e2e/tests/metrics/swaps.spec.js index 1e7b1120a307..594c23d5ea2d 100644 --- a/test/e2e/tests/metrics/swaps.spec.js +++ b/test/e2e/tests/metrics/swaps.spec.js @@ -20,6 +20,7 @@ const { MetaMetricsEventCategory, MetaMetricsEventName, } = require('../../../../shared/constants/metametrics'); +const { GAS_API_BASE_URL } = require('../../../../shared/constants/swaps'); const { TOKENS_API_MOCK_RESULT, TOP_ASSETS_API_MOCK_RESULT, @@ -59,7 +60,7 @@ async function mockSegmentAndMetaswapRequests(mockServer) { json: AGGREGATOR_METADATA_API_MOCK_RESULT, })), await mockServer - .forGet('https://gas-api.metaswap.codefi.network/networks/1/gasPrices') + .forGet(`${GAS_API_BASE_URL}/networks/1/gasPrices`) .thenCallback(() => ({ statusCode: 200, json: GAS_PRICE_API_MOCK_RESULT, diff --git a/test/e2e/tests/network-error.spec.js b/test/e2e/tests/network-error.spec.js index b7115144b957..e8ddfff7d3bd 100644 --- a/test/e2e/tests/network-error.spec.js +++ b/test/e2e/tests/network-error.spec.js @@ -6,13 +6,12 @@ const { generateGanacheOptions, } = require('../helpers'); const FixtureBuilder = require('../fixture-builder'); +const { GAS_API_BASE_URL } = require('../../../shared/constants/swaps'); describe('Gas API fallback', function () { async function mockGasApiDown(mockServer) { await mockServer - .forGet( - 'https://gas-api.metaswap.codefi.network/networks/1337/suggestedGasFees', - ) + .forGet(`${GAS_API_BASE_URL}/networks/1337/suggestedGasFees`) .always() .thenCallback(() => { return { diff --git a/test/jest/constants.js b/test/jest/constants.js index 4017903d8aa2..89a6b33357fc 100644 --- a/test/jest/constants.js +++ b/test/jest/constants.js @@ -1,2 +1,2 @@ export const METASWAP_BASE_URL = 'https://swap.metaswap.codefi.network'; -export const GAS_API_URL = 'https://gas-api.metaswap.codefi.network'; +export const GAS_API_URL = 'https://gas.api.cx.metamask.io'; From 263f84b8d810e385e46882c5694abb6f7331f281 Mon Sep 17 00:00:00 2001 From: chloeYue <105063779+chloeYue@users.noreply.github.com> Date: Thu, 25 Jan 2024 21:06:19 +0100 Subject: [PATCH 11/45] E2E test: Improve fill method in driver (#22652) ## **Description** When investigating flaky tests, I found that some tests are flaky because the input field was not cleared before entering a new value. The issue is that Selenium sometimes doesn't clear input fields effectively. Now, we use sendkeys() to clear input fields, i've added another way to use selenium actions to simulate we select all text with keyboard and replace it with the new value. With both ways, we can clear input fields more effectively, which I believe will stabilize multiple flaky tests. Examples: Failing test because input field was not cleared as expected: ![Screenshot 2024-01-24 at 11 46 01](https://github.com/MetaMask/metamask-extension/assets/105063779/5f067bd0-c426-42fd-b378-62b6dbba6b8a) Tests failing because although the input field was cleared, the application automatically added a '0'. So when we entered the input value '4000', it was actually entered as '04000'. With my approach, when we find that the input field is not empty, it will select the '0' and replace it with '4000'. This way, we finally get the correct value of '4000'. Screenshot 2024-01-24 at 14 44 04 I also fixed another flaky test in this PR. ## **Related issues** Fixes: #22573 ## **Manual testing steps** Run the e2e test. --- test/e2e/helpers.js | 11 +++++++ .../tests/custom-token-add-approve.spec.js | 32 ++++++++++++------- .../tests/custom-token-send-transfer.spec.js | 15 ++------- test/e2e/tests/send-eth.spec.js | 10 ++---- test/e2e/webdriver/driver.js | 15 +++++++++ 5 files changed, 53 insertions(+), 30 deletions(-) diff --git a/test/e2e/helpers.js b/test/e2e/helpers.js index ccf8e74fef34..fcdb10b75a11 100644 --- a/test/e2e/helpers.js +++ b/test/e2e/helpers.js @@ -685,6 +685,16 @@ const generateGanacheOptions = ({ }; }; +// Edit priority gas fee form +const editGasfeeForm = async (driver, gasLimit, gasPrice) => { + const inputs = await driver.findElements('input[type="number"]'); + const gasLimitInput = inputs[0]; + const gasPriceInput = inputs[1]; + await gasLimitInput.fill(gasLimit); + await gasPriceInput.fill(gasPrice); + await driver.clickElement({ text: 'Save', tag: 'button' }); +}; + const openActionMenuAndStartSendFlow = async (driver) => { // TODO: Update Test when Multichain Send Flow is added if (process.env.MULTICHAIN) { @@ -1033,4 +1043,5 @@ module.exports = { genRandInitBal, openActionMenuAndStartSendFlow, getCleanAppState, + editGasfeeForm, }; diff --git a/test/e2e/tests/custom-token-add-approve.spec.js b/test/e2e/tests/custom-token-add-approve.spec.js index fcc8efc35968..d6d7372dfb5e 100644 --- a/test/e2e/tests/custom-token-add-approve.spec.js +++ b/test/e2e/tests/custom-token-add-approve.spec.js @@ -5,6 +5,7 @@ const { withFixtures, openDapp, unlockWallet, + editGasfeeForm, WINDOW_TITLES, } = require('../helpers'); const FixtureBuilder = require('../fixture-builder'); @@ -252,27 +253,36 @@ describe('Create token, approve token and approve token without gas', function ( '5 TST', 'Default value is not correctly set', ); + await driver.waitForSelector( + { + css: '.box--flex-direction-row > h6', + text: '0.000895 ETH', + }, + { timeout: 15000 }, + ); // editing gas fee - const editBtn = await driver.findElements({ + const editBtn = await driver.findElement({ text: 'Edit', - class: 'btn-link > h6', + tag: 'h6', }); - editBtn[1].click(); + editBtn.click(); await driver.clickElement({ text: 'Edit suggested gas fee', tag: 'button', }); - const [gasLimitInput, gasPriceInput] = await driver.findElements( - 'input[type="number"]', - ); - await gasPriceInput.clear(); - await gasPriceInput.fill('10'); - await gasLimitInput.clear(); - await gasLimitInput.fill('60001'); - await driver.clickElement({ text: 'Save', tag: 'button' }); + + await driver.waitForSelector({ + text: 'Edit priority', + }); + await driver.waitForSelector({ + text: '0.00089526 ETH', + tag: 'h1', + }); + + await editGasfeeForm(driver, '60001', '10'); await driver.waitForSelector( { diff --git a/test/e2e/tests/custom-token-send-transfer.spec.js b/test/e2e/tests/custom-token-send-transfer.spec.js index e7036227ac2b..0ba98397520f 100644 --- a/test/e2e/tests/custom-token-send-transfer.spec.js +++ b/test/e2e/tests/custom-token-send-transfer.spec.js @@ -5,22 +5,13 @@ const { switchToNotificationWindow, openDapp, unlockWallet, + editGasfeeForm, WINDOW_TITLES, } = require('../helpers'); const FixtureBuilder = require('../fixture-builder'); const { SMART_CONTRACTS } = require('../seeder/smart-contracts'); const recipientAddress = '0x2f318C334780961FB129D2a6c30D0763d9a5C970'; -const editGasfeeCustomToken = async (driver) => { - const inputs = await driver.findElements('input[type="number"]'); - const gasLimitInput = inputs[0]; - const gasPriceInput = inputs[1]; - await gasLimitInput.clear(); - await gasLimitInput.fill('60000'); - await gasPriceInput.clear(); - await gasPriceInput.fill('10'); - await driver.clickElement({ text: 'Save', tag: 'button' }); -}; describe('Transfer custom tokens @no-mmi', function () { const smartContract = SMART_CONTRACTS.HST; @@ -92,7 +83,7 @@ describe('Transfer custom tokens @no-mmi', function () { // edit gas fee await driver.clickElement({ text: 'Details', tag: 'button' }); await driver.clickElement({ text: 'Edit', tag: 'button' }); - await editGasfeeCustomToken(driver); + await editGasfeeForm(driver, '60000', '10'); await driver.clickElement({ text: 'Confirm', tag: 'button' }); // check that transaction has completed correctly and is displayed in the activity list @@ -141,7 +132,7 @@ describe('Transfer custom tokens @no-mmi', function () { { text: 'Edit suggested gas fee', tag: 'button' }, 10000, ); - await editGasfeeCustomToken(driver); + await editGasfeeForm(driver, '60000', '10'); await driver.clickElement({ text: 'Confirm', tag: 'button' }); // in extension, check that transaction has completed correctly and is displayed in the activity list diff --git a/test/e2e/tests/send-eth.spec.js b/test/e2e/tests/send-eth.spec.js index 3a65dcedb39c..3f45c9619e58 100644 --- a/test/e2e/tests/send-eth.spec.js +++ b/test/e2e/tests/send-eth.spec.js @@ -7,6 +7,7 @@ const { logInWithBalanceValidation, openActionMenuAndStartSendFlow, unlockWallet, + editGasfeeForm, WINDOW_TITLES, defaultGanacheOptions, } = require('../helpers'); @@ -256,14 +257,9 @@ describe('Send ETH', function () { }); await driver.waitForSelector({ text: '0.00021 ETH', + tag: 'h1', }); - const inputs = await driver.findElements('input[type="number"]'); - const gasPriceInput = inputs[1]; - await gasPriceInput.fill('100'); - await driver.waitForSelector({ - text: '0.0021 ETH', - }); - await driver.clickElement({ text: 'Save', tag: 'button' }); + await editGasfeeForm(driver, '21000', '100'); await driver.waitForSelector({ css: '.transaction-detail-item:nth-of-type(1) h6:nth-of-type(2)', text: '0.0021 ETH', diff --git a/test/e2e/webdriver/driver.js b/test/e2e/webdriver/driver.js index 90f75860fd6b..5f0bee5f18bb 100644 --- a/test/e2e/webdriver/driver.js +++ b/test/e2e/webdriver/driver.js @@ -32,11 +32,26 @@ function wrapElementWithAPI(element, driver) { element.press = (key) => element.sendKeys(key); element.fill = async (input) => { // The 'fill' method in playwright replaces existing input + await driver.wait(until.elementIsVisible(element)); + + // Try 2 ways to clear input fields, first try with clear() method + // Use keyboard simulation if the input field is not empty await element.sendKeys( Key.chord(driver.Key.MODIFIER, 'a', driver.Key.BACK_SPACE), ); + // If previous methods fail, use Selenium's actions to select all text and replace it with the expected value + if ((await element.getProperty('value')) !== '') { + await driver.driver + .actions() + .click(element) + .keyDown(driver.Key.MODIFIER) + .sendKeys('a') + .keyUp(driver.Key.MODIFIER) + .perform(); + } await element.sendKeys(input); }; + element.waitForElementState = async (state, timeout) => { switch (state) { case 'hidden': From e2eb52ebe858a11da80d8699e239400fb92e1537 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Fri, 26 Jan 2024 05:46:45 -0800 Subject: [PATCH 12/45] e2e: Wait for the loading overlay to disappear before clicking (#22672) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## **Description** We've been having a lot of issues recently with flaky tests where the error is something like ```ElementClickInterceptedError: Element