Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
0x60c06040 | 14998109 | 848 days ago | IN | 0 ETH | 0.01799274 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Name:
ConnectV2SwapAggregator
Compiler Version
v0.7.6+commit.7338295f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
//SPDX-License-Identifier: MIT pragma solidity ^0.7.0; pragma experimental ABIEncoderV2; /** * @title Swap. * @dev Swap integration for DEX Aggregators. */ // import files import { SwapHelpers } from "./helpers.sol"; import { Events } from "./events.sol"; abstract contract Swap is SwapHelpers, Events { /** * @dev Swap ETH/ERC20_Token using dex aggregators. * @notice Swap tokens from exchanges like 1INCH, 0x etc, with calculation done off-chain. * @param _connectors The name of the connectors like 1INCH-A, 0x etc, in order of their priority. * @param _datas Encoded function call data including function selector encoded with parameters. */ function swap(string[] memory _connectors, bytes[] memory _datas) external payable returns (string memory _eventName, bytes memory _eventParam) { (bool success, bytes memory returnData, string memory connector) = _swap( _connectors, _datas ); require(success, "swap-Aggregator-failed"); (string memory eventName, bytes memory eventParam) = abi.decode( returnData, (string, bytes) ); _eventName = "LogSwapAggregator(string[],string,string,bytes)"; _eventParam = abi.encode(_connectors, connector, eventName, eventParam); } } contract ConnectV2SwapAggregator is Swap { string public name = "Swap-Aggregator-v1"; }
//SPDX-License-Identifier: MIT pragma solidity ^0.7.0; pragma abicoder v2; import { InstaConnectors } from "../../common/interfaces.sol"; contract SwapHelpers { /** * @dev Instadapp Connectors Registry */ InstaConnectors internal constant instaConnectors = InstaConnectors(0x97b0B3A8bDeFE8cB9563a3c610019Ad10DB8aD11); /** *@dev Swap using the dex aggregators. *@param _connectors name of the connectors in preference order. *@param _datas data for the swap cast. */ function _swap(string[] memory _connectors, bytes[] memory _datas) internal returns ( bool success, bytes memory returnData, string memory connector ) { uint256 _length = _connectors.length; require(_length > 0, "zero-length-not-allowed"); require(_datas.length == _length, "calldata-length-invalid"); (bool isOk, address[] memory connectors) = instaConnectors.isConnectors( _connectors ); require(isOk, "connector-names-invalid"); for (uint256 i = 0; i < _length; i++) { (success, returnData) = connectors[i].delegatecall(_datas[i]); if (success) { connector = _connectors[i]; break; } } } }
// SPDX-License-Identifier: MIT pragma solidity ^0.7.0; pragma abicoder v2; contract Events { event LogSwapAggregator( string[] connectors, string connectorName, string eventName, bytes eventParam ); }
//SPDX-License-Identifier: MIT pragma solidity ^0.7.0; pragma abicoder v2; interface TokenInterface { function approve(address, uint256) external; function transfer(address, uint) external; function transferFrom(address, address, uint) external; function deposit() external payable; function withdraw(uint) external; function balanceOf(address) external view returns (uint); function decimals() external view returns (uint); function totalSupply() external view returns (uint); } interface MemoryInterface { function getUint(uint id) external returns (uint num); function setUint(uint id, uint val) external; } interface InstaMapping { function cTokenMapping(address) external view returns (address); function gemJoinMapping(bytes32) external view returns (address); } interface AccountInterface { function enable(address) external; function disable(address) external; function isAuth(address) external view returns (bool); } interface InstaConnectors { function isConnectors(string[] calldata) external returns (bool, address[] memory); }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "metadata": { "useLiteralContent": true }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string[]","name":"connectors","type":"string[]"},{"indexed":false,"internalType":"string","name":"connectorName","type":"string"},{"indexed":false,"internalType":"string","name":"eventName","type":"string"},{"indexed":false,"internalType":"bytes","name":"eventParam","type":"bytes"}],"name":"LogSwapAggregator","type":"event"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string[]","name":"_connectors","type":"string[]"},{"internalType":"bytes[]","name":"_datas","type":"bytes[]"}],"name":"swap","outputs":[{"internalType":"string","name":"_eventName","type":"string"},{"internalType":"bytes","name":"_eventParam","type":"bytes"}],"stateMutability":"payable","type":"function"}]
Contract Creation Code
60c06040526012608081905271537761702d41676772656761746f722d763160701b60a09081526100339160009190610046565b5034801561004057600080fd5b506100e7565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261007c57600085556100c2565b82601f1061009557805160ff19168380011785556100c2565b828001600101855582156100c2579182015b828111156100c25782518255916020019190600101906100a7565b506100ce9291506100d2565b5090565b5b808211156100ce57600081556001016100d3565b61096d806100f66000396000f3fe6080604052600436106100295760003560e01c806306fdde031461002e578063fd05818314610059575b600080fd5b34801561003a57600080fd5b5061004361007a565b604051610050919061075e565b60405180910390f35b61006c61006736600461045d565b610108565b604051610050929190610771565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156101005780601f106100d557610100808354040283529160200191610100565b820191906000526020600020905b8154815290600101906020018083116100e357829003601f168201915b505050505081565b606080600080600061011a87876101b0565b925092509250826101465760405162461bcd60e51b815260040161013d9061079f565b60405180910390fd5b6000808380602001905181019061015d91906105e2565b915091506040518060600160405280602f8152602001610909602f91399650888383836040516020016101939493929190610706565b604051602081830303815290604052955050505050509250929050565b6000606080600085519050600081116101db5760405162461bcd60e51b815260040161013d90610806565b808551146101fb5760405162461bcd60e51b815260040161013d906107cf565b60405163a0a32c0b60e01b815260009081907397b0b3a8bdefe8cb9563a3c610019ad10db8ad119063a0a32c0b90610237908b906004016106f3565b600060405180830381600087803b15801561025157600080fd5b505af1158015610265573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261028d9190810190610523565b91509150816102ae5760405162461bcd60e51b815260040161013d9061083d565b60005b83811015610366578181815181106102c557fe5b60200260200101516001600160a01b03168882815181106102e257fe5b60200260200101516040516102f791906106d7565b600060405180830381855af49150503d8060008114610332576040519150601f19603f3d011682016040523d82523d6000602084013e610337565b606091505b509097509550861561035e5788818151811061034f57fe5b60200260200101519450610366565b6001016102b1565b505050509250925092565b600061038461037f846108b6565b610874565b905082815283838301111561039857600080fd5b828260208301376000602084830101529392505050565b60006103bd61037f846108b6565b90508281528383830111156103d157600080fd5b6103df8360208301846108d8565b9392505050565b600082601f8301126103f6578081fd5b8135602061040661037f83610898565b82815281810190858301855b85811015610450578135880189603f82011261042c578788fd5b61043d8a8783013560408401610371565b8552509284019290840190600101610412565b5090979650505050505050565b6000806040808486031215610470578283fd5b833567ffffffffffffffff80821115610487578485fd5b818601915086601f83011261049a578485fd5b813560206104aa61037f83610898565b82815281810190858301895b858110156104f357813588018d603f8201126104d0578b8cfd5b6104e08e878301358c8401610371565b85525092840192908401906001016104b6565b5090985050508701359350508083111561050b578384fd5b5050610519858286016103e6565b9150509250929050565b60008060408385031215610535578182fd5b82518015158114610544578283fd5b8092505060208084015167ffffffffffffffff811115610562578283fd5b8401601f81018613610572578283fd5b805161058061037f82610898565b81815283810190838501858402850186018a101561059c578687fd5b8694505b838510156105d25780516001600160a01b03811681146105be578788fd5b8352600194909401939185019185016105a0565b5080955050505050509250929050565b600080604083850312156105f4578182fd5b825167ffffffffffffffff8082111561060b578384fd5b818501915085601f83011261061e578384fd5b61062d868351602085016103af565b93506020850151915080821115610642578283fd5b508301601f81018513610653578182fd5b610519858251602084016103af565b60008282518085526020808601955080818302840101818601855b8481101561045057601f198684030189526106998383516106ab565b9884019892509083019060010161067d565b600081518084526106c38160208601602086016108d8565b601f01601f19169290920160200192915050565b600082516106e98184602087016108d8565b9190910192915050565b6000602082526103df6020830184610662565b6000608082526107196080830187610662565b828103602084015261072b81876106ab565b9050828103604084015261073f81866106ab565b9050828103606084015261075381856106ab565b979650505050505050565b6000602082526103df60208301846106ab565b60006040825261078460408301856106ab565b828103602084015261079681856106ab565b95945050505050565b6020808252601690820152751cddd85c0b5059d9dc9959d85d1bdc8b59985a5b195960521b604082015260600190565b60208082526017908201527f63616c6c646174612d6c656e6774682d696e76616c6964000000000000000000604082015260600190565b60208082526017908201527f7a65726f2d6c656e6774682d6e6f742d616c6c6f776564000000000000000000604082015260600190565b60208082526017908201527f636f6e6e6563746f722d6e616d65732d696e76616c6964000000000000000000604082015260600190565b60405181810167ffffffffffffffff8111828210171561089057fe5b604052919050565b600067ffffffffffffffff8211156108ac57fe5b5060209081020190565b600067ffffffffffffffff8211156108ca57fe5b50601f01601f191660200190565b60005b838110156108f35781810151838201526020016108db565b83811115610902576000848401525b5050505056fe4c6f675377617041676772656761746f7228737472696e675b5d2c737472696e672c737472696e672c627974657329a2646970667358221220e0bc5c6c6eedf695f19c54dd751ee48617b9f68a76de6a55b758d7bccf612c1464736f6c63430007060033
Deployed Bytecode
0x6080604052600436106100295760003560e01c806306fdde031461002e578063fd05818314610059575b600080fd5b34801561003a57600080fd5b5061004361007a565b604051610050919061075e565b60405180910390f35b61006c61006736600461045d565b610108565b604051610050929190610771565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156101005780601f106100d557610100808354040283529160200191610100565b820191906000526020600020905b8154815290600101906020018083116100e357829003601f168201915b505050505081565b606080600080600061011a87876101b0565b925092509250826101465760405162461bcd60e51b815260040161013d9061079f565b60405180910390fd5b6000808380602001905181019061015d91906105e2565b915091506040518060600160405280602f8152602001610909602f91399650888383836040516020016101939493929190610706565b604051602081830303815290604052955050505050509250929050565b6000606080600085519050600081116101db5760405162461bcd60e51b815260040161013d90610806565b808551146101fb5760405162461bcd60e51b815260040161013d906107cf565b60405163a0a32c0b60e01b815260009081907397b0b3a8bdefe8cb9563a3c610019ad10db8ad119063a0a32c0b90610237908b906004016106f3565b600060405180830381600087803b15801561025157600080fd5b505af1158015610265573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261028d9190810190610523565b91509150816102ae5760405162461bcd60e51b815260040161013d9061083d565b60005b83811015610366578181815181106102c557fe5b60200260200101516001600160a01b03168882815181106102e257fe5b60200260200101516040516102f791906106d7565b600060405180830381855af49150503d8060008114610332576040519150601f19603f3d011682016040523d82523d6000602084013e610337565b606091505b509097509550861561035e5788818151811061034f57fe5b60200260200101519450610366565b6001016102b1565b505050509250925092565b600061038461037f846108b6565b610874565b905082815283838301111561039857600080fd5b828260208301376000602084830101529392505050565b60006103bd61037f846108b6565b90508281528383830111156103d157600080fd5b6103df8360208301846108d8565b9392505050565b600082601f8301126103f6578081fd5b8135602061040661037f83610898565b82815281810190858301855b85811015610450578135880189603f82011261042c578788fd5b61043d8a8783013560408401610371565b8552509284019290840190600101610412565b5090979650505050505050565b6000806040808486031215610470578283fd5b833567ffffffffffffffff80821115610487578485fd5b818601915086601f83011261049a578485fd5b813560206104aa61037f83610898565b82815281810190858301895b858110156104f357813588018d603f8201126104d0578b8cfd5b6104e08e878301358c8401610371565b85525092840192908401906001016104b6565b5090985050508701359350508083111561050b578384fd5b5050610519858286016103e6565b9150509250929050565b60008060408385031215610535578182fd5b82518015158114610544578283fd5b8092505060208084015167ffffffffffffffff811115610562578283fd5b8401601f81018613610572578283fd5b805161058061037f82610898565b81815283810190838501858402850186018a101561059c578687fd5b8694505b838510156105d25780516001600160a01b03811681146105be578788fd5b8352600194909401939185019185016105a0565b5080955050505050509250929050565b600080604083850312156105f4578182fd5b825167ffffffffffffffff8082111561060b578384fd5b818501915085601f83011261061e578384fd5b61062d868351602085016103af565b93506020850151915080821115610642578283fd5b508301601f81018513610653578182fd5b610519858251602084016103af565b60008282518085526020808601955080818302840101818601855b8481101561045057601f198684030189526106998383516106ab565b9884019892509083019060010161067d565b600081518084526106c38160208601602086016108d8565b601f01601f19169290920160200192915050565b600082516106e98184602087016108d8565b9190910192915050565b6000602082526103df6020830184610662565b6000608082526107196080830187610662565b828103602084015261072b81876106ab565b9050828103604084015261073f81866106ab565b9050828103606084015261075381856106ab565b979650505050505050565b6000602082526103df60208301846106ab565b60006040825261078460408301856106ab565b828103602084015261079681856106ab565b95945050505050565b6020808252601690820152751cddd85c0b5059d9dc9959d85d1bdc8b59985a5b195960521b604082015260600190565b60208082526017908201527f63616c6c646174612d6c656e6774682d696e76616c6964000000000000000000604082015260600190565b60208082526017908201527f7a65726f2d6c656e6774682d6e6f742d616c6c6f776564000000000000000000604082015260600190565b60208082526017908201527f636f6e6e6563746f722d6e616d65732d696e76616c6964000000000000000000604082015260600190565b60405181810167ffffffffffffffff8111828210171561089057fe5b604052919050565b600067ffffffffffffffff8211156108ac57fe5b5060209081020190565b600067ffffffffffffffff8211156108ca57fe5b50601f01601f191660200190565b60005b838110156108f35781810151838201526020016108db565b83811115610902576000848401525b5050505056fe4c6f675377617041676772656761746f7228737472696e675b5d2c737472696e672c737472696e672c627974657329a2646970667358221220e0bc5c6c6eedf695f19c54dd751ee48617b9f68a76de6a55b758d7bccf612c1464736f6c63430007060033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 27 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.