diff --git a/README.md b/README.md index 510527f..f0b7313 100644 --- a/README.md +++ b/README.md @@ -36,23 +36,25 @@ u in ? Voting: https://cast.alchemist.wtf/ Discord: http://discord.alchemist.wtf/ FAQ: https://docs.alchemist.wtf/ -GitHub: https://github.com/alchemistcoin/crucible-frontend -Crucible/Aludel Rewards: https://crucible.alchemist.wtf +GitHub: https://github.com/alchemistcoin +Crucible/Aludel Rewards: https://crucible.wtf MistX FlashDEX: https://mistx.io/ -Copper Fair Launch: https://copperlaunch.com/ +Copper Launch: https://copperlaunch.com/ ## Addresses The Crucible NFT and Aludel LP reward contracts are forks of [Ampleforth](https://github.com/ampleforth)'s upcoming token geyser v2 and UniversalVault NFT contracts. This is a test in prod. _Use at your own risk._ +### Mainnet + | Contract | Address | Description | | ------------------ | --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | | Alchemist | [alchemistcoin.eth](https://etherscan.io/address/alchemistcoin.eth) | ERC20 token | | Crucible NFT | [crucible.alchemistcoin.eth](https://etherscan.io/address/crucible.alchemistcoin.eth) | crucible nft contract | -| Aludel v1 | [aludel.alchemistcoin.eth](https://etherscan.io/address/aludel.alchemistcoin.eth) | ⚗️/WETH LP (Uniswap v2) reward program | -| Aludel v1.5 | [0x93c31fc68E613f9A89114f10B38F9fd2EA5de6BC](https://etherscan.io/address/0x93c31fc68E613f9A89114f10B38F9fd2EA5de6BC) | ⚗️/WETH LP (Uniswap v2) reward program | +| Aludel v1 | [aludel.alchemistcoin.eth](https://etherscan.io/address/aludel.alchemistcoin.eth) | ⚗️/WETH LP (Uniswap v2) reward program | +| Aludel v1.5 | [0x93c31fc68E613f9A89114f10B38F9fd2EA5de6BC](https://etherscan.io/address/0x93c31fc68E613f9A89114f10B38F9fd2EA5de6BC) | ⚗️/WETH LP (Uniswap v2) reward program | | Multisig | [multisig.alchemistcoin.eth](https://etherscan.io/address/multisig.alchemistcoin.eth) | community multisig | -| UniswapV2Pair | [uniswap.alchemistcoin.eth](https://etherscan.io/address/uniswap.alchemistcoin.eth) | [⚗️/WETH uniswap pair](https://lp.mist.alchemist.wtf/) | +| UniswapV2Pair | [uniswap.alchemistcoin.eth](https://etherscan.io/address/uniswap.alchemistcoin.eth) | [⚗️/WETH uniswap pair](https://lp.mist.alchemist.wtf/) | | TransmuterV1 | [transmuter.alchemistcoin.eth](https://etherscan.io/address/transmuter.alchemistcoin.eth) | router contract for batched transactions | | StreamV1 | [0x979e2FdE487534be3f8a41cD57f11EF9E71cDC1A](https://etherscan.io/address/0x979e2FdE487534be3f8a41cD57f11EF9E71cDC1A) | inflation streaming | | StreamV2 | [0xebf421c83069143f3bd29A5C690Df97CC261E49c](https://etherscan.io/address/0xebf421c83069143f3bd29A5C690Df97CC261E49c) | inflation streaming | @@ -62,6 +64,28 @@ The Crucible NFT and Aludel LP reward contracts are forks of [Ampleforth](https: | RewardPoolFactory | [0xF016fa84D5f3a252409a63b5cb89B555A0d27Ccf](https://etherscan.io/address/0xF016fa84D5f3a252409a63b5cb89B555A0d27Ccf) | factory contract | | mistX Tip Jar | [mistx.eth](https://etherscan.io/address/mistx.eth) | mistX tip jar | | MistXRouter | [0xA58f22e0766B3764376c92915BA545d583c19DBc](https://etherscan.io/address/0xA58f22e0766B3764376c92915BA545d583c19DBc) | mistX transaction router | +| Crucible pro minter| [0x075d940Fa6878c6164f3F44CFc584923c4F5654C](https://etherscan.io/address/0x075d940Fa6878c6164f3F44CFc584923c4F5654C) | crucible pro minter | + +### Polygon +| Contract | Address | Description | +| ------------------ | ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- | +| Crucible NFT | [0xE2dD7930d8cA478d9aA38Ae0F5483B8A3B331C40](https://polygonscan.com/address/0xE2dD7930d8cA478d9aA38Ae0F5483B8A3B331C40)| crucible nft contract | +| TransmuterV1 | [0x4F91Ba2A5e6079f6fC929d062699e279bF85bBF7](https://polygonscan.com/address/0x4F91Ba2A5e6079f6fC929d062699e279bF85bBF7)| router contract for batched transactions | +| RewardPoolFactory | [0xf3D4b566ecEF776d44Aba803306480Ef634CB1Da](https://polygonscan.com/address/0xf3D4b566ecEF776d44Aba803306480Ef634CB1Da)| factory contract | +| PowerSwitchFactory | [0x1625b84D233dF4b131da7B49c2b540890aBA0E96](https://polygonscan.com/address/0x1625b84D233dF4b131da7B49c2b540890aBA0E96)| factory contract | +| Crucible template | [0x5D35445Ae5b57bEF0235CadAd78292F8baBDba23](https://polygonscan.com/address/0x5D35445Ae5b57bEF0235CadAd78292F8baBDba23)| crucible template | +| Crucible pro minter| [0x8971dac20F6061fD487555242748061e7c34B42E](https://polygonscan.com/address/0x8971dac20F6061fD487555242748061e7c34B42E)| crucible pro minter | + +### Avalanche +| Contract | Address | Description | +| ------------------ | ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- | +| Crucible NFT | [0x6D07709A30fcE07901B2a6D8e1D6E6ac17eb96De](https://snowtrace.io/address/0x6D07709A30fcE07901B2a6D8e1D6E6ac17eb96De) | crucible nft contract | +| TransmuterV1 | [0xF18f0485e1dBC7f1Cea8620ddbf16187A40E6520](https://snowtrace.io/address/0xF18f0485e1dBC7f1Cea8620ddbf16187A40E6520) | router contract for batched transactions | +| RewardPoolFactory | [0x77d086FFB4e8E66288a73eAcF94bE603a0197dbb](https://snowtrace.io/address/0x77d086FFB4e8E66288a73eAcF94bE603a0197dbb) | factory contract | +| PowerSwitchFactory | [0xF6c1210Aca158bBD453A12604A03AeD2659ac0ef](https://snowtrace.io/address/0xF6c1210Aca158bBD453A12604A03AeD2659ac0ef) | factory contract | +| Crucible template | [0x5D15d226303cB96AC2EA7f760a313eA6bB36C508](https://snowtrace.io/address/0x5D15d226303cB96AC2EA7f760a313eA6bB36C508) | crucible template | +| Crucible pro minter| [0x6ec19EF96C569ac1B6c4Fe7404c5a948a9bB7416](https://snowtrace.io/address/0x6ec19EF96C569ac1B6c4Fe7404c5a948a9bB7416) | crucible pro minter | + ## Check system status diff --git a/hardhat.config.ts b/hardhat.config.ts index b630605..d30c533 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -14,7 +14,6 @@ import './tasks/stream' import './tasks/incentive' import { HardhatUserConfig } from 'hardhat/config' -import { parseUnits } from 'ethers/lib/utils' require('dotenv').config() @@ -44,6 +43,20 @@ export default { mnemonic, }, }, + avalanche: { + url: + 'https://api.avax.network/ext/bc/C/rpc', + accounts: { + mnemonic, + }, + }, + polygon: { + url: + 'https://polygon-mainnet.infura.io/v3/' + process.env.INFURA_ID, + accounts: { + mnemonic, + }, + }, alchemist: { url: 'https://eth-mainnet.gateway.pokt.network/v1/607839d619a5c80034fba9d8', diff --git a/package.json b/package.json index a6e0ab0..feda206 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@nomiclabs/hardhat-ethers": "^2.0.1", - "@nomiclabs/hardhat-etherscan": "^2.1.1", + "@nomiclabs/hardhat-etherscan": "^3.0.3", "@nomiclabs/hardhat-waffle": "^2.0.1", "@openzeppelin/contracts": "^3.4.0-solc-0.7", "@types/chai": "^4.2.14", diff --git a/tasks/aludel.ts b/tasks/aludel.ts index 12c585a..5dfda2d 100644 --- a/tasks/aludel.ts +++ b/tasks/aludel.ts @@ -73,6 +73,41 @@ task('create-aludel', 'Create an Aludel instance and deposit funds') .addParam('owner', 'the admin of the system') .addFlag('verify', 'verify contracts on etherscan') .setAction(async (args, { ethers, run, network }) => { + + // CLI Example - Polygon + + // yarn hardhat create-aludel \ + // --staking-token 0x0000000000000000000000000000000000000000 \ + // --reward-token 0x0000000000000000000000000000000000000000 \ + // --reward-amount 0 \ + // --unlock-days 0 \ + // --scaling-floor 1 \ + // --scaling-ceiling 10 \ + // --scaling-days 40 \ + // --reward-pool-factory 0xf3D4b566ecEF776d44Aba803306480Ef634CB1Da \ + // --power-switch-factory 0x1625b84D233dF4b131da7B49c2b540890aBA0E96 \ + // --crucible-factory 0xE2dD7930d8cA478d9aA38Ae0F5483B8A3B331C40 \ + // --owner 0x0000000000000000000000000000000000000000 \ + // --network polygon \ + // --verify + + // CLI Example - Mainnet + + // yarn hardhat create-aludel \ + // --staking-token 0x0000000000000000000000000000000000000000 \ + // --reward-token 0x0000000000000000000000000000000000000000 \ + // --reward-amount 0 \ + // --unlock-days 0 \ + // --scaling-floor 1 \ + // --scaling-ceiling 14 \ + // --scaling-days 7 \ + // --reward-pool-factory 0xF016fa84D5f3a252409a63b5cb89B555A0d27Ccf \ + // --power-switch-factory 0x89d2D92eaCE71977dD0b159062f8ec90EA64fc24 \ + // --crucible-factory 0x54e0395CFB4f39beF66DBCd5bD93Cca4E9273D56 \ + // --owner 0x0000000000000000000000000000000000000000 \ + // --network mainnet \ + // --verify + // log config console.log('Network') @@ -84,12 +119,12 @@ task('create-aludel', 'Create an Aludel instance and deposit funds') await run('compile') - // get signer + // // get signer const signer = (await ethers.getSigners())[0] console.log('Signer') console.log(' at', signer.address) - console.log(' ETH', formatEther(await signer.getBalance())) + console.log(' balance', formatEther(await signer.getBalance())) // load contracts @@ -103,13 +138,19 @@ task('create-aludel', 'Create an Aludel instance and deposit funds') console.log('Validate balances') - const rewardAmount = parseUnits( - args.rewardAmount, - await rewardToken.decimals(), - ) + let rewardAmount; + // reward token balance check + if (Number(args.rewardAmount) > 0) { + rewardAmount = parseUnits( + args.rewardAmount, + await rewardToken.decimals(), + ) + + expect(await rewardToken.balanceOf(signer.address)).to.be.gte(rewardAmount) + } - expect(await rewardToken.balanceOf(signer.address)).to.be.gte(rewardAmount) - expect(await signer.getBalance()).to.be.gte(parseEther('1')) + // native token balance check + expect(await signer.getBalance()).to.be.gte(parseEther('0.5')) // deploy instance @@ -132,23 +173,25 @@ task('create-aludel', 'Create an Aludel instance and deposit funds') aludelArgs, ) - // fund aludel + if (Number(args.rewardAmount) > 0) { + // fund aludel - console.log('Approve reward deposit') + console.log('Approve reward deposit') - const approveTx = await rewardToken.approve( - aludel.address, - constants.MaxUint256, - ) - await approveTx.wait() + const approveTx = await rewardToken.approve( + aludel.address, + constants.MaxUint256, + ) + await approveTx.wait() - console.log(' in', approveTx.hash) + console.log(' in', approveTx.hash) - console.log('Deposit reward') + console.log('Deposit reward') - const depositTx = await aludel.fund(rewardAmount, args.unlockDays * DAY) + const depositTx = await aludel.fund(rewardAmount, args.unlockDays * DAY) - console.log(' in', depositTx.hash) + console.log(' in', depositTx.hash) + } // add crucible factory @@ -159,26 +202,27 @@ task('create-aludel', 'Create an Aludel instance and deposit funds') console.log(' in', registerTx.hash) // transfer ownership + if (args.owner !== '', args.owner.toLowerCase() != signer.address.toLowerCase()) { + const powerSwitch = await ethers.getContractAt( + 'PowerSwitch', + await aludel.getPowerSwitch(), + signer, + ) - const powerSwitch = await ethers.getContractAt( - 'PowerSwitch', - await aludel.getPowerSwitch(), - signer, - ) - - console.log('Transfer admin') + console.log('Transfer admin') - const transferAdminTx = await aludel.transferOwnership(args.owner) + const transferAdminTx = await aludel.transferOwnership(args.owner) - console.log(' to', await aludel.owner()) - console.log(' in', transferAdminTx.hash) + console.log(' to', await aludel.owner()) + console.log(' in', transferAdminTx.hash) - console.log('Transfer power controller') + console.log('Transfer power controller') - const transferPowerTx = await powerSwitch.transferOwnership(args.owner) + const transferPowerTx = await powerSwitch.transferOwnership(args.owner) - console.log(' to', await powerSwitch.owner()) - console.log(' in', transferPowerTx.hash) + console.log(' to', await powerSwitch.owner()) + console.log(' in', transferPowerTx.hash) + } // verify source diff --git a/yarn.lock b/yarn.lock index 833b722..1ae5374 100644 --- a/yarn.lock +++ b/yarn.lock @@ -104,7 +104,7 @@ "@ethersproject/properties" ">=5.0.0-beta.131" "@ethersproject/strings" ">=5.0.0-beta.130" -"@ethersproject/abi@5.0.11", "@ethersproject/abi@^5.0.10", "@ethersproject/abi@^5.0.2": +"@ethersproject/abi@5.0.11", "@ethersproject/abi@^5.0.10": version "5.0.11" resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.0.11.tgz#d3b6fd955d3172214603d4d123055b3b0b06376b" integrity sha512-ibZswQsjdFuLSfY2lbRTZM2Uk+ci7tp+mjVK0kjxVol2V32cb7va1r6B4AJU/Ac/VTstCjxtn0KKMfbkPc002w== @@ -134,6 +134,21 @@ "@ethersproject/properties" "^5.0.7" "@ethersproject/strings" "^5.0.8" +"@ethersproject/abi@^5.1.2": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.1.tgz#f7de888edeb56b0a657b672bdd1b3a1135cd14f7" + integrity sha512-0cqssYh6FXjlwKWBmLm3+zH2BNARoS5u/hxbz+LpQmcDB3w0W553h2btWui1/uZp2GBM/SI3KniTuMcYyHpA5w== + dependencies: + "@ethersproject/address" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/hash" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + "@ethersproject/abstract-provider@5.0.9", "@ethersproject/abstract-provider@^5.0.8": version "5.0.9" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.0.9.tgz#a55410b73e3994842884eb82b1f43e3a9f653eea" @@ -147,6 +162,19 @@ "@ethersproject/transactions" "^5.0.9" "@ethersproject/web" "^5.0.12" +"@ethersproject/abstract-provider@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz#0c4ac7054650dbd9c476cf5907f588bbb6ef3061" + integrity sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw== + dependencies: + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.0" + "@ethersproject/web" "^5.6.0" + "@ethersproject/abstract-signer@5.0.12", "@ethersproject/abstract-signer@^5.0.10": version "5.0.12" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.0.12.tgz#04ab597eb87a08faaab19dd5a739339e1e3beb58" @@ -158,6 +186,17 @@ "@ethersproject/logger" "^5.0.8" "@ethersproject/properties" "^5.0.7" +"@ethersproject/abstract-signer@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz#9cd7ae9211c2b123a3b29bf47aab17d4d016e3e7" + integrity sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ== + dependencies: + "@ethersproject/abstract-provider" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/address@5.0.10", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.0.9": version "5.0.10" resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.0.10.tgz#2bc69fdff4408e0570471cd19dee577ab06a10d0" @@ -169,6 +208,17 @@ "@ethersproject/logger" "^5.0.8" "@ethersproject/rlp" "^5.0.7" +"@ethersproject/address@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.0.tgz#13c49836d73e7885fc148ad633afad729da25012" + integrity sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ== + dependencies: + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/rlp" "^5.6.0" + "@ethersproject/base64@5.0.8", "@ethersproject/base64@^5.0.7": version "5.0.8" resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.0.8.tgz#1bc4b4b8c59c1debf972c7164b96c0b8964a20a1" @@ -176,6 +226,13 @@ dependencies: "@ethersproject/bytes" "^5.0.9" +"@ethersproject/base64@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.0.tgz#a12c4da2a6fb86d88563216b0282308fc15907c9" + integrity sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/basex@5.0.8", "@ethersproject/basex@^5.0.7": version "5.0.8" resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.0.8.tgz#6867fad20047aa29fbd4b880f27894ed04cc7bb8" @@ -193,6 +250,15 @@ "@ethersproject/logger" "^5.0.8" bn.js "^4.4.0" +"@ethersproject/bignumber@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.0.tgz#116c81b075c57fa765a8f3822648cf718a8a0e26" + integrity sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + bn.js "^4.11.9" + "@ethersproject/bytes@5.0.10", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.0.9": version "5.0.10" resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.0.10.tgz#aa49afe7491ba24ff76fa33d98677351263f9ba4" @@ -200,6 +266,13 @@ dependencies: "@ethersproject/logger" "^5.0.8" +"@ethersproject/bytes@^5.6.0": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7" + integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g== + dependencies: + "@ethersproject/logger" "^5.6.0" + "@ethersproject/constants@5.0.9", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.0.8": version "5.0.9" resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.0.9.tgz#81ac44c3bf612de63eb1c490b314ea1b932cda9f" @@ -207,6 +280,13 @@ dependencies: "@ethersproject/bignumber" "^5.0.13" +"@ethersproject/constants@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.0.tgz#55e3eb0918584d3acc0688e9958b0cedef297088" + integrity sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA== + dependencies: + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/contracts@5.0.10": version "5.0.10" resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.0.10.tgz#650cbf6f3cf89a63006ea91727a68aee4dc3381f" @@ -236,6 +316,20 @@ "@ethersproject/properties" "^5.0.7" "@ethersproject/strings" "^5.0.8" +"@ethersproject/hash@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.0.tgz#d24446a5263e02492f9808baa99b6e2b4c3429a2" + integrity sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA== + dependencies: + "@ethersproject/abstract-signer" "^5.6.0" + "@ethersproject/address" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + "@ethersproject/hdnode@5.0.9", "@ethersproject/hdnode@^5.0.8": version "5.0.9" resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.0.9.tgz#ce65b430d3d3f0cd3c8f9dfaaf376b55881d9dba" @@ -281,11 +375,24 @@ "@ethersproject/bytes" "^5.0.9" js-sha3 "0.5.7" +"@ethersproject/keccak256@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.0.tgz#fea4bb47dbf8f131c2e1774a1cecbfeb9d606459" + integrity sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w== + dependencies: + "@ethersproject/bytes" "^5.6.0" + js-sha3 "0.8.0" + "@ethersproject/logger@5.0.9", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.0.8": version "5.0.9" resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.0.9.tgz#0e6a0b3ecc938713016954daf4ac7967467aa763" integrity sha512-kV3Uamv3XOH99Xf3kpIG3ZkS7mBNYcLDM00JSDtNgNB4BihuyxpQzIZPRIDmRi+95Z/R1Bb0X2kUNHa/kJoVrw== +"@ethersproject/logger@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" + integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== + "@ethersproject/networks@5.0.8", "@ethersproject/networks@^5.0.7": version "5.0.8" resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.0.8.tgz#37e6f8c058f2d540373ea5939056cd3de069132e" @@ -293,6 +400,13 @@ dependencies: "@ethersproject/logger" "^5.0.8" +"@ethersproject/networks@^5.6.0": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.2.tgz#2bacda62102c0b1fcee408315f2bed4f6fbdf336" + integrity sha512-9uEzaJY7j5wpYGTojGp8U89mSsgQLc40PCMJLMCnFXTs7nhBveZ0t7dbqWUNrepWTszDbFkYD6WlL8DKx5huHA== + dependencies: + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2@5.0.8", "@ethersproject/pbkdf2@^5.0.7": version "5.0.8" resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.0.8.tgz#06a086b1ac04c75e6846afd6cf6170a49a634411" @@ -308,6 +422,13 @@ dependencies: "@ethersproject/logger" "^5.0.8" +"@ethersproject/properties@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" + integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== + dependencies: + "@ethersproject/logger" "^5.6.0" + "@ethersproject/providers@5.0.21": version "5.0.21" resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.0.21.tgz#04e6b7734637a82ea4df22ef49311f419fc5e3bd" @@ -349,6 +470,14 @@ "@ethersproject/bytes" "^5.0.9" "@ethersproject/logger" "^5.0.8" +"@ethersproject/rlp@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.0.tgz#55a7be01c6f5e64d6e6e7edb6061aa120962a717" + integrity sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/sha2@5.0.8", "@ethersproject/sha2@^5.0.7": version "5.0.8" resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.0.8.tgz#9903c67e562739d8b312820b0a265b9c9bf35fc3" @@ -368,6 +497,18 @@ "@ethersproject/properties" "^5.0.7" elliptic "6.5.3" +"@ethersproject/signing-key@^5.6.0": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.1.tgz#31b0a531520616254eb0465b9443e49515c4d457" + integrity sha512-XvqQ20DH0D+bS3qlrrgh+axRMth5kD1xuvqUQUTeezxUTXBOeR6hWz2/C6FBEu39FRytyybIWrYf7YLSAKr1LQ== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + bn.js "^4.11.9" + elliptic "6.5.4" + hash.js "1.1.7" + "@ethersproject/solidity@5.0.9": version "5.0.9" resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.0.9.tgz#49100fbe9f364ac56f7ff7c726f4f3d151901134" @@ -388,6 +529,15 @@ "@ethersproject/constants" "^5.0.8" "@ethersproject/logger" "^5.0.8" +"@ethersproject/strings@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.0.tgz#9891b26709153d996bf1303d39a7f4bc047878fd" + integrity sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg== + dependencies: + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/transactions@5.0.10", "@ethersproject/transactions@^5.0.0-beta.135", "@ethersproject/transactions@^5.0.9": version "5.0.10" resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.0.10.tgz#d50cafd80d27206336f80114bc0f18bc18687331" @@ -403,6 +553,21 @@ "@ethersproject/rlp" "^5.0.7" "@ethersproject/signing-key" "^5.0.8" +"@ethersproject/transactions@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.0.tgz#4b594d73a868ef6e1529a2f8f94a785e6791ae4e" + integrity sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg== + dependencies: + "@ethersproject/address" "^5.6.0" + "@ethersproject/bignumber" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/constants" "^5.6.0" + "@ethersproject/keccak256" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/rlp" "^5.6.0" + "@ethersproject/signing-key" "^5.6.0" + "@ethersproject/units@5.0.10": version "5.0.10" resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.0.10.tgz#9cca3b65cd0c92fab1bd33f2abd233546dd61987" @@ -444,6 +609,17 @@ "@ethersproject/properties" "^5.0.7" "@ethersproject/strings" "^5.0.8" +"@ethersproject/web@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.0.tgz#4bf8b3cbc17055027e1a5dd3c357e37474eaaeb8" + integrity sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg== + dependencies: + "@ethersproject/base64" "^5.6.0" + "@ethersproject/bytes" "^5.6.0" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.0" + "@ethersproject/wordlists@5.0.9", "@ethersproject/wordlists@^5.0.8": version "5.0.9" resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.0.9.tgz#f16cc0b317637c3ae9c689ebd7bc2cbbffadd013" @@ -481,18 +657,18 @@ resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.0.1.tgz#f86a6fa210dbe6270adffccc75e93ed60a856904" integrity sha512-uTFHDhhvJ+UjfvvMeQxD3ZALuzuI3FXzTYT1Z5N3ebyZL5z4Ogwt55GB0R9tdKY0p5HhDhBjU/gsCjUEwIVoaw== -"@nomiclabs/hardhat-etherscan@^2.1.1": - version "2.1.1" - resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-etherscan/-/hardhat-etherscan-2.1.1.tgz#186f3fa652a0ca20fb77aa857cfad2da845d5cbf" - integrity sha512-8TNUFsO5DpAfwNlXMDhcEtFAMOYsVNaQL2vq5vuCD45kUKBgL8H21++zOk231ha9D7LQWBMCIg7A7iPxw6Jwmg== +"@nomiclabs/hardhat-etherscan@^3.0.3": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-etherscan/-/hardhat-etherscan-3.0.3.tgz#ca54a03351f3de41f9f5240e37bea9d64fa24e64" + integrity sha512-OfNtUKc/ZwzivmZnnpwWREfaYncXteKHskn3yDnz+fPBZ6wfM4GR+d5RwjREzYFWE+o5iR9ruXhWw/8fejWM9g== dependencies: - "@ethersproject/abi" "^5.0.2" + "@ethersproject/abi" "^5.1.2" "@ethersproject/address" "^5.0.2" cbor "^5.0.2" debug "^4.1.1" fs-extra "^7.0.1" - node-fetch "^2.6.0" semver "^6.3.0" + undici "^4.14.1" "@nomiclabs/hardhat-waffle@^2.0.1": version "2.0.1" @@ -2576,7 +2752,7 @@ elliptic@6.5.3: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" -elliptic@^6.4.0, elliptic@^6.5.2, elliptic@^6.5.3: +elliptic@6.5.4, elliptic@^6.4.0, elliptic@^6.5.2, elliptic@^6.5.3: version "6.5.4" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== @@ -4055,7 +4231,7 @@ hash.js@1.1.3: inherits "^2.0.3" minimalistic-assert "^1.0.0" -hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== @@ -7293,6 +7469,11 @@ underscore@1.9.1: resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961" integrity sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg== +undici@^4.14.1: + version "4.16.0" + resolved "https://registry.yarnpkg.com/undici/-/undici-4.16.0.tgz#469bb87b3b918818d3d7843d91a1d08da357d5ff" + integrity sha512-tkZSECUYi+/T1i4u+4+lwZmQgLXd4BLGlrc7KZPcLIW7Jpq99+Xpc30ONv7nS6F5UNOxp/HBZSSL9MafUrvJbw== + union-value@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847"