Contract 0xf1c9881be22ebf108b8927c4d197d126346b5036 3

 

Contract Overview

Balance:
0 MATIC

MATIC Value:
$0.00

Token:
 
Txn Hash
Method
Block
From
To
Value [Txn Fee]
0x5dd3c914372d1dc183cac55d65be08477d78207230d0a646f9f671e419f62570Unwind Pairs382554162023-01-19 3:28:5212 days 19 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.065344614969 86.0087279
0xe5da84885b4f43592330945d4d50a5026138ee3fde7e7c61f38564e2fc8fa049Unwind Pairs382554002023-01-19 3:28:1812 days 19 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.055247777336 61.238426399
0xc2f72f4581a64ee027d68068e0a8299c9343b54dac19221bdc5f27f12a5bbc65Unwind Pairs382553842023-01-19 3:27:4412 days 19 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.053943409496 63.140520913
0xee1eaa0af50ef49306a878c752f934189d4e030a35adfe175961ca2fc789d6d1Unwind Pairs382553692023-01-19 3:27:1212 days 19 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.039361997379 63.234968608
0x668e53a9be5c464c488eee6d7ad451e33a7d82de87d8c1d487a717ddcac9b106Unwind Pairs382553592023-01-19 3:26:5012 days 19 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.038879858842 66.46606909
0x98543dab72cbc9bfdf941cc232b163cd40d951573a3df7e8e37d73fb8d271e50Unwind Pairs376449832023-01-04 2:06:2027 days 20 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.019116447257 110.160934338
0xf86ae2f3c3dabaaca0cd8ef4f0a597553e43ea7823427416249f3e399aefc8ccUnwind Pairs376449362023-01-04 2:04:4627 days 20 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.04940830182 107.732079622
0x2489d0bb8016be41d24e25c3346248724b9e4e9d39dd28373978cc37c680d8b5Unwind Pairs376449272023-01-04 2:04:2427 days 20 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.071549397398 125.240282023
0x91f728c1682d90f472c1cb9404b03fe50bdf9372dfd8204efbe61e519c1371f2Unwind Pairs376448852023-01-04 2:03:0027 days 20 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.093027774179 124.308854267
0xf9421e657c8388f9ad53470ab5687b12b2071a20edcf2afe8fc4a9937a50f4e6Unwind Pairs376448712023-01-04 2:02:3227 days 20 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.092014578768 154.252036003
0x85f5b5a5e889fcf29bdb262b4778da0bafc1ead96fb48a2a69015aefc1886393Unwind Pairs376448602023-01-04 2:02:0627 days 20 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.083169844671 112.63765828
0x4903187a396be9345b90f9e4708437d45427fff3913629d93a615d7d37370d74Unwind Pairs376448382023-01-04 2:01:2227 days 20 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.051634172099 129.091884843
0x149d87d424a590a1ded751e1dd7be202bd684eb552ae8f51a1b7ae4f7086e4a4Unwind Pairs376448052023-01-04 2:00:1627 days 20 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.122511033813 141.569387959
0x01a6d2a2bf7739315a69e806f548a85f5ea26ebad11be2abbcc7b5acaefb1ac6Unwind Pairs366291452022-12-09 19:04:2253 days 3 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.072513139127 50.289154718
0xdcb2bcb6f886c3bd0da8c5937f5635081c2f7a4500f239885c768702328feb3dUnwind Pairs366291182022-12-09 19:03:2453 days 3 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.033591097245 46.429890592
0xa5da6c5655e87c450a0192d601a2e9c2657c7e715503ff02517939674fdf1a00Unwind Pairs360507822022-11-25 13:31:1767 days 9 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.026734201997 36.779995814
0x26d46b778c51c842136792080edabc25deec83ade6d5c09c937142a29f13b736Unwind Pairs360507702022-11-25 13:30:5367 days 9 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.031031808924 36.083876371
0x3a6539b14c34bb39457b335fbaf678180445482ec30ffc65bd50acb54789e0e0Unwind Pairs360507602022-11-25 13:30:3367 days 9 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.035430192298 39.110143964
0x1dea740bdf9e03917968f9806d15ccf53c70efc80155d82c8faf2025f76c1518Unwind Pairs360507492022-11-25 13:30:0767 days 9 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.016418864981 38.667196508
0xbcd534f2676d6e017899fbce68a5a05b2172b45ab94fb2bcbb40a78d6a635eb6Unwind Pairs342624342022-10-12 19:06:35111 days 3 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.00985016206 31.840657298
0x730566cfc3f2d14c57a85ff70aff5f7302ff20a070b082d3167c2b8de6c0c574Unwind Pairs342624242022-10-12 19:06:15111 days 3 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.014241107416 31.047820427
0xc7768bfe8c1e57874065dc69d25503b26fee16cd4b7556d0abcebaa5983d6222Unwind Pairs342624112022-10-12 19:05:49111 days 3 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.036620114279 34.360402415
0x3871dcbbc9e0edbd3ca398ccf1c19aa5ae82675ae49fed3f27b4c53a68a796aeUnwind Pairs342623982022-10-12 19:05:19111 days 3 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.014184174415 31.063138195
0x1690f24c8fcb3f92e3b2a57dbc27a409b7dec982a1efb99d4560e896a1ed94cfUnwind Pairs342623862022-10-12 19:04:55111 days 3 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.015145573308 31.983455199
0x2d069610e010b19070fc5bef529c9176c42cca4b91637840e3749e978a944fbbUnwind Pairs342623742022-10-12 19:04:31111 days 3 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0xf1c9881be22ebf108b8927c4d197d126346b50360 MATIC0.019375508289 32.156758699
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
WethMaker

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 99999 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 6 : WethMaker.sol
// SPDX-License-Identifier: GPL-3.0-or-later

