More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 93 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Token Out | 15873182 | 821 days ago | IN | 0 ETH | 0.00044329 | ||||
Token Out | 15873181 | 821 days ago | IN | 0 ETH | 0.00045556 | ||||
Token Out | 15873181 | 821 days ago | IN | 0 ETH | 0.00045556 | ||||
Token Out | 15873177 | 821 days ago | IN | 0 ETH | 0.00045556 | ||||
Token Out | 15873137 | 821 days ago | IN | 0 ETH | 0.00107732 | ||||
Token Out | 15873131 | 821 days ago | IN | 0 ETH | 0.0037114 | ||||
Coin In | 15873089 | 821 days ago | IN | 0.0009 ETH | 0.00025252 | ||||
Token Out | 15873078 | 821 days ago | IN | 0 ETH | 0.00179676 | ||||
Coin In | 15873078 | 821 days ago | IN | 0.0009 ETH | 0.00032002 | ||||
Token Out | 15873066 | 821 days ago | IN | 0 ETH | 0.00131791 | ||||
Coin In | 15873063 | 821 days ago | IN | 0.0009 ETH | 0.00032371 | ||||
Coin In | 15873051 | 821 days ago | IN | 0.0009 ETH | 0.0003415 | ||||
Token Out | 15873050 | 821 days ago | IN | 0 ETH | 0.00139414 | ||||
Token Out | 15873035 | 821 days ago | IN | 0 ETH | 0.00143697 | ||||
Coin In | 15873034 | 821 days ago | IN | 0.0009 ETH | 0.00034009 | ||||
Token Out | 15873018 | 821 days ago | IN | 0 ETH | 0.00162809 | ||||
Coin In | 15873018 | 821 days ago | IN | 0.0009 ETH | 0.00037927 | ||||
Token Out | 15873002 | 821 days ago | IN | 0 ETH | 0.00175749 | ||||
Coin In | 15873000 | 821 days ago | IN | 0.0009 ETH | 0.00043852 | ||||
Coin In | 15872979 | 821 days ago | IN | 0.0009 ETH | 0.00038257 | ||||
Token Out | 15872971 | 821 days ago | IN | 0 ETH | 0.0015894 | ||||
Coin In | 15872955 | 821 days ago | IN | 0.0009 ETH | 0.00032976 | ||||
Token Out | 15872944 | 821 days ago | IN | 0 ETH | 0.00147398 | ||||
Token Out | 15872898 | 821 days ago | IN | 0 ETH | 0.00164625 | ||||
Token Out | 15872878 | 821 days ago | IN | 0 ETH | 0.00172598 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Risu_Bridge
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-10-26 */ //SPDX-License-Identifier: MIT pragma solidity 0.8.17; interface ERC20Essential { function balanceOf(address user) external view returns(uint256); function transfer(address _to, uint256 _amount) external returns (bool); function transferFrom(address _from, address _to, uint256 _amount) external returns (bool); } //USDT contract in Ethereum does not follow ERC20 standard so it needs different interface interface usdtContract { function transferFrom(address _from, address _to, uint256 _amount) external; } //*******************************************************************// //------------------ Contract to Manage Ownership -------------------// //*******************************************************************// contract owned { address public owner; address internal newOwner; mapping(address => bool) public signer; event OwnershipTransferred(address indexed _from, address indexed _to); event SignerUpdated(address indexed signer, bool indexed status); constructor() { owner = msg.sender; signer[msg.sender] = true; } modifier onlyOwner { require(msg.sender == owner); _; } modifier onlySigner { require(signer[msg.sender], 'caller must be signer'); _; } function changeSigner(address _signer, bool _status) public onlyOwner { signer[_signer] = _status; emit SignerUpdated(_signer, _status); } function transferOwnership(address _newOwner) public onlyOwner { newOwner = _newOwner; } //the reason for this flow is to protect owners from sending ownership to unintended address due to human error function acceptOwnership() public { require(msg.sender == newOwner); emit OwnershipTransferred(owner, newOwner); owner = newOwner; newOwner = address(0); } } //****************************************************************************// //--------------------- MAIN CODE STARTS HERE ---------------------// //****************************************************************************// contract Risu_Bridge is owned { uint256 public orderID; // This generates a public event of coin received by contract event CoinIn(uint256 indexed orderID, address indexed user, uint256 value, address outputCurrency); event CoinOut(uint256 indexed orderID, address indexed user, uint256 value); event CoinOutFailed(uint256 indexed orderID, address indexed user, uint256 value); event TokenIn(uint256 indexed orderID, address indexed tokenAddress, address indexed user, uint256 value, uint256 chainID, address outputCurrency); event TokenOut(uint256 indexed orderID, address indexed tokenAddress, address indexed user, uint256 value, uint256 chainID); event TokenOutFailed(uint256 indexed orderID, address indexed tokenAddress, address indexed user, uint256 value, uint256 chainID); receive () external payable { //nothing happens for incoming fund } function coinIn(address outputCurrency) external payable returns(bool){ orderID++; emit CoinIn(orderID, msg.sender, msg.value, outputCurrency); return true; } function coinOut(address user, uint256 amount, uint256 _orderID) external onlySigner returns(bool){ payable(user).transfer(amount); emit CoinOut(_orderID, user, amount); return true; } function tokenIn(address tokenAddress, uint256 tokenAmount, uint256 chainID, address outputCurrency) external returns(bool){ orderID++; //fund will go to the owner if(tokenAddress == address(0xdAC17F958D2ee523a2206206994597C13D831ec7)){ //There should be different interface for the USDT Ethereum contract usdtContract(tokenAddress).transferFrom(msg.sender, address(this), tokenAmount); }else{ ERC20Essential(tokenAddress).transferFrom(msg.sender, address(this), tokenAmount); } emit TokenIn(orderID, tokenAddress, msg.sender, tokenAmount, chainID, outputCurrency); return true; } function tokenOut(address tokenAddress, address user, uint256 tokenAmount, uint256 _orderID, uint256 chainID) external onlySigner returns(bool){ ERC20Essential(tokenAddress).transfer(user, tokenAmount); emit TokenOut(_orderID, tokenAddress, user, tokenAmount, chainID); return true; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"orderID","type":"uint256"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"address","name":"outputCurrency","type":"address"}],"name":"CoinIn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"orderID","type":"uint256"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"CoinOut","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"orderID","type":"uint256"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"CoinOutFailed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"signer","type":"address"},{"indexed":true,"internalType":"bool","name":"status","type":"bool"}],"name":"SignerUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"orderID","type":"uint256"},{"indexed":true,"internalType":"address","name":"tokenAddress","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"chainID","type":"uint256"},{"indexed":false,"internalType":"address","name":"outputCurrency","type":"address"}],"name":"TokenIn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"orderID","type":"uint256"},{"indexed":true,"internalType":"address","name":"tokenAddress","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"chainID","type":"uint256"}],"name":"TokenOut","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"orderID","type":"uint256"},{"indexed":true,"internalType":"address","name":"tokenAddress","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"chainID","type":"uint256"}],"name":"TokenOutFailed","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_signer","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"changeSigner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"outputCurrency","type":"address"}],"name":"coinIn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"_orderID","type":"uint256"}],"name":"coinOut","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"orderID","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"signer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokenAmount","type":"uint256"},{"internalType":"uint256","name":"chainID","type":"uint256"},{"internalType":"address","name":"outputCurrency","type":"address"}],"name":"tokenIn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"tokenAmount","type":"uint256"},{"internalType":"uint256","name":"_orderID","type":"uint256"},{"internalType":"uint256","name":"chainID","type":"uint256"}],"name":"tokenOut","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555061103b806100b86000396000f3fe6080604052600436106100955760003560e01c806381203d031161005957806381203d031461018b5780638da5cb5b146101b6578063f2fde38b146101e1578063f3a7cb611461020a578063fea54d06146102475761009c565b80630536b723146100a157806315a01045146100de578063256c1ea31461010e57806351295f011461014b57806379ba5097146101745761009c565b3661009c57005b600080fd5b3480156100ad57600080fd5b506100c860048036038101906100c39190610b58565b610284565b6040516100d59190610ba0565b60405180910390f35b6100f860048036038101906100f39190610b58565b6102a4565b6040516101059190610ba0565b60405180910390f35b34801561011a57600080fd5b5061013560048036038101906101309190610bf1565b61031a565b6040516101429190610ba0565b60405180910390f35b34801561015757600080fd5b50610172600480360381019061016d9190610c98565b61049c565b005b34801561018057600080fd5b50610189610595565b005b34801561019757600080fd5b506101a0610731565b6040516101ad9190610ce7565b60405180910390f35b3480156101c257600080fd5b506101cb610737565b6040516101d89190610d11565b60405180910390f35b3480156101ed57600080fd5b5061020860048036038101906102039190610b58565b61075b565b005b34801561021657600080fd5b50610231600480360381019061022c9190610d2c565b6107f7565b60405161023e9190610ba0565b60405180910390f35b34801561025357600080fd5b5061026e60048036038101906102699190610d93565b6109c6565b60405161027b9190610ba0565b60405180910390f35b60026020528060005260406000206000915054906101000a900460ff1681565b6000600360008154809291906102b990610e15565b91905055503373ffffffffffffffffffffffffffffffffffffffff166003547f50ed54fdff2e8028310feac14aa2e8343c5eb6ab4fb192510bd3358cbe18fb1d3485604051610309929190610e5d565b60405180910390a360019050919050565b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161039f90610ee3565b60405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86866040518363ffffffff1660e01b81526004016103e3929190610f03565b6020604051808303816000875af1158015610402573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104269190610f41565b508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16847f227f62390ff31ea224acc601adb99ca571aafaeef45b6528a1f75af3fdee81b08786604051610487929190610f6e565b60405180910390a46001905095945050505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104f457600080fd5b80600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167ffcaa24b1276bfa7dbf77797c0a984b9df924acbeaabd48cd2f1b0eca379b78fa60405160405180910390a35050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105ef57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60035481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107b357600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60006003600081548092919061080c90610e15565b919050555073dac17f958d2ee523a2206206994597c13d831ec773ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036108cc578473ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff1660e01b815260040161089593929190610f97565b600060405180830381600087803b1580156108af57600080fd5b505af11580156108c3573d6000803e3d6000fd5b5050505061094e565b8473ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff1660e01b815260040161090993929190610f97565b6020604051808303816000875af1158015610928573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094c9190610f41565b505b3373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff166003547f8a9f5b93a9427ed2074a269336914d74d6b34dfe5679f30c5cf172f5842aa7958787876040516109b293929190610fce565b60405180910390a460019050949350505050565b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610a54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4b90610ee3565b60405180910390fd5b8373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015610a9a573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff16827f9651479651fe91907cee7de24a0e47091421878d660c93c6fe0d04c7b7b2404b85604051610ae29190610ce7565b60405180910390a3600190509392505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610b2582610afa565b9050919050565b610b3581610b1a565b8114610b4057600080fd5b50565b600081359050610b5281610b2c565b92915050565b600060208284031215610b6e57610b6d610af5565b5b6000610b7c84828501610b43565b91505092915050565b60008115159050919050565b610b9a81610b85565b82525050565b6000602082019050610bb56000830184610b91565b92915050565b6000819050919050565b610bce81610bbb565b8114610bd957600080fd5b50565b600081359050610beb81610bc5565b92915050565b600080600080600060a08688031215610c0d57610c0c610af5565b5b6000610c1b88828901610b43565b9550506020610c2c88828901610b43565b9450506040610c3d88828901610bdc565b9350506060610c4e88828901610bdc565b9250506080610c5f88828901610bdc565b9150509295509295909350565b610c7581610b85565b8114610c8057600080fd5b50565b600081359050610c9281610c6c565b92915050565b60008060408385031215610caf57610cae610af5565b5b6000610cbd85828601610b43565b9250506020610cce85828601610c83565b9150509250929050565b610ce181610bbb565b82525050565b6000602082019050610cfc6000830184610cd8565b92915050565b610d0b81610b1a565b82525050565b6000602082019050610d266000830184610d02565b92915050565b60008060008060808587031215610d4657610d45610af5565b5b6000610d5487828801610b43565b9450506020610d6587828801610bdc565b9350506040610d7687828801610bdc565b9250506060610d8787828801610b43565b91505092959194509250565b600080600060608486031215610dac57610dab610af5565b5b6000610dba86828701610b43565b9350506020610dcb86828701610bdc565b9250506040610ddc86828701610bdc565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610e2082610bbb565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e5257610e51610de6565b5b600182019050919050565b6000604082019050610e726000830185610cd8565b610e7f6020830184610d02565b9392505050565b600082825260208201905092915050565b7f63616c6c6572206d757374206265207369676e65720000000000000000000000600082015250565b6000610ecd601583610e86565b9150610ed882610e97565b602082019050919050565b60006020820190508181036000830152610efc81610ec0565b9050919050565b6000604082019050610f186000830185610d02565b610f256020830184610cd8565b9392505050565b600081519050610f3b81610c6c565b92915050565b600060208284031215610f5757610f56610af5565b5b6000610f6584828501610f2c565b91505092915050565b6000604082019050610f836000830185610cd8565b610f906020830184610cd8565b9392505050565b6000606082019050610fac6000830186610d02565b610fb96020830185610d02565b610fc66040830184610cd8565b949350505050565b6000606082019050610fe36000830186610cd8565b610ff06020830185610cd8565b610ffd6040830184610d02565b94935050505056fea264697066735822122030415c32ee2a97d44886364e8801a284b7b2f00c05720642bdc836ea3398648864736f6c63430008110033
Deployed Bytecode
0x6080604052600436106100955760003560e01c806381203d031161005957806381203d031461018b5780638da5cb5b146101b6578063f2fde38b146101e1578063f3a7cb611461020a578063fea54d06146102475761009c565b80630536b723146100a157806315a01045146100de578063256c1ea31461010e57806351295f011461014b57806379ba5097146101745761009c565b3661009c57005b600080fd5b3480156100ad57600080fd5b506100c860048036038101906100c39190610b58565b610284565b6040516100d59190610ba0565b60405180910390f35b6100f860048036038101906100f39190610b58565b6102a4565b6040516101059190610ba0565b60405180910390f35b34801561011a57600080fd5b5061013560048036038101906101309190610bf1565b61031a565b6040516101429190610ba0565b60405180910390f35b34801561015757600080fd5b50610172600480360381019061016d9190610c98565b61049c565b005b34801561018057600080fd5b50610189610595565b005b34801561019757600080fd5b506101a0610731565b6040516101ad9190610ce7565b60405180910390f35b3480156101c257600080fd5b506101cb610737565b6040516101d89190610d11565b60405180910390f35b3480156101ed57600080fd5b5061020860048036038101906102039190610b58565b61075b565b005b34801561021657600080fd5b50610231600480360381019061022c9190610d2c565b6107f7565b60405161023e9190610ba0565b60405180910390f35b34801561025357600080fd5b5061026e60048036038101906102699190610d93565b6109c6565b60405161027b9190610ba0565b60405180910390f35b60026020528060005260406000206000915054906101000a900460ff1681565b6000600360008154809291906102b990610e15565b91905055503373ffffffffffffffffffffffffffffffffffffffff166003547f50ed54fdff2e8028310feac14aa2e8343c5eb6ab4fb192510bd3358cbe18fb1d3485604051610309929190610e5d565b60405180910390a360019050919050565b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161039f90610ee3565b60405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86866040518363ffffffff1660e01b81526004016103e3929190610f03565b6020604051808303816000875af1158015610402573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104269190610f41565b508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16847f227f62390ff31ea224acc601adb99ca571aafaeef45b6528a1f75af3fdee81b08786604051610487929190610f6e565b60405180910390a46001905095945050505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104f457600080fd5b80600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167ffcaa24b1276bfa7dbf77797c0a984b9df924acbeaabd48cd2f1b0eca379b78fa60405160405180910390a35050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146105ef57600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60035481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107b357600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60006003600081548092919061080c90610e15565b919050555073dac17f958d2ee523a2206206994597c13d831ec773ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036108cc578473ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff1660e01b815260040161089593929190610f97565b600060405180830381600087803b1580156108af57600080fd5b505af11580156108c3573d6000803e3d6000fd5b5050505061094e565b8473ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff1660e01b815260040161090993929190610f97565b6020604051808303816000875af1158015610928573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094c9190610f41565b505b3373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff166003547f8a9f5b93a9427ed2074a269336914d74d6b34dfe5679f30c5cf172f5842aa7958787876040516109b293929190610fce565b60405180910390a460019050949350505050565b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610a54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4b90610ee3565b60405180910390fd5b8373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015610a9a573d6000803e3d6000fd5b508373ffffffffffffffffffffffffffffffffffffffff16827f9651479651fe91907cee7de24a0e47091421878d660c93c6fe0d04c7b7b2404b85604051610ae29190610ce7565b60405180910390a3600190509392505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610b2582610afa565b9050919050565b610b3581610b1a565b8114610b4057600080fd5b50565b600081359050610b5281610b2c565b92915050565b600060208284031215610b6e57610b6d610af5565b5b6000610b7c84828501610b43565b91505092915050565b60008115159050919050565b610b9a81610b85565b82525050565b6000602082019050610bb56000830184610b91565b92915050565b6000819050919050565b610bce81610bbb565b8114610bd957600080fd5b50565b600081359050610beb81610bc5565b92915050565b600080600080600060a08688031215610c0d57610c0c610af5565b5b6000610c1b88828901610b43565b9550506020610c2c88828901610b43565b9450506040610c3d88828901610bdc565b9350506060610c4e88828901610bdc565b9250506080610c5f88828901610bdc565b9150509295509295909350565b610c7581610b85565b8114610c8057600080fd5b50565b600081359050610c9281610c6c565b92915050565b60008060408385031215610caf57610cae610af5565b5b6000610cbd85828601610b43565b9250506020610cce85828601610c83565b9150509250929050565b610ce181610bbb565b82525050565b6000602082019050610cfc6000830184610cd8565b92915050565b610d0b81610b1a565b82525050565b6000602082019050610d266000830184610d02565b92915050565b60008060008060808587031215610d4657610d45610af5565b5b6000610d5487828801610b43565b9450506020610d6587828801610bdc565b9350506040610d7687828801610bdc565b9250506060610d8787828801610b43565b91505092959194509250565b600080600060608486031215610dac57610dab610af5565b5b6000610dba86828701610b43565b9350506020610dcb86828701610bdc565b9250506040610ddc86828701610bdc565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610e2082610bbb565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e5257610e51610de6565b5b600182019050919050565b6000604082019050610e726000830185610cd8565b610e7f6020830184610d02565b9392505050565b600082825260208201905092915050565b7f63616c6c6572206d757374206265207369676e65720000000000000000000000600082015250565b6000610ecd601583610e86565b9150610ed882610e97565b602082019050919050565b60006020820190508181036000830152610efc81610ec0565b9050919050565b6000604082019050610f186000830185610d02565b610f256020830184610cd8565b9392505050565b600081519050610f3b81610c6c565b92915050565b600060208284031215610f5757610f56610af5565b5b6000610f6584828501610f2c565b91505092915050565b6000604082019050610f836000830185610cd8565b610f906020830184610cd8565b9392505050565b6000606082019050610fac6000830186610d02565b610fb96020830185610d02565b610fc66040830184610cd8565b949350505050565b6000606082019050610fe36000830186610cd8565b610ff06020830185610cd8565b610ffd6040830184610d02565b94935050505056fea264697066735822122030415c32ee2a97d44886364e8801a284b7b2f00c05720642bdc836ea3398648864736f6c63430008110033
Deployed Bytecode Sourcemap
2215:2472:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;861:38;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3170:190;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4339:343;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1354:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1750:196;;;;;;;;;;;;;:::i;:::-;;2258:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;802:20;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1523:102;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3634:687;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3372:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;861:38;;;;;;;;;;;;;;;;;;;;;;:::o;3170:190::-;3235:4;3251:7;;:9;;;;;;;;;:::i;:::-;;;;;;3292:10;3276:54;;3283:7;;3276:54;3304:9;3315:14;3276:54;;;;;;;:::i;:::-;;;;;;;;3348:4;3341:11;;3170:190;;;:::o;4339:343::-;4477:4;1280:6;:18;1287:10;1280:18;;;;;;;;;;;;;;;;;;;;;;;;;1272:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;4521:12:::1;4506:37;;;4544:4;4550:11;4506:56;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4615:4;4582:60;;4601:12;4582:60;;4591:8;4582:60;4621:11;4634:7;4582:60;;;;;;;:::i;:::-;;;;;;;;4670:4;4663:11;;4339:343:::0;;;;;;;:::o;1354:161::-;1205:5;;;;;;;;;;1191:19;;:10;:19;;;1183:28;;;;;;1453:7:::1;1435:6;:15;1442:7;1435:15;;;;;;;;;;;;;;;;:25;;;;;;;;;;;;;;;;;;1499:7;1476:31;;1490:7;1476:31;;;;;;;;;;;;1354:161:::0;;:::o;1750:196::-;1817:8;;;;;;;;;;;1803:22;;:10;:22;;;1795:31;;;;;;1870:8;;;;;;;;;;;1842:37;;1863:5;;;;;;;;;;1842:37;;;;;;;;;;;;1898:8;;;;;;;;;;;1890:5;;:16;;;;;;;;;;;;;;;;;;1936:1;1917:8;;:21;;;;;;;;;;;;;;;;;;1750:196::o;2258:22::-;;;;:::o;802:20::-;;;;;;;;;;;;:::o;1523:102::-;1205:5;;;;;;;;;;1191:19;;:10;:19;;;1183:28;;;;;;1608:9:::1;1597:8;;:20;;;;;;;;;;;;;;;;;;1523:102:::0;:::o;3634:687::-;3752:4;3768:7;;:9;;;;;;;;;:::i;:::-;;;;;;3852:42;3828:67;;:12;:67;;;3825:371;;4006:12;3993:39;;;4033:10;4053:4;4060:11;3993:79;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3825:371;;;4118:12;4103:41;;;4145:10;4165:4;4172:11;4103:81;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3825:371;4242:10;4211:80;;4228:12;4211:80;;4219:7;;4211:80;4254:11;4267:7;4276:14;4211:80;;;;;;;;:::i;:::-;;;;;;;;4309:4;4302:11;;3634:687;;;;;;:::o;3372:244::-;3465:4;1280:6;:18;1287:10;1280:18;;;;;;;;;;;;;;;;;;;;;;;;;1272:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;3503:4:::1;3495:22;;:30;3518:6;3495:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;3563:4;3545:31;;3553:8;3545:31;3569:6;3545:31;;;;;;:::i;:::-;;;;;;;;3604:4;3597:11;;3372:244:::0;;;;;:::o;88:117:1:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:329::-;900:6;949:2;937:9;928:7;924:23;920:32;917:119;;;955:79;;:::i;:::-;917:119;1075:1;1100:53;1145:7;1136:6;1125:9;1121:22;1100:53;:::i;:::-;1090:63;;1046:117;841:329;;;;:::o;1176:90::-;1210:7;1253:5;1246:13;1239:21;1228:32;;1176:90;;;:::o;1272:109::-;1353:21;1368:5;1353:21;:::i;:::-;1348:3;1341:34;1272:109;;:::o;1387:210::-;1474:4;1512:2;1501:9;1497:18;1489:26;;1525:65;1587:1;1576:9;1572:17;1563:6;1525:65;:::i;:::-;1387:210;;;;:::o;1603:77::-;1640:7;1669:5;1658:16;;1603:77;;;:::o;1686:122::-;1759:24;1777:5;1759:24;:::i;:::-;1752:5;1749:35;1739:63;;1798:1;1795;1788:12;1739:63;1686:122;:::o;1814:139::-;1860:5;1898:6;1885:20;1876:29;;1914:33;1941:5;1914:33;:::i;:::-;1814:139;;;;:::o;1959:911::-;2054:6;2062;2070;2078;2086;2135:3;2123:9;2114:7;2110:23;2106:33;2103:120;;;2142:79;;:::i;:::-;2103:120;2262:1;2287:53;2332:7;2323:6;2312:9;2308:22;2287:53;:::i;:::-;2277:63;;2233:117;2389:2;2415:53;2460:7;2451:6;2440:9;2436:22;2415:53;:::i;:::-;2405:63;;2360:118;2517:2;2543:53;2588:7;2579:6;2568:9;2564:22;2543:53;:::i;:::-;2533:63;;2488:118;2645:2;2671:53;2716:7;2707:6;2696:9;2692:22;2671:53;:::i;:::-;2661:63;;2616:118;2773:3;2800:53;2845:7;2836:6;2825:9;2821:22;2800:53;:::i;:::-;2790:63;;2744:119;1959:911;;;;;;;;:::o;2876:116::-;2946:21;2961:5;2946:21;:::i;:::-;2939:5;2936:32;2926:60;;2982:1;2979;2972:12;2926:60;2876:116;:::o;2998:133::-;3041:5;3079:6;3066:20;3057:29;;3095:30;3119:5;3095:30;:::i;:::-;2998:133;;;;:::o;3137:468::-;3202:6;3210;3259:2;3247:9;3238:7;3234:23;3230:32;3227:119;;;3265:79;;:::i;:::-;3227:119;3385:1;3410:53;3455:7;3446:6;3435:9;3431:22;3410:53;:::i;:::-;3400:63;;3356:117;3512:2;3538:50;3580:7;3571:6;3560:9;3556:22;3538:50;:::i;:::-;3528:60;;3483:115;3137:468;;;;;:::o;3611:118::-;3698:24;3716:5;3698:24;:::i;:::-;3693:3;3686:37;3611:118;;:::o;3735:222::-;3828:4;3866:2;3855:9;3851:18;3843:26;;3879:71;3947:1;3936:9;3932:17;3923:6;3879:71;:::i;:::-;3735:222;;;;:::o;3963:118::-;4050:24;4068:5;4050:24;:::i;:::-;4045:3;4038:37;3963:118;;:::o;4087:222::-;4180:4;4218:2;4207:9;4203:18;4195:26;;4231:71;4299:1;4288:9;4284:17;4275:6;4231:71;:::i;:::-;4087:222;;;;:::o;4315:765::-;4401:6;4409;4417;4425;4474:3;4462:9;4453:7;4449:23;4445:33;4442:120;;;4481:79;;:::i;:::-;4442:120;4601:1;4626:53;4671:7;4662:6;4651:9;4647:22;4626:53;:::i;:::-;4616:63;;4572:117;4728:2;4754:53;4799:7;4790:6;4779:9;4775:22;4754:53;:::i;:::-;4744:63;;4699:118;4856:2;4882:53;4927:7;4918:6;4907:9;4903:22;4882:53;:::i;:::-;4872:63;;4827:118;4984:2;5010:53;5055:7;5046:6;5035:9;5031:22;5010:53;:::i;:::-;5000:63;;4955:118;4315:765;;;;;;;:::o;5086:619::-;5163:6;5171;5179;5228:2;5216:9;5207:7;5203:23;5199:32;5196:119;;;5234:79;;:::i;:::-;5196:119;5354:1;5379:53;5424:7;5415:6;5404:9;5400:22;5379:53;:::i;:::-;5369:63;;5325:117;5481:2;5507:53;5552:7;5543:6;5532:9;5528:22;5507:53;:::i;:::-;5497:63;;5452:118;5609:2;5635:53;5680:7;5671:6;5660:9;5656:22;5635:53;:::i;:::-;5625:63;;5580:118;5086:619;;;;;:::o;5711:180::-;5759:77;5756:1;5749:88;5856:4;5853:1;5846:15;5880:4;5877:1;5870:15;5897:233;5936:3;5959:24;5977:5;5959:24;:::i;:::-;5950:33;;6005:66;5998:5;5995:77;5992:103;;6075:18;;:::i;:::-;5992:103;6122:1;6115:5;6111:13;6104:20;;5897:233;;;:::o;6136:332::-;6257:4;6295:2;6284:9;6280:18;6272:26;;6308:71;6376:1;6365:9;6361:17;6352:6;6308:71;:::i;:::-;6389:72;6457:2;6446:9;6442:18;6433:6;6389:72;:::i;:::-;6136:332;;;;;:::o;6474:169::-;6558:11;6592:6;6587:3;6580:19;6632:4;6627:3;6623:14;6608:29;;6474:169;;;;:::o;6649:171::-;6789:23;6785:1;6777:6;6773:14;6766:47;6649:171;:::o;6826:366::-;6968:3;6989:67;7053:2;7048:3;6989:67;:::i;:::-;6982:74;;7065:93;7154:3;7065:93;:::i;:::-;7183:2;7178:3;7174:12;7167:19;;6826:366;;;:::o;7198:419::-;7364:4;7402:2;7391:9;7387:18;7379:26;;7451:9;7445:4;7441:20;7437:1;7426:9;7422:17;7415:47;7479:131;7605:4;7479:131;:::i;:::-;7471:139;;7198:419;;;:::o;7623:332::-;7744:4;7782:2;7771:9;7767:18;7759:26;;7795:71;7863:1;7852:9;7848:17;7839:6;7795:71;:::i;:::-;7876:72;7944:2;7933:9;7929:18;7920:6;7876:72;:::i;:::-;7623:332;;;;;:::o;7961:137::-;8015:5;8046:6;8040:13;8031:22;;8062:30;8086:5;8062:30;:::i;:::-;7961:137;;;;:::o;8104:345::-;8171:6;8220:2;8208:9;8199:7;8195:23;8191:32;8188:119;;;8226:79;;:::i;:::-;8188:119;8346:1;8371:61;8424:7;8415:6;8404:9;8400:22;8371:61;:::i;:::-;8361:71;;8317:125;8104:345;;;;:::o;8455:332::-;8576:4;8614:2;8603:9;8599:18;8591:26;;8627:71;8695:1;8684:9;8680:17;8671:6;8627:71;:::i;:::-;8708:72;8776:2;8765:9;8761:18;8752:6;8708:72;:::i;:::-;8455:332;;;;;:::o;8793:442::-;8942:4;8980:2;8969:9;8965:18;8957:26;;8993:71;9061:1;9050:9;9046:17;9037:6;8993:71;:::i;:::-;9074:72;9142:2;9131:9;9127:18;9118:6;9074:72;:::i;:::-;9156;9224:2;9213:9;9209:18;9200:6;9156:72;:::i;:::-;8793:442;;;;;;:::o;9241:::-;9390:4;9428:2;9417:9;9413:18;9405:26;;9441:71;9509:1;9498:9;9494:17;9485:6;9441:71;:::i;:::-;9522:72;9590:2;9579:9;9575:18;9566:6;9522:72;:::i;:::-;9604;9672:2;9661:9;9657:18;9648:6;9604:72;:::i;:::-;9241:442;;;;;;:::o
Swarm Source
ipfs://30415c32ee2a97d44886364e8801a284b7b2f00c05720642bdc836ea33986488
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.