Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 16856073 | 791 days ago | IN | 0.00069 ETH | 0.00062441 |
Loading...
Loading
Contract Name:
Hyperbitcoinization
Compiler Version
v0.8.13+commit.abaa5c0e
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: AGPL-3.0-or-later pragma solidity ^0.8.13; /// ============ Imports ============ import {IERC20} from "./interfaces/IERC20.sol"; // ERC20 minified interface import {AggregatorV3Interface} from "chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol"; // Chainlink pricefeed /// @title Hyperbitcoinization /// @author Anish Agnihotri /// @notice Simple 1M USDC vs 1 wBTC 90-day bet cleared by Chainlink contract Hyperbitcoinization { /// ============ Structs ============ /// @notice Individual bet struct Bet { /// @notice Has bet already been settled bool settled; /// @notice Has partyUSDC sent funds bool USDCSent; /// @notice Has partyWBTC sent funds bool WBTCSent; /// @notice Party providing USDC address partyUSDC; /// @notice Party providing wBTC address partyWBTC; /// @notice Bet starting timestamp uint256 startTimestamp; } /// ============ Constants ============ /// @notice 90 days uint256 public constant BET_DURATION = 90 days; /// @notice USDC amount uint256 public constant USDC_AMOUNT = 1_000_000e6; /// @notice wBTC amount uint256 public constant WBTC_AMOUNT = 1e8; /// @notice winning BTC/USD price uint256 public constant WINNING_BTC_PRICE = 1_000_000; /// ============ Immutable storage ============ /// @notice USDC token IERC20 public immutable USDC_TOKEN; /// @notice WBTC token IERC20 public immutable WBTC_TOKEN; /// @notice BTC/USD price feed (Chainlink) AggregatorV3Interface public immutable BTCUSD_PRICEFEED; /// ============ Mutable storage ============ /// @notice ID of current bet (next = curr + 1) uint256 public currentBetId = 0; /// @notice Mapping of bet id => bet mapping(uint256 => Bet) public bets; /// ============ Constructor ============ /// @notice Creates a new Hyperbitcoinization contract /// @param _USDC_TOKEN address of USDC token /// @param _WBTC_TOKEN address of WBTC token /// @param _BTCUSD_PRICEFEED address of pricefeed for BTC/USD constructor(address _USDC_TOKEN, address _WBTC_TOKEN, address _BTCUSD_PRICEFEED) { USDC_TOKEN = IERC20(_USDC_TOKEN); WBTC_TOKEN = IERC20(_WBTC_TOKEN); BTCUSD_PRICEFEED = AggregatorV3Interface(_BTCUSD_PRICEFEED); } /// ============ Functions ============ /// @notice Creates a new bet between two parties /// @param partyUSDC providing USDC /// @param partyWBTC providing wBTC function createBet(address partyUSDC, address partyWBTC) external returns (uint256) { currentBetId++; bets[currentBetId] = Bet({ settled: false, USDCSent: false, WBTCSent: false, partyUSDC: partyUSDC, partyWBTC: partyWBTC, startTimestamp: 0 }); return currentBetId; } /// @notice Allows partyUSDC to add USDC to a bet. /// @dev Requires user to approve contract. /// @param betId to add funds to function addUSDC(uint256 betId) external { Bet storage bet = bets[betId]; require(!bet.USDCSent, "USDC already added"); require(msg.sender == bet.partyUSDC, "User not part of bet"); // Transfer USDC USDC_TOKEN.transferFrom(msg.sender, address(this), USDC_AMOUNT); // Toggle USDC sent bet.USDCSent = true; // Start bet if both parties sent if (bet.WBTCSent) bet.startTimestamp = block.timestamp; } /// @notice Allows partyWBTC to add wBTC to a bet. /// @dev Requires user to approve contract. /// @param betId to add funds to function addWBTC(uint256 betId) external { Bet storage bet = bets[betId]; require(!bet.WBTCSent, "wBTC already added"); require(msg.sender == bet.partyWBTC, "User not part of bet"); // Transfer WBTC WBTC_TOKEN.transferFrom(msg.sender, address(this), WBTC_AMOUNT); // Toggle wBTC sent bet.WBTCSent = true; // Start bet if both parties sent if (bet.USDCSent) bet.startTimestamp = block.timestamp; } /// @notice Collect BTC/USD price from Chainlink function getBTCPrice() public view returns (uint256) { // Collect BTC price (, int256 price,,,) = BTCUSD_PRICEFEED.latestRoundData(); return uint256(price) / 10 ** BTCUSD_PRICEFEED.decimals(); } /// @notice Allows anyone to settle an existing bet /// @param betId to settle function settleBet(uint256 betId) external { Bet storage bet = bets[betId]; require(!bet.settled, "Bet already settled"); require(block.timestamp >= bet.startTimestamp + BET_DURATION, "Bet still pending"); // Mark bet settled bet.settled = true; // Check for winner address winner = getBTCPrice() > WINNING_BTC_PRICE ? bet.partyUSDC : bet.partyWBTC; // Send funds to winner USDC_TOKEN.transfer(winner, USDC_AMOUNT); WBTC_TOKEN.transfer(winner, WBTC_AMOUNT); } /// @notice Allows any bet party to withdraw funds while bet is pending /// @param betId to withdraw function withdrawStale(uint256 betId) external { Bet storage bet = bets[betId]; require(bet.startTimestamp == 0, "Bet already started"); require(msg.sender == bet.partyUSDC || msg.sender == bet.partyWBTC, "Not bet participant"); // If USDC received, return USDC if (bet.USDCSent) { bet.USDCSent = false; USDC_TOKEN.transfer(bet.partyUSDC, USDC_AMOUNT); } // If wBTC received, return wBTC if (bet.WBTCSent) { bet.WBTCSent = false; WBTC_TOKEN.transfer(bet.partyWBTC, WBTC_AMOUNT); } } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; interface AggregatorV3Interface { function decimals() external view returns (uint8); function description() external view returns (string memory); function version() external view returns (uint256); function getRoundData(uint80 _roundId) external view returns ( uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound ); function latestRoundData() external view returns ( uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound ); }
// SPDX-License-Identifier: AGPL-3.0-only pragma solidity ^0.8.0; interface IERC20 { function approve(address, uint256) external returns (bool); function balanceOf(address) external view returns (uint256); function transfer(address, uint256) external returns (bool); function transferFrom(address, address, uint256) external returns (bool); }
{ "remappings": [ "chainlink/=lib/chainlink/", "ds-test/=lib/forge-std/lib/ds-test/src/", "forge-std/=lib/forge-std/src/" ], "optimizer": { "enabled": true, "runs": 200 }, "metadata": { "bytecodeHash": "ipfs" }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "london", "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_USDC_TOKEN","type":"address"},{"internalType":"address","name":"_WBTC_TOKEN","type":"address"},{"internalType":"address","name":"_BTCUSD_PRICEFEED","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BET_DURATION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"BTCUSD_PRICEFEED","outputs":[{"internalType":"contract AggregatorV3Interface","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"USDC_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"USDC_TOKEN","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WBTC_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WBTC_TOKEN","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WINNING_BTC_PRICE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"betId","type":"uint256"}],"name":"addUSDC","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"betId","type":"uint256"}],"name":"addWBTC","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"bets","outputs":[{"internalType":"bool","name":"settled","type":"bool"},{"internalType":"bool","name":"USDCSent","type":"bool"},{"internalType":"bool","name":"WBTCSent","type":"bool"},{"internalType":"address","name":"partyUSDC","type":"address"},{"internalType":"address","name":"partyWBTC","type":"address"},{"internalType":"uint256","name":"startTimestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"partyUSDC","type":"address"},{"internalType":"address","name":"partyWBTC","type":"address"}],"name":"createBet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"currentBetId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBTCPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"betId","type":"uint256"}],"name":"settleBet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"betId","type":"uint256"}],"name":"withdrawStale","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60e06040526000805534801561001457600080fd5b50604051610ff8380380610ff88339810160408190526100339161006c565b6001600160a01b0392831660805290821660a0521660c0526100af565b80516001600160a01b038116811461006757600080fd5b919050565b60008060006060848603121561008157600080fd5b61008a84610050565b925061009860208501610050565b91506100a660408501610050565b90509250925092565b60805160a05160c051610ee26101166000396000818161027801528181610b0f0152610b970152600081816101da0152818161048e015281816106c60152610a6d0152600081816102b1015281816103f50152818161060f01526108fe0152610ee26000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80635b4a9b5111610097578063d11d4b6511610066578063d11d4b6514610273578063dd22db801461029a578063e53d4c2d146102a2578063fa569274146102ac57600080fd5b80635b4a9b51146102315780635d9ec2c71461023a578063ac4073b21461024d578063b6146cac1461026057600080fd5b80632485dacf116100d35780632485dacf146101ca5780632ed41384146101d557806337caeb93146102145780634776aa651461021e57600080fd5b80631153ad74146100fa57806316fd381a1461011957806322af00fa1461012e575b600080fd5b61010664e8d4a5100081565b6040519081526020015b60405180910390f35b61012c610127366004610c32565b6102d3565b005b61018a61013c366004610c32565b600160208190526000918252604090912080549181015460029091015460ff8084169361010081048216936201000082049092169263010000009091046001600160a01b0390811692169086565b6040805196151587529415156020870152921515938501939093526001600160a01b039081166060850152909116608083015260a082015260c001610110565b6101066305f5e10081565b6101fc7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610110565b610106620f424081565b61012c61022c366004610c32565b610501565b61010660005481565b610106610248366004610c67565b61073b565b61012c61025b366004610c32565b610827565b61012c61026e366004610c32565b61099a565b6101fc7f000000000000000000000000000000000000000000000000000000000000000081565b610106610b0a565b6101066276a70081565b6101fc7f000000000000000000000000000000000000000000000000000000000000000081565b6000818152600160205260409020805460ff161561032e5760405162461bcd60e51b815260206004820152601360248201527210995d08185b1c9958591e481cd95d1d1b1959606a1b60448201526064015b60405180910390fd5b6276a70081600201546103419190610cb0565b4210156103845760405162461bcd60e51b8152602060048201526011602482015270426574207374696c6c2070656e64696e6760781b6044820152606401610325565b805460ff191660011781556000620f424061039d610b0a565b116103b55760018201546001600160a01b03166103c8565b8154630100000090046001600160a01b03165b60405163a9059cbb60e01b81526001600160a01b03808316600483015264e8d4a5100060248301529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303816000875af1158015610440573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104649190610cc8565b5060405163a9059cbb60e01b81526001600160a01b0382811660048301526305f5e10060248301527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156104d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104fb9190610cc8565b50505050565b60008181526001602052604090206002810154156105575760405162461bcd60e51b815260206004820152601360248201527210995d08185b1c9958591e481cdd185c9d1959606a1b6044820152606401610325565b8054630100000090046001600160a01b0316331480610582575060018101546001600160a01b031633145b6105c45760405162461bcd60e51b8152602060048201526013602482015272139bdd0818995d081c185c9d1a58da5c185b9d606a1b6044820152606401610325565b8054610100900460ff161561067e57805461ff00191680825560405163a9059cbb60e01b815263010000009091046001600160a01b03908116600483015264e8d4a5100060248301527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015610658573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067c9190610cc8565b505b805462010000900460ff161561073757805462ff000019168155600181015460405163a9059cbb60e01b81526001600160a01b0391821660048201526305f5e10060248201527f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303816000875af1158015610711573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107359190610cc8565b505b5050565b60008054818061074a83610cf1565b90915550506040805160c081018252600080825260208083018281528385018381526001600160a01b03898116606087019081528982166080880190815260a08801878152875488526001968790529887209751885495519451925161ffff1990961690151561ff00191617610100941515949094029390931762010000600160b81b03191662010000911515919091026301000000600160b81b031916176301000000938216939093029290921785555191840180546001600160a01b0319169290911691909117905591516002909101555490505b92915050565b60008181526001602052604090208054610100900460ff16156108815760405162461bcd60e51b81526020600482015260126024820152711554d110c8185b1c9958591e48185919195960721b6044820152606401610325565b8054630100000090046001600160a01b031633146108d85760405162461bcd60e51b8152602060048201526014602482015273155cd95c881b9bdd081c185c9d081bd98818995d60621b6044820152606401610325565b6040516323b872dd60e01b815233600482015230602482015264e8d4a5100060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303816000875af115801561094f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109739190610cc8565b50805461ff0019166101001780825562010000900460ff1615610737574260028201555050565b6000818152600160205260409020805462010000900460ff16156109f55760405162461bcd60e51b81526020600482015260126024820152711dd09510c8185b1c9958591e48185919195960721b6044820152606401610325565b60018101546001600160a01b03163314610a485760405162461bcd60e51b8152602060048201526014602482015273155cd95c881b9bdd081c185c9d081bd98818995d60621b6044820152606401610325565b6040516323b872dd60e01b81523360048201523060248201526305f5e10060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303816000875af1158015610abe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae29190610cc8565b50805462ff000019166201000017808255610100900460ff1615610737574260028201555050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015610b6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b8f9190610d24565b5050509150507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c179190610d74565b610c2290600a610e7b565b610c2c9082610e8a565b91505090565b600060208284031215610c4457600080fd5b5035919050565b80356001600160a01b0381168114610c6257600080fd5b919050565b60008060408385031215610c7a57600080fd5b610c8383610c4b565b9150610c9160208401610c4b565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610cc357610cc3610c9a565b500190565b600060208284031215610cda57600080fd5b81518015158114610cea57600080fd5b9392505050565b600060018201610d0357610d03610c9a565b5060010190565b805169ffffffffffffffffffff81168114610c6257600080fd5b600080600080600060a08688031215610d3c57600080fd5b610d4586610d0a565b9450602086015193506040860151925060608601519150610d6860808701610d0a565b90509295509295909350565b600060208284031215610d8657600080fd5b815160ff81168114610cea57600080fd5b600181815b80851115610dd2578160001904821115610db857610db8610c9a565b80851615610dc557918102915b93841c9390800290610d9c565b509250929050565b600082610de957506001610821565b81610df657506000610821565b8160018114610e0c5760028114610e1657610e32565b6001915050610821565b60ff841115610e2757610e27610c9a565b50506001821b610821565b5060208310610133831016604e8410600b8410161715610e55575081810a610821565b610e5f8383610d97565b8060001904821115610e7357610e73610c9a565b029392505050565b6000610cea60ff841683610dda565b600082610ea757634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212207196992c52778ecc20b457f9c983138810fbcdf9622a0356a0c3c9705dd8e7b964736f6c634300080d0033000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000f4030086522a5beea4988f8ca5b36dbc97bee88c
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80635b4a9b5111610097578063d11d4b6511610066578063d11d4b6514610273578063dd22db801461029a578063e53d4c2d146102a2578063fa569274146102ac57600080fd5b80635b4a9b51146102315780635d9ec2c71461023a578063ac4073b21461024d578063b6146cac1461026057600080fd5b80632485dacf116100d35780632485dacf146101ca5780632ed41384146101d557806337caeb93146102145780634776aa651461021e57600080fd5b80631153ad74146100fa57806316fd381a1461011957806322af00fa1461012e575b600080fd5b61010664e8d4a5100081565b6040519081526020015b60405180910390f35b61012c610127366004610c32565b6102d3565b005b61018a61013c366004610c32565b600160208190526000918252604090912080549181015460029091015460ff8084169361010081048216936201000082049092169263010000009091046001600160a01b0390811692169086565b6040805196151587529415156020870152921515938501939093526001600160a01b039081166060850152909116608083015260a082015260c001610110565b6101066305f5e10081565b6101fc7f0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c59981565b6040516001600160a01b039091168152602001610110565b610106620f424081565b61012c61022c366004610c32565b610501565b61010660005481565b610106610248366004610c67565b61073b565b61012c61025b366004610c32565b610827565b61012c61026e366004610c32565b61099a565b6101fc7f000000000000000000000000f4030086522a5beea4988f8ca5b36dbc97bee88c81565b610106610b0a565b6101066276a70081565b6101fc7f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4881565b6000818152600160205260409020805460ff161561032e5760405162461bcd60e51b815260206004820152601360248201527210995d08185b1c9958591e481cd95d1d1b1959606a1b60448201526064015b60405180910390fd5b6276a70081600201546103419190610cb0565b4210156103845760405162461bcd60e51b8152602060048201526011602482015270426574207374696c6c2070656e64696e6760781b6044820152606401610325565b805460ff191660011781556000620f424061039d610b0a565b116103b55760018201546001600160a01b03166103c8565b8154630100000090046001600160a01b03165b60405163a9059cbb60e01b81526001600160a01b03808316600483015264e8d4a5100060248301529192507f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb489091169063a9059cbb906044016020604051808303816000875af1158015610440573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104649190610cc8565b5060405163a9059cbb60e01b81526001600160a01b0382811660048301526305f5e10060248301527f0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599169063a9059cbb906044016020604051808303816000875af11580156104d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104fb9190610cc8565b50505050565b60008181526001602052604090206002810154156105575760405162461bcd60e51b815260206004820152601360248201527210995d08185b1c9958591e481cdd185c9d1959606a1b6044820152606401610325565b8054630100000090046001600160a01b0316331480610582575060018101546001600160a01b031633145b6105c45760405162461bcd60e51b8152602060048201526013602482015272139bdd0818995d081c185c9d1a58da5c185b9d606a1b6044820152606401610325565b8054610100900460ff161561067e57805461ff00191680825560405163a9059cbb60e01b815263010000009091046001600160a01b03908116600483015264e8d4a5100060248301527f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48169063a9059cbb906044016020604051808303816000875af1158015610658573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067c9190610cc8565b505b805462010000900460ff161561073757805462ff000019168155600181015460405163a9059cbb60e01b81526001600160a01b0391821660048201526305f5e10060248201527f0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c5999091169063a9059cbb906044016020604051808303816000875af1158015610711573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107359190610cc8565b505b5050565b60008054818061074a83610cf1565b90915550506040805160c081018252600080825260208083018281528385018381526001600160a01b03898116606087019081528982166080880190815260a08801878152875488526001968790529887209751885495519451925161ffff1990961690151561ff00191617610100941515949094029390931762010000600160b81b03191662010000911515919091026301000000600160b81b031916176301000000938216939093029290921785555191840180546001600160a01b0319169290911691909117905591516002909101555490505b92915050565b60008181526001602052604090208054610100900460ff16156108815760405162461bcd60e51b81526020600482015260126024820152711554d110c8185b1c9958591e48185919195960721b6044820152606401610325565b8054630100000090046001600160a01b031633146108d85760405162461bcd60e51b8152602060048201526014602482015273155cd95c881b9bdd081c185c9d081bd98818995d60621b6044820152606401610325565b6040516323b872dd60e01b815233600482015230602482015264e8d4a5100060448201527f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb486001600160a01b0316906323b872dd906064016020604051808303816000875af115801561094f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109739190610cc8565b50805461ff0019166101001780825562010000900460ff1615610737574260028201555050565b6000818152600160205260409020805462010000900460ff16156109f55760405162461bcd60e51b81526020600482015260126024820152711dd09510c8185b1c9958591e48185919195960721b6044820152606401610325565b60018101546001600160a01b03163314610a485760405162461bcd60e51b8152602060048201526014602482015273155cd95c881b9bdd081c185c9d081bd98818995d60621b6044820152606401610325565b6040516323b872dd60e01b81523360048201523060248201526305f5e10060448201527f0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c5996001600160a01b0316906323b872dd906064016020604051808303816000875af1158015610abe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae29190610cc8565b50805462ff000019166201000017808255610100900460ff1615610737574260028201555050565b6000807f000000000000000000000000f4030086522a5beea4988f8ca5b36dbc97bee88c6001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015610b6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b8f9190610d24565b5050509150507f000000000000000000000000f4030086522a5beea4988f8ca5b36dbc97bee88c6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c179190610d74565b610c2290600a610e7b565b610c2c9082610e8a565b91505090565b600060208284031215610c4457600080fd5b5035919050565b80356001600160a01b0381168114610c6257600080fd5b919050565b60008060408385031215610c7a57600080fd5b610c8383610c4b565b9150610c9160208401610c4b565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610cc357610cc3610c9a565b500190565b600060208284031215610cda57600080fd5b81518015158114610cea57600080fd5b9392505050565b600060018201610d0357610d03610c9a565b5060010190565b805169ffffffffffffffffffff81168114610c6257600080fd5b600080600080600060a08688031215610d3c57600080fd5b610d4586610d0a565b9450602086015193506040860151925060608601519150610d6860808701610d0a565b90509295509295909350565b600060208284031215610d8657600080fd5b815160ff81168114610cea57600080fd5b600181815b80851115610dd2578160001904821115610db857610db8610c9a565b80851615610dc557918102915b93841c9390800290610d9c565b509250929050565b600082610de957506001610821565b81610df657506000610821565b8160018114610e0c5760028114610e1657610e32565b6001915050610821565b60ff841115610e2757610e27610c9a565b50506001821b610821565b5060208310610133831016604e8410600b8410161715610e55575081810a610821565b610e5f8383610d97565b8060001904821115610e7357610e73610c9a565b029392505050565b6000610cea60ff841683610dda565b600082610ea757634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212207196992c52778ecc20b457f9c983138810fbcdf9622a0356a0c3c9705dd8e7b964736f6c634300080d0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000f4030086522a5beea4988f8ca5b36dbc97bee88c
-----Decoded View---------------
Arg [0] : _USDC_TOKEN (address): 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
Arg [1] : _WBTC_TOKEN (address): 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599
Arg [2] : _BTCUSD_PRICEFEED (address): 0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
Arg [1] : 0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599
Arg [2] : 000000000000000000000000f4030086522a5beea4988f8ca5b36dbc97bee88c
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.