pragma solidity >=0.8.0;

import "./Unwindooor.sol";

/// @notice Contract for selling received tokens into weth. Deploy on secondary networks.
contract WethMaker is Unwindooor {

    event SetBridge(address indexed token, address bridge);

    address public immutable weth;

    mapping(address => address) public bridges;

    constructor(
        address owner,
        address user,
        address factory,
        address _weth
    ) Unwindooor(owner, user, factory) {
        weth = _weth;
    }

    function setBridge(address token, address bridge) external onlyOwner {
        bridges[token] = bridge;
        emit SetBridge(token, bridge);
    }

    // Exchange token for weth or its bridge token (which gets converted into weth in subsequent transactions).
    function buyWeth(
        address[] calldata tokens,
        uint256[] calldata amountsIn,
        uint256[] calldata minimumOuts
    ) external onlyTrusted {
        for (uint256 i = 0; i < tokens.length; i++) {

            address tokenIn = tokens[i];
            address outToken = bridges[tokenIn] == address(0) ? weth : bridges[tokenIn];
            if (_swap(tokenIn, outToken, amountsIn[i], address(this)) < minimumOuts[i]) revert SlippageProtection();
            
        }
    }

    function _swap(
        address tokenIn,
        address tokenOut,
        uint256 amountIn,
        address to
    ) internal returns (uint256 outAmount) {

        IUniV2 pair = IUniV2(factory.getPair(tokenIn, tokenOut));
        IERC20(tokenIn).transfer(address(pair), amountIn);

        (uint256 reserve0, uint256 reserve1, ) = pair.getReserves();

        if (tokenIn < tokenOut) {

            outAmount = _getAmountOut(amountIn, reserve0, reserve1);
            pair.swap(0, outAmount, to, "");

        } else {

            outAmount = _getAmountOut(amountIn, reserve1, reserve0);
            pair.swap(outAmount, 0, to, "");

        }

    }

    // Allow the owner to withdraw the funds and bridge them to mainnet.
    function withdraw(address token, address to, uint256 _value) onlyOwner external {
        if (token != address(0)) {
            _safeTransfer(token, to, _value);
        } else {
            (bool success, ) = to.call{value: _value}("");
            require(success);
        }
    }

    function doAction(address to, uint256 _value, bytes memory data) onlyOwner external {
        (bool success, ) = to.call{value: _value}(data);
        require(success);
    }

    receive() external payable {}

}

File 2 of 6 : Unwindooor.sol
// SPDX-License-Identifier: GPL-3.0-or-later

pragma solidity >=0.8.0;

import "./Auth.sol";
import "./interfaces/IUniV2.sol";
import "./interfaces/IUniV2Factory.sol";

