From 5c47e81e2b4965fce51bc5f5dd57861385062217 Mon Sep 17 00:00:00 2001 From: piekczyk Date: Tue, 7 Feb 2023 11:22:46 +0100 Subject: [PATCH] Auto v2 handling (#180) * Auto v2 handling * updated address and abi * updated kind name and goerli command address for aave sl * replaced 0x0 with null * updated automation bot v2 address * updated genesis block for auto bot v2 and package --- abis/automation-bot-v2.json | 11 +- package.json | 1 + src/addresses/mainnet.json | 1 + ...-proxy-address-to-added-trigger-events.sql | 10 + .../automationBotExecutedTransformer.ts | 46 +- .../transformers/automationBotTransformer.ts | 11 +- .../transformers/automationEventEnhancer.ts | 68 ++- src/config.goerli.ts | 24 +- src/config.mainnet.ts | 37 +- yarn.lock | 453 +++++++++++++++++- 10 files changed, 619 insertions(+), 43 deletions(-) create mode 100644 src/borrow/migrations/046-add-proxy-address-to-added-trigger-events.sql diff --git a/abis/automation-bot-v2.json b/abis/automation-bot-v2.json index 53fe4b3..14c1df7 100644 --- a/abis/automation-bot-v2.json +++ b/abis/automation-bot-v2.json @@ -73,7 +73,8 @@ { "internalType": "uint256", "name": "triggerType", "type": "uint256" }, { "internalType": "bool", "name": "continuous", "type": "bool" }, { "internalType": "uint256", "name": "replacedTriggerId", "type": "uint256" }, - { "internalType": "bytes", "name": "triggerData", "type": "bytes" } + { "internalType": "bytes", "name": "triggerData", "type": "bytes" }, + { "internalType": "bytes", "name": "replacedTriggerData", "type": "bytes" } ], "name": "addRecord", "outputs": [], @@ -86,6 +87,7 @@ { "internalType": "bool[]", "name": "continuous", "type": "bool[]" }, { "internalType": "uint256[]", "name": "replacedTriggerId", "type": "uint256[]" }, { "internalType": "bytes[]", "name": "triggerData", "type": "bytes[]" }, + { "internalType": "bytes[]", "name": "replacedTriggerData", "type": "bytes[]" }, { "internalType": "uint256[]", "name": "triggerTypes", "type": "uint256[]" } ], "name": "addTriggers", @@ -100,6 +102,13 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [], + "name": "clearLock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { "internalType": "uint16", "name": "triggerGroupType", "type": "uint16" }, diff --git a/package.json b/package.json index 13c85ea..10e9171 100644 --- a/package.json +++ b/package.json @@ -46,6 +46,7 @@ "@oasisdex/spock-test-utils": "^0.1.1", "@oasisdex/spock-utils": "^0.1.0", "@oasisdex/spock-validation": "^0.1.0", + "@oasisdex/automation": "1.3.1-alpha.0", "abi-decoder": "^1.2.0", "aws-sdk": "^2.1232.0", "bignumber.js": "^8.0.2", diff --git a/src/addresses/mainnet.json b/src/addresses/mainnet.json index 5446e3e..78a656d 100644 --- a/src/addresses/mainnet.json +++ b/src/addresses/mainnet.json @@ -247,6 +247,7 @@ "MCD_CLIP_GUNIV3DAIUSDC2_A": "0xB55da3d3100C4eBF9De755b6DdC24BF209f6cc06", "MCD_CLIP_CALC_GUNIV3DAIUSDC2_A": "0xef051Ca2A2d809ba47ee0FC8caaEd06E3D832225", "AUTOMATION_BOT": "0x6e87a7a0a03e51a741075fdf4d1fcce39a4df01b", + "AUTOMATION_BOT_V2": "0x8061c24823094E51e57A4a5cF8bEd3CCf09d316F", "MULTIPLY_PROXY_ACTIONS": "0x2a49eae5cca3f050ebec729cf90cc910fadaf7a2", "AUTOMATION_AGGREGATOR_BOT": "0x5f1d184204775fBB351C4b2C61a2fD4aAbd3fB76", "RETH": "0xae78736cd615f374d3085123a210448e74fc6393", diff --git a/src/borrow/migrations/046-add-proxy-address-to-added-trigger-events.sql b/src/borrow/migrations/046-add-proxy-address-to-added-trigger-events.sql new file mode 100644 index 0000000..fb7906a --- /dev/null +++ b/src/borrow/migrations/046-add-proxy-address-to-added-trigger-events.sql @@ -0,0 +1,10 @@ +DROP VIEW api.active_triggers; + +ALTER TABLE automation_bot.trigger_added_events + ADD COLUMN proxy_address character varying(66) default null; + +CREATE VIEW api.active_triggers as + SELECT added.* + FROM automation_bot.trigger_added_events added + LEFT JOIN automation_bot.trigger_removed_events removed ON added.trigger_id = removed.trigger_id + WHERE removed.trigger_id is null; diff --git a/src/borrow/transformers/automationBotExecutedTransformer.ts b/src/borrow/transformers/automationBotExecutedTransformer.ts index 2b66d52..715d8d4 100644 --- a/src/borrow/transformers/automationBotExecutedTransformer.ts +++ b/src/borrow/transformers/automationBotExecutedTransformer.ts @@ -9,7 +9,6 @@ import { import { BlockTransformer } from '@oasisdex/spock-etl/dist/processors/types'; import { LocalServices } from '@oasisdex/spock-etl/dist/services/types'; import { normalizeAddressDefinition } from '../../utils'; -import { getMultiplyTransformerName } from './multiply'; const automationBotAbi = require('../../../abis/automation-bot.json'); @@ -24,6 +23,13 @@ interface Dependencies { }; } +interface DependenciesV2 { + automationBotV2: { + address: string; + startingBlock: number; + }; +} + async function handleTriggerExecuted( params: Dictionary, log: PersistedLog, @@ -88,23 +94,41 @@ const automationBotExecutedHandlers = { }, }; -export const getAutomationBotExecutedTransformerName = (address: string) => - `automationBotExecutedTransformer-${address}`; -export const automationBotExecutedTransformer: ( +export const getAutomationBotExecutedTransformerName = (address: string, name: string) => + `${name}-${address}`; + +export const automationBotExecutedTransformerName = 'automationBotExecutedTransformer' +export const automationBotV2ExecutedTransformerName = 'automationBotV2ExecutedTransformer' + +export const getAutomationBotExecutedTransformer: ( address: string | SimpleProcessorDefinition, - dependencies: Dependencies, -) => BlockTransformer = (address, dependencies) => { + transformerDependencies: string[], + name: string +) => BlockTransformer = (address, transformerDependencies, name) => { const deps = normalizeAddressDefinition(address); return { - name: getAutomationBotExecutedTransformerName(deps.address), + name: getAutomationBotExecutedTransformerName(deps.address, name), dependencies: [getExtractorName(deps.address)], - transformerDependencies: [ - `automationBotTransformer-${dependencies.automationBot.address}`, - `automationAggregatorBotTransformer-${dependencies.automationAggregatorBot.address}`, - ], + transformerDependencies, transform: async (services, logs) => { await handleEvents(services, automationBotAbi, flatten(logs), automationBotExecutedHandlers); }, }; }; + + +export const automationBotExecutedTransformerV1 = (address: string | SimpleProcessorDefinition,dependencies: Dependencies ) => { + const transformerDependencies = [ + `automationBotTransformer-${dependencies.automationBot.address}`, + `automationAggregatorBotTransformer-${dependencies.automationAggregatorBot.address}`, + ] + return getAutomationBotExecutedTransformer(address, transformerDependencies, automationBotExecutedTransformerName, ) +} + +export const automationBotExecutedTransformerV2 = (address: string | SimpleProcessorDefinition,dependencies: DependenciesV2 ) => { + const transformerDependencies = [ + `automationBotV2Transformer-${dependencies.automationBotV2.address}`, + ] + return getAutomationBotExecutedTransformer(address, transformerDependencies, automationBotV2ExecutedTransformerName, ) +} \ No newline at end of file diff --git a/src/borrow/transformers/automationBotTransformer.ts b/src/borrow/transformers/automationBotTransformer.ts index 02ebbe0..84bf38a 100644 --- a/src/borrow/transformers/automationBotTransformer.ts +++ b/src/borrow/transformers/automationBotTransformer.ts @@ -10,6 +10,7 @@ import { BlockTransformer } from '@oasisdex/spock-etl/dist/processors/types'; import { LocalServices } from '@oasisdex/spock-etl/dist/services/types'; import { normalizeAddressDefinition } from '../../utils'; import { getMultiplyTransformerName } from './multiply'; +import { decodeTriggerDataAsJson } from '@oasisdex/automation'; const automationBotAbi = require('../../../abis/automation-bot.json'); const automationBotV2Abi = require('../../../abis/automation-bot-v2.json'); @@ -19,10 +20,14 @@ async function handleTriggerAdded( log: PersistedLog, services: LocalServices, ) { + const chainId = process.env.VL_CHAIN_NAME === 'mainnet' ? 1 : 5; + const { positionAddress } = decodeTriggerDataAsJson(params.commandAddress.toLowerCase(), chainId, params.triggerData.toString()) + const values = { trigger_id: params.triggerId.toString(), cdp_id: params.cdpId?params.cdpId.toString():"0", command_address: params.commandAddress.toLowerCase(), + proxy_address: positionAddress ? positionAddress.toLowerCase() : undefined, continous: params.continous, trigger_type: params.triggerType?params.triggerType.toString():undefined, trigger_data: params.triggerData.toString(), @@ -33,9 +38,9 @@ async function handleTriggerAdded( await services.tx.none( `INSERT INTO automation_bot.trigger_added_events( - trigger_id, cdp_id, command_address, continous, trigger_type, trigger_data, log_index, tx_id, block_id + trigger_id, cdp_id, command_address, proxy_address, continous, trigger_type, trigger_data, log_index, tx_id, block_id ) VALUES ( - \${trigger_id}, \${cdp_id}, \${command_address}, \${continous}, \${trigger_type}, \${trigger_data}, \${log_index}, \${tx_id}, \${block_id} + \${trigger_id}, \${cdp_id}, \${command_address}, \${proxy_address}, \${continous}, \${trigger_type}, \${trigger_data}, \${log_index}, \${tx_id}, \${block_id} );`, values, ); @@ -124,7 +129,7 @@ export const getAutomationBotTransformerName = (address: string) => `automationBotTransformer-${address}`; export const getAutomationBotV2TransformerName = (address: string) => - `automationBotF2Transformer-${address}`; + `automationBotV2Transformer-${address}`; export const automationBotTransformer: ( address: string | SimpleProcessorDefinition, diff --git a/src/borrow/transformers/automationEventEnhancer.ts b/src/borrow/transformers/automationEventEnhancer.ts index 93ddea8..67aef45 100644 --- a/src/borrow/transformers/automationEventEnhancer.ts +++ b/src/borrow/transformers/automationEventEnhancer.ts @@ -19,19 +19,25 @@ import { updateAutomationRemoveEventsWithEthPrice, } from '../../utils/pricesDb'; import { Event } from 'src/types/history'; -import { getAutomationBotExecutedTransformerName } from './automationBotExecutedTransformer'; +import { + automationBotExecutedTransformerName, automationBotV2ExecutedTransformerName, + getAutomationBotExecutedTransformerName, +} from './automationBotExecutedTransformer'; export const automationEventEnhancerEthPriceTransformerName = `automation-event-enhancer-transformer-eth-price`; +export const automationV2EventEnhancerEthPriceTransformerName = `automation-v2-event-enhancer-transformer-eth-price`; export const automationEventEnhancerTransformerEthPrice: ( automationBotExecutedTransformer: SimpleProcessorDefinition, oraclesTransformers: string[], -) => BlockTransformer = (automationBotExecutedTransformer, oraclesTransformers) => { + name: string, + executedTransformerName: string, +) => BlockTransformer = (automationBotExecutedTransformer, oraclesTransformers, name, executedTransformerName) => { return { - name: automationEventEnhancerEthPriceTransformerName, + name, dependencies: [getExtractorName(automationBotExecutedTransformer.address)], transformerDependencies: [ - getAutomationBotExecutedTransformerName(automationBotExecutedTransformer.address), + getAutomationBotExecutedTransformerName(automationBotExecutedTransformer.address, executedTransformerName), ...oraclesTransformers, ], startingBlock: automationBotExecutedTransformer.startingBlock, @@ -72,15 +78,18 @@ export const automationEventEnhancerTransformerEthPrice: ( }; export const automationEventEnhancerGasPriceName = 'automationEventEnhancerGasPrice'; +export const automationV2EventEnhancerGasPriceName = 'automationV2EventEnhancerGasPrice'; export const automationEventEnhancerGasPrice: ( automationBotExecutedTransformer: SimpleProcessorDefinition, -) => BlockTransformer = automationBotExecutedTransformer => { + name: string, + executedTransformerName: string, +) => BlockTransformer = (automationBotExecutedTransformer, name, executedTransformerName) => { return { - name: automationEventEnhancerGasPriceName, + name, dependencies: [getExtractorName(automationBotExecutedTransformer.address)], transformerDependencies: [ - getAutomationBotExecutedTransformerName(automationBotExecutedTransformer.address), + getAutomationBotExecutedTransformerName(automationBotExecutedTransformer.address, executedTransformerName), ], startingBlock: automationBotExecutedTransformer.startingBlock, transform: async (services, _logs) => { @@ -123,3 +132,48 @@ export const automationEventEnhancerGasPrice: ( }, }; }; + + +export const automationEventEnhancerGasPriceV1 = ( + automationBotExecutedTransformer: SimpleProcessorDefinition +) => { + return automationEventEnhancerGasPrice( + automationBotExecutedTransformer, + automationEventEnhancerGasPriceName, + automationBotExecutedTransformerName + ) +} + +export const automationEventEnhancerGasPriceV2 = ( + automationBotExecutedTransformer: SimpleProcessorDefinition +) => { + return automationEventEnhancerGasPrice( + automationBotExecutedTransformer, + automationV2EventEnhancerGasPriceName, + automationBotV2ExecutedTransformerName + ) +} + +export const automationEventEnhancerTransformerEthPriceV1 = ( + automationBotExecutedTransformer: SimpleProcessorDefinition, + oraclesTransformers: string[], +) => { + return automationEventEnhancerTransformerEthPrice( + automationBotExecutedTransformer, + oraclesTransformers, + automationEventEnhancerEthPriceTransformerName, + automationBotExecutedTransformerName + ) +} + +export const automationEventEnhancerTransformerEthPriceV2 = ( + automationBotExecutedTransformer: SimpleProcessorDefinition, + oraclesTransformers: string[], +) => { + return automationEventEnhancerTransformerEthPrice( + automationBotExecutedTransformer, + oraclesTransformers, + automationV2EventEnhancerEthPriceTransformerName, + automationBotV2ExecutedTransformerName + ) +} \ No newline at end of file diff --git a/src/config.goerli.ts b/src/config.goerli.ts index 80d1a60..94d5fe3 100644 --- a/src/config.goerli.ts +++ b/src/config.goerli.ts @@ -44,7 +44,10 @@ import { automationBotTransformer, automationBotV2Transformer, } from './borrow/transformers/automationBotTransformer'; -import { automationBotExecutedTransformer } from './borrow/transformers/automationBotExecutedTransformer'; +import { + automationBotExecutedTransformerV1, + automationBotExecutedTransformerV2, +} from './borrow/transformers/automationBotExecutedTransformer'; import { automationAggregatorBotTransformer } from './borrow/transformers/automationAggregatorBotTransformer'; import { dsProxyTransformer } from './borrow/transformers/dsProxyTransformer'; import { initializeCommandAliases, partialABI } from './utils'; @@ -57,8 +60,10 @@ import { redeemerTransformer } from './borrow/transformers/referralRedeemer'; import { aaveLendingPoolTransformer } from './borrow/transformers/aaveTransformer'; import { lidoTransformer } from './borrow/transformers/lidoTransformer'; import { - automationEventEnhancerGasPrice, - automationEventEnhancerTransformerEthPrice, + automationEventEnhancerGasPriceV1, + automationEventEnhancerGasPriceV2, + automationEventEnhancerTransformerEthPriceV1, + automationEventEnhancerTransformerEthPriceV2, } from './borrow/transformers/automationEventEnhancer'; const AutomationBotABI = require('../abis/automation-bot.json'); @@ -234,6 +239,10 @@ const commandMapping = [ command_address: '0x02B7391cdd0c8A75ecFC278d387e3DCC3d796340', kind: 'auto-take-profit', }, + { + command_address: '0xe78acea26b79564c4d29d8c1f5bad3d4e0414676', + kind: 'aave-stop-loss', + }, ].map(({ command_address, kind }) => ({ command_address: command_address.toLowerCase(), kind })); const multiply = [ @@ -338,7 +347,8 @@ export const config: UserProvidedSpockConfig = { flipNoteTransformer(), automationBotTransformer(automationBot, multiply), automationBotV2Transformer(automationBotV2, multiply), - automationBotExecutedTransformer(automationBot, { automationBot, automationAggregatorBot }), + automationBotExecutedTransformerV1(automationBot,{ automationBot, automationAggregatorBot }), + automationBotExecutedTransformerV2(automationBotV2,{ automationBotV2 }), automationAggregatorBotTransformer(automationAggregatorBot, { automationBot }), clipperTransformer(dogs.map(dep => getDogTransformerName(dep.address))), ...multiplyTransformer(multiply, { @@ -358,8 +368,10 @@ export const config: UserProvidedSpockConfig = { exchangeAddress: [...exchange], }), eventEnhancerGasPrice(vat, cdpManagers), - automationEventEnhancerGasPrice(automationBot), - automationEventEnhancerTransformerEthPrice(automationBot, oraclesTransformers), + automationEventEnhancerGasPriceV1(automationBot), + automationEventEnhancerTransformerEthPriceV1(automationBot, oraclesTransformers), + automationEventEnhancerGasPriceV2(automationBotV2), + automationEventEnhancerTransformerEthPriceV2(automationBotV2, oraclesTransformers), ...redeemerTransformer(redeemer), ...aaveLendingPoolTransformer(aaveLendingPool), ...lidoTransformer(lido), diff --git a/src/config.mainnet.ts b/src/config.mainnet.ts index 839e68e..0e30204 100644 --- a/src/config.mainnet.ts +++ b/src/config.mainnet.ts @@ -46,15 +46,20 @@ import { } from './borrow/transformers/eventEnhancer'; import { multiplyHistoryTransformer } from './borrow/transformers/multiplyHistoryTransformer'; import { initializeCommandAliases } from './utils'; -import { automationBotTransformer } from './borrow/transformers/automationBotTransformer'; -import { automationBotExecutedTransformer } from './borrow/transformers/automationBotExecutedTransformer'; +import { automationBotTransformer, automationBotV2Transformer } from './borrow/transformers/automationBotTransformer'; +import { + automationBotExecutedTransformerV1, + automationBotExecutedTransformerV2, +} from './borrow/transformers/automationBotExecutedTransformer'; import { automationAggregatorBotTransformer } from './borrow/transformers/automationAggregatorBotTransformer'; import { redeemerTransformer } from './borrow/transformers/referralRedeemer'; import { lidoTransformer } from './borrow/transformers/lidoTransformer'; import { aaveLendingPoolTransformer } from './borrow/transformers/aaveTransformer'; import { - automationEventEnhancerGasPrice, - automationEventEnhancerTransformerEthPrice, + automationEventEnhancerGasPriceV1, + automationEventEnhancerGasPriceV2, + automationEventEnhancerTransformerEthPriceV1, + automationEventEnhancerTransformerEthPriceV2, } from './borrow/transformers/automationEventEnhancer'; const mainnetAddresses = require('./addresses/mainnet.json'); @@ -138,6 +143,11 @@ const automationBot = { startingBlock: 14583413, }; +const automationBotV2 = { + address: mainnetAddresses.AUTOMATION_BOT_V2, + startingBlock: 16565182, +}; + const automationAggregatorBot = { address: mainnetAddresses.AUTOMATION_AGGREGATOR_BOT, startingBlock: 15389001, @@ -184,6 +194,14 @@ const commandMapping = [ command_address: '0xcb1e2f1df93bb5640562dad05c15f7677bf17297', kind: 'auto-take-profit', }, + { + command_address: '0xe78acea26b79564c4d29d8c1f5bad3d4e0414676', + kind: 'aave-stop-loss', + }, + { + command_address: '0xcef8eb2d43dc1db1ab292cb92f38dd406ee5749f', + kind: 'aave-stop-loss', + }, ].map(({ command_address, kind }) => ({ command_address: command_address.toLowerCase(), kind })); const addresses = { @@ -275,6 +293,7 @@ export const config: UserProvidedSpockConfig = { ...makeRawLogExtractors(aaveLendingPool), ...makeRawLogExtractors([vat]), ...makeRawLogExtractors([automationBot]), + ...makeRawLogExtractors([automationBotV2]), ...makeRawLogExtractors([automationAggregatorBot]), ...makeRawEventBasedOnTopicExtractor(flipper), ...makeRawEventBasedOnDSNoteTopic(flipperNotes), @@ -301,7 +320,9 @@ export const config: UserProvidedSpockConfig = { flipTransformer(), flipNoteTransformer(), automationBotTransformer(automationBot, multiply), - automationBotExecutedTransformer(automationBot, { automationBot, automationAggregatorBot }), + automationBotV2Transformer(automationBotV2, multiply), + automationBotExecutedTransformerV1(automationBot,{ automationBot, automationAggregatorBot }), + automationBotExecutedTransformerV2(automationBotV2,{ automationBotV2 }), automationAggregatorBotTransformer(automationAggregatorBot, { automationBot }), clipperTransformer(dogs.map(dep => getDogTransformerName(dep.address))), ...multiplyTransformer(multiply, { @@ -326,8 +347,10 @@ export const config: UserProvidedSpockConfig = { exchangeAddress: [...exchange], }), eventEnhancerGasPrice(vat, cdpManagers), - automationEventEnhancerGasPrice(automationBot), - automationEventEnhancerTransformerEthPrice(automationBot, oraclesTransformers), + automationEventEnhancerGasPriceV1(automationBot), + automationEventEnhancerTransformerEthPriceV1(automationBot, oraclesTransformers), + automationEventEnhancerGasPriceV2(automationBotV2), + automationEventEnhancerTransformerEthPriceV2(automationBotV2, oraclesTransformers), ...redeemerTransformer(redeemer), ...lidoTransformer(lido), ...aaveLendingPoolTransformer(aaveLendingPool), diff --git a/yarn.lock b/yarn.lock index 915b7d6..8e9e41c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -40,6 +40,348 @@ exec-sh "^0.3.2" minimist "^1.2.0" +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/address@5.7.0", "@ethersproject/address@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/networks@5.7.1", "@ethersproject/networks@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/providers@5.7.2": + version "5.7.2" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.2.tgz#f8b1a4f275d7ce58cf0a2eec222269a08beb18cb" + integrity sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.7.0", "@ethersproject/random@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/web@5.7.1", "@ethersproject/web@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@google-cloud/bigquery@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@google-cloud/bigquery/-/bigquery-3.0.0.tgz" @@ -113,6 +455,13 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" +"@oasisdex/automation@1.3.1-alpha.0": + version "1.3.1-alpha.0" + resolved "https://registry.yarnpkg.com/@oasisdex/automation/-/automation-1.3.1-alpha.0.tgz#706b06bcd594a5d18ec97bca32670b21a98980bb" + integrity sha512-XhEagBatH5fB+MAQFZNZELCubty8qqE+v7F9T+v4NTvmwuArlWwgFzxsFxAJmcicY8RiXn6snQCIPxk6gIR/dg== + dependencies: + ethers "^5.6.2" + "@oasisdex/spock-etl@^0.1.5": version "0.1.5" resolved "https://registry.yarnpkg.com/@oasisdex/spock-etl/-/spock-etl-0.1.5.tgz#6b73efdfe7fd71cf0a9991579146d47b5a5af4e1" @@ -705,6 +1054,11 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + big.js@^5.1.2: version "5.2.2" resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz" @@ -734,11 +1088,16 @@ bluebird@^3.3.5: resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== -bn.js@^4.4.0: +bn.js@^4.11.9, bn.js@^4.4.0: version "4.12.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== +bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + body-parser@1.19.0, body-parser@^1.15.2: version "1.19.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz" @@ -791,10 +1150,10 @@ braces@^3.0.1, braces@~3.0.2: dependencies: fill-range "^7.0.1" -brorand@^1.0.1: +brorand@^1.0.1, brorand@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== browser-stdout@1.3.1: version "1.3.1" @@ -1321,6 +1680,19 @@ elliptic@6.3.3: hash.js "^1.0.0" inherits "^2.0.1" +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -1441,6 +1813,42 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= +ethers@^5.6.2: + version "5.7.2" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e" + integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.1" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.2" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.1" + "@ethersproject/wordlists" "5.7.0" + ethers@krzkaczor/ethers.js#kk/get-logs-multiple-address-build: version "4.0.37" resolved "https://codeload.github.com/krzkaczor/ethers.js/tar.gz/48c8dfad90b2c3699a122ff64b09e40a42880c7f" @@ -2000,9 +2408,9 @@ hash.js@1.1.3: inherits "^2.0.3" minimalistic-assert "^1.0.0" -hash.js@^1.0.0: +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== dependencies: inherits "^2.0.3" @@ -2050,6 +2458,15 @@ hide-powered-by@1.1.0: resolved "https://registry.yarnpkg.com/hide-powered-by/-/hide-powered-by-1.1.0.tgz" integrity sha512-Io1zA2yOA1YJslkr+AJlWSf2yWFkKjvkcL9Ni1XSUqnGLr/qRQe2UI3Cn/J9MsJht7yEVCe0SscY1HgVMujbgg== +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + hosted-git-info@^2.1.4: version "2.8.8" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz" @@ -2146,7 +2563,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -2616,6 +3033,11 @@ js-sha3@0.5.7: resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz" integrity sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc= +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz" @@ -2938,6 +3360,11 @@ minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + minimatch@3.0.4, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz" @@ -3836,6 +4263,11 @@ scrypt-js@2.0.4: resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-2.0.4.tgz" integrity sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw== +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz" @@ -4673,6 +5105,11 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + ws@^5.2.0: version "5.2.2" resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz"