S Price: $0.503134 (+4.76%)
    /

    PUSSY (PUSSY)

    Overview

    TokenID

    33

    Total Transfers

    -

    Market

    Price

    $0.00 @ 0.000000 S

    Onchain Market Cap

    $0.00

    Circulating Supply Market Cap

    -

    Other Info

    Token Contract (WITH 18 Decimals)

    Loading...
    Loading
    Loading...
    Loading
    Loading...
    Loading

    Click here to update the token information / general information

    Contract Source Code Verified (Exact Match)

    Contract Name:
    Pussy

    Compiler Version
    v0.8.26+commit.8a97fa7a

    Optimization Enabled:
    No with 200 runs

    Other Settings:
    default evmVersion
    File 1 of 7 : pussy.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    //SPDX-License-Identifier: UNLICENSED
    pragma solidity ^0.8.0;
    import "./ERC404/ERC404.sol";
    import "@openzeppelin/contracts/utils/Strings.sol";
    contract Pussy is ERC404 {
    string public dataURI;
    string public baseTokenURI;
    constructor(
    address _owner
    ) ERC404("PUSSY", "PUSSY", 18, 404, _owner) {
    balanceOf[_owner] = 404 * 10 ** 18;
    }
    function setDataURI(string memory _dataURI) public onlyOwner {
    dataURI = _dataURI;
    }
    function setTokenURI(string memory _tokenURI) public onlyOwner {
    baseTokenURI = _tokenURI;
    }
    function setNameSymbol(
    string memory _name,
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 2 of 7 : Strings.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    // OpenZeppelin Contracts (last updated v5.2.0) (utils/Strings.sol)
    pragma solidity ^0.8.20;
    import {Math} from "./math/Math.sol";
    import {SafeCast} from "./math/SafeCast.sol";
    import {SignedMath} from "./math/SignedMath.sol";
    /**
    * @dev String operations.
    */
    library Strings {
    using SafeCast for *;
    bytes16 private constant HEX_DIGITS = "0123456789abcdef";
    uint8 private constant ADDRESS_LENGTH = 20;
    /**
    * @dev The `value` string doesn't fit in the specified `length`.
    */
    error StringsInsufficientHexLength(uint256 value, uint256 length);
    /**
    * @dev The string being parsed contains characters that are not in scope of the given base.
    */
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 3 of 7 : ERC404.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    //SPDX-License-Identifier: UNLICENSED
    pragma solidity ^0.8.0;
    abstract contract Ownable {
    event OwnershipTransferred(address indexed user, address indexed newOwner);
    error Unauthorized();
    error InvalidOwner();
    address public owner;
    modifier onlyOwner() virtual {
    if (msg.sender != owner) revert Unauthorized();
    _;
    }
    constructor(address _owner) {
    if (_owner == address(0)) revert InvalidOwner();
    owner = _owner;
    emit OwnershipTransferred(address(0), _owner);
    }
    function transferOwnership(address _owner) public virtual onlyOwner {
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 4 of 7 : SignedMath.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    // OpenZeppelin Contracts (last updated v5.1.0) (utils/math/SignedMath.sol)
    pragma solidity ^0.8.20;
    import {SafeCast} from "./SafeCast.sol";
    /**
    * @dev Standard signed math utilities missing in the Solidity language.
    */
    library SignedMath {
    /**
    * @dev Branchless ternary evaluation for `a ? b : c`. Gas costs are constant.
    *
    * IMPORTANT: This function may reduce bytecode size and consume less gas when used standalone.
    * However, the compiler may optimize Solidity ternary operations (i.e. `a ? b : c`) to only compute
    * one branch when needed, making this function more expensive.
    */
    function ternary(bool condition, int256 a, int256 b) internal pure returns (int256) {
    unchecked {
    // branchless ternary works because:
    // b ^ (a ^ b) == a
    // b ^ 0 == b
    return b ^ ((a ^ b) * int256(SafeCast.toUint(condition)));
    }
    }
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 5 of 7 : SafeCast.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    // OpenZeppelin Contracts (last updated v5.1.0) (utils/math/SafeCast.sol)
    // This file was procedurally generated from scripts/generate/templates/SafeCast.js.
    pragma solidity ^0.8.20;
    /**
    * @dev Wrappers over Solidity's uintXX/intXX/bool casting operators with added overflow
    * checks.
    *
    * Downcasting from uint256/int256 in Solidity does not revert on overflow. This can
    * easily result in undesired exploitation or bugs, since developers usually
    * assume that overflows raise errors. `SafeCast` restores this intuition by
    * reverting the transaction when such an operation overflows.
    *
    * Using this library instead of the unchecked operations eliminates an entire
    * class of bugs, so it's recommended to use it always.
    */
    library SafeCast {
    /**
    * @dev Value doesn't fit in an uint of `bits` size.
    */
    error SafeCastOverflowedUintDowncast(uint8 bits, uint256 value);
    /**
    * @dev An int value doesn't fit in an uint of `bits` size.
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 6 of 7 : Math.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    // OpenZeppelin Contracts (last updated v5.1.0) (utils/math/Math.sol)
    pragma solidity ^0.8.20;
    import {Panic} from "../Panic.sol";
    import {SafeCast} from "./SafeCast.sol";
    /**
    * @dev Standard math utilities missing in the Solidity language.
    */
    library Math {
    enum Rounding {
    Floor, // Toward negative infinity
    Ceil, // Toward positive infinity
    Trunc, // Toward zero
    Expand // Away from zero
    }
    /**
    * @dev Returns the addition of two unsigned integers, with an success flag (no overflow).
    */
    function tryAdd(uint256 a, uint256 b) internal pure returns (bool success, uint256 result) {
    unchecked {
    uint256 c = a + b;
    if (c < a) return (false, 0);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 7 of 7 : Panic.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    // OpenZeppelin Contracts (last updated v5.1.0) (utils/Panic.sol)
    pragma solidity ^0.8.20;
    /**
    * @dev Helper library for emitting standardized panic codes.
    *
    * ```solidity
    * contract Example {
    * using Panic for uint256;
    *
    * // Use any of the declared internal constants
    * function foo() { Panic.GENERIC.panic(); }
    *
    * // Alternatively
    * function foo() { Panic.panic(Panic.GENERIC); }
    * }
    * ```
    *
    * Follows the list from https://github.com/ethereum/solidity/blob/v0.8.24/libsolutil/ErrorCodes.h[libsolutil].
    *
    * _Available since v5.1._
    */
    // slither-disable-next-line unused-state
    library Panic {
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Settings
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    {
    "optimizer": {
    "enabled": false,
    "runs": 200
    },
    "outputSelection": {
    "*": {
    "*": [
    "evm.bytecode",
    "evm.deployedBytecode",
    "devdoc",
    "userdoc",
    "metadata",
    "abi"
    ]
    }
    },
    "remappings": []
    }
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Contract Security Audit

    Contract ABI

    API
    [{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AlreadyExists","type":"error"},{"inputs":[],"name":"InvalidOwner","type":"error"},{"inputs":[],"name":"InvalidRecipient","type":"error"},{"inputs":[],"name":"InvalidSender","type":"error"},{"inputs":[],"name":"NotFound","type":"error"},{"inputs":[],"name":"Unauthorized","type":"error"},{"inputs":[],"name":"UnsafeRecipient","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"ERC20Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"ERC721Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amountOrId","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseTokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dataURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"revokeOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_dataURI","type":"string"}],"name":"setDataURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"}],"name":"setNameSymbol","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_tokenURI","type":"string"}],"name":"setTokenURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"state","type":"bool"}],"name":"setWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amountOrId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]

    60c060405234801561000f575f80fd5b506040516140b43803806140b4833981810160405281019061003191906102a6565b6040518060400160405280600581526020017f50555353590000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f5055535359000000000000000000000000000000000000000000000000000000815250601261019484805f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610109576040517f49e27cff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35084600190816101b2919061050b565b5083600290816101c2919061050b565b508260ff1660808160ff1681525050608051600a6101e09190610742565b826101eb919061078c565b60a0818152505050505050506815e6a0538429d0000060045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550506107cd565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102758261024c565b9050919050565b6102858161026b565b811461028f575f80fd5b50565b5f815190506102a08161027c565b92915050565b5f602082840312156102bb576102ba610248565b5b5f6102c884828501610292565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061034c57607f821691505b60208210810361035f5761035e610308565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026103c17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610386565b6103cb8683610386565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61040f61040a610405846103e3565b6103ec565b6103e3565b9050919050565b5f819050919050565b610428836103f5565b61043c61043482610416565b848454610392565b825550505050565b5f90565b610450610444565b61045b81848461041f565b505050565b5b8181101561047e576104735f82610448565b600181019050610461565b5050565b601f8211156104c35761049481610365565b61049d84610377565b810160208510156104ac578190505b6104c06104b885610377565b830182610460565b50505b505050565b5f82821c905092915050565b5f6104e35f19846008026104c8565b1980831691505092915050565b5f6104fb83836104d4565b9150826002028217905092915050565b610514826102d1565b67ffffffffffffffff81111561052d5761052c6102db565b5b6105378254610335565b610542828285610482565b5f60209050601f831160018114610573575f8415610561578287015190505b61056b85826104f0565b8655506105d2565b601f19841661058186610365565b5f5b828110156105a857848901518255600182019150602085019450602081019050610583565b868310156105c557848901516105c1601f8916826104d4565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561065c57808604811115610638576106376105da565b5b60018516156106475780820291505b808102905061065585610607565b945061061c565b94509492505050565b5f82610674576001905061072f565b81610681575f905061072f565b816001811461069757600281146106a1576106d0565b600191505061072f565b60ff8411156106b3576106b26105da565b5b8360020a9150848211156106ca576106c96105da565b5b5061072f565b5060208310610133831016604e8410600b84101617156107055782820a905083811115610700576106ff6105da565b5b61072f565b6107128484846001610613565b92509050818404811115610729576107286105da565b5b81810290505b9392505050565b5f60ff82169050919050565b5f61074c826103e3565b915061075783610736565b92506107847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484610665565b905092915050565b5f610796826103e3565b91506107a1836103e3565b92508282026107af816103e3565b915082820484148315176107c6576107c56105da565b5b5092915050565b60805160a0516138bf6107f55f395f6108f601525f81816112c70152611ea501526138bf5ff3fe608060405234801561000f575f80fd5b50600436106101a7575f3560e01c806370a08231116100f7578063c87b56dd11610095578063e0df5b6f1161006f578063e0df5b6f146104cb578063e985e9c5146104e7578063f28ca1dd14610517578063f2fde38b14610535576101a7565b8063c87b56dd1461044d578063d547cfb71461047d578063dd62ed3e1461049b576101a7565b80639b19251a116100d15780639b19251a146103b5578063a22cb465146103e5578063a9059cbb14610401578063b88d4fde14610431576101a7565b806370a08231146103495780638da5cb5b1461037957806395d89b4114610397576101a7565b80632b968958116101645780634f02c4201161013e5780634f02c420146102c3578063504334c2146102e157806353d6fd59146102fd5780636352211e14610319576101a7565b80632b9689581461027f578063313ce5671461028957806342842e0e146102a7576101a7565b806306fdde03146101ab578063081812fc146101c9578063095ea7b3146101f957806318160ddd1461022957806318d217c31461024757806323b872dd14610263575b5f80fd5b6101b3610551565b6040516101c0919061298f565b60405180910390f35b6101e360048036038101906101de91906129f3565b6105dd565b6040516101f09190612a5d565b60405180910390f35b610213600480360381019061020e9190612aa0565b61060d565b6040516102209190612af8565b60405180910390f35b6102316108f4565b60405161023e9190612b20565b60405180910390f35b610261600480360381019061025c9190612c65565b610918565b005b61027d60048036038101906102789190612cac565b6109af565b005b6102876111a6565b005b6102916112c5565b60405161029e9190612d17565b60405180910390f35b6102c160048036038101906102bc9190612cac565b6112e9565b005b6102cb611418565b6040516102d89190612b20565b60405180910390f35b6102fb60048036038101906102f69190612d30565b61141e565b005b61031760048036038101906103129190612dd0565b6114b0565b005b610333600480360381019061032e91906129f3565b61158c565b6040516103409190612a5d565b60405180910390f35b610363600480360381019061035e9190612e0e565b61162a565b6040516103709190612b20565b60405180910390f35b61038161163f565b60405161038e9190612a5d565b60405180910390f35b61039f611662565b6040516103ac919061298f565b60405180910390f35b6103cf60048036038101906103ca9190612e0e565b6116ee565b6040516103dc9190612af8565b60405180910390f35b6103ff60048036038101906103fa9190612dd0565b61170b565b005b61041b60048036038101906104169190612aa0565b611803565b6040516104289190612af8565b60405180910390f35b61044b60048036038101906104469190612e96565b611817565b005b610467600480360381019061046291906129f3565b61194c565b604051610474919061298f565b60405180910390f35b610485611b24565b604051610492919061298f565b60405180910390f35b6104b560048036038101906104b09190612f1a565b611bb0565b6040516104c29190612b20565b60405180910390f35b6104e560048036038101906104e09190612c65565b611bd0565b005b61050160048036038101906104fc9190612f1a565b611c67565b60405161050e9190612af8565b60405180910390f35b61051f611c91565b60405161052c919061298f565b60405180910390f35b61054f600480360381019061054a9190612e0e565b611d1d565b005b6001805461055e90612f85565b80601f016020809104026020016040519081016040528092919081815260200182805461058a90612f85565b80156105d55780601f106105ac576101008083540402835291602001916105d5565b820191905f5260205f20905b8154815290600101906020018083116105b857829003601f168201915b505050505081565b6006602052805f5260405f205f915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600354821115801561061f57505f82115b15610807575f60085f8481526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015610716575060075f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561074d576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8360065f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040516107f99190612b20565b60405180910390a3506108ea565b8160055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516108e19190612b20565b60405180910390a35b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461099c576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600c90816109ab9190613152565b5050565b60035481116110675760085f8281526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610a4d576040517fddb5de5e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ab2576040517f9c8d2cd200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015610b70575060075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015610bd8575060065f8281526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15610c0f576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c17611ea2565b60045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610c62919061324e565b92505081905550610c71611ea2565b60045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160085f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060065f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555f60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600160095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2080549050610dc7919061324e565b81548110610dd857610dd7613281565b5b905f5260205f20015490508060095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600a5f8581526020019081526020015f205481548110610e4457610e43613281565b5b905f5260205f20018190555060095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20805480610e9d57610e9c6132ae565b5b600190038181905f5260205f20015f90559055600a5f8381526020019081526020015f2054600a5f8381526020019081526020015f208190555060095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2082908060018154018082558091505060019003905f5260205f20015f9091909190915055600160095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2080549050610f85919061324e565b600a5f8481526020019081526020015f2081905550818373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a48273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fe59fdd36d0d223c0c7d996db7ad796880f45e1936cb0bb7ac102e7082e03148761104c611ea2565b6040516110599190612b20565b60405180910390a3506111a1565b5f60055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611193578181611116919061324e565b60055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b61119e848484611ed5565b50505b505050565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461122a576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3565b7f000000000000000000000000000000000000000000000000000000000000000081565b6112f48383836109af565b5f8273ffffffffffffffffffffffffffffffffffffffff163b141580156113dc575063150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168273ffffffffffffffffffffffffffffffffffffffff1663150b7a023386856040518463ffffffff1660e01b815260040161137a9392919061330e565b6020604051808303815f875af1158015611396573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113ba91906133ab565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614155b15611413576040517f3da6393100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b60035481565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114a2576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6114ac8282612219565b5050565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611534576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600b5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60085f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611625576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b6004602052805f5260405f205f915090505481565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002805461166f90612f85565b80601f016020809104026020016040519081016040528092919081815260200182805461169b90612f85565b80156116e65780601f106116bd576101008083540402835291602001916116e6565b820191905f5260205f20905b8154815290600101906020018083116116c957829003601f168201915b505050505081565b600b602052805f5260405f205f915054906101000a900460ff1681565b8060075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516117f79190612af8565b60405180910390a35050565b5f61180f338484611ed5565b905092915050565b6118228585856109af565b5f8473ffffffffffffffffffffffffffffffffffffffff163b1415801561190e575063150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168473ffffffffffffffffffffffffffffffffffffffff1663150b7a0233888787876040518663ffffffff1660e01b81526004016118ac959493929190613402565b6020604051808303815f875af11580156118c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118ec91906133ab565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614155b15611945576040517f3da6393100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b60605f600d805461195c90612f85565b9050111561199657600d61196f8361223d565b604051602001611980929190613508565b6040516020818303038152906040529050611b1f565b5f6040518060400160405280600881526020017f686f61782e67696600000000000000000000000000000000000000000000000081525090505f6119d98461223d565b6040516020016119e99190613551565b604051602081830303815290604052604051602001611a0891906135e6565b604051602081830303815290604052600c83604051602001611a2b929190613508565b604051602081830303815290604052604051602001611a4b929190613607565b60405160208183030381529060405290505f604051602001611a6c90613650565b60405160208183030381529060405290505f6040518060400160405280600381526020017f225d7d000000000000000000000000000000000000000000000000000000000081525090508282604051602001611ac9929190613607565b60405160208183030381529060405281604051602001611aea929190613607565b604051602081830303815290604052604051602001611b09919061368e565b6040516020818303038152906040529450505050505b919050565b600d8054611b3190612f85565b80601f0160208091040260200160405190810160405280929190818152602001828054611b5d90612f85565b8015611ba85780601f10611b7f57610100808354040283529160200191611ba8565b820191905f5260205f20905b815481529060010190602001808311611b8b57829003601f168201915b505050505081565b6005602052815f5260405f20602052805f5260405f205f91509150505481565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c54576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600d9081611c639190613152565b5050565b6007602052815f5260405f20602052805f5260405f205f915091509054906101000a900460ff1681565b600c8054611c9e90612f85565b80601f0160208091040260200160405190810160405280929190818152602001828054611cca90612f85565b8015611d155780601f10611cec57610100808354040283529160200191611d15565b820191905f5260205f20905b815481529060010190602001808311611cf857829003601f168201915b505050505081565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611da1576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611e06576040517f49e27cff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b5f7f0000000000000000000000000000000000000000000000000000000000000000600a611ed091906137e2565b905090565b5f80611edf611ea2565b90505f60045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f60045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508460045f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254611faf919061324e565b925050819055508460045f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282540192505081905550600b5f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166120d3575f8360045f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120989190613859565b84846120a49190613859565b6120ae919061324e565b90505f5b818110156120d0576120c389612307565b80806001019150506120b2565b50505b600b5f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166121a6575f838261212e9190613859565b8460045f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546121779190613859565b612181919061324e565b90505f5b818110156121a3576121968861254c565b8080600101915050612185565b50505b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fe59fdd36d0d223c0c7d996db7ad796880f45e1936cb0bb7ac102e7082e031487876040516122039190612b20565b60405180910390a3600193505050509392505050565b81600190816122289190613152565b5080600290816122389190613152565b505050565b60605f600161224b846127ce565b0190505f8167ffffffffffffffff81111561226957612268612b41565b5b6040519080825280601f01601f19166020018201604052801561229b5781602001600182028036833780820191505090505b5090505f82602001820190505b6001156122fc578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816122f1576122f061382c565b5b0494505f85036122a8575b819350505050919050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361236c576040517fddb5de5e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600160095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20805490506123f7919061324e565b8154811061240857612407613281565b5b905f5260205f200154905060095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208054806124605761245f6132ae565b5b600190038181905f5260205f20015f90559055600a5f8281526020019081526020015f205f905560085f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560065f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055805f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036125b1576040517f9c8d2cd200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60035f81548092919060010191905055505f60035490505f73ffffffffffffffffffffffffffffffffffffffff1660085f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461265d576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8160085f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081908060018154018082558091505060019003905f5260205f20015f9091909190915055600160095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208054905061275a919061324e565b600a5f8381526020019081526020015f2081905550808273ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000831061282a577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816128205761281f61382c565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310612867576d04ee2d6d415b85acef8100000000838161285d5761285c61382c565b5b0492506020810190505b662386f26fc10000831061289657662386f26fc10000838161288c5761288b61382c565b5b0492506010810190505b6305f5e10083106128bf576305f5e10083816128b5576128b461382c565b5b0492506008810190505b61271083106128e45761271083816128da576128d961382c565b5b0492506004810190505b6064831061290757606483816128fd576128fc61382c565b5b0492506002810190505b600a8310612916576001810190505b80915050919050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6129618261291f565b61296b8185612929565b935061297b818560208601612939565b61298481612947565b840191505092915050565b5f6020820190508181035f8301526129a78184612957565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6129d2816129c0565b81146129dc575f80fd5b50565b5f813590506129ed816129c9565b92915050565b5f60208284031215612a0857612a076129b8565b5b5f612a15848285016129df565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612a4782612a1e565b9050919050565b612a5781612a3d565b82525050565b5f602082019050612a705f830184612a4e565b92915050565b612a7f81612a3d565b8114612a89575f80fd5b50565b5f81359050612a9a81612a76565b92915050565b5f8060408385031215612ab657612ab56129b8565b5b5f612ac385828601612a8c565b9250506020612ad4858286016129df565b9150509250929050565b5f8115159050919050565b612af281612ade565b82525050565b5f602082019050612b0b5f830184612ae9565b92915050565b612b1a816129c0565b82525050565b5f602082019050612b335f830184612b11565b92915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b7782612947565b810181811067ffffffffffffffff82111715612b9657612b95612b41565b5b80604052505050565b5f612ba86129af565b9050612bb48282612b6e565b919050565b5f67ffffffffffffffff821115612bd357612bd2612b41565b5b612bdc82612947565b9050602081019050919050565b828183375f83830152505050565b5f612c09612c0484612bb9565b612b9f565b905082815260208101848484011115612c2557612c24612b3d565b5b612c30848285612be9565b509392505050565b5f82601f830112612c4c57612c4b612b39565b5b8135612c5c848260208601612bf7565b91505092915050565b5f60208284031215612c7a57612c796129b8565b5b5f82013567ffffffffffffffff811115612c9757612c966129bc565b5b612ca384828501612c38565b91505092915050565b5f805f60608486031215612cc357612cc26129b8565b5b5f612cd086828701612a8c565b9350506020612ce186828701612a8c565b9250506040612cf2868287016129df565b9150509250925092565b5f60ff82169050919050565b612d1181612cfc565b82525050565b5f602082019050612d2a5f830184612d08565b92915050565b5f8060408385031215612d4657612d456129b8565b5b5f83013567ffffffffffffffff811115612d6357612d626129bc565b5b612d6f85828601612c38565b925050602083013567ffffffffffffffff811115612d9057612d8f6129bc565b5b612d9c85828601612c38565b9150509250929050565b612daf81612ade565b8114612db9575f80fd5b50565b5f81359050612dca81612da6565b92915050565b5f8060408385031215612de657612de56129b8565b5b5f612df385828601612a8c565b9250506020612e0485828601612dbc565b9150509250929050565b5f60208284031215612e2357612e226129b8565b5b5f612e3084828501612a8c565b91505092915050565b5f80fd5b5f80fd5b5f8083601f840112612e5657612e55612b39565b5b8235905067ffffffffffffffff811115612e7357612e72612e39565b5b602083019150836001820283011115612e8f57612e8e612e3d565b5b9250929050565b5f805f805f60808688031215612eaf57612eae6129b8565b5b5f612ebc88828901612a8c565b9550506020612ecd88828901612a8c565b9450506040612ede888289016129df565b935050606086013567ffffffffffffffff811115612eff57612efe6129bc565b5b612f0b88828901612e41565b92509250509295509295909350565b5f8060408385031215612f3057612f2f6129b8565b5b5f612f3d85828601612a8c565b9250506020612f4e85828601612a8c565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680612f9c57607f821691505b602082108103612faf57612fae612f58565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026130117fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612fd6565b61301b8683612fd6565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61305661305161304c846129c0565b613033565b6129c0565b9050919050565b5f819050919050565b61306f8361303c565b61308361307b8261305d565b848454612fe2565b825550505050565b5f90565b61309761308b565b6130a2818484613066565b505050565b5b818110156130c5576130ba5f8261308f565b6001810190506130a8565b5050565b601f82111561310a576130db81612fb5565b6130e484612fc7565b810160208510156130f3578190505b6131076130ff85612fc7565b8301826130a7565b50505b505050565b5f82821c905092915050565b5f61312a5f198460080261310f565b1980831691505092915050565b5f613142838361311b565b9150826002028217905092915050565b61315b8261291f565b67ffffffffffffffff81111561317457613173612b41565b5b61317e8254612f85565b6131898282856130c9565b5f60209050601f8311600181146131ba575f84156131a8578287015190505b6131b28582613137565b865550613219565b601f1984166131c886612fb5565b5f5b828110156131ef578489015182556001820191506020850194506020810190506131ca565b8683101561320c5784890151613208601f89168261311b565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f613258826129c0565b9150613263836129c0565b925082820390508181111561327b5761327a613221565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82825260208201905092915050565b50565b5f6132f95f836132db565b9150613304826132eb565b5f82019050919050565b5f6080820190506133215f830186612a4e565b61332e6020830185612a4e565b61333b6040830184612b11565b818103606083015261334c816132ee565b9050949350505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61338a81613356565b8114613394575f80fd5b50565b5f815190506133a581613381565b92915050565b5f602082840312156133c0576133bf6129b8565b5b5f6133cd84828501613397565b91505092915050565b5f6133e183856132db565b93506133ee838584612be9565b6133f783612947565b840190509392505050565b5f6080820190506134155f830188612a4e565b6134226020830187612a4e565b61342f6040830186612b11565b81810360608301526134428184866133d6565b90509695505050505050565b5f81905092915050565b5f815461346481612f85565b61346e818661344e565b9450600182165f8114613488576001811461349d576134cf565b60ff19831686528115158202860193506134cf565b6134a685612fb5565b5f5b838110156134c7578154818901526001820191506020810190506134a8565b838801955050505b50505092915050565b5f6134e28261291f565b6134ec818561344e565b93506134fc818560208601612939565b80840191505092915050565b5f6135138285613458565b915061351f82846134d8565b91508190509392505050565b7f7b226e616d65223a2022484f4158202300000000000000000000000000000000815250565b5f61355b8261352b565b60108201915061356b82846134d8565b915081905092915050565b7f222c226465736372697074696f6e223a2241205052433430342066726f6d20395f8201527f6d6d2e222c2265787465726e616c5f75726c223a22222c22696d616765223a22602082015250565b5f6135d060408361344e565b91506135db82613576565b604082019050919050565b5f6135f182846134d8565b91506135fc826135c4565b915081905092915050565b5f61361282856134d8565b915061361e82846134d8565b91508190509392505050565b7f222c2261747472696275746573223a5b00000000000000000000000000000000815250565b5f61365a8261362a565b601082019150819050919050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b757466382c0000000000815250565b5f61369882613668565b601b820191506136a882846134d8565b915081905092915050565b5f8160011c9050919050565b5f808291508390505b6001851115613708578086048111156136e4576136e3613221565b5b60018516156136f35780820291505b8081029050613701856136b3565b94506136c8565b94509492505050565b5f8261372057600190506137db565b8161372d575f90506137db565b8160018114613743576002811461374d5761377c565b60019150506137db565b60ff84111561375f5761375e613221565b5b8360020a91508482111561377657613775613221565b5b506137db565b5060208310610133831016604e8410600b84101617156137b15782820a9050838111156137ac576137ab613221565b5b6137db565b6137be84848460016136bf565b925090508184048111156137d5576137d4613221565b5b81810290505b9392505050565b5f6137ec826129c0565b91506137f783612cfc565b92506138247fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484613711565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613863826129c0565b915061386e836129c0565b92508261387e5761387d61382c565b5b82820490509291505056fea2646970667358221220fc1a6456eed97e51c05358e2d0a830f0b6e920687da0ea59ffc8c5057718afc864736f6c634300081a0033000000000000000000000000e4a1fbeabf5cdfdbe9ed2dac1181205cb2316098

    Deployed Bytecode

    0x608060405234801561000f575f80fd5b50600436106101a7575f3560e01c806370a08231116100f7578063c87b56dd11610095578063e0df5b6f1161006f578063e0df5b6f146104cb578063e985e9c5146104e7578063f28ca1dd14610517578063f2fde38b14610535576101a7565b8063c87b56dd1461044d578063d547cfb71461047d578063dd62ed3e1461049b576101a7565b80639b19251a116100d15780639b19251a146103b5578063a22cb465146103e5578063a9059cbb14610401578063b88d4fde14610431576101a7565b806370a08231146103495780638da5cb5b1461037957806395d89b4114610397576101a7565b80632b968958116101645780634f02c4201161013e5780634f02c420146102c3578063504334c2146102e157806353d6fd59146102fd5780636352211e14610319576101a7565b80632b9689581461027f578063313ce5671461028957806342842e0e146102a7576101a7565b806306fdde03146101ab578063081812fc146101c9578063095ea7b3146101f957806318160ddd1461022957806318d217c31461024757806323b872dd14610263575b5f80fd5b6101b3610551565b6040516101c0919061298f565b60405180910390f35b6101e360048036038101906101de91906129f3565b6105dd565b6040516101f09190612a5d565b60405180910390f35b610213600480360381019061020e9190612aa0565b61060d565b6040516102209190612af8565b60405180910390f35b6102316108f4565b60405161023e9190612b20565b60405180910390f35b610261600480360381019061025c9190612c65565b610918565b005b61027d60048036038101906102789190612cac565b6109af565b005b6102876111a6565b005b6102916112c5565b60405161029e9190612d17565b60405180910390f35b6102c160048036038101906102bc9190612cac565b6112e9565b005b6102cb611418565b6040516102d89190612b20565b60405180910390f35b6102fb60048036038101906102f69190612d30565b61141e565b005b61031760048036038101906103129190612dd0565b6114b0565b005b610333600480360381019061032e91906129f3565b61158c565b6040516103409190612a5d565b60405180910390f35b610363600480360381019061035e9190612e0e565b61162a565b6040516103709190612b20565b60405180910390f35b61038161163f565b60405161038e9190612a5d565b60405180910390f35b61039f611662565b6040516103ac919061298f565b60405180910390f35b6103cf60048036038101906103ca9190612e0e565b6116ee565b6040516103dc9190612af8565b60405180910390f35b6103ff60048036038101906103fa9190612dd0565b61170b565b005b61041b60048036038101906104169190612aa0565b611803565b6040516104289190612af8565b60405180910390f35b61044b60048036038101906104469190612e96565b611817565b005b610467600480360381019061046291906129f3565b61194c565b604051610474919061298f565b60405180910390f35b610485611b24565b604051610492919061298f565b60405180910390f35b6104b560048036038101906104b09190612f1a565b611bb0565b6040516104c29190612b20565b60405180910390f35b6104e560048036038101906104e09190612c65565b611bd0565b005b61050160048036038101906104fc9190612f1a565b611c67565b60405161050e9190612af8565b60405180910390f35b61051f611c91565b60405161052c919061298f565b60405180910390f35b61054f600480360381019061054a9190612e0e565b611d1d565b005b6001805461055e90612f85565b80601f016020809104026020016040519081016040528092919081815260200182805461058a90612f85565b80156105d55780601f106105ac576101008083540402835291602001916105d5565b820191905f5260205f20905b8154815290600101906020018083116105b857829003601f168201915b505050505081565b6006602052805f5260405f205f915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600354821115801561061f57505f82115b15610807575f60085f8481526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015610716575060075f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561074d576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8360065f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040516107f99190612b20565b60405180910390a3506108ea565b8160055f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516108e19190612b20565b60405180910390a35b6001905092915050565b7f000000000000000000000000000000000000000000000015e6a0538429d0000081565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461099c576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600c90816109ab9190613152565b5050565b60035481116110675760085f8281526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610a4d576040517fddb5de5e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ab2576040517f9c8d2cd200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015610b70575060075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015610bd8575060065f8281526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b15610c0f576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c17611ea2565b60045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610c62919061324e565b92505081905550610c71611ea2565b60045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160085f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060065f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555f60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600160095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2080549050610dc7919061324e565b81548110610dd857610dd7613281565b5b905f5260205f20015490508060095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600a5f8581526020019081526020015f205481548110610e4457610e43613281565b5b905f5260205f20018190555060095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20805480610e9d57610e9c6132ae565b5b600190038181905f5260205f20015f90559055600a5f8381526020019081526020015f2054600a5f8381526020019081526020015f208190555060095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2082908060018154018082558091505060019003905f5260205f20015f9091909190915055600160095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2080549050610f85919061324e565b600a5f8481526020019081526020015f2081905550818373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a48273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fe59fdd36d0d223c0c7d996db7ad796880f45e1936cb0bb7ac102e7082e03148761104c611ea2565b6040516110599190612b20565b60405180910390a3506111a1565b5f60055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611193578181611116919061324e565b60055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b61119e848484611ed5565b50505b505050565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461122a576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3565b7f000000000000000000000000000000000000000000000000000000000000001281565b6112f48383836109af565b5f8273ffffffffffffffffffffffffffffffffffffffff163b141580156113dc575063150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168273ffffffffffffffffffffffffffffffffffffffff1663150b7a023386856040518463ffffffff1660e01b815260040161137a9392919061330e565b6020604051808303815f875af1158015611396573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113ba91906133ab565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614155b15611413576040517f3da6393100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b60035481565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114a2576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6114ac8282612219565b5050565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611534576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600b5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60085f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611625576040517fc5723b5100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b6004602052805f5260405f205f915090505481565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002805461166f90612f85565b80601f016020809104026020016040519081016040528092919081815260200182805461169b90612f85565b80156116e65780601f106116bd576101008083540402835291602001916116e6565b820191905f5260205f20905b8154815290600101906020018083116116c957829003601f168201915b505050505081565b600b602052805f5260405f205f915054906101000a900460ff1681565b8060075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516117f79190612af8565b60405180910390a35050565b5f61180f338484611ed5565b905092915050565b6118228585856109af565b5f8473ffffffffffffffffffffffffffffffffffffffff163b1415801561190e575063150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168473ffffffffffffffffffffffffffffffffffffffff1663150b7a0233888787876040518663ffffffff1660e01b81526004016118ac959493929190613402565b6020604051808303815f875af11580156118c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118ec91906133ab565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614155b15611945576040517f3da6393100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b60605f600d805461195c90612f85565b9050111561199657600d61196f8361223d565b604051602001611980929190613508565b6040516020818303038152906040529050611b1f565b5f6040518060400160405280600881526020017f686f61782e67696600000000000000000000000000000000000000000000000081525090505f6119d98461223d565b6040516020016119e99190613551565b604051602081830303815290604052604051602001611a0891906135e6565b604051602081830303815290604052600c83604051602001611a2b929190613508565b604051602081830303815290604052604051602001611a4b929190613607565b60405160208183030381529060405290505f604051602001611a6c90613650565b60405160208183030381529060405290505f6040518060400160405280600381526020017f225d7d000000000000000000000000000000000000000000000000000000000081525090508282604051602001611ac9929190613607565b60405160208183030381529060405281604051602001611aea929190613607565b604051602081830303815290604052604051602001611b09919061368e565b6040516020818303038152906040529450505050505b919050565b600d8054611b3190612f85565b80601f0160208091040260200160405190810160405280929190818152602001828054611b5d90612f85565b8015611ba85780601f10611b7f57610100808354040283529160200191611ba8565b820191905f5260205f20905b815481529060010190602001808311611b8b57829003601f168201915b505050505081565b6005602052815f5260405f20602052805f5260405f205f91509150505481565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c54576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600d9081611c639190613152565b5050565b6007602052815f5260405f20602052805f5260405f205f915091509054906101000a900460ff1681565b600c8054611c9e90612f85565b80601f0160208091040260200160405190810160405280929190818152602001828054611cca90612f85565b8015611d155780601f10611cec57610100808354040283529160200191611d15565b820191905f5260205f20905b815481529060010190602001808311611cf857829003601f168201915b505050505081565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611da1576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611e06576040517f49e27cff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b5f7f0000000000000000000000000000000000000000000000000000000000000012600a611ed091906137e2565b905090565b5f80611edf611ea2565b90505f60045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f60045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508460045f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254611faf919061324e565b925050819055508460045f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282540192505081905550600b5f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166120d3575f8360045f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120989190613859565b84846120a49190613859565b6120ae919061324e565b90505f5b818110156120d0576120c389612307565b80806001019150506120b2565b50505b600b5f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166121a6575f838261212e9190613859565b8460045f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546121779190613859565b612181919061324e565b90505f5b818110156121a3576121968861254c565b8080600101915050612185565b50505b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fe59fdd36d0d223c0c7d996db7ad796880f45e1936cb0bb7ac102e7082e031487876040516122039190612b20565b60405180910390a3600193505050509392505050565b81600190816122289190613152565b5080600290816122389190613152565b505050565b60605f600161224b846127ce565b0190505f8167ffffffffffffffff81111561226957612268612b41565b5b6040519080825280601f01601f19166020018201604052801561229b5781602001600182028036833780820191505090505b5090505f82602001820190505b6001156122fc578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816122f1576122f061382c565b5b0494505f85036122a8575b819350505050919050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361236c576040517fddb5de5e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20600160095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20805490506123f7919061324e565b8154811061240857612407613281565b5b905f5260205f200154905060095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208054806124605761245f6132ae565b5b600190038181905f5260205f20015f90559055600a5f8281526020019081526020015f205f905560085f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560065f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055805f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036125b1576040517f9c8d2cd200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60035f81548092919060010191905055505f60035490505f73ffffffffffffffffffffffffffffffffffffffff1660085f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461265d576040517f23369fa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8160085f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081908060018154018082558091505060019003905f5260205f20015f9091909190915055600160095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208054905061275a919061324e565b600a5f8381526020019081526020015f2081905550808273ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000831061282a577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816128205761281f61382c565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310612867576d04ee2d6d415b85acef8100000000838161285d5761285c61382c565b5b0492506020810190505b662386f26fc10000831061289657662386f26fc10000838161288c5761288b61382c565b5b0492506010810190505b6305f5e10083106128bf576305f5e10083816128b5576128b461382c565b5b0492506008810190505b61271083106128e45761271083816128da576128d961382c565b5b0492506004810190505b6064831061290757606483816128fd576128fc61382c565b5b0492506002810190505b600a8310612916576001810190505b80915050919050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6129618261291f565b61296b8185612929565b935061297b818560208601612939565b61298481612947565b840191505092915050565b5f6020820190508181035f8301526129a78184612957565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6129d2816129c0565b81146129dc575f80fd5b50565b5f813590506129ed816129c9565b92915050565b5f60208284031215612a0857612a076129b8565b5b5f612a15848285016129df565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612a4782612a1e565b9050919050565b612a5781612a3d565b82525050565b5f602082019050612a705f830184612a4e565b92915050565b612a7f81612a3d565b8114612a89575f80fd5b50565b5f81359050612a9a81612a76565b92915050565b5f8060408385031215612ab657612ab56129b8565b5b5f612ac385828601612a8c565b9250506020612ad4858286016129df565b9150509250929050565b5f8115159050919050565b612af281612ade565b82525050565b5f602082019050612b0b5f830184612ae9565b92915050565b612b1a816129c0565b82525050565b5f602082019050612b335f830184612b11565b92915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b7782612947565b810181811067ffffffffffffffff82111715612b9657612b95612b41565b5b80604052505050565b5f612ba86129af565b9050612bb48282612b6e565b919050565b5f67ffffffffffffffff821115612bd357612bd2612b41565b5b612bdc82612947565b9050602081019050919050565b828183375f83830152505050565b5f612c09612c0484612bb9565b612b9f565b905082815260208101848484011115612c2557612c24612b3d565b5b612c30848285612be9565b509392505050565b5f82601f830112612c4c57612c4b612b39565b5b8135612c5c848260208601612bf7565b91505092915050565b5f60208284031215612c7a57612c796129b8565b5b5f82013567ffffffffffffffff811115612c9757612c966129bc565b5b612ca384828501612c38565b91505092915050565b5f805f60608486031215612cc357612cc26129b8565b5b5f612cd086828701612a8c565b9350506020612ce186828701612a8c565b9250506040612cf2868287016129df565b9150509250925092565b5f60ff82169050919050565b612d1181612cfc565b82525050565b5f602082019050612d2a5f830184612d08565b92915050565b5f8060408385031215612d4657612d456129b8565b5b5f83013567ffffffffffffffff811115612d6357612d626129bc565b5b612d6f85828601612c38565b925050602083013567ffffffffffffffff811115612d9057612d8f6129bc565b5b612d9c85828601612c38565b9150509250929050565b612daf81612ade565b8114612db9575f80fd5b50565b5f81359050612dca81612da6565b92915050565b5f8060408385031215612de657612de56129b8565b5b5f612df385828601612a8c565b9250506020612e0485828601612dbc565b9150509250929050565b5f60208284031215612e2357612e226129b8565b5b5f612e3084828501612a8c565b91505092915050565b5f80fd5b5f80fd5b5f8083601f840112612e5657612e55612b39565b5b8235905067ffffffffffffffff811115612e7357612e72612e39565b5b602083019150836001820283011115612e8f57612e8e612e3d565b5b9250929050565b5f805f805f60808688031215612eaf57612eae6129b8565b5b5f612ebc88828901612a8c565b9550506020612ecd88828901612a8c565b9450506040612ede888289016129df565b935050606086013567ffffffffffffffff811115612eff57612efe6129bc565b5b612f0b88828901612e41565b92509250509295509295909350565b5f8060408385031215612f3057612f2f6129b8565b5b5f612f3d85828601612a8c565b9250506020612f4e85828601612a8c565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680612f9c57607f821691505b602082108103612faf57612fae612f58565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026130117fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612fd6565b61301b8683612fd6565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61305661305161304c846129c0565b613033565b6129c0565b9050919050565b5f819050919050565b61306f8361303c565b61308361307b8261305d565b848454612fe2565b825550505050565b5f90565b61309761308b565b6130a2818484613066565b505050565b5b818110156130c5576130ba5f8261308f565b6001810190506130a8565b5050565b601f82111561310a576130db81612fb5565b6130e484612fc7565b810160208510156130f3578190505b6131076130ff85612fc7565b8301826130a7565b50505b505050565b5f82821c905092915050565b5f61312a5f198460080261310f565b1980831691505092915050565b5f613142838361311b565b9150826002028217905092915050565b61315b8261291f565b67ffffffffffffffff81111561317457613173612b41565b5b61317e8254612f85565b6131898282856130c9565b5f60209050601f8311600181146131ba575f84156131a8578287015190505b6131b28582613137565b865550613219565b601f1984166131c886612fb5565b5f5b828110156131ef578489015182556001820191506020850194506020810190506131ca565b8683101561320c5784890151613208601f89168261311b565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f613258826129c0565b9150613263836129c0565b925082820390508181111561327b5761327a613221565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82825260208201905092915050565b50565b5f6132f95f836132db565b9150613304826132eb565b5f82019050919050565b5f6080820190506133215f830186612a4e565b61332e6020830185612a4e565b61333b6040830184612b11565b818103606083015261334c816132ee565b9050949350505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61338a81613356565b8114613394575f80fd5b50565b5f815190506133a581613381565b92915050565b5f602082840312156133c0576133bf6129b8565b5b5f6133cd84828501613397565b91505092915050565b5f6133e183856132db565b93506133ee838584612be9565b6133f783612947565b840190509392505050565b5f6080820190506134155f830188612a4e565b6134226020830187612a4e565b61342f6040830186612b11565b81810360608301526134428184866133d6565b90509695505050505050565b5f81905092915050565b5f815461346481612f85565b61346e818661344e565b9450600182165f8114613488576001811461349d576134cf565b60ff19831686528115158202860193506134cf565b6134a685612fb5565b5f5b838110156134c7578154818901526001820191506020810190506134a8565b838801955050505b50505092915050565b5f6134e28261291f565b6134ec818561344e565b93506134fc818560208601612939565b80840191505092915050565b5f6135138285613458565b915061351f82846134d8565b91508190509392505050565b7f7b226e616d65223a2022484f4158202300000000000000000000000000000000815250565b5f61355b8261352b565b60108201915061356b82846134d8565b915081905092915050565b7f222c226465736372697074696f6e223a2241205052433430342066726f6d20395f8201527f6d6d2e222c2265787465726e616c5f75726c223a22222c22696d616765223a22602082015250565b5f6135d060408361344e565b91506135db82613576565b604082019050919050565b5f6135f182846134d8565b91506135fc826135c4565b915081905092915050565b5f61361282856134d8565b915061361e82846134d8565b91508190509392505050565b7f222c2261747472696275746573223a5b00000000000000000000000000000000815250565b5f61365a8261362a565b601082019150819050919050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b757466382c0000000000815250565b5f61369882613668565b601b820191506136a882846134d8565b915081905092915050565b5f8160011c9050919050565b5f808291508390505b6001851115613708578086048111156136e4576136e3613221565b5b60018516156136f35780820291505b8081029050613701856136b3565b94506136c8565b94509492505050565b5f8261372057600190506137db565b8161372d575f90506137db565b8160018114613743576002811461374d5761377c565b60019150506137db565b60ff84111561375f5761375e613221565b5b8360020a91508482111561377657613775613221565b5b506137db565b5060208310610133831016604e8410600b84101617156137b15782820a9050838111156137ac576137ab613221565b5b6137db565b6137be84848460016136bf565b925090508184048111156137d5576137d4613221565b5b81810290505b9392505050565b5f6137ec826129c0565b91506137f783612cfc565b92506138247fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484613711565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613863826129c0565b915061386e836129c0565b92508261387e5761387d61382c565b5b82820490509291505056fea2646970667358221220fc1a6456eed97e51c05358e2d0a830f0b6e920687da0ea59ffc8c5057718afc864736f6c634300081a0033

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

    000000000000000000000000e4a1fbeabf5cdfdbe9ed2dac1181205cb2316098

    -----Decoded View---------------
    Arg [0] : _owner (address): 0xe4A1FbEabF5CDfdbe9ed2Dac1181205cb2316098

    -----Encoded View---------------
    1 Constructor Arguments found :
    Arg [0] : 000000000000000000000000e4a1fbeabf5cdfdbe9ed2dac1181205cb2316098


    [ Download: CSV Export  ]

    A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.