osiris account 3b8579d978 💾
2023-03-15 11:04:34 -07:00

29 lines
781 B
JavaScript

// function to set USDC balance of ethereum mainnet forks by @janbro
const { ethers } = require("hardhat");
async function setUSDCBalance(account, balance) {
const balances_index = 9;
const USDC_ADDRESS = "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"; // ETH mainnet USDC address
// modify usdc's storage to give rich account large amount of tokens
const index = ethers.utils.solidityKeccak256(
["uint256", "uint256"],
[account, balances_index] // key, slot
);
await await ethers.provider.send(
"hardhat_setStorageAt",
[
USDC_ADDRESS,
index,
ethers.utils.hexlify(ethers.utils.zeroPad(balance.toHexString(), 32)).toString()
]
);
}
module.exports = {
setUSDCBalance,
};