/// @notice Contract for withdrawing LP positions.
/// @dev Calling unwindPairs() withdraws the LP position into one of the two tokens
contract Unwindooor is Auth {

    error SlippageProtection();
    error TransferFailed();

    bytes4 private constant TRANSFER_SELECTOR = bytes4(keccak256(bytes('transfer(address,uint256)')));

    IUniV2Factory public immutable factory;

    constructor(
        address owner,
        address user,
        address factoryAddress
    ) Auth(owner, user) {
        factory = IUniV2Factory(factoryAddress);
    }

    // We remove liquidity and sell tokensB[i] for tokensA[i].
    function unwindPairs(
        address[] calldata tokensA,
        address[] calldata tokensB,
        uint256[] calldata amounts,
        uint256[] calldata minimumOuts
    ) external onlyTrusted {
        for (uint256 i = 0; i < tokensA.length; i++) {
            
            address tokenA = tokensA[i];
            address tokenB = tokensB[i];
            bool keepToken0 = tokenA < tokenB;
            address pair = _pairFor(tokenA, tokenB);

            if (_unwindPair(IUniV2(pair), amounts[i], keepToken0, tokenB) < minimumOuts[i]) revert SlippageProtection();
        }
    }

    // Burn liquidity and sell one of the tokens for the other.
    function _unwindPair(
        IUniV2 pair,
        uint256 amount,
        bool keepToken0,
        address tokenToSell
    ) private returns (uint256 amountOut) {

        pair.transfer(address(pair), amount);
        (uint256 amount0, uint256 amount1) = pair.burn(address(this));
        (uint112 reserve0, uint112 reserve1,) = pair.getReserves();

        if (keepToken0) {
            _safeTransfer(tokenToSell, address(pair), amount1);
            amountOut = _getAmountOut(amount1, uint256(reserve1), uint256(reserve0));
            pair.swap(amountOut, 0, address(this), "");
            amountOut += amount0;
        } else {
            _safeTransfer(tokenToSell, address(pair), amount0);
            amountOut = _getAmountOut(amount0, uint256(reserve0), uint256(reserve1));
            pair.swap(0, amountOut, address(this), "");
            amountOut += amount1;
        }
    }

    // In case we don't want to sell one of the tokens for the other.
    function burnPairs(
        IUniV2[] calldata lpTokens,
        uint256[] calldata amounts,
        uint256[] calldata minimumOut0,
        uint256[] calldata minimumOut1
    ) external onlyTrusted {
        for (uint256 i = 0; i < lpTokens.length; i++) {
            IUniV2 pair = lpTokens[i];
            pair.transfer(address(pair), amounts[i]);
            (uint256 amount0, uint256 amount1) = pair.burn(address(this));
            if (amount0 < minimumOut0[i] || amount1 < minimumOut1[i]) revert SlippageProtection();
        }
    }

    function _getAmountOut(
        uint256 amountIn,
        uint256 reserveIn,
        uint256 reserveOut
    ) internal pure returns (uint256) {
        uint256 amountInWithFee = amountIn * 997;
        uint256 numerator = amountInWithFee * reserveOut;
        uint256 denominator = reserveIn * 1000 + amountInWithFee;
        return numerator / denominator;
    }

    function _safeTransfer(address token, address to, uint value) internal {
        (bool success, bytes memory data) = token.call(abi.encodeWithSelector(TRANSFER_SELECTOR, to, value));
        if (!success || (data.length != 0 && !abi.decode(data, (bool)))) revert TransferFailed();
    }

    function _pairFor(address tokenA, address tokenB) internal view returns (address pair) {
        (address token0, address token1) = tokenA < tokenB ? (tokenA, tokenB) : (tokenB, tokenA);
        pair = address(uint160(uint256(keccak256(abi.encodePacked(
            hex'ff',
            factory,
            keccak256(abi.encodePacked(token0, token1)),
            hex'e18a34eb0e04b04f7a0ac29a6e80748dca96319b42c54d679cb821dca90c6303' // init code hash
        )))));
    }

}

File 3 of 6 : Auth.sol
// SPDX-License-Identifier: GPL-3.0-or-later

pragma solidity >=0.8.0;

