├── .env.example ├── .gitignore ├── .gitmodules ├── README.md ├── foundry.toml ├── package.json ├── remappings.txt ├── scripts ├── deploy.js └── helpers.js ├── src ├── Contract.sol └── test │ └── Contract.t.sol └── yarn.lock /.env.example: -------------------------------------------------------------------------------- 1 | PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 2 | RPC_URL=http://127.0.0.1:8545 -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | 4 | node_modules/ 5 | .env -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "lib/ds-test"] 2 | path = lib/ds-test 3 | url = https://github.com/dapphub/ds-test 4 | [submodule "lib/openzeppelin-contracts"] 5 | path = lib/openzeppelin-contracts 6 | url = https://github.com/openzeppelin/openzeppelin-contracts 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Forge Example 2 | 3 | A barebones example project on how I setup forge with VSCode along with custom deploy scripts. 4 | 5 | - [remappings.txt](https://github.com/libevm/forge-example/blob/main/remappings.txt) for vscode solidity [linter](https://github.com/juanfranblanco/vscode-solidity#remappings) 6 | - [foundry.toml](https://github.com/libevm/forge-example/blob/main/foundry.toml) to config [forge](https://github.com/gakonst/foundry) 7 | 8 | Tested on `forge 0.1.0 (03bed46 2022-03-15T00:11:36.438888+00:00)` 9 | 10 | https://user-images.githubusercontent.com/95674753/159128869-b058189f-bc84-4874-afe9-ab26440744c2.mov 11 | 12 | ## Overview 13 | 14 | - Uses [forge](https://github.com/gakonst/foundry) to compile, test, and debug. 15 | - Uses a custom JS script to deploy, see [deploy.js](https://github.com/libevm/forge-example/blob/main/scripts/deploy.js). 16 | 17 | I prefer to write the deployment scripts as programatically as possible on a widely supported language as every deployment itself is unique, and sometimes there's inter-dependencies between contracts. 18 | 19 | For example: 20 | 21 | 1. Deploy contract A 22 | 2. Deploy contract B 23 | 3. Call addOwner on B with A's address 24 | 25 | This is overly tricky with bash for me, and would require a LOT of unreadable (and error-prone) commands-line composition with jq and awk to achieve that with the default `forge create`. 26 | 27 | ## Development 28 | 29 | Building and testing 30 | ```bash 31 | forge build 32 | forge test 33 | 34 | # forking from existing state 35 | # -vvv = very very verbose 36 | # forge test -f http://127.0.0.1:8545 -vvv 37 | 38 | # To access the debugger 39 | # forge run --debug src/test/Contract.t.sol --sig "testExample()" 40 | ``` 41 | 42 | ## Contract Deployment 43 | 44 | Copy `.env.example` to `.env` and fill it out with correct details. 45 | 46 | ```bash 47 | node --experimental-json-modules scripts/deploy.js 48 | ``` 49 | 50 | ## Etherscan Verification 51 | 52 | Forge has a very useful in-built etherscan verification utility. 53 | 54 | ```bash 55 | # For list of compiler versions https://etherscan.io/solcversions 56 | forge verify-contract --compiler-version v0.8.12+commit.f00d7308 [CONTRACT ADDRESS] --constructor-args --num-of-optimizations 200 [CONTRACT_PATH:CONTRACT_NAME] [ETHERSCAN_API_KEY] 57 | 58 | # To check verification status 59 | forge verify-check [GUID] [ETHERSCAN_KEY] 60 | ``` 61 | 62 | If you have multiple contracts with `pragma abiencoderv2`, there is a possibility that you can't verify your contracts on etherscan, there's an [open issue on this](https://github.com/gakonst/foundry/issues/852). 63 | 64 | One way to get around it is via [paulrberg's multisol](https://github.com/paulrberg/multisol) or [hjubb's solt](https://github.com/hjubb/solt) and verify it manually via the official interface. 65 | 66 | The caveat to the approach above is that you have to copy the libraries in `lib` to `node_modules` and make sure the path matches as it doesn't read remappings. 67 | 68 | For example: 69 | 70 | ```bash 71 | cp -r lib/openzeppelin-contracts node_modules/@openzeppelin 72 | mv node_modules/@openzeppelin/contracts/* node_modules/@openzeppelin 73 | multisol src/Contract.sol 74 | ``` 75 | -------------------------------------------------------------------------------- /foundry.toml: -------------------------------------------------------------------------------- 1 | [default] 2 | src = 'src' 3 | out = 'out' 4 | libs = ['lib'] 5 | remappings = [ 6 | 'ds-test/=lib/ds-test/src/', 7 | '@openzeppelin/=/lib/openzeppelin-contracts/contracts/' 8 | ] 9 | 10 | # See more config options https://github.com/gakonst/foundry/tree/master/config -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "chalk": "^5.0.1", 4 | "dotenv": "^16.0.0", 5 | "ethers": "^5.6.1", 6 | "ora": "^6.1.0", 7 | "readline": "^1.3.0" 8 | }, 9 | "type": "module", 10 | "devDependencies": { 11 | "eslint": "^8.11.0" 12 | }, 13 | "eslintConfig": { 14 | "extends": "eslint:recommended", 15 | "parserOptions": { 16 | "sourceType": "module", 17 | "ecmaVersion": 2021 18 | }, 19 | "env": { 20 | "node": true, 21 | "es6": true 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /remappings.txt: -------------------------------------------------------------------------------- 1 | ds-test/=lib/ds-test/src/ 2 | @openzeppelin/=lib/openzeppelin-contracts/contracts/ 3 | -------------------------------------------------------------------------------- /scripts/deploy.js: -------------------------------------------------------------------------------- 1 | import ethers from 'ethers' 2 | import { wallet, deployContract } from './helpers.js' 3 | 4 | import Artifact from '../out/Contract.sol/Contract.json' 5 | 6 | const main = async () => { 7 | const Factory = new ethers.ContractFactory( 8 | Artifact.abi, Artifact.bytecode.object, wallet 9 | ) 10 | 11 | await deployContract({ 12 | name: 'Contract', 13 | deployer: wallet, 14 | factory: Factory, 15 | args: [], 16 | opts: { 17 | gasLimit: 1000000 18 | } 19 | }) 20 | } 21 | 22 | main() 23 | .then(() => process.exit(0)) 24 | .catch(error => { 25 | console.error(error); 26 | process.exit(1); 27 | }); -------------------------------------------------------------------------------- /scripts/helpers.js: -------------------------------------------------------------------------------- 1 | import { formatUnits } from "@ethersproject/units" 2 | import dotenv from "dotenv" 3 | import ethers from 'ethers' 4 | import chalk from 'chalk' 5 | import readline from 'readline' 6 | import ora from "ora"; 7 | dotenv.config() 8 | 9 | let validConfig = true 10 | if (process.env.RPC_URL === undefined) { 11 | console.log('Missing RPC_URL') 12 | validConfig = false 13 | } 14 | if (process.env.PRIVATE_KEY === undefined) { 15 | console.log('Missing PRIVATE_KEY') 16 | validConfig = false 17 | } 18 | if (!validConfig) { 19 | process.exit(1) 20 | } 21 | 22 | const provider = new ethers.providers.JsonRpcProvider(process.env.RPC_URL) 23 | const wallet = new ethers.Wallet(process.env.PRIVATE_KEY, provider) 24 | 25 | const ask = async (question) => { 26 | const rl = readline.createInterface({ 27 | input: process.stdin, 28 | output: process.stdout, 29 | }); 30 | 31 | return new Promise(resolve => { 32 | rl.question(chalk.yellow(question), input => { 33 | resolve(input); 34 | rl.close(); 35 | }); 36 | }); 37 | }; 38 | const deployContract = async ({ 39 | name, 40 | deployer, 41 | factory, 42 | args, 43 | opts, 44 | }) => { 45 | console.log(chalk.grey(`============ Contract ${name} @ ${process.env.RPC_URL} ============`)); 46 | 47 | const balance = await deployer.getBalance(); 48 | console.log(chalk.blueBright(`Deployer ${deployer.address} (balance: ${formatUnits(balance)} ETH)`)); 49 | 50 | if (factory.interface.deploy.inputs) { 51 | if (factory.interface.deploy.inputs.length !== args.length) { 52 | console.log( 53 | chalk.red(`${name} expected ${factory.interface.deploy.inputs.length} arguments, got ${args.length}`), 54 | ); 55 | console.log(chalk.grey(`=========================================`)); 56 | process.exit(0); 57 | } 58 | } 59 | 60 | const displayArgs = factory.interface.deploy.inputs 61 | .map((x, i) => { 62 | return { 63 | [x.name]: args[i], 64 | }; 65 | }) 66 | .reduce((acc, x) => { 67 | return { ...acc, ...x }; 68 | }, {}); 69 | 70 | console.log(chalk.yellow(`Deploy ${name} with the following args: `)); 71 | console.log(chalk.yellow(JSON.stringify(displayArgs, null, 4))); 72 | let confirmDeploy = await ask("Continue? (y/n): "); 73 | 74 | while (confirmDeploy === "" || (confirmDeploy !== "y" && confirmDeploy !== "n")) { 75 | confirmDeploy = await ask("Continue? (y/n): "); 76 | } 77 | 78 | if (confirmDeploy.toLowerCase() !== "y") { 79 | console.log(chalk.red("Contract deployment cancelled")); 80 | console.log(chalk.grey(`=========================================`)); 81 | process.exit(0); 82 | } 83 | 84 | const curBlock = await provider.getBlock() 85 | let maxFeePerGas, maxPriorityFeePerGas 86 | if (opts && "maxFeePerGas" in opts) { 87 | maxFeePerGas = opts.maxFeePerGas; 88 | } else { 89 | maxFeePerGas = curBlock.baseFeePerGas.mul(115).div(100) 90 | } 91 | 92 | if (opts && "maxPriorityFee" in opts) { 93 | maxPriorityFeePerGas = opts.maxPriorityFee; 94 | } else { 95 | // Hardcode to 2 gwei 96 | maxPriorityFeePerGas = ethers.utils.parseUnits('2', 9) 97 | } 98 | 99 | const spinner = ora(`Deploying ${name} with maxFeePerGas ${formatUnits(maxFeePerGas, 9)} gwei & maxPriorityFeePerGas ${formatUnits(maxPriorityFeePerGas, 9)}`).start(); 100 | 101 | let contract; 102 | try { 103 | contract = await factory.connect(deployer).deploy(...args, { 104 | ...opts, 105 | maxFeePerGas, 106 | maxPriorityFeePerGas 107 | }); 108 | await contract.deployed(); 109 | spinner.succeed(`Deployed ${name} to ${contract.address}`); 110 | } catch (e) { 111 | contract = null; 112 | spinner.fail(`Failed to deploy: ${e.toString()}`); 113 | } 114 | console.log(chalk.grey(`=========================================`)); 115 | 116 | if (contract === null) { 117 | process.exit(0); 118 | } 119 | 120 | return contract; 121 | }; 122 | 123 | export { 124 | provider, wallet, ask, deployContract 125 | } -------------------------------------------------------------------------------- /src/Contract.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: UNLICENSED 2 | pragma solidity 0.8.10; 3 | 4 | import "@openzeppelin/token/ERC20/ERC20.sol"; 5 | 6 | contract Contract is ERC20("Token", "TKN") { 7 | function mint(address _recipient, uint256 _amount) public { 8 | _mint(_recipient, _amount); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/test/Contract.t.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: UNLICENSED 2 | pragma solidity 0.8.10; 3 | 4 | import "ds-test/test.sol"; 5 | 6 | import "../Contract.sol"; 7 | 8 | contract ContractTest is DSTest { 9 | Contract a; 10 | function setUp() public { 11 | a = new Contract(); 12 | } 13 | 14 | function testExample() public { 15 | assertEq(a.balanceOf(address(this)), 0); 16 | a.mint(address(this), 1e18); 17 | assertGt(a.balanceOf(address(this)), 0); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@eslint/eslintrc@^1.2.1": 6 | version "1.2.1" 7 | resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.2.1.tgz#8b5e1c49f4077235516bc9ec7d41378c0f69b8c6" 8 | integrity sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ== 9 | dependencies: 10 | ajv "^6.12.4" 11 | debug "^4.3.2" 12 | espree "^9.3.1" 13 | globals "^13.9.0" 14 | ignore "^5.2.0" 15 | import-fresh "^3.2.1" 16 | js-yaml "^4.1.0" 17 | minimatch "^3.0.4" 18 | strip-json-comments "^3.1.1" 19 | 20 | "@ethersproject/abi@5.6.0", "@ethersproject/abi@^5.6.0": 21 | version "5.6.0" 22 | resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.0.tgz#ea07cbc1eec2374d32485679c12408005895e9f3" 23 | integrity sha512-AhVByTwdXCc2YQ20v300w6KVHle9g2OFc28ZAFCPnJyEpkv1xKXjZcSTgWOlv1i+0dqlgF8RCF2Rn2KC1t+1Vg== 24 | dependencies: 25 | "@ethersproject/address" "^5.6.0" 26 | "@ethersproject/bignumber" "^5.6.0" 27 | "@ethersproject/bytes" "^5.6.0" 28 | "@ethersproject/constants" "^5.6.0" 29 | "@ethersproject/hash" "^5.6.0" 30 | "@ethersproject/keccak256" "^5.6.0" 31 | "@ethersproject/logger" "^5.6.0" 32 | "@ethersproject/properties" "^5.6.0" 33 | "@ethersproject/strings" "^5.6.0" 34 | 35 | "@ethersproject/abstract-provider@5.6.0", "@ethersproject/abstract-provider@^5.6.0": 36 | version "5.6.0" 37 | resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz#0c4ac7054650dbd9c476cf5907f588bbb6ef3061" 38 | integrity sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw== 39 | dependencies: 40 | "@ethersproject/bignumber" "^5.6.0" 41 | "@ethersproject/bytes" "^5.6.0" 42 | "@ethersproject/logger" "^5.6.0" 43 | "@ethersproject/networks" "^5.6.0" 44 | "@ethersproject/properties" "^5.6.0" 45 | "@ethersproject/transactions" "^5.6.0" 46 | "@ethersproject/web" "^5.6.0" 47 | 48 | "@ethersproject/abstract-signer@5.6.0", "@ethersproject/abstract-signer@^5.6.0": 49 | version "5.6.0" 50 | resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz#9cd7ae9211c2b123a3b29bf47aab17d4d016e3e7" 51 | integrity sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ== 52 | dependencies: 53 | "@ethersproject/abstract-provider" "^5.6.0" 54 | "@ethersproject/bignumber" "^5.6.0" 55 | "@ethersproject/bytes" "^5.6.0" 56 | "@ethersproject/logger" "^5.6.0" 57 | "@ethersproject/properties" "^5.6.0" 58 | 59 | "@ethersproject/address@5.6.0", "@ethersproject/address@^5.6.0": 60 | version "5.6.0" 61 | resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.0.tgz#13c49836d73e7885fc148ad633afad729da25012" 62 | integrity sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ== 63 | dependencies: 64 | "@ethersproject/bignumber" "^5.6.0" 65 | "@ethersproject/bytes" "^5.6.0" 66 | "@ethersproject/keccak256" "^5.6.0" 67 | "@ethersproject/logger" "^5.6.0" 68 | "@ethersproject/rlp" "^5.6.0" 69 | 70 | "@ethersproject/base64@5.6.0", "@ethersproject/base64@^5.6.0": 71 | version "5.6.0" 72 | resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.0.tgz#a12c4da2a6fb86d88563216b0282308fc15907c9" 73 | integrity sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw== 74 | dependencies: 75 | "@ethersproject/bytes" "^5.6.0" 76 | 77 | "@ethersproject/basex@5.6.0", "@ethersproject/basex@^5.6.0": 78 | version "5.6.0" 79 | resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.6.0.tgz#9ea7209bf0a1c3ddc2a90f180c3a7f0d7d2e8a69" 80 | integrity sha512-qN4T+hQd/Md32MoJpc69rOwLYRUXwjTlhHDIeUkUmiN/JyWkkLLMoG0TqvSQKNqZOMgN5stbUYN6ILC+eD7MEQ== 81 | dependencies: 82 | "@ethersproject/bytes" "^5.6.0" 83 | "@ethersproject/properties" "^5.6.0" 84 | 85 | "@ethersproject/bignumber@5.6.0", "@ethersproject/bignumber@^5.6.0": 86 | version "5.6.0" 87 | resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.0.tgz#116c81b075c57fa765a8f3822648cf718a8a0e26" 88 | integrity sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA== 89 | dependencies: 90 | "@ethersproject/bytes" "^5.6.0" 91 | "@ethersproject/logger" "^5.6.0" 92 | bn.js "^4.11.9" 93 | 94 | "@ethersproject/bytes@5.6.0", "@ethersproject/bytes@^5.6.0": 95 | version "5.6.0" 96 | resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.0.tgz#81652f2a0e04533575befadce555213c11d8aa20" 97 | integrity sha512-3hJPlYemb9V4VLfJF5BfN0+55vltPZSHU3QKUyP9M3Y2TcajbiRrz65UG+xVHOzBereB1b9mn7r12o177xgN7w== 98 | dependencies: 99 | "@ethersproject/logger" "^5.6.0" 100 | 101 | "@ethersproject/constants@5.6.0", "@ethersproject/constants@^5.6.0": 102 | version "5.6.0" 103 | resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.0.tgz#55e3eb0918584d3acc0688e9958b0cedef297088" 104 | integrity sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA== 105 | dependencies: 106 | "@ethersproject/bignumber" "^5.6.0" 107 | 108 | "@ethersproject/contracts@5.6.0": 109 | version "5.6.0" 110 | resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.6.0.tgz#60f2cfc7addd99a865c6c8cfbbcec76297386067" 111 | integrity sha512-74Ge7iqTDom0NX+mux8KbRUeJgu1eHZ3iv6utv++sLJG80FVuU9HnHeKVPfjd9s3woFhaFoQGf3B3iH/FrQmgw== 112 | dependencies: 113 | "@ethersproject/abi" "^5.6.0" 114 | "@ethersproject/abstract-provider" "^5.6.0" 115 | "@ethersproject/abstract-signer" "^5.6.0" 116 | "@ethersproject/address" "^5.6.0" 117 | "@ethersproject/bignumber" "^5.6.0" 118 | "@ethersproject/bytes" "^5.6.0" 119 | "@ethersproject/constants" "^5.6.0" 120 | "@ethersproject/logger" "^5.6.0" 121 | "@ethersproject/properties" "^5.6.0" 122 | "@ethersproject/transactions" "^5.6.0" 123 | 124 | "@ethersproject/hash@5.6.0", "@ethersproject/hash@^5.6.0": 125 | version "5.6.0" 126 | resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.0.tgz#d24446a5263e02492f9808baa99b6e2b4c3429a2" 127 | integrity sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA== 128 | dependencies: 129 | "@ethersproject/abstract-signer" "^5.6.0" 130 | "@ethersproject/address" "^5.6.0" 131 | "@ethersproject/bignumber" "^5.6.0" 132 | "@ethersproject/bytes" "^5.6.0" 133 | "@ethersproject/keccak256" "^5.6.0" 134 | "@ethersproject/logger" "^5.6.0" 135 | "@ethersproject/properties" "^5.6.0" 136 | "@ethersproject/strings" "^5.6.0" 137 | 138 | "@ethersproject/hdnode@5.6.0", "@ethersproject/hdnode@^5.6.0": 139 | version "5.6.0" 140 | resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.6.0.tgz#9dcbe8d629bbbcf144f2cae476337fe92d320998" 141 | integrity sha512-61g3Jp3nwDqJcL/p4nugSyLrpl/+ChXIOtCEM8UDmWeB3JCAt5FoLdOMXQc3WWkc0oM2C0aAn6GFqqMcS/mHTw== 142 | dependencies: 143 | "@ethersproject/abstract-signer" "^5.6.0" 144 | "@ethersproject/basex" "^5.6.0" 145 | "@ethersproject/bignumber" "^5.6.0" 146 | "@ethersproject/bytes" "^5.6.0" 147 | "@ethersproject/logger" "^5.6.0" 148 | "@ethersproject/pbkdf2" "^5.6.0" 149 | "@ethersproject/properties" "^5.6.0" 150 | "@ethersproject/sha2" "^5.6.0" 151 | "@ethersproject/signing-key" "^5.6.0" 152 | "@ethersproject/strings" "^5.6.0" 153 | "@ethersproject/transactions" "^5.6.0" 154 | "@ethersproject/wordlists" "^5.6.0" 155 | 156 | "@ethersproject/json-wallets@5.6.0", "@ethersproject/json-wallets@^5.6.0": 157 | version "5.6.0" 158 | resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.6.0.tgz#4c2fc27f17e36c583e7a252fb938bc46f98891e5" 159 | integrity sha512-fmh86jViB9r0ibWXTQipxpAGMiuxoqUf78oqJDlCAJXgnJF024hOOX7qVgqsjtbeoxmcLwpPsXNU0WEe/16qPQ== 160 | dependencies: 161 | "@ethersproject/abstract-signer" "^5.6.0" 162 | "@ethersproject/address" "^5.6.0" 163 | "@ethersproject/bytes" "^5.6.0" 164 | "@ethersproject/hdnode" "^5.6.0" 165 | "@ethersproject/keccak256" "^5.6.0" 166 | "@ethersproject/logger" "^5.6.0" 167 | "@ethersproject/pbkdf2" "^5.6.0" 168 | "@ethersproject/properties" "^5.6.0" 169 | "@ethersproject/random" "^5.6.0" 170 | "@ethersproject/strings" "^5.6.0" 171 | "@ethersproject/transactions" "^5.6.0" 172 | aes-js "3.0.0" 173 | scrypt-js "3.0.1" 174 | 175 | "@ethersproject/keccak256@5.6.0", "@ethersproject/keccak256@^5.6.0": 176 | version "5.6.0" 177 | resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.0.tgz#fea4bb47dbf8f131c2e1774a1cecbfeb9d606459" 178 | integrity sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w== 179 | dependencies: 180 | "@ethersproject/bytes" "^5.6.0" 181 | js-sha3 "0.8.0" 182 | 183 | "@ethersproject/logger@5.6.0", "@ethersproject/logger@^5.6.0": 184 | version "5.6.0" 185 | resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" 186 | integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== 187 | 188 | "@ethersproject/networks@5.6.0", "@ethersproject/networks@^5.6.0": 189 | version "5.6.0" 190 | resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.0.tgz#486d03fff29b4b6b5414d47a232ded09fe10de5e" 191 | integrity sha512-DaVzgyThzHgSDLuURhvkp4oviGoGe9iTZW4jMEORHDRCgSZ9K9THGFKqL+qGXqPAYLEgZTf5z2w56mRrPR1MjQ== 192 | dependencies: 193 | "@ethersproject/logger" "^5.6.0" 194 | 195 | "@ethersproject/pbkdf2@5.6.0", "@ethersproject/pbkdf2@^5.6.0": 196 | version "5.6.0" 197 | resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.6.0.tgz#04fcc2d7c6bff88393f5b4237d906a192426685a" 198 | integrity sha512-Wu1AxTgJo3T3H6MIu/eejLFok9TYoSdgwRr5oGY1LTLfmGesDoSx05pemsbrPT2gG4cQME+baTSCp5sEo2erZQ== 199 | dependencies: 200 | "@ethersproject/bytes" "^5.6.0" 201 | "@ethersproject/sha2" "^5.6.0" 202 | 203 | "@ethersproject/properties@5.6.0", "@ethersproject/properties@^5.6.0": 204 | version "5.6.0" 205 | resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" 206 | integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== 207 | dependencies: 208 | "@ethersproject/logger" "^5.6.0" 209 | 210 | "@ethersproject/providers@5.6.1": 211 | version "5.6.1" 212 | resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.1.tgz#9a05f00ecbac59565bf6907c8d2af8ac33303b48" 213 | integrity sha512-w8Wx15nH+aVDvnoKCyI1f3x0B5idmk/bDJXMEUqCfdO8Eadd0QpDx9lDMTMmenhOmf9vufLJXjpSm24D3ZnVpg== 214 | dependencies: 215 | "@ethersproject/abstract-provider" "^5.6.0" 216 | "@ethersproject/abstract-signer" "^5.6.0" 217 | "@ethersproject/address" "^5.6.0" 218 | "@ethersproject/basex" "^5.6.0" 219 | "@ethersproject/bignumber" "^5.6.0" 220 | "@ethersproject/bytes" "^5.6.0" 221 | "@ethersproject/constants" "^5.6.0" 222 | "@ethersproject/hash" "^5.6.0" 223 | "@ethersproject/logger" "^5.6.0" 224 | "@ethersproject/networks" "^5.6.0" 225 | "@ethersproject/properties" "^5.6.0" 226 | "@ethersproject/random" "^5.6.0" 227 | "@ethersproject/rlp" "^5.6.0" 228 | "@ethersproject/sha2" "^5.6.0" 229 | "@ethersproject/strings" "^5.6.0" 230 | "@ethersproject/transactions" "^5.6.0" 231 | "@ethersproject/web" "^5.6.0" 232 | bech32 "1.1.4" 233 | ws "7.4.6" 234 | 235 | "@ethersproject/random@5.6.0", "@ethersproject/random@^5.6.0": 236 | version "5.6.0" 237 | resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.6.0.tgz#1505d1ab6a250e0ee92f436850fa3314b2cb5ae6" 238 | integrity sha512-si0PLcLjq+NG/XHSZz90asNf+YfKEqJGVdxoEkSukzbnBgC8rydbgbUgBbBGLeHN4kAJwUFEKsu3sCXT93YMsw== 239 | dependencies: 240 | "@ethersproject/bytes" "^5.6.0" 241 | "@ethersproject/logger" "^5.6.0" 242 | 243 | "@ethersproject/rlp@5.6.0", "@ethersproject/rlp@^5.6.0": 244 | version "5.6.0" 245 | resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.0.tgz#55a7be01c6f5e64d6e6e7edb6061aa120962a717" 246 | integrity sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g== 247 | dependencies: 248 | "@ethersproject/bytes" "^5.6.0" 249 | "@ethersproject/logger" "^5.6.0" 250 | 251 | "@ethersproject/sha2@5.6.0", "@ethersproject/sha2@^5.6.0": 252 | version "5.6.0" 253 | resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.6.0.tgz#364c4c11cc753bda36f31f001628706ebadb64d9" 254 | integrity sha512-1tNWCPFLu1n3JM9t4/kytz35DkuF9MxqkGGEHNauEbaARdm2fafnOyw1s0tIQDPKF/7bkP1u3dbrmjpn5CelyA== 255 | dependencies: 256 | "@ethersproject/bytes" "^5.6.0" 257 | "@ethersproject/logger" "^5.6.0" 258 | hash.js "1.1.7" 259 | 260 | "@ethersproject/signing-key@5.6.0", "@ethersproject/signing-key@^5.6.0": 261 | version "5.6.0" 262 | resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.0.tgz#4f02e3fb09e22b71e2e1d6dc4bcb5dafa69ce042" 263 | integrity sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA== 264 | dependencies: 265 | "@ethersproject/bytes" "^5.6.0" 266 | "@ethersproject/logger" "^5.6.0" 267 | "@ethersproject/properties" "^5.6.0" 268 | bn.js "^4.11.9" 269 | elliptic "6.5.4" 270 | hash.js "1.1.7" 271 | 272 | "@ethersproject/solidity@5.6.0": 273 | version "5.6.0" 274 | resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.6.0.tgz#64657362a596bf7f5630bdc921c07dd78df06dc3" 275 | integrity sha512-YwF52vTNd50kjDzqKaoNNbC/r9kMDPq3YzDWmsjFTRBcIF1y4JCQJ8gB30wsTfHbaxgxelI5BfxQSxD/PbJOww== 276 | dependencies: 277 | "@ethersproject/bignumber" "^5.6.0" 278 | "@ethersproject/bytes" "^5.6.0" 279 | "@ethersproject/keccak256" "^5.6.0" 280 | "@ethersproject/logger" "^5.6.0" 281 | "@ethersproject/sha2" "^5.6.0" 282 | "@ethersproject/strings" "^5.6.0" 283 | 284 | "@ethersproject/strings@5.6.0", "@ethersproject/strings@^5.6.0": 285 | version "5.6.0" 286 | resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.0.tgz#9891b26709153d996bf1303d39a7f4bc047878fd" 287 | integrity sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg== 288 | dependencies: 289 | "@ethersproject/bytes" "^5.6.0" 290 | "@ethersproject/constants" "^5.6.0" 291 | "@ethersproject/logger" "^5.6.0" 292 | 293 | "@ethersproject/transactions@5.6.0", "@ethersproject/transactions@^5.6.0": 294 | version "5.6.0" 295 | resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.0.tgz#4b594d73a868ef6e1529a2f8f94a785e6791ae4e" 296 | integrity sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg== 297 | dependencies: 298 | "@ethersproject/address" "^5.6.0" 299 | "@ethersproject/bignumber" "^5.6.0" 300 | "@ethersproject/bytes" "^5.6.0" 301 | "@ethersproject/constants" "^5.6.0" 302 | "@ethersproject/keccak256" "^5.6.0" 303 | "@ethersproject/logger" "^5.6.0" 304 | "@ethersproject/properties" "^5.6.0" 305 | "@ethersproject/rlp" "^5.6.0" 306 | "@ethersproject/signing-key" "^5.6.0" 307 | 308 | "@ethersproject/units@5.6.0": 309 | version "5.6.0" 310 | resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.6.0.tgz#e5cbb1906988f5740254a21b9ded6bd51e826d9c" 311 | integrity sha512-tig9x0Qmh8qbo1w8/6tmtyrm/QQRviBh389EQ+d8fP4wDsBrJBf08oZfoiz1/uenKK9M78yAP4PoR7SsVoTjsw== 312 | dependencies: 313 | "@ethersproject/bignumber" "^5.6.0" 314 | "@ethersproject/constants" "^5.6.0" 315 | "@ethersproject/logger" "^5.6.0" 316 | 317 | "@ethersproject/wallet@5.6.0": 318 | version "5.6.0" 319 | resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.0.tgz#33d11a806d783864208f348709a5a3badac8e22a" 320 | integrity sha512-qMlSdOSTyp0MBeE+r7SUhr1jjDlC1zAXB8VD84hCnpijPQiSNbxr6GdiLXxpUs8UKzkDiNYYC5DRI3MZr+n+tg== 321 | dependencies: 322 | "@ethersproject/abstract-provider" "^5.6.0" 323 | "@ethersproject/abstract-signer" "^5.6.0" 324 | "@ethersproject/address" "^5.6.0" 325 | "@ethersproject/bignumber" "^5.6.0" 326 | "@ethersproject/bytes" "^5.6.0" 327 | "@ethersproject/hash" "^5.6.0" 328 | "@ethersproject/hdnode" "^5.6.0" 329 | "@ethersproject/json-wallets" "^5.6.0" 330 | "@ethersproject/keccak256" "^5.6.0" 331 | "@ethersproject/logger" "^5.6.0" 332 | "@ethersproject/properties" "^5.6.0" 333 | "@ethersproject/random" "^5.6.0" 334 | "@ethersproject/signing-key" "^5.6.0" 335 | "@ethersproject/transactions" "^5.6.0" 336 | "@ethersproject/wordlists" "^5.6.0" 337 | 338 | "@ethersproject/web@5.6.0", "@ethersproject/web@^5.6.0": 339 | version "5.6.0" 340 | resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.0.tgz#4bf8b3cbc17055027e1a5dd3c357e37474eaaeb8" 341 | integrity sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg== 342 | dependencies: 343 | "@ethersproject/base64" "^5.6.0" 344 | "@ethersproject/bytes" "^5.6.0" 345 | "@ethersproject/logger" "^5.6.0" 346 | "@ethersproject/properties" "^5.6.0" 347 | "@ethersproject/strings" "^5.6.0" 348 | 349 | "@ethersproject/wordlists@5.6.0", "@ethersproject/wordlists@^5.6.0": 350 | version "5.6.0" 351 | resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.6.0.tgz#79e62c5276e091d8575f6930ba01a29218ded032" 352 | integrity sha512-q0bxNBfIX3fUuAo9OmjlEYxP40IB8ABgb7HjEZCL5IKubzV3j30CWi2rqQbjTS2HfoyQbfINoKcTVWP4ejwR7Q== 353 | dependencies: 354 | "@ethersproject/bytes" "^5.6.0" 355 | "@ethersproject/hash" "^5.6.0" 356 | "@ethersproject/logger" "^5.6.0" 357 | "@ethersproject/properties" "^5.6.0" 358 | "@ethersproject/strings" "^5.6.0" 359 | 360 | "@humanwhocodes/config-array@^0.9.2": 361 | version "0.9.5" 362 | resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7" 363 | integrity sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw== 364 | dependencies: 365 | "@humanwhocodes/object-schema" "^1.2.1" 366 | debug "^4.1.1" 367 | minimatch "^3.0.4" 368 | 369 | "@humanwhocodes/object-schema@^1.2.1": 370 | version "1.2.1" 371 | resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" 372 | integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== 373 | 374 | acorn-jsx@^5.3.1: 375 | version "5.3.2" 376 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" 377 | integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== 378 | 379 | acorn@^8.7.0: 380 | version "8.7.0" 381 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" 382 | integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== 383 | 384 | aes-js@3.0.0: 385 | version "3.0.0" 386 | resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" 387 | integrity sha1-4h3xCtbCBTKVvLuNq0Cwnb6ofk0= 388 | 389 | ajv@^6.10.0, ajv@^6.12.4: 390 | version "6.12.6" 391 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" 392 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 393 | dependencies: 394 | fast-deep-equal "^3.1.1" 395 | fast-json-stable-stringify "^2.0.0" 396 | json-schema-traverse "^0.4.1" 397 | uri-js "^4.2.2" 398 | 399 | ansi-regex@^5.0.1: 400 | version "5.0.1" 401 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" 402 | integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== 403 | 404 | ansi-regex@^6.0.1: 405 | version "6.0.1" 406 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" 407 | integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== 408 | 409 | ansi-styles@^4.1.0: 410 | version "4.3.0" 411 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" 412 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 413 | dependencies: 414 | color-convert "^2.0.1" 415 | 416 | argparse@^2.0.1: 417 | version "2.0.1" 418 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" 419 | integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== 420 | 421 | balanced-match@^1.0.0: 422 | version "1.0.2" 423 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" 424 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== 425 | 426 | base64-js@^1.3.1: 427 | version "1.5.1" 428 | resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" 429 | integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== 430 | 431 | bech32@1.1.4: 432 | version "1.1.4" 433 | resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" 434 | integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== 435 | 436 | bl@^5.0.0: 437 | version "5.0.0" 438 | resolved "https://registry.yarnpkg.com/bl/-/bl-5.0.0.tgz#6928804a41e9da9034868e1c50ca88f21f57aea2" 439 | integrity sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ== 440 | dependencies: 441 | buffer "^6.0.3" 442 | inherits "^2.0.4" 443 | readable-stream "^3.4.0" 444 | 445 | bn.js@^4.11.9: 446 | version "4.12.0" 447 | resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" 448 | integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== 449 | 450 | brace-expansion@^1.1.7: 451 | version "1.1.11" 452 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 453 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 454 | dependencies: 455 | balanced-match "^1.0.0" 456 | concat-map "0.0.1" 457 | 458 | brorand@^1.1.0: 459 | version "1.1.0" 460 | resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" 461 | integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= 462 | 463 | buffer@^6.0.3: 464 | version "6.0.3" 465 | resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" 466 | integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== 467 | dependencies: 468 | base64-js "^1.3.1" 469 | ieee754 "^1.2.1" 470 | 471 | callsites@^3.0.0: 472 | version "3.1.0" 473 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 474 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 475 | 476 | chalk@^4.0.0: 477 | version "4.1.2" 478 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" 479 | integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== 480 | dependencies: 481 | ansi-styles "^4.1.0" 482 | supports-color "^7.1.0" 483 | 484 | chalk@^5.0.0, chalk@^5.0.1: 485 | version "5.0.1" 486 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.0.1.tgz#ca57d71e82bb534a296df63bbacc4a1c22b2a4b6" 487 | integrity sha512-Fo07WOYGqMfCWHOzSXOt2CxDbC6skS/jO9ynEcmpANMoPrD+W1r1K6Vx7iNm+AQmETU1Xr2t+n8nzkV9t6xh3w== 488 | 489 | cli-cursor@^4.0.0: 490 | version "4.0.0" 491 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-4.0.0.tgz#3cecfe3734bf4fe02a8361cbdc0f6fe28c6a57ea" 492 | integrity sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg== 493 | dependencies: 494 | restore-cursor "^4.0.0" 495 | 496 | cli-spinners@^2.6.1: 497 | version "2.6.1" 498 | resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz#adc954ebe281c37a6319bfa401e6dd2488ffb70d" 499 | integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== 500 | 501 | clone@^1.0.2: 502 | version "1.0.4" 503 | resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" 504 | integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= 505 | 506 | color-convert@^2.0.1: 507 | version "2.0.1" 508 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" 509 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 510 | dependencies: 511 | color-name "~1.1.4" 512 | 513 | color-name@~1.1.4: 514 | version "1.1.4" 515 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 516 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 517 | 518 | concat-map@0.0.1: 519 | version "0.0.1" 520 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 521 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 522 | 523 | cross-spawn@^7.0.2: 524 | version "7.0.3" 525 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" 526 | integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== 527 | dependencies: 528 | path-key "^3.1.0" 529 | shebang-command "^2.0.0" 530 | which "^2.0.1" 531 | 532 | debug@^4.1.1, debug@^4.3.2: 533 | version "4.3.4" 534 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" 535 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== 536 | dependencies: 537 | ms "2.1.2" 538 | 539 | deep-is@^0.1.3: 540 | version "0.1.4" 541 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" 542 | integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== 543 | 544 | defaults@^1.0.3: 545 | version "1.0.3" 546 | resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" 547 | integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= 548 | dependencies: 549 | clone "^1.0.2" 550 | 551 | doctrine@^3.0.0: 552 | version "3.0.0" 553 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" 554 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 555 | dependencies: 556 | esutils "^2.0.2" 557 | 558 | dotenv@^16.0.0: 559 | version "16.0.0" 560 | resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.0.tgz#c619001253be89ebb638d027b609c75c26e47411" 561 | integrity sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q== 562 | 563 | elliptic@6.5.4: 564 | version "6.5.4" 565 | resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" 566 | integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== 567 | dependencies: 568 | bn.js "^4.11.9" 569 | brorand "^1.1.0" 570 | hash.js "^1.0.0" 571 | hmac-drbg "^1.0.1" 572 | inherits "^2.0.4" 573 | minimalistic-assert "^1.0.1" 574 | minimalistic-crypto-utils "^1.0.1" 575 | 576 | escape-string-regexp@^4.0.0: 577 | version "4.0.0" 578 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" 579 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== 580 | 581 | eslint-scope@^7.1.1: 582 | version "7.1.1" 583 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" 584 | integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== 585 | dependencies: 586 | esrecurse "^4.3.0" 587 | estraverse "^5.2.0" 588 | 589 | eslint-utils@^3.0.0: 590 | version "3.0.0" 591 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" 592 | integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== 593 | dependencies: 594 | eslint-visitor-keys "^2.0.0" 595 | 596 | eslint-visitor-keys@^2.0.0: 597 | version "2.1.0" 598 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" 599 | integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== 600 | 601 | eslint-visitor-keys@^3.3.0: 602 | version "3.3.0" 603 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" 604 | integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== 605 | 606 | eslint@^8.11.0: 607 | version "8.11.0" 608 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.11.0.tgz#88b91cfba1356fc10bb9eb592958457dfe09fb37" 609 | integrity sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA== 610 | dependencies: 611 | "@eslint/eslintrc" "^1.2.1" 612 | "@humanwhocodes/config-array" "^0.9.2" 613 | ajv "^6.10.0" 614 | chalk "^4.0.0" 615 | cross-spawn "^7.0.2" 616 | debug "^4.3.2" 617 | doctrine "^3.0.0" 618 | escape-string-regexp "^4.0.0" 619 | eslint-scope "^7.1.1" 620 | eslint-utils "^3.0.0" 621 | eslint-visitor-keys "^3.3.0" 622 | espree "^9.3.1" 623 | esquery "^1.4.0" 624 | esutils "^2.0.2" 625 | fast-deep-equal "^3.1.3" 626 | file-entry-cache "^6.0.1" 627 | functional-red-black-tree "^1.0.1" 628 | glob-parent "^6.0.1" 629 | globals "^13.6.0" 630 | ignore "^5.2.0" 631 | import-fresh "^3.0.0" 632 | imurmurhash "^0.1.4" 633 | is-glob "^4.0.0" 634 | js-yaml "^4.1.0" 635 | json-stable-stringify-without-jsonify "^1.0.1" 636 | levn "^0.4.1" 637 | lodash.merge "^4.6.2" 638 | minimatch "^3.0.4" 639 | natural-compare "^1.4.0" 640 | optionator "^0.9.1" 641 | regexpp "^3.2.0" 642 | strip-ansi "^6.0.1" 643 | strip-json-comments "^3.1.0" 644 | text-table "^0.2.0" 645 | v8-compile-cache "^2.0.3" 646 | 647 | espree@^9.3.1: 648 | version "9.3.1" 649 | resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.1.tgz#8793b4bc27ea4c778c19908e0719e7b8f4115bcd" 650 | integrity sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ== 651 | dependencies: 652 | acorn "^8.7.0" 653 | acorn-jsx "^5.3.1" 654 | eslint-visitor-keys "^3.3.0" 655 | 656 | esquery@^1.4.0: 657 | version "1.4.0" 658 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" 659 | integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== 660 | dependencies: 661 | estraverse "^5.1.0" 662 | 663 | esrecurse@^4.3.0: 664 | version "4.3.0" 665 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" 666 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== 667 | dependencies: 668 | estraverse "^5.2.0" 669 | 670 | estraverse@^5.1.0, estraverse@^5.2.0: 671 | version "5.3.0" 672 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" 673 | integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== 674 | 675 | esutils@^2.0.2: 676 | version "2.0.3" 677 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" 678 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 679 | 680 | ethers@^5.6.1: 681 | version "5.6.1" 682 | resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.6.1.tgz#a56cd67f1595b745dc3dde0ccf2b5de53a41a6d0" 683 | integrity sha512-qtl/2W+dwmUa5Z3JqwsbV3JEBZZHNARe5K/A2ePcNAuhJYnEKIgGOT/O9ouPwBijSqVoQnmQMzi5D48LFNOY2A== 684 | dependencies: 685 | "@ethersproject/abi" "5.6.0" 686 | "@ethersproject/abstract-provider" "5.6.0" 687 | "@ethersproject/abstract-signer" "5.6.0" 688 | "@ethersproject/address" "5.6.0" 689 | "@ethersproject/base64" "5.6.0" 690 | "@ethersproject/basex" "5.6.0" 691 | "@ethersproject/bignumber" "5.6.0" 692 | "@ethersproject/bytes" "5.6.0" 693 | "@ethersproject/constants" "5.6.0" 694 | "@ethersproject/contracts" "5.6.0" 695 | "@ethersproject/hash" "5.6.0" 696 | "@ethersproject/hdnode" "5.6.0" 697 | "@ethersproject/json-wallets" "5.6.0" 698 | "@ethersproject/keccak256" "5.6.0" 699 | "@ethersproject/logger" "5.6.0" 700 | "@ethersproject/networks" "5.6.0" 701 | "@ethersproject/pbkdf2" "5.6.0" 702 | "@ethersproject/properties" "5.6.0" 703 | "@ethersproject/providers" "5.6.1" 704 | "@ethersproject/random" "5.6.0" 705 | "@ethersproject/rlp" "5.6.0" 706 | "@ethersproject/sha2" "5.6.0" 707 | "@ethersproject/signing-key" "5.6.0" 708 | "@ethersproject/solidity" "5.6.0" 709 | "@ethersproject/strings" "5.6.0" 710 | "@ethersproject/transactions" "5.6.0" 711 | "@ethersproject/units" "5.6.0" 712 | "@ethersproject/wallet" "5.6.0" 713 | "@ethersproject/web" "5.6.0" 714 | "@ethersproject/wordlists" "5.6.0" 715 | 716 | fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: 717 | version "3.1.3" 718 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" 719 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 720 | 721 | fast-json-stable-stringify@^2.0.0: 722 | version "2.1.0" 723 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" 724 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 725 | 726 | fast-levenshtein@^2.0.6: 727 | version "2.0.6" 728 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 729 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= 730 | 731 | file-entry-cache@^6.0.1: 732 | version "6.0.1" 733 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" 734 | integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== 735 | dependencies: 736 | flat-cache "^3.0.4" 737 | 738 | flat-cache@^3.0.4: 739 | version "3.0.4" 740 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" 741 | integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== 742 | dependencies: 743 | flatted "^3.1.0" 744 | rimraf "^3.0.2" 745 | 746 | flatted@^3.1.0: 747 | version "3.2.5" 748 | resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3" 749 | integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg== 750 | 751 | fs.realpath@^1.0.0: 752 | version "1.0.0" 753 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 754 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 755 | 756 | functional-red-black-tree@^1.0.1: 757 | version "1.0.1" 758 | resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" 759 | integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= 760 | 761 | glob-parent@^6.0.1: 762 | version "6.0.2" 763 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" 764 | integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== 765 | dependencies: 766 | is-glob "^4.0.3" 767 | 768 | glob@^7.1.3: 769 | version "7.2.0" 770 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" 771 | integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== 772 | dependencies: 773 | fs.realpath "^1.0.0" 774 | inflight "^1.0.4" 775 | inherits "2" 776 | minimatch "^3.0.4" 777 | once "^1.3.0" 778 | path-is-absolute "^1.0.0" 779 | 780 | globals@^13.6.0, globals@^13.9.0: 781 | version "13.13.0" 782 | resolved "https://registry.yarnpkg.com/globals/-/globals-13.13.0.tgz#ac32261060d8070e2719dd6998406e27d2b5727b" 783 | integrity sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A== 784 | dependencies: 785 | type-fest "^0.20.2" 786 | 787 | has-flag@^4.0.0: 788 | version "4.0.0" 789 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 790 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 791 | 792 | hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: 793 | version "1.1.7" 794 | resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" 795 | integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== 796 | dependencies: 797 | inherits "^2.0.3" 798 | minimalistic-assert "^1.0.1" 799 | 800 | hmac-drbg@^1.0.1: 801 | version "1.0.1" 802 | resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" 803 | integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= 804 | dependencies: 805 | hash.js "^1.0.3" 806 | minimalistic-assert "^1.0.0" 807 | minimalistic-crypto-utils "^1.0.1" 808 | 809 | ieee754@^1.2.1: 810 | version "1.2.1" 811 | resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" 812 | integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== 813 | 814 | ignore@^5.2.0: 815 | version "5.2.0" 816 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" 817 | integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== 818 | 819 | import-fresh@^3.0.0, import-fresh@^3.2.1: 820 | version "3.3.0" 821 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" 822 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== 823 | dependencies: 824 | parent-module "^1.0.0" 825 | resolve-from "^4.0.0" 826 | 827 | imurmurhash@^0.1.4: 828 | version "0.1.4" 829 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 830 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 831 | 832 | inflight@^1.0.4: 833 | version "1.0.6" 834 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 835 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 836 | dependencies: 837 | once "^1.3.0" 838 | wrappy "1" 839 | 840 | inherits@2, inherits@^2.0.3, inherits@^2.0.4: 841 | version "2.0.4" 842 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 843 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 844 | 845 | is-extglob@^2.1.1: 846 | version "2.1.1" 847 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 848 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 849 | 850 | is-glob@^4.0.0, is-glob@^4.0.3: 851 | version "4.0.3" 852 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" 853 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== 854 | dependencies: 855 | is-extglob "^2.1.1" 856 | 857 | is-interactive@^2.0.0: 858 | version "2.0.0" 859 | resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-2.0.0.tgz#40c57614593826da1100ade6059778d597f16e90" 860 | integrity sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ== 861 | 862 | is-unicode-supported@^1.1.0: 863 | version "1.1.0" 864 | resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-1.1.0.tgz#9127b71f9fa82f52ca5c20e982e7bec0ee31ee1e" 865 | integrity sha512-lDcxivp8TJpLG75/DpatAqNzOpDPSpED8XNtrpBHTdQ2InQ1PbW78jhwSxyxhhu+xbVSast2X38bwj8atwoUQA== 866 | 867 | isexe@^2.0.0: 868 | version "2.0.0" 869 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 870 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 871 | 872 | js-sha3@0.8.0: 873 | version "0.8.0" 874 | resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" 875 | integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== 876 | 877 | js-yaml@^4.1.0: 878 | version "4.1.0" 879 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" 880 | integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== 881 | dependencies: 882 | argparse "^2.0.1" 883 | 884 | json-schema-traverse@^0.4.1: 885 | version "0.4.1" 886 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 887 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 888 | 889 | json-stable-stringify-without-jsonify@^1.0.1: 890 | version "1.0.1" 891 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" 892 | integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= 893 | 894 | levn@^0.4.1: 895 | version "0.4.1" 896 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" 897 | integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== 898 | dependencies: 899 | prelude-ls "^1.2.1" 900 | type-check "~0.4.0" 901 | 902 | lodash.merge@^4.6.2: 903 | version "4.6.2" 904 | resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" 905 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== 906 | 907 | log-symbols@^5.1.0: 908 | version "5.1.0" 909 | resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-5.1.0.tgz#a20e3b9a5f53fac6aeb8e2bb22c07cf2c8f16d93" 910 | integrity sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA== 911 | dependencies: 912 | chalk "^5.0.0" 913 | is-unicode-supported "^1.1.0" 914 | 915 | mimic-fn@^2.1.0: 916 | version "2.1.0" 917 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" 918 | integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== 919 | 920 | minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: 921 | version "1.0.1" 922 | resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" 923 | integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== 924 | 925 | minimalistic-crypto-utils@^1.0.1: 926 | version "1.0.1" 927 | resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" 928 | integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= 929 | 930 | minimatch@^3.0.4: 931 | version "3.1.2" 932 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" 933 | integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== 934 | dependencies: 935 | brace-expansion "^1.1.7" 936 | 937 | ms@2.1.2: 938 | version "2.1.2" 939 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 940 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 941 | 942 | natural-compare@^1.4.0: 943 | version "1.4.0" 944 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 945 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= 946 | 947 | once@^1.3.0: 948 | version "1.4.0" 949 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 950 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 951 | dependencies: 952 | wrappy "1" 953 | 954 | onetime@^5.1.0: 955 | version "5.1.2" 956 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" 957 | integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== 958 | dependencies: 959 | mimic-fn "^2.1.0" 960 | 961 | optionator@^0.9.1: 962 | version "0.9.1" 963 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" 964 | integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== 965 | dependencies: 966 | deep-is "^0.1.3" 967 | fast-levenshtein "^2.0.6" 968 | levn "^0.4.1" 969 | prelude-ls "^1.2.1" 970 | type-check "^0.4.0" 971 | word-wrap "^1.2.3" 972 | 973 | ora@^6.1.0: 974 | version "6.1.0" 975 | resolved "https://registry.yarnpkg.com/ora/-/ora-6.1.0.tgz#86aa07058c4e9fb91444412d103b0d7e01aca973" 976 | integrity sha512-CxEP6845hLK+NHFWZ+LplGO4zfw4QSfxTlqMfvlJ988GoiUeZDMzCvqsZkFHv69sPICmJH1MDxZoQFOKXerAVw== 977 | dependencies: 978 | bl "^5.0.0" 979 | chalk "^5.0.0" 980 | cli-cursor "^4.0.0" 981 | cli-spinners "^2.6.1" 982 | is-interactive "^2.0.0" 983 | is-unicode-supported "^1.1.0" 984 | log-symbols "^5.1.0" 985 | strip-ansi "^7.0.1" 986 | wcwidth "^1.0.1" 987 | 988 | parent-module@^1.0.0: 989 | version "1.0.1" 990 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 991 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 992 | dependencies: 993 | callsites "^3.0.0" 994 | 995 | path-is-absolute@^1.0.0: 996 | version "1.0.1" 997 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 998 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 999 | 1000 | path-key@^3.1.0: 1001 | version "3.1.1" 1002 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" 1003 | integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== 1004 | 1005 | prelude-ls@^1.2.1: 1006 | version "1.2.1" 1007 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" 1008 | integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== 1009 | 1010 | punycode@^2.1.0: 1011 | version "2.1.1" 1012 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 1013 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 1014 | 1015 | readable-stream@^3.4.0: 1016 | version "3.6.0" 1017 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" 1018 | integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== 1019 | dependencies: 1020 | inherits "^2.0.3" 1021 | string_decoder "^1.1.1" 1022 | util-deprecate "^1.0.1" 1023 | 1024 | readline@^1.3.0: 1025 | version "1.3.0" 1026 | resolved "https://registry.yarnpkg.com/readline/-/readline-1.3.0.tgz#c580d77ef2cfc8752b132498060dc9793a7ac01c" 1027 | integrity sha1-xYDXfvLPyHUrEySYBg3JeTp6wBw= 1028 | 1029 | regexpp@^3.2.0: 1030 | version "3.2.0" 1031 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" 1032 | integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== 1033 | 1034 | resolve-from@^4.0.0: 1035 | version "4.0.0" 1036 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 1037 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 1038 | 1039 | restore-cursor@^4.0.0: 1040 | version "4.0.0" 1041 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-4.0.0.tgz#519560a4318975096def6e609d44100edaa4ccb9" 1042 | integrity sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg== 1043 | dependencies: 1044 | onetime "^5.1.0" 1045 | signal-exit "^3.0.2" 1046 | 1047 | rimraf@^3.0.2: 1048 | version "3.0.2" 1049 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" 1050 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== 1051 | dependencies: 1052 | glob "^7.1.3" 1053 | 1054 | safe-buffer@~5.2.0: 1055 | version "5.2.1" 1056 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 1057 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 1058 | 1059 | scrypt-js@3.0.1: 1060 | version "3.0.1" 1061 | resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" 1062 | integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== 1063 | 1064 | shebang-command@^2.0.0: 1065 | version "2.0.0" 1066 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" 1067 | integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== 1068 | dependencies: 1069 | shebang-regex "^3.0.0" 1070 | 1071 | shebang-regex@^3.0.0: 1072 | version "3.0.0" 1073 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" 1074 | integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== 1075 | 1076 | signal-exit@^3.0.2: 1077 | version "3.0.7" 1078 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" 1079 | integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== 1080 | 1081 | string_decoder@^1.1.1: 1082 | version "1.3.0" 1083 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" 1084 | integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== 1085 | dependencies: 1086 | safe-buffer "~5.2.0" 1087 | 1088 | strip-ansi@^6.0.1: 1089 | version "6.0.1" 1090 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" 1091 | integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== 1092 | dependencies: 1093 | ansi-regex "^5.0.1" 1094 | 1095 | strip-ansi@^7.0.1: 1096 | version "7.0.1" 1097 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" 1098 | integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== 1099 | dependencies: 1100 | ansi-regex "^6.0.1" 1101 | 1102 | strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: 1103 | version "3.1.1" 1104 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" 1105 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== 1106 | 1107 | supports-color@^7.1.0: 1108 | version "7.2.0" 1109 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" 1110 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 1111 | dependencies: 1112 | has-flag "^4.0.0" 1113 | 1114 | text-table@^0.2.0: 1115 | version "0.2.0" 1116 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 1117 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= 1118 | 1119 | type-check@^0.4.0, type-check@~0.4.0: 1120 | version "0.4.0" 1121 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" 1122 | integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== 1123 | dependencies: 1124 | prelude-ls "^1.2.1" 1125 | 1126 | type-fest@^0.20.2: 1127 | version "0.20.2" 1128 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" 1129 | integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== 1130 | 1131 | uri-js@^4.2.2: 1132 | version "4.4.1" 1133 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" 1134 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== 1135 | dependencies: 1136 | punycode "^2.1.0" 1137 | 1138 | util-deprecate@^1.0.1: 1139 | version "1.0.2" 1140 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 1141 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 1142 | 1143 | v8-compile-cache@^2.0.3: 1144 | version "2.3.0" 1145 | resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" 1146 | integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== 1147 | 1148 | wcwidth@^1.0.1: 1149 | version "1.0.1" 1150 | resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" 1151 | integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= 1152 | dependencies: 1153 | defaults "^1.0.3" 1154 | 1155 | which@^2.0.1: 1156 | version "2.0.2" 1157 | resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" 1158 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== 1159 | dependencies: 1160 | isexe "^2.0.0" 1161 | 1162 | word-wrap@^1.2.3: 1163 | version "1.2.3" 1164 | resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" 1165 | integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== 1166 | 1167 | wrappy@1: 1168 | version "1.0.2" 1169 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 1170 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 1171 | 1172 | ws@7.4.6: 1173 | version "7.4.6" 1174 | resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" 1175 | integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== 1176 | --------------------------------------------------------------------------------