Source Code
Latest 25 from a total of 523 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Deposit | 24501615 | 13 days ago | IN | 0.00001973 ETH | 0.00026299 | ||||
| Deposit | 24327812 | 38 days ago | IN | 0.00002261 ETH | 0.00002435 | ||||
| Deposit | 24255820 | 48 days ago | IN | 0.00002034 ETH | 0.00021745 | ||||
| Deposit | 24100004 | 69 days ago | IN | 0.00001937 ETH | 0.00021573 | ||||
| Deposit | 24099749 | 69 days ago | IN | 0.00001937 ETH | 0.00021465 | ||||
| Deposit | 24017343 | 81 days ago | IN | 0.00002196 ETH | 0.00000509 | ||||
| Deposit | 23919474 | 95 days ago | IN | 0.00003811 ETH | 0.00028854 | ||||
| Deposit | 23861882 | 103 days ago | IN | 0.00002047 ETH | 0.00000863 | ||||
| Deposit | 23799872 | 111 days ago | IN | 0.00002264 ETH | 0.00023294 | ||||
| Deposit | 23774922 | 115 days ago | IN | 0.00002174 ETH | 0.00001103 | ||||
| Deposit | 23535963 | 148 days ago | IN | 0.00002305 ETH | 0.00002041 | ||||
| Deposit | 23524668 | 150 days ago | IN | 0.00002131 ETH | 0.00012755 | ||||
| Deposit | 23516136 | 151 days ago | IN | 0.00002104 ETH | 0.00001198 | ||||
| Deposit | 23505425 | 153 days ago | IN | 0.00002444 ETH | 0.00014045 | ||||
| Deposit | 23471870 | 157 days ago | IN | 0.00002447 ETH | 0.00003026 | ||||
| Deposit | 23448438 | 161 days ago | IN | 0.00004233 ETH | 0.00019522 | ||||
| Deposit | 23447184 | 161 days ago | IN | 0.00002729 ETH | 0.00016954 | ||||
| Deposit | 23442531 | 161 days ago | IN | 0.00003664 ETH | 0.00010257 | ||||
| Deposit | 23415702 | 165 days ago | IN | 0.00002121 ETH | 0.00002566 | ||||
| Deposit | 23403922 | 167 days ago | IN | 0.00002247 ETH | 0.00001812 | ||||
| Deposit | 23374778 | 171 days ago | IN | 0.00003282 ETH | 0.00007825 | ||||
| Deposit | 23359766 | 173 days ago | IN | 0.00002136 ETH | 0.00011946 | ||||
| Deposit | 23337780 | 176 days ago | IN | 0.00002142 ETH | 0.00001541 | ||||
| Deposit | 23329885 | 177 days ago | IN | 0.00002164 ETH | 0.00001513 | ||||
| Deposit | 22346887 | 315 days ago | IN | 0.00009117 ETH | 0.00086078 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Send Message To ... | 24501615 | 13 days ago | 0.00001973 ETH | ||||
| Send Message To ... | 24327812 | 38 days ago | 0.00002261 ETH | ||||
| Send Message To ... | 24255820 | 48 days ago | 0.00002034 ETH | ||||
| Send Message To ... | 24100004 | 69 days ago | 0.00001937 ETH | ||||
| Send Message To ... | 24099749 | 69 days ago | 0.00001937 ETH | ||||
| Send Message To ... | 24017343 | 81 days ago | 0.00002196 ETH | ||||
| Send Message To ... | 23919474 | 95 days ago | 0.00003811 ETH | ||||
| Send Message To ... | 23861882 | 103 days ago | 0.00002047 ETH | ||||
| Send Message To ... | 23799872 | 111 days ago | 0.00002264 ETH | ||||
| Send Message To ... | 23774922 | 115 days ago | 0.00002174 ETH | ||||
| Send Message To ... | 23535963 | 148 days ago | 0.00002305 ETH | ||||
| Send Message To ... | 23524668 | 150 days ago | 0.00002131 ETH | ||||
| Send Message To ... | 23516136 | 151 days ago | 0.00002104 ETH | ||||
| Send Message To ... | 23505425 | 153 days ago | 0.00002444 ETH | ||||
| Send Message To ... | 23471870 | 157 days ago | 0.00002447 ETH | ||||
| Send Message To ... | 23448438 | 161 days ago | 0.00004233 ETH | ||||
| Send Message To ... | 23447184 | 161 days ago | 0.00002729 ETH | ||||
| Send Message To ... | 23442531 | 161 days ago | 0.00003664 ETH | ||||
| Send Message To ... | 23415702 | 165 days ago | 0.00002121 ETH | ||||
| Send Message To ... | 23403922 | 167 days ago | 0.00002247 ETH | ||||
| Send Message To ... | 23374778 | 171 days ago | 0.00003282 ETH | ||||
| Send Message To ... | 23359766 | 173 days ago | 0.00002136 ETH | ||||
| Send Message To ... | 23337780 | 176 days ago | 0.00002142 ETH | ||||
| Send Message To ... | 23329885 | 177 days ago | 0.00002164 ETH | ||||
| Send Message To ... | 22346887 | 315 days ago | 0.00009117 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
SwayBridge
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
No with 200 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/utils/Context.sol";
import "../interfaces/IStarknetCore.sol";
import "../interfaces/ISwayToken.sol";
contract SwayBridge is Context {
ISwayToken public l1TokenContract;
IStarknetCore public starknetCore;
uint256 public l2BridgeContract;
uint256 constant DEPOSIT_SELECTOR =
1285101517810983806491589552491143496277809242732141897358598292095611420389; // handle_deposit
uint256 constant CAIRO_PRIME =
3618502788666131213697322783095070105623107215331596699973092056135872020481;
uint256 constant BRIDGE_MODE_WITHDRAW = 1; // operation ID sent in the L2 -> L1 message
event LogDeposit(address indexed l1Sender, uint256 amount, uint256 l2Recipient);
event LogWithdrawal(address indexed l1Recipient, uint256 amount);
function splitUint256(uint256 value) internal pure returns (uint256, uint256) {
uint256 low = value & ((1 << 128) - 1);
uint256 high = value >> 128;
return (low, high);
}
constructor(address _starknetCore, address _l1TokenContract, uint256 _l2BridgeContract) {
require(_l2BridgeContract < CAIRO_PRIME, "Bridge/invalid-dest-bridge");
starknetCore = IStarknetCore(_starknetCore);
l1TokenContract = ISwayToken(_l1TokenContract);
l2BridgeContract = _l2BridgeContract;
}
/**
Function used to bridge SWAY from L1 to L2
@param amount How many SWAY to send from msg.sender
@param l2Recipient To which L2 address should we deposit the SWAY to
*/
function deposit(uint256 amount, uint256 l2Recipient) external payable {
require(amount > 0, "Bridge/zero-amount");
require(
l2Recipient != 0 && l2Recipient != l2BridgeContract && l2Recipient < CAIRO_PRIME,
"Bridge/invalid-recipient"
);
uint256[] memory payload = new uint256[](4);
payload[0] = l2Recipient;
(payload[1], payload[2]) = splitUint256(amount);
payload[3] = uint256(uint160(_msgSender()));
// Store the sender with the nonce in case we need to cancel
l1TokenContract.transferFrom(msg.sender, address(this), amount);
starknetCore.sendMessageToL2{value: msg.value}(l2BridgeContract, DEPOSIT_SELECTOR, payload);
emit LogDeposit(msg.sender, amount, l2Recipient);
}
/**
Function to process the L2 withdrawal
@param amount How many SWAY were sent from L2
@param l1Recipient Recipient of the bridged SWAY
*/
function withdraw(uint256 amount, address l1Recipient) external {
uint256[] memory payload = new uint256[](4);
payload[0] = BRIDGE_MODE_WITHDRAW;
payload[1] = uint256(uint160(l1Recipient));
(payload[2], payload[3]) = splitUint256(amount);
// The call to consumeMessageFromL2 will succeed only if a
// matching L2->L1 message exists and is ready for consumption.
starknetCore.consumeMessageFromL2(l2BridgeContract, payload);
l1TokenContract.transfer(l1Recipient, amount);
emit LogWithdrawal(l1Recipient, amount);
}
/**
Cancels the bridging request from L1 -> L2
@param amount How many SWAY were sent from L1
@param l2Recipient Recipient of the bridged SWAY
@param nonce Nonce of the L1 -> L2 message
*/
function startDepositCancellation(uint256 amount, uint256 l2Recipient, uint256 nonce) external {
// build payload
uint256[] memory payload = new uint256[](4);
payload[0] = l2Recipient;
(payload[1], payload[2]) = splitUint256(amount);
payload[3] = uint256(uint160(_msgSender())); // ensures only original sender can cancel
// start cancellation process
starknetCore.startL1ToL2MessageCancellation(l2BridgeContract, DEPOSIT_SELECTOR, payload, nonce);
}
/**
Finishes the cancellationbridging request from L1 -> L2
@param amount How many SWAY were sent from L1
@param l2Recipient Recipient of the bridged SWAY
@param nonce Nonce of the L1 -> L2 message
*/
function finishDepositCancellation(uint256 amount, uint256 l2Recipient, uint256 nonce) external {
// build payload
uint256[] memory payload = new uint256[](4);
payload[0] = l2Recipient;
(payload[1], payload[2]) = splitUint256(amount);
payload[3] = uint256(uint160(_msgSender())); // ensures only original sender can cancel
// finish cancellation process
starknetCore.cancelL1ToL2Message(l2BridgeContract, DEPOSIT_SELECTOR, payload, nonce);
// Transfer back the SWAY tokens
l1TokenContract.transfer(_msgSender(), amount);
}
}// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.0;
interface ISwayToken {
function currentPeriod() external view returns (uint256);
function decimals() external returns (uint8);
function mint(address to, uint256 amount) external;
function totalSupply() external returns (uint256);
function transfer(address to, uint256 amount) external returns (bool);
function transferFrom(address from, address to, uint256 value) external returns (bool success);
}// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.0;
interface IStarknetCore {
// This event needs to be compatible with the one defined in Output.sol.
event LogMessageToL1(uint256 indexed fromAddress, address indexed toAddress, uint256[] payload);
// An event that is raised when a message is sent from L1 to L2.
event LogMessageToL2(
address indexed fromAddress,
uint256 indexed toAddress,
uint256 indexed selector,
uint256[] payload,
uint256 nonce
);
// An event that is raised when a message from L2 to L1 is consumed.
event ConsumedMessageToL1(
uint256 indexed fromAddress,
address indexed toAddress,
uint256[] payload
);
// An event that is raised when a message from L1 to L2 is consumed.
event ConsumedMessageToL2(
address indexed fromAddress,
uint256 indexed toAddress,
uint256 indexed selector,
uint256[] payload,
uint256 nonce
);
// An event that is raised when a message from L1 to L2 Cancellation is started.
event MessageToL2CancellationStarted(
address indexed fromAddress,
uint256 indexed toAddress,
uint256 indexed selector,
uint256[] payload,
uint256 nonce
);
// An event that is raised when a message from L1 to L2 is canceled.
event MessageToL2Canceled(
address indexed fromAddress,
uint256 indexed toAddress,
uint256 indexed selector,
uint256[] payload,
uint256 nonce
);
/**
Sends a message to an L2 contract.
Returns the hash of the message.
*/
function sendMessageToL2(
uint256 toAddress,
uint256 selector,
uint256[] calldata payload
) external payable returns (bytes32, uint256);
/**
Consumes a message that was sent from an L2 contract.
Returns the hash of the message.
*/
function consumeMessageFromL2(uint256 fromAddress, uint256[] calldata payload)
external
returns (bytes32);
/**
Starts the cancellation of an L1 to L2 message.
A message can be canceled messageCancellationDelay() seconds after this function is called.
Note: This function may only be called for a message that is currently pending and the caller
must be the sender of the that message.
*/
function startL1ToL2MessageCancellation(
uint256 toAddress,
uint256 selector,
uint256[] calldata payload,
uint256 nonce
) external returns (bytes32);
/**
Cancels an L1 to L2 message, this function should be called messageCancellationDelay() seconds
after the call to startL1ToL2MessageCancellation().
*/
function cancelL1ToL2Message(
uint256 toAddress,
uint256 selector,
uint256[] calldata payload,
uint256 nonce
) external returns (bytes32);
// Message registry
function l2ToL1Messages(bytes32 msgHash) external view returns (uint256);
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)
pragma solidity ^0.8.0;
/**
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}{
"remappings": [],
"optimizer": {
"enabled": false,
"runs": 200
},
"evmVersion": "paris",
"libraries": {},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_starknetCore","type":"address"},{"internalType":"address","name":"_l1TokenContract","type":"address"},{"internalType":"uint256","name":"_l2BridgeContract","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"l1Sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"l2Recipient","type":"uint256"}],"name":"LogDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"l1Recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"LogWithdrawal","type":"event"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"l2Recipient","type":"uint256"}],"name":"deposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"l2Recipient","type":"uint256"},{"internalType":"uint256","name":"nonce","type":"uint256"}],"name":"finishDepositCancellation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"l1TokenContract","outputs":[{"internalType":"contract ISwayToken","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l2BridgeContract","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"starknetCore","outputs":[{"internalType":"contract IStarknetCore","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"l2Recipient","type":"uint256"},{"internalType":"uint256","name":"nonce","type":"uint256"}],"name":"startDepositCancellation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"l1Recipient","type":"address"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
60806040523480156200001157600080fd5b50604051620015ee380380620015ee8339818101604052810190620000379190620001d2565b7f080000000000001100000000000000000000000000000000000000000000000181106200009c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000093906200028f565b60405180910390fd5b82600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600281905550505050620002b1565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200015f8262000132565b9050919050565b620001718162000152565b81146200017d57600080fd5b50565b600081519050620001918162000166565b92915050565b6000819050919050565b620001ac8162000197565b8114620001b857600080fd5b50565b600081519050620001cc81620001a1565b92915050565b600080600060608486031215620001ee57620001ed6200012d565b5b6000620001fe8682870162000180565b9350506020620002118682870162000180565b92505060406200022486828701620001bb565b9150509250925092565b600082825260208201905092915050565b7f4272696467652f696e76616c69642d646573742d627269646765000000000000600082015250565b600062000277601a836200022e565b915062000284826200023f565b602082019050919050565b60006020820190508181036000830152620002aa8162000268565b9050919050565b61132d80620002c16000396000f3fe60806040526004361061006f5760003560e01c80637c1c29ac1161004e5780637c1c29ac146100f1578063be36ec751461011a578063d2c22b3914610145578063e2bbb158146101705761006f565b8062f714ce1461007457806339e730ab1461009d578063560119a4146100c8575b600080fd5b34801561008057600080fd5b5061009b60048036038101906100969190610cd0565b61018c565b005b3480156100a957600080fd5b506100b2610411565b6040516100bf9190610d6f565b60405180910390f35b3480156100d457600080fd5b506100ef60048036038101906100ea9190610d8a565b610437565b005b3480156100fd57600080fd5b5061011860048036038101906101139190610d8a565b6106a0565b005b34801561012657600080fd5b5061012f610863565b60405161013c9190610dec565b60405180910390f35b34801561015157600080fd5b5061015a610869565b6040516101679190610e28565b60405180910390f35b61018a60048036038101906101859190610e43565b61088d565b005b6000600467ffffffffffffffff8111156101a9576101a8610e83565b5b6040519080825280602002602001820160405280156101d75781602001602082028036833780820191505090505b5090506001816000815181106101f0576101ef610eb2565b5b6020026020010181815250508173ffffffffffffffffffffffffffffffffffffffff168160018151811061022757610226610eb2565b5b60200260200101818152505061023c83610bff565b826002815181106102505761024f610eb2565b5b602002602001018360038151811061026b5761026a610eb2565b5b6020026020010182815250828152505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632c9dd5c0600254836040518363ffffffff1660e01b81526004016102db929190610f9f565b6020604051808303816000875af11580156102fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061031e9190611005565b5060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83856040518363ffffffff1660e01b815260040161037a929190611041565b6020604051808303816000875af1158015610399573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103bd91906110a2565b508173ffffffffffffffffffffffffffffffffffffffff167fb4214c8c54fc7442f36d3682f59aebaf09358a4431835b30efb29d52cf9e1e91846040516104049190610dec565b60405180910390a2505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600467ffffffffffffffff81111561045457610453610e83565b5b6040519080825280602002602001820160405280156104825781602001602082028036833780820191505090505b509050828160008151811061049a57610499610eb2565b5b6020026020010181815250506104af84610bff565b826001815181106104c3576104c2610eb2565b5b60200260200101836002815181106104de576104dd610eb2565b5b60200260200101828152508281525050506104f7610c2f565b73ffffffffffffffffffffffffffffffffffffffff168160038151811061052157610520610eb2565b5b602002602001018181525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636170ff1b6002547f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee584866040518563ffffffff1660e01b81526004016105b094939291906110cf565b6020604051808303816000875af11580156105cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f39190611005565b5060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb610638610c2f565b866040518363ffffffff1660e01b8152600401610656929190611041565b6020604051808303816000875af1158015610675573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069991906110a2565b5050505050565b6000600467ffffffffffffffff8111156106bd576106bc610e83565b5b6040519080825280602002602001820160405280156106eb5781602001602082028036833780820191505090505b509050828160008151811061070357610702610eb2565b5b60200260200101818152505061071884610bff565b8260018151811061072c5761072b610eb2565b5b602002602001018360028151811061074757610746610eb2565b5b6020026020010182815250828152505050610760610c2f565b73ffffffffffffffffffffffffffffffffffffffff168160038151811061078a57610789610eb2565b5b602002602001018181525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637a98660b6002547f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee584866040518563ffffffff1660e01b815260040161081994939291906110cf565b6020604051808303816000875af1158015610838573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085c9190611005565b5050505050565b60025481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600082116108d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c790611178565b60405180910390fd5b600081141580156108e357506002548114155b801561090e57507f080000000000001100000000000000000000000000000000000000000000000181105b61094d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610944906111e4565b60405180910390fd5b6000600467ffffffffffffffff81111561096a57610969610e83565b5b6040519080825280602002602001820160405280156109985781602001602082028036833780820191505090505b50905081816000815181106109b0576109af610eb2565b5b6020026020010181815250506109c583610bff565b826001815181106109d9576109d8610eb2565b5b60200260200101836002815181106109f4576109f3610eb2565b5b6020026020010182815250828152505050610a0d610c2f565b73ffffffffffffffffffffffffffffffffffffffff1681600381518110610a3757610a36610eb2565b5b60200260200101818152505060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330866040518463ffffffff1660e01b8152600401610aa093929190611204565b6020604051808303816000875af1158015610abf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae391906110a2565b50600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633e3aa6c5346002547f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee5856040518563ffffffff1660e01b8152600401610b669392919061123b565b604080518083038185885af1158015610b83573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ba8919061128e565b50503373ffffffffffffffffffffffffffffffffffffffff167f9dbb0e7dda3e09710ce75b801addc87cf9d9c6c581641b3275fca409ad086c628484604051610bf29291906112ce565b60405180910390a2505050565b60008060006fffffffffffffffffffffffffffffffff841690506000608085901c90508181935093505050915091565b600033905090565b600080fd5b6000819050919050565b610c4f81610c3c565b8114610c5a57600080fd5b50565b600081359050610c6c81610c46565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610c9d82610c72565b9050919050565b610cad81610c92565b8114610cb857600080fd5b50565b600081359050610cca81610ca4565b92915050565b60008060408385031215610ce757610ce6610c37565b5b6000610cf585828601610c5d565b9250506020610d0685828601610cbb565b9150509250929050565b6000819050919050565b6000610d35610d30610d2b84610c72565b610d10565b610c72565b9050919050565b6000610d4782610d1a565b9050919050565b6000610d5982610d3c565b9050919050565b610d6981610d4e565b82525050565b6000602082019050610d846000830184610d60565b92915050565b600080600060608486031215610da357610da2610c37565b5b6000610db186828701610c5d565b9350506020610dc286828701610c5d565b9250506040610dd386828701610c5d565b9150509250925092565b610de681610c3c565b82525050565b6000602082019050610e016000830184610ddd565b92915050565b6000610e1282610d3c565b9050919050565b610e2281610e07565b82525050565b6000602082019050610e3d6000830184610e19565b92915050565b60008060408385031215610e5a57610e59610c37565b5b6000610e6885828601610c5d565b9250506020610e7985828601610c5d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b610f1681610c3c565b82525050565b6000610f288383610f0d565b60208301905092915050565b6000602082019050919050565b6000610f4c82610ee1565b610f568185610eec565b9350610f6183610efd565b8060005b83811015610f92578151610f798882610f1c565b9750610f8483610f34565b925050600181019050610f65565b5085935050505092915050565b6000604082019050610fb46000830185610ddd565b8181036020830152610fc68184610f41565b90509392505050565b6000819050919050565b610fe281610fcf565b8114610fed57600080fd5b50565b600081519050610fff81610fd9565b92915050565b60006020828403121561101b5761101a610c37565b5b600061102984828501610ff0565b91505092915050565b61103b81610c92565b82525050565b60006040820190506110566000830185611032565b6110636020830184610ddd565b9392505050565b60008115159050919050565b61107f8161106a565b811461108a57600080fd5b50565b60008151905061109c81611076565b92915050565b6000602082840312156110b8576110b7610c37565b5b60006110c68482850161108d565b91505092915050565b60006080820190506110e46000830187610ddd565b6110f16020830186610ddd565b81810360408301526111038185610f41565b90506111126060830184610ddd565b95945050505050565b600082825260208201905092915050565b7f4272696467652f7a65726f2d616d6f756e740000000000000000000000000000600082015250565b600061116260128361111b565b915061116d8261112c565b602082019050919050565b6000602082019050818103600083015261119181611155565b9050919050565b7f4272696467652f696e76616c69642d726563697069656e740000000000000000600082015250565b60006111ce60188361111b565b91506111d982611198565b602082019050919050565b600060208201905081810360008301526111fd816111c1565b9050919050565b60006060820190506112196000830186611032565b6112266020830185611032565b6112336040830184610ddd565b949350505050565b60006060820190506112506000830186610ddd565b61125d6020830185610ddd565b818103604083015261126f8184610f41565b9050949350505050565b60008151905061128881610c46565b92915050565b600080604083850312156112a5576112a4610c37565b5b60006112b385828601610ff0565b92505060206112c485828601611279565b9150509250929050565b60006040820190506112e36000830185610ddd565b6112f06020830184610ddd565b939250505056fea26469706673582212209e6b85c548c21124a43b3fbdc7a97f64343fa950fd3fbade4cb9a481d36eb53d64736f6c63430008130033000000000000000000000000c662c410c0ecf747543f5ba90660f6abebd9c8c40000000000000000000000009de7f7a6c0b00902983c6f0658e157a8a684cfd5004878d1148318a31829523ee9c6a5ee563af6cd87f90a30809e5b0d27db8a9b
Deployed Bytecode
0x60806040526004361061006f5760003560e01c80637c1c29ac1161004e5780637c1c29ac146100f1578063be36ec751461011a578063d2c22b3914610145578063e2bbb158146101705761006f565b8062f714ce1461007457806339e730ab1461009d578063560119a4146100c8575b600080fd5b34801561008057600080fd5b5061009b60048036038101906100969190610cd0565b61018c565b005b3480156100a957600080fd5b506100b2610411565b6040516100bf9190610d6f565b60405180910390f35b3480156100d457600080fd5b506100ef60048036038101906100ea9190610d8a565b610437565b005b3480156100fd57600080fd5b5061011860048036038101906101139190610d8a565b6106a0565b005b34801561012657600080fd5b5061012f610863565b60405161013c9190610dec565b60405180910390f35b34801561015157600080fd5b5061015a610869565b6040516101679190610e28565b60405180910390f35b61018a60048036038101906101859190610e43565b61088d565b005b6000600467ffffffffffffffff8111156101a9576101a8610e83565b5b6040519080825280602002602001820160405280156101d75781602001602082028036833780820191505090505b5090506001816000815181106101f0576101ef610eb2565b5b6020026020010181815250508173ffffffffffffffffffffffffffffffffffffffff168160018151811061022757610226610eb2565b5b60200260200101818152505061023c83610bff565b826002815181106102505761024f610eb2565b5b602002602001018360038151811061026b5761026a610eb2565b5b6020026020010182815250828152505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632c9dd5c0600254836040518363ffffffff1660e01b81526004016102db929190610f9f565b6020604051808303816000875af11580156102fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061031e9190611005565b5060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83856040518363ffffffff1660e01b815260040161037a929190611041565b6020604051808303816000875af1158015610399573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103bd91906110a2565b508173ffffffffffffffffffffffffffffffffffffffff167fb4214c8c54fc7442f36d3682f59aebaf09358a4431835b30efb29d52cf9e1e91846040516104049190610dec565b60405180910390a2505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600467ffffffffffffffff81111561045457610453610e83565b5b6040519080825280602002602001820160405280156104825781602001602082028036833780820191505090505b509050828160008151811061049a57610499610eb2565b5b6020026020010181815250506104af84610bff565b826001815181106104c3576104c2610eb2565b5b60200260200101836002815181106104de576104dd610eb2565b5b60200260200101828152508281525050506104f7610c2f565b73ffffffffffffffffffffffffffffffffffffffff168160038151811061052157610520610eb2565b5b602002602001018181525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636170ff1b6002547f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee584866040518563ffffffff1660e01b81526004016105b094939291906110cf565b6020604051808303816000875af11580156105cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f39190611005565b5060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb610638610c2f565b866040518363ffffffff1660e01b8152600401610656929190611041565b6020604051808303816000875af1158015610675573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069991906110a2565b5050505050565b6000600467ffffffffffffffff8111156106bd576106bc610e83565b5b6040519080825280602002602001820160405280156106eb5781602001602082028036833780820191505090505b509050828160008151811061070357610702610eb2565b5b60200260200101818152505061071884610bff565b8260018151811061072c5761072b610eb2565b5b602002602001018360028151811061074757610746610eb2565b5b6020026020010182815250828152505050610760610c2f565b73ffffffffffffffffffffffffffffffffffffffff168160038151811061078a57610789610eb2565b5b602002602001018181525050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637a98660b6002547f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee584866040518563ffffffff1660e01b815260040161081994939291906110cf565b6020604051808303816000875af1158015610838573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085c9190611005565b5050505050565b60025481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600082116108d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c790611178565b60405180910390fd5b600081141580156108e357506002548114155b801561090e57507f080000000000001100000000000000000000000000000000000000000000000181105b61094d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610944906111e4565b60405180910390fd5b6000600467ffffffffffffffff81111561096a57610969610e83565b5b6040519080825280602002602001820160405280156109985781602001602082028036833780820191505090505b50905081816000815181106109b0576109af610eb2565b5b6020026020010181815250506109c583610bff565b826001815181106109d9576109d8610eb2565b5b60200260200101836002815181106109f4576109f3610eb2565b5b6020026020010182815250828152505050610a0d610c2f565b73ffffffffffffffffffffffffffffffffffffffff1681600381518110610a3757610a36610eb2565b5b60200260200101818152505060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330866040518463ffffffff1660e01b8152600401610aa093929190611204565b6020604051808303816000875af1158015610abf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae391906110a2565b50600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633e3aa6c5346002547f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee5856040518563ffffffff1660e01b8152600401610b669392919061123b565b604080518083038185885af1158015610b83573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ba8919061128e565b50503373ffffffffffffffffffffffffffffffffffffffff167f9dbb0e7dda3e09710ce75b801addc87cf9d9c6c581641b3275fca409ad086c628484604051610bf29291906112ce565b60405180910390a2505050565b60008060006fffffffffffffffffffffffffffffffff841690506000608085901c90508181935093505050915091565b600033905090565b600080fd5b6000819050919050565b610c4f81610c3c565b8114610c5a57600080fd5b50565b600081359050610c6c81610c46565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610c9d82610c72565b9050919050565b610cad81610c92565b8114610cb857600080fd5b50565b600081359050610cca81610ca4565b92915050565b60008060408385031215610ce757610ce6610c37565b5b6000610cf585828601610c5d565b9250506020610d0685828601610cbb565b9150509250929050565b6000819050919050565b6000610d35610d30610d2b84610c72565b610d10565b610c72565b9050919050565b6000610d4782610d1a565b9050919050565b6000610d5982610d3c565b9050919050565b610d6981610d4e565b82525050565b6000602082019050610d846000830184610d60565b92915050565b600080600060608486031215610da357610da2610c37565b5b6000610db186828701610c5d565b9350506020610dc286828701610c5d565b9250506040610dd386828701610c5d565b9150509250925092565b610de681610c3c565b82525050565b6000602082019050610e016000830184610ddd565b92915050565b6000610e1282610d3c565b9050919050565b610e2281610e07565b82525050565b6000602082019050610e3d6000830184610e19565b92915050565b60008060408385031215610e5a57610e59610c37565b5b6000610e6885828601610c5d565b9250506020610e7985828601610c5d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b610f1681610c3c565b82525050565b6000610f288383610f0d565b60208301905092915050565b6000602082019050919050565b6000610f4c82610ee1565b610f568185610eec565b9350610f6183610efd565b8060005b83811015610f92578151610f798882610f1c565b9750610f8483610f34565b925050600181019050610f65565b5085935050505092915050565b6000604082019050610fb46000830185610ddd565b8181036020830152610fc68184610f41565b90509392505050565b6000819050919050565b610fe281610fcf565b8114610fed57600080fd5b50565b600081519050610fff81610fd9565b92915050565b60006020828403121561101b5761101a610c37565b5b600061102984828501610ff0565b91505092915050565b61103b81610c92565b82525050565b60006040820190506110566000830185611032565b6110636020830184610ddd565b9392505050565b60008115159050919050565b61107f8161106a565b811461108a57600080fd5b50565b60008151905061109c81611076565b92915050565b6000602082840312156110b8576110b7610c37565b5b60006110c68482850161108d565b91505092915050565b60006080820190506110e46000830187610ddd565b6110f16020830186610ddd565b81810360408301526111038185610f41565b90506111126060830184610ddd565b95945050505050565b600082825260208201905092915050565b7f4272696467652f7a65726f2d616d6f756e740000000000000000000000000000600082015250565b600061116260128361111b565b915061116d8261112c565b602082019050919050565b6000602082019050818103600083015261119181611155565b9050919050565b7f4272696467652f696e76616c69642d726563697069656e740000000000000000600082015250565b60006111ce60188361111b565b91506111d982611198565b602082019050919050565b600060208201905081810360008301526111fd816111c1565b9050919050565b60006060820190506112196000830186611032565b6112266020830185611032565b6112336040830184610ddd565b949350505050565b60006060820190506112506000830186610ddd565b61125d6020830185610ddd565b818103604083015261126f8184610f41565b9050949350505050565b60008151905061128881610c46565b92915050565b600080604083850312156112a5576112a4610c37565b5b60006112b385828601610ff0565b92505060206112c485828601611279565b9150509250929050565b60006040820190506112e36000830185610ddd565b6112f06020830184610ddd565b939250505056fea26469706673582212209e6b85c548c21124a43b3fbdc7a97f64343fa950fd3fbade4cb9a481d36eb53d64736f6c63430008130033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000c662c410c0ecf747543f5ba90660f6abebd9c8c40000000000000000000000009de7f7a6c0b00902983c6f0658e157a8a684cfd5004878d1148318a31829523ee9c6a5ee563af6cd87f90a30809e5b0d27db8a9b
-----Decoded View---------------
Arg [0] : _starknetCore (address): 0xc662c410C0ECf747543f5bA90660f6ABeBD9C8c4
Arg [1] : _l1TokenContract (address): 0x9DE7f7a6c0B00902983c6f0658E157A8a684Cfd5
Arg [2] : _l2BridgeContract (uint256): 128046835014687671764701071103697248442191699810634328684734697634499627675
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000c662c410c0ecf747543f5ba90660f6abebd9c8c4
Arg [1] : 0000000000000000000000009de7f7a6c0b00902983c6f0658e157a8a684cfd5
Arg [2] : 004878d1148318a31829523ee9c6a5ee563af6cd87f90a30809e5b0d27db8a9b
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ 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.