abstract contract Auth {

    event SetOwner(address indexed owner);
    event SetTrusted(address indexed user, bool isTrusted);

    address public owner;

    mapping(address => bool) public trusted;

    error OnlyOwner();
    error OnlyTrusted();

    modifier onlyOwner() {
        if (msg.sender != owner) revert OnlyOwner();
        _;
    }

    modifier onlyTrusted() {
        if (!trusted[msg.sender]) revert OnlyTrusted();
        _;
    }

    constructor(address newOwner, address trustedUser) {
        owner = newOwner;
        trusted[trustedUser] = true;

        emit SetOwner(owner);
        emit SetTrusted(trustedUser, true);
    }

    function setOwner(address newOwner) external onlyOwner {
        owner = newOwner;
        emit SetOwner(newOwner);
    }

    function setTrusted(address user, bool isTrusted) external onlyOwner {
        trusted[user] = isTrusted;
        emit SetTrusted(user, isTrusted);
    }

}

File 4 of 6 : IUniV2.sol
// SPDX-License-Identifier: GPL-3.0-or-later

import "./IERC20.sol";

interface IUniV2 is IERC20 {
    function totalSupply() external view returns (uint256);
    function getReserves() external view returns (uint112 _reserve0, uint112 _reserve1, uint32 _blockTimestampLast);
    function burn(address to) external returns (uint256 amount0, uint256 amount1);
    function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
    function token0() external view returns (address);
    function token1() external view returns (address);
}

File 5 of 6 : IUniV2Factory.sol
// SPDX-License-Identifier: GPL-3.0-or-later

interface IUniV2Factory {
    function getPair(address tokenA, address tokenB) external view returns (address);
}

File 6 of 6 : IERC20.sol
// SPDX-License-Identifier: GPL-3.0-or-later

interface IERC20 {
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function balanceOf(address addy) external view returns (uint256);
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 99999
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "metadata": {
    "useLiteralContent": true
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"user","type":"address"},{"internalType":"address","name":"factory","type":"address"},{"internalType":"address","name":"_weth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"OnlyOwner","type":"error"},{"inputs":[],"name":"OnlyTrusted","type":"error"},{"inputs":[],"name":"SlippageProtection","type":"error"},{"inputs":[],"name":"TransferFailed","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"address","name":"bridge","type":"address"}],"name":"SetBridge","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"}],"name":"SetOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"bool","name":"isTrusted","type":"bool"}],"name":"SetTrusted","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bridges","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IUniV2[]","name":"lpTokens","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"minimumOut0","type":"uint256[]"},{"internalType":"uint256[]","name":"minimumOut1","type":"uint256[]"}],"name":"burnPairs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"tokens","type":"address[]"},{"internalType":"uint256[]","name":"amountsIn","type":"uint256[]"},{"internalType":"uint256[]","name":"minimumOuts","type":"uint256[]"}],"name":"buyWeth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"doAction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"contract IUniV2Factory","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"bridge","type":"address"}],"name":"setBridge","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"bool","name":"isTrusted","type":"bool"}],"name":"setTrusted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"trusted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"tokensA","type":"address[]"},{"internalType":"address[]","name":"tokensB","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"minimumOuts","type":"uint256[]"}],"name":"unwindPairs","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"weth","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c06040523480156200001157600080fd5b5060405162001ebf38038062001ebf833981016040819052620000349162000126565b600080546001600160a01b0319166001600160a01b038681169190911782558481168252600160208190526040808420805460ff1916909217909155825490518793879387938693869391909216917f167d3e9c1016ab80e58802ca9da10ce5c6a0f4debc46a2e7a2cd9e56899a4fb59190a2604051600181526001600160a01b038216907f878d105ed19c01e992a54459c2f04ba19432ac45600b42ce340d0342722074369060200160405180910390a250506001600160a01b039081166080529290921660a05250620001839350505050565b80516001600160a01b03811681146200012157600080fd5b919050565b600080600080608085870312156200013d57600080fd5b620001488562000109565b9350620001586020860162000109565b9250620001686040860162000109565b9150620001786060860162000109565b905092959194509250565b60805160a051611d01620001be600039600081816101360152610a4701526000818161028101528181610cf101526111ce0152611d016000f3fe6080604052600436106100d65760003560e01c80638e9be9f41161007f578063c45a015511610059578063c45a01551461026f578063ced67f0c146102a3578063d9caed12146102e6578063f32a12ac1461030657600080fd5b80638e9be9f41461020f5780639d22ae8c1461022f5780639dd8a81c1461024f57600080fd5b806354a0af17116100b057806354a0af17146101825780636e9821c2146101a25780638da5cb5b146101e257600080fd5b806313af4035146100e2578063248091c0146101045780633fc8cef31461012457600080fd5b366100dd57005b600080fd5b3480156100ee57600080fd5b506101026100fd3660046116fa565b610326565b005b34801561011057600080fd5b5061010261011f36600461176a565b6103e4565b34801561013057600080fd5b506101587f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561018e57600080fd5b5061010261019d36600461185d565b61065d565b3480156101ae57600080fd5b506101d26101bd3660046116fa565b60016020526000908152604090205460ff1681565b6040519015158152602001610179565b3480156101ee57600080fd5b506000546101589073ffffffffffffffffffffffffffffffffffffffff1681565b34801561021b57600080fd5b5061010261022a36600461176a565b61072c565b34801561023b57600080fd5b5061010261024a366004611948565b61088c565b34801561025b57600080fd5b5061010261026a366004611981565b61096a565b34801561027b57600080fd5b506101587f000000000000000000000000000000000000000000000000000000000000000081565b3480156102af57600080fd5b506101586102be3660046116fa565b60026020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b3480156102f257600080fd5b50610102610301366004611a1b565b610afc565b34801561031257600080fd5b50610102610321366004611a6a565b610b9b565b60005473ffffffffffffffffffffffffffffffffffffffff163314610377576040517f5fc483c500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117825560405190917f167d3e9c1016ab80e58802ca9da10ce5c6a0f4debc46a2e7a2cd9e56899a4fb591a250565b3360009081526001602052604090205460ff1661042d576040517fcf1119ab00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8781101561065257600089898381811061044c5761044c611a98565b905060200201602081019061046191906116fa565b90508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb828a8a8681811061049257610492611a98565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561050b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052f9190611ac7565b506040517f89afcb44000000000000000000000000000000000000000000000000000000008152306004820152600090819073ffffffffffffffffffffffffffffffffffffffff8416906389afcb449060240160408051808303816000875af11580156105a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c49190611ae4565b915091508787858181106105da576105da611a98565b9050602002013582108061060557508585858181106105fb576105fb611a98565b9050602002013581105b1561063c576040517f17d431f400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050808061064a90611b37565b915050610430565b505050505050505050565b60005473ffffffffffffffffffffffffffffffffffffffff1633146106ae576040517f5fc483c500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008373ffffffffffffffffffffffffffffffffffffffff1683836040516106d69190611b70565b60006040518083038185875af1925050503d8060008114610713576040519150601f19603f3d011682016040523d82523d6000602084013e610718565b606091505b505090508061072657600080fd5b50505050565b3360009081526001602052604090205460ff16610775576040517fcf1119ab00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8781101561065257600089898381811061079457610794611a98565b90506020020160208101906107a991906116fa565b905060008888848181106107bf576107bf611a98565b90506020020160208101906107d491906116fa565b905073ffffffffffffffffffffffffffffffffffffffff8082169083161060006107fe8484610c6f565b905086868681811061081257610812611a98565b9050602002013561083d828b8b8981811061082f5761082f611a98565b905060200201358587610df6565b1015610875576040517f17d431f400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050808061088490611b37565b915050610778565b60005473ffffffffffffffffffffffffffffffffffffffff1633146108dd576040517f5fc483c500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82811660008181526002602090815260409182902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169486169485179055905192835290917f8357797ab855a0bad5103ea8bd2f21f986350e94d73f143ae114db8f0db5a93a91015b60405180910390a25050565b3360009081526001602052604090205460ff166109b3576040517fcf1119ab00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b85811015610af35760008787838181106109d2576109d2611a98565b90506020020160208101906109e791906116fa565b73ffffffffffffffffffffffffffffffffffffffff808216600090815260026020526040812054929350911615610a455773ffffffffffffffffffffffffffffffffffffffff80831660009081526002602052604090205416610a67565b7f00000000000000000000000000000000000000000000000000000000000000005b9050848484818110610a7b57610a7b611a98565b90506020020135610aa683838a8a88818110610a9957610a99611a98565b905060200201353061117c565b1015610ade576040517f17d431f400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50508080610aeb90611b37565b9150506109b6565b50505050505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610b4d576040517f5fc483c500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff831615610b7957610b74838383611511565b505050565b60008273ffffffffffffffffffffffffffffffffffffffff16826040516106d6565b60005473ffffffffffffffffffffffffffffffffffffffff163314610bec576040517f5fc483c500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff821660008181526001602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001685151590811790915591519182527f878d105ed19c01e992a54459c2f04ba19432ac45600b42ce340d034272207436910161095e565b60008060008373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1610610cae578385610cb1565b84845b6040517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606084811b8216602084015283901b16603482015291935091507f00000000000000000000000000000000000000000000000000000000000000009060480160405160208183030381529060405280519060200120604051602001610db79291907fff00000000000000000000000000000000000000000000000000000000000000815260609290921b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016600183015260158201527fe18a34eb0e04b04f7a0ac29a6e80748dca96319b42c54d679cb821dca90c6303603582015260550190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152919052805160209091012095945050505050565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8516600482018190526024820185905260009163a9059cbb906044016020604051808303816000875af1158015610e6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e909190611ac7565b506040517f89afcb44000000000000000000000000000000000000000000000000000000008152306004820152600090819073ffffffffffffffffffffffffffffffffffffffff8816906389afcb449060240160408051808303816000875af1158015610f01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f259190611ae4565b915091506000808873ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610f77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f9b9190611bce565b5091509150861561108d57610fb1868a85611511565b610fdc83826dffffffffffffffffffffffffffff16846dffffffffffffffffffffffffffff16611686565b6040517f022c0d9f0000000000000000000000000000000000000000000000000000000081526004810182905260006024820181905230604483015260806064830152608482015290955073ffffffffffffffffffffffffffffffffffffffff8a169063022c0d9f9060a401600060405180830381600087803b15801561106257600080fd5b505af1158015611076573d6000803e3d6000fd5b5050505083856110869190611c1e565b9450611170565b611098868a86611511565b6110c384836dffffffffffffffffffffffffffff16836dffffffffffffffffffffffffffff16611686565b6040517f022c0d9f0000000000000000000000000000000000000000000000000000000081526000600482018190526024820183905230604483015260806064830152608482015290955073ffffffffffffffffffffffffffffffffffffffff8a169063022c0d9f9060a401600060405180830381600087803b15801561114957600080fd5b505af115801561115d573d6000803e3d6000fd5b50505050828561116d9190611c1e565b94505b50505050949350505050565b6040517fe6a4390500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152848116602483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063e6a4390590604401602060405180830381865afa158015611215573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112399190611c36565b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8083166004830152602482018790529192509087169063a9059cbb906044016020604051808303816000875af11580156112b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112d69190611ac7565b506000808273ffffffffffffffffffffffffffffffffffffffff16630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015611325573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113499190611bce565b506dffffffffffffffffffffffffffff1691506dffffffffffffffffffffffffffff1691508673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff161015611456576113ad868383611686565b6040517f022c0d9f0000000000000000000000000000000000000000000000000000000081526000600482018190526024820183905273ffffffffffffffffffffffffffffffffffffffff88811660448401526080606484015260848301919091529195509084169063022c0d9f9060a401600060405180830381600087803b15801561143957600080fd5b505af115801561144d573d6000803e3d6000fd5b50505050611506565b611461868284611686565b6040517f022c0d9f0000000000000000000000000000000000000000000000000000000081526004810182905260006024820181905273ffffffffffffffffffffffffffffffffffffffff88811660448401526080606484015260848301919091529195509084169063022c0d9f9060a401600060405180830381600087803b1580156114ed57600080fd5b505af1158015611501573d6000803e3d6000fd5b505050505b505050949350505050565b604080518082018252601981527f7472616e7366657228616464726573732c75696e743235362900000000000000602091820152815173ffffffffffffffffffffffffffffffffffffffff85811660248301526044808301869052845180840390910181526064909201845291810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052915160009283928716916115d89190611b70565b6000604051808303816000865af19150503d8060008114611615576040519150601f19603f3d011682016040523d82523d6000602084013e61161a565b606091505b509150915081158061164857508051158015906116485750808060200190518101906116469190611ac7565b155b1561167f576040517f90b8ec1800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b600080611695856103e5611c53565b905060006116a38483611c53565b90506000826116b4876103e8611c53565b6116be9190611c1e565b90506116ca8183611c90565b979650505050505050565b73ffffffffffffffffffffffffffffffffffffffff811681146116f757600080fd5b50565b60006020828403121561170c57600080fd5b8135611717816116d5565b9392505050565b60008083601f84011261173057600080fd5b50813567ffffffffffffffff81111561174857600080fd5b6020830191508360208260051b850101111561176357600080fd5b9250929050565b6000806000806000806000806080898b03121561178657600080fd5b883567ffffffffffffffff8082111561179e57600080fd5b6117aa8c838d0161171e565b909a50985060208b01359150808211156117c357600080fd5b6117cf8c838d0161171e565b909850965060408b01359150808211156117e857600080fd5b6117f48c838d0161171e565b909650945060608b013591508082111561180d57600080fd5b5061181a8b828c0161171e565b999c989b5096995094979396929594505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060006060848603121561187257600080fd5b833561187d816116d5565b925060208401359150604084013567ffffffffffffffff808211156118a157600080fd5b818601915086601f8301126118b557600080fd5b8135818111156118c7576118c761182e565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561190d5761190d61182e565b8160405282815289602084870101111561192657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000806040838503121561195b57600080fd5b8235611966816116d5565b91506020830135611976816116d5565b809150509250929050565b6000806000806000806060878903121561199a57600080fd5b863567ffffffffffffffff808211156119b257600080fd5b6119be8a838b0161171e565b909850965060208901359150808211156119d757600080fd5b6119e38a838b0161171e565b909650945060408901359150808211156119fc57600080fd5b50611a0989828a0161171e565b979a9699509497509295939492505050565b600080600060608486031215611a3057600080fd5b8335611a3b816116d5565b92506020840135611a4b816116d5565b929592945050506040919091013590565b80151581146116f757600080fd5b60008060408385031215611a7d57600080fd5b8235611a88816116d5565b9150602083013561197681611a5c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060208284031215611ad957600080fd5b815161171781611a5c565b60008060408385031215611af757600080fd5b505080516020909101519092909150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611b6957611b69611b08565b5060010190565b6000825160005b81811015611b915760208186018101518583015201611b77565b81811115611ba0576000828501525b509190910192915050565b80516dffffffffffffffffffffffffffff81168114611bc957600080fd5b919050565b600080600060608486031215611be357600080fd5b611bec84611bab565b9250611bfa60208501611bab565b9150604084015163ffffffff81168114611c1357600080fd5b809150509250925092565b60008219821115611c3157611c31611b08565b500190565b600060208284031215611c4857600080fd5b8151611717816116d5565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611c8b57611c8b611b08565b500290565b600082611cc6577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea26469706673582212203c815bbb6a5a7610479a9ede08d07e580bf714b9dbe29de5651e51e1226f4fcb64736f6c634300080a00330000000000000000000000003027a0c4e35272c0707de2651a0638c3df1c37ac00000000000000000000000010025a49f69ba9445e9b81d0003b235ee629115f000000000000000000000000c35dadb65012ec5796536bd9864ed8773abc74c40000000000000000000000007ceb23fd6bc0add59e62ac25578270cff1b9f619

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000003027a0c4e35272c0707de2651a0638c3df1c37ac00000000000000000000000010025a49f69ba9445e9b81d0003b235ee629115f000000000000000000000000c35dadb65012ec5796536bd9864ed8773abc74c40000000000000000000000007ceb23fd6bc0add59e62ac25578270cff1b9f619

-----Decoded View---------------
Arg [0] : owner (address): 0x3027a0c4e35272c0707de2651a0638c3df1c37ac
Arg [1] : user (address): 0x10025a49f69ba9445e9b81d0003b235ee629115f
Arg [2] : factory (address): 0xc35dadb65012ec5796536bd9864ed8773abc74c4
Arg [3] : _weth (address): 0x7ceb23fd6bc0add59e62ac25578270cff1b9f619

-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 0000000000000000000000003027a0c4e35272c0707de2651a0638c3df1c37ac
Arg [1] : 00000000000000000000000010025a49f69ba9445e9b81d0003b235ee629115f
Arg [2] : 000000000000000000000000c35dadb65012ec5796536bd9864ed8773abc74c4
Arg [3] : 0000000000000000000000007ceb23fd6bc0add59e62ac25578270cff1b9f619


Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.