Contract 0x6207ed574152496c9B072C24FD87cE9cd9E17320

 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x3a00726765ea180087261fae2e4836181abe485536317dd8a7768196ce6724f1Execute Transact...403290562022-11-22 18:43:5711 days 13 hrs ago0x512fce9b07ce64590849115ee6b32fd40ec0f5f3 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00004377
0xb50eb4b7edfa9992874da5bd145add146f96d72143c8837a17d321baef6758b3Confirm Transact...403288042022-11-22 18:42:5011 days 13 hrs ago0xf01cc7154e255d20489e091a5aea10bc136696a8 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00004782
0xd0f2ea8cb7c31fdaf02963feb32087824148e1900853102aa91fe2dd4656380fConfirm Transact...403287162022-11-22 18:42:2411 days 13 hrs ago0xaffc70b81d54f229a5f50ec07e2c76d2aaad07ae IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.0004551
0xe00c16bab275233bf4cf311336b52b451f4274221cc0b66320db6b21df6aab85Submit Transacti...403286002022-11-22 18:41:5011 days 13 hrs ago0x512fce9b07ce64590849115ee6b32fd40ec0f5f3 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00009781
0x83f006ab1e46401e565bfa5f84ea71bb4f38f2286a96a479c4fc29b86842b546Execute Transact...403278312022-11-22 18:38:2011 days 13 hrs ago0x512fce9b07ce64590849115ee6b32fd40ec0f5f3 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00004579
0x105ee5683783eff32b452a1a40ea8c5fa1302f3a3a7dadaeb5c96a9066240d6dConfirm Transact...403276612022-11-22 18:37:3111 days 13 hrs ago0xf01cc7154e255d20489e091a5aea10bc136696a8 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00004782
0x12c5995fc6e531f6a752f72e48f9b5d031a34e4d818942a1031c7d3476623f2bConfirm Transact...403238812022-11-22 18:20:1711 days 14 hrs ago0xaffc70b81d54f229a5f50ec07e2c76d2aaad07ae IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00037847
0xe0fe9444d2c2113ed1aa8d1cdf07d1bfe3f76694e35ba0d9e0bf4a3871ca1f4cSubmit Transacti...403224392022-11-22 18:14:0011 days 14 hrs ago0x512fce9b07ce64590849115ee6b32fd40ec0f5f3 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00007203
0x0959746d36329663b7c6a041b0f71a9d098f5cabc2268925de08bff4cb2b7a99Confirm Transact...254116442022-09-20 6:42:1175 days 1 hr ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00014743
0xc190beb8b90c1cc613a134f5f3f9ce7e40caad40d8604a5c0021139d5fc633d8Confirm Transact...253608672022-09-20 0:04:4775 days 8 hrs ago0xaffc70b81d54f229a5f50ec07e2c76d2aaad07ae IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00018041
0xcc6a405bde29c3381037b7676b809ee70df06041804e0bcf192fc7ce52a4ebebSubmit Transacti...253586972022-09-19 23:41:4075 days 8 hrs ago0x512fce9b07ce64590849115ee6b32fd40ec0f5f3 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00018596
0xd89e94907c1a6dca5cf207b30818f73152144f5762248f2ee7e4a64b618ab48bConfirm Transact...243030532022-09-12 20:39:0182 days 11 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00017943
0xcf195aa1b98f248b0750e71907f49e06042ab5903d6f9742bd76470862ff6ae2Confirm Transact...243030262022-09-12 20:38:3882 days 11 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00024576
0x71772c126cc8455b50070329f60eb8bd44fa2b697085cef55367bc4019fcb285Confirm Transact...242995982022-09-12 19:51:1182 days 12 hrs ago0xaffc70b81d54f229a5f50ec07e2c76d2aaad07ae IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00030381
0xcb55a83f48dc1615b0af89f2a055edac90c9b00cb81bffe101bd365111f9e5c4Confirm Transact...242995752022-09-12 19:51:0082 days 12 hrs ago0xaffc70b81d54f229a5f50ec07e2c76d2aaad07ae IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00030381
0x77e6ebc1cd2f2e75904c870264f6e9b84b550a6aa2b3619443c41fc5cfdcc84fSubmit Transacti...242991492022-09-12 19:44:0582 days 12 hrs ago0x512fce9b07ce64590849115ee6b32fd40ec0f5f3 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00050098
0x9859c43c8d05f73da9e505dac8d2e6a7f55a15934ef3d8bd2566583664466732Submit Transacti...242991122022-09-12 19:43:3482 days 12 hrs ago0x512fce9b07ce64590849115ee6b32fd40ec0f5f3 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.00061009
0xe267d5525e860496b0f46c5f661f281ef39903638965a1b5518dddccad1b7e6cConfirm Transact...218240462022-08-29 9:22:0996 days 23 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.000115181118 ETH
0x14fd399ffc1c5a8b3510918cf5bd401460ebfc48b1f95ea786ef050d1f0bc800Confirm Transact...218239812022-08-29 9:21:0096 days 23 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.000115183174 ETH
0x3b634e36e53478d8c7694610f469b6a13111a3b04f0a08f86fdd56909b76b9d4Confirm Transact...218239442022-08-29 9:21:0096 days 23 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.000114993458 ETH
0xbbb5d5944ac6e9b4bd30097168f9d1f1bd7fb7048283ed8c9b8b0b660d52045bConfirm Transact...218239042022-08-29 9:21:0096 days 23 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.000156317251 ETH
0x8873c271684b7fe074980bbea64dfc2fe8871b51ec4077b20cc0d1b24a9bad81Confirm Transact...218238572022-08-29 9:21:0096 days 23 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.000073889812 ETH
0xf0e22dbd4f867fb6b73bd00e84ce728ba432c9fe60cab4dad5fd2cc2823fdb23Confirm Transact...218237732022-08-29 9:19:1196 days 23 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.000094469736 ETH
0x47cdb7a9c67f49cc53bbb6abd29367eaec210e0c38056a9fd75cab1876731c33Confirm Transact...218237252022-08-29 9:19:1196 days 23 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.000087420091 ETH
0xcd7d8f88bd2b141f1bfd60bdc5f5ff0be84879885c77db709b0a0657733f68b3Confirm Transact...218236532022-08-29 9:19:1196 days 23 hrs ago0x7019be4e4eb74ca5f61224feaf687d2b43998516 IN  0x6207ed574152496c9b072c24fd87ce9cd9e173200 ETH0.000094278101 ETH
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x3a00726765ea180087261fae2e4836181abe485536317dd8a7768196ce6724f1403290562022-11-22 18:43:5711 days 13 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0x5a5884fc31948d59df2aeccca143de900d49e1a30 ETH
0xb50eb4b7edfa9992874da5bd145add146f96d72143c8837a17d321baef6758b3403288042022-11-22 18:42:5011 days 13 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0x5a5884fc31948d59df2aeccca143de900d49e1a30 ETH
0x83f006ab1e46401e565bfa5f84ea71bb4f38f2286a96a479c4fc29b86842b546403278312022-11-22 18:38:2011 days 13 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0x5a5884fc31948d59df2aeccca143de900d49e1a30 ETH
0x105ee5683783eff32b452a1a40ea8c5fa1302f3a3a7dadaeb5c96a9066240d6d403276612022-11-22 18:37:3111 days 13 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0x5a5884fc31948d59df2aeccca143de900d49e1a30 ETH
0x0959746d36329663b7c6a041b0f71a9d098f5cabc2268925de08bff4cb2b7a99254116442022-09-20 6:42:1175 days 1 hr ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0xd89e94907c1a6dca5cf207b30818f73152144f5762248f2ee7e4a64b618ab48b243030532022-09-12 20:39:0182 days 11 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0xcf195aa1b98f248b0750e71907f49e06042ab5903d6f9742bd76470862ff6ae2243030262022-09-12 20:38:3882 days 11 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0xe267d5525e860496b0f46c5f661f281ef39903638965a1b5518dddccad1b7e6c218240462022-08-29 9:22:0996 days 23 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x14fd399ffc1c5a8b3510918cf5bd401460ebfc48b1f95ea786ef050d1f0bc800218239812022-08-29 9:21:0096 days 23 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x3b634e36e53478d8c7694610f469b6a13111a3b04f0a08f86fdd56909b76b9d4218239442022-08-29 9:21:0096 days 23 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0xbbb5d5944ac6e9b4bd30097168f9d1f1bd7fb7048283ed8c9b8b0b660d52045b218239042022-08-29 9:21:0096 days 23 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x8873c271684b7fe074980bbea64dfc2fe8871b51ec4077b20cc0d1b24a9bad81218238572022-08-29 9:21:0096 days 23 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0x5ef4c5352882b10893b70dbcaa0c000965bd23c50 ETH
0xf0e22dbd4f867fb6b73bd00e84ce728ba432c9fe60cab4dad5fd2cc2823fdb23218237732022-08-29 9:19:1196 days 23 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x47cdb7a9c67f49cc53bbb6abd29367eaec210e0c38056a9fd75cab1876731c33218237252022-08-29 9:19:1196 days 23 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0xcd7d8f88bd2b141f1bfd60bdc5f5ff0be84879885c77db709b0a0657733f68b3218236532022-08-29 9:19:1196 days 23 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x28a64a185b699ee31266d2c409f761b095dc8c4afde3d8163b0f7f6eda246cf4184639682022-07-24 18:21:52132 days 14 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x139b236aa7f2dcf61c0810eb2ed75b04719f08bbd261500081e76371cdab8dca137986682022-06-05 16:29:39181 days 15 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x3ee69b2ebe83c65a6aded99ab2ff7cbe3cf181d0f67761afd3a41ce117107339129427052022-05-25 16:56:58192 days 15 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x34f0419ef7e87b5d5a7492dc021c0a7ba04f78d99be102a87437d85aa6300a12128711802022-05-24 16:25:58193 days 15 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x7d5de57918f013c39b596f4d3b4e4e1a71c7cd3b78db82b73f1c8f580d80fbe6106854852022-04-27 19:23:21220 days 13 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x3142a6d605666f0cc158cee990a91cc81d463426b909a84484e2d632b40d05dd82765852022-03-21 21:31:51257 days 10 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xce88686553686da562ce7cea497ce749da109f9f0 ETH
0x0a41e264a834f0c7641ababdb54861e0f523c3ea424095abce8fe2116801cda882765682022-03-21 21:31:51257 days 10 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xa331d84ec860bf466b4cdccfb4ac09a1b43f3ae60 ETH
0x0e9cb0421431c899e24a9dc30cb2ecd6918d11fa2d71d7de878607b85f7309b882712802022-03-21 18:53:59257 days 13 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xce88686553686da562ce7cea497ce749da109f9f0 ETH
0x17d72115bb5ad2ee449fd02ac3d255381db3efc9c035cb8d059ab3e348f125d482712112022-03-21 18:51:22257 days 13 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xce88686553686da562ce7cea497ce749da109f9f0 ETH
0x9c425d439dba24a4f29fb15a350bcaf9a547c2fd9d9238a95c88d9bb72d080ee82711762022-03-21 18:49:39257 days 13 hrs ago 0x6207ed574152496c9b072c24fd87ce9cd9e17320 0xce88686553686da562ce7cea497ce749da109f9f0 ETH
[ Download CSV Export 
Loading

Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0xb9349347fcC0318137e6143A01c6582C072Fb581

Contract Name:
MultiSigWalletWithDailyLimit

Compiler Version
v0.4.19+commit.c4cbbb05

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU LGPLv3 license
/**
 *Submitted for verification at Arbiscan on 2022-07-22
*/

contract Factory {

    /*
     *  Events
     */
    event ContractInstantiation(address sender, address instantiation);

    /*
     *  Storage
     */
    mapping(address => bool) public isInstantiation;
    mapping(address => address[]) public instantiations;

    /*
     * Public functions
     */
    /// @dev Returns number of instantiations by creator.
    /// @param creator Contract creator.
    /// @return Returns number of instantiations by creator.
    function getInstantiationCount(address creator)
        public
        constant
        returns (uint)
    {
        return instantiations[creator].length;
    }

    /*
     * Internal functions
     */
    /// @dev Registers contract in factory registry.
    /// @param instantiation Address of contract instantiation.
    function register(address instantiation)
        internal
    {
        isInstantiation[instantiation] = true;
        instantiations[msg.sender].push(instantiation);
        ContractInstantiation(msg.sender, instantiation);
    }
}

/// @title Multisignature wallet - Allows multiple parties to agree on transactions before execution.
/// @author Stefan George - <[email protected]>
contract MultiSigWallet {

    /*
     *  Events
     */
    event Confirmation(address indexed sender, uint indexed transactionId);
    event Revocation(address indexed sender, uint indexed transactionId);
    event Submission(uint indexed transactionId);
    event Execution(uint indexed transactionId);
    event ExecutionFailure(uint indexed transactionId);
    event Deposit(address indexed sender, uint value);
    event OwnerAddition(address indexed owner);
    event OwnerRemoval(address indexed owner);
    event RequirementChange(uint required);

    /*
     *  Constants
     */
    uint constant public MAX_OWNER_COUNT = 50;

    /*
     *  Storage
     */
    mapping (uint => Transaction) public transactions;
    mapping (uint => mapping (address => bool)) public confirmations;
    mapping (address => bool) public isOwner;
    address[] public owners;
    uint public required;
    uint public transactionCount;

    struct Transaction {
        address destination;
        uint value;
        bytes data;
        bool executed;
    }

    /*
     *  Modifiers
     */
    modifier onlyWallet() {
        require(msg.sender == address(this));
        _;
    }

    modifier ownerDoesNotExist(address owner) {
        require(!isOwner[owner]);
        _;
    }

    modifier ownerExists(address owner) {
        require(isOwner[owner]);
        _;
    }

    modifier transactionExists(uint transactionId) {
        require(transactions[transactionId].destination != 0);
        _;
    }

    modifier confirmed(uint transactionId, address owner) {
        require(confirmations[transactionId][owner]);
        _;
    }

    modifier notConfirmed(uint transactionId, address owner) {
        require(!confirmations[transactionId][owner]);
        _;
    }

    modifier notExecuted(uint transactionId) {
        require(!transactions[transactionId].executed);
        _;
    }

    modifier notNull(address _address) {
        require(_address != 0);
        _;
    }

    modifier validRequirement(uint ownerCount, uint _required) {
        require(ownerCount <= MAX_OWNER_COUNT
            && _required <= ownerCount
            && _required != 0
            && ownerCount != 0);
        _;
    }

    /// @dev Fallback function allows to deposit ether.
    function()
        payable
    {
        if (msg.value > 0)
            Deposit(msg.sender, msg.value);
    }

    /*
     * Public functions
     */
    /// @dev Contract constructor sets initial owners and required number of confirmations.
    /// @param _owners List of initial owners.
    /// @param _required Number of required confirmations.
    function MultiSigWallet(address[] _owners, uint _required)
        public
        validRequirement(_owners.length, _required)
    {
        for (uint i=0; i<_owners.length; i++) {
            require(!isOwner[_owners[i]] && _owners[i] != 0);
            isOwner[_owners[i]] = true;
        }
        owners = _owners;
        required = _required;
    }

    /// @dev Allows to add a new owner. Transaction has to be sent by wallet.
    /// @param owner Address of new owner.
    function addOwner(address owner)
        public
        onlyWallet
        ownerDoesNotExist(owner)
        notNull(owner)
        validRequirement(owners.length + 1, required)
    {
        isOwner[owner] = true;
        owners.push(owner);
        OwnerAddition(owner);
    }

    /// @dev Allows to remove an owner. Transaction has to be sent by wallet.
    /// @param owner Address of owner.
    function removeOwner(address owner)
        public
        onlyWallet
        ownerExists(owner)
    {
        isOwner[owner] = false;
        for (uint i=0; i<owners.length - 1; i++)
            if (owners[i] == owner) {
                owners[i] = owners[owners.length - 1];
                break;
            }
        owners.length -= 1;
        if (required > owners.length)
            changeRequirement(owners.length);
        OwnerRemoval(owner);
    }

    /// @dev Allows to replace an owner with a new owner. Transaction has to be sent by wallet.
    /// @param owner Address of owner to be replaced.
    /// @param newOwner Address of new owner.
    function replaceOwner(address owner, address newOwner)
        public
        onlyWallet
        ownerExists(owner)
        ownerDoesNotExist(newOwner)
    {
        for (uint i=0; i<owners.length; i++)
            if (owners[i] == owner) {
                owners[i] = newOwner;
                break;
            }
        isOwner[owner] = false;
        isOwner[newOwner] = true;
        OwnerRemoval(owner);
        OwnerAddition(newOwner);
    }

    /// @dev Allows to change the number of required confirmations. Transaction has to be sent by wallet.
    /// @param _required Number of required confirmations.
    function changeRequirement(uint _required)
        public
        onlyWallet
        validRequirement(owners.length, _required)
    {
        required = _required;
        RequirementChange(_required);
    }

    /// @dev Allows an owner to submit and confirm a transaction.
    /// @param destination Transaction target address.
    /// @param value Transaction ether value.
    /// @param data Transaction data payload.
    /// @return Returns transaction ID.
    function submitTransaction(address destination, uint value, bytes data)
        public
        returns (uint transactionId)
    {
        transactionId = addTransaction(destination, value, data);
        confirmTransaction(transactionId);
    }

    /// @dev Allows an owner to confirm a transaction.
    /// @param transactionId Transaction ID.
    function confirmTransaction(uint transactionId)
        public
        ownerExists(msg.sender)
        transactionExists(transactionId)
        notConfirmed(transactionId, msg.sender)
    {
        confirmations[transactionId][msg.sender] = true;
        Confirmation(msg.sender, transactionId);
        executeTransaction(transactionId);
    }

    /// @dev Allows an owner to revoke a confirmation for a transaction.
    /// @param transactionId Transaction ID.
    function revokeConfirmation(uint transactionId)
        public
        ownerExists(msg.sender)
        confirmed(transactionId, msg.sender)
        notExecuted(transactionId)
    {
        confirmations[transactionId][msg.sender] = false;
        Revocation(msg.sender, transactionId);
    }

    /// @dev Allows anyone to execute a confirmed transaction.
    /// @param transactionId Transaction ID.
    function executeTransaction(uint transactionId)
        public
        ownerExists(msg.sender)
        confirmed(transactionId, msg.sender)
        notExecuted(transactionId)
    {
        if (isConfirmed(transactionId)) {
            Transaction storage txn = transactions[transactionId];
            txn.executed = true;
            if (txn.destination.call.value(txn.value)(txn.data))
                Execution(transactionId);
            else {
                ExecutionFailure(transactionId);
                txn.executed = false;
            }
        }
    }

    /// @dev Returns the confirmation status of a transaction.
    /// @param transactionId Transaction ID.
    /// @return Confirmation status.
    function isConfirmed(uint transactionId)
        public
        constant
        returns (bool)
    {
        uint count = 0;
        for (uint i=0; i<owners.length; i++) {
            if (confirmations[transactionId][owners[i]])
                count += 1;
            if (count == required)
                return true;
        }
    }

    /*
     * Internal functions
     */
    /// @dev Adds a new transaction to the transaction mapping, if transaction does not exist yet.
    /// @param destination Transaction target address.
    /// @param value Transaction ether value.
    /// @param data Transaction data payload.
    /// @return Returns transaction ID.
    function addTransaction(address destination, uint value, bytes data)
        internal
        notNull(destination)
        returns (uint transactionId)
    {
        transactionId = transactionCount;
        transactions[transactionId] = Transaction({
            destination: destination,
            value: value,
            data: data,
            executed: false
        });
        transactionCount += 1;
        Submission(transactionId);
    }

    /*
     * Web3 call functions
     */
    /// @dev Returns number of confirmations of a transaction.
    /// @param transactionId Transaction ID.
    /// @return Number of confirmations.
    function getConfirmationCount(uint transactionId)
        public
        constant
        returns (uint count)
    {
        for (uint i=0; i<owners.length; i++)
            if (confirmations[transactionId][owners[i]])
                count += 1;
    }

    /// @dev Returns total number of transactions after filers are applied.
    /// @param pending Include pending transactions.
    /// @param executed Include executed transactions.
    /// @return Total number of transactions after filters are applied.
    function getTransactionCount(bool pending, bool executed)
        public
        constant
        returns (uint count)
    {
        for (uint i=0; i<transactionCount; i++)
            if (   pending && !transactions[i].executed
                || executed && transactions[i].executed)
                count += 1;
    }

    /// @dev Returns list of owners.
    /// @return List of owner addresses.
    function getOwners()
        public
        constant
        returns (address[])
    {
        return owners;
    }

    /// @dev Returns array with owner addresses, which confirmed transaction.
    /// @param transactionId Transaction ID.
    /// @return Returns array of owner addresses.
    function getConfirmations(uint transactionId)
        public
        constant
        returns (address[] _confirmations)
    {
        address[] memory confirmationsTemp = new address[](owners.length);
        uint count = 0;
        uint i;
        for (i=0; i<owners.length; i++)
            if (confirmations[transactionId][owners[i]]) {
                confirmationsTemp[count] = owners[i];
                count += 1;
            }
        _confirmations = new address[](count);
        for (i=0; i<count; i++)
            _confirmations[i] = confirmationsTemp[i];
    }

    /// @dev Returns list of transaction IDs in defined range.
    /// @param from Index start position of transaction array.
    /// @param to Index end position of transaction array.
    /// @param pending Include pending transactions.
    /// @param executed Include executed transactions.
    /// @return Returns array of transaction IDs.
    function getTransactionIds(uint from, uint to, bool pending, bool executed)
        public
        constant
        returns (uint[] _transactionIds)
    {
        uint[] memory transactionIdsTemp = new uint[](transactionCount);
        uint count = 0;
        uint i;
        for (i=0; i<transactionCount; i++)
            if (   pending && !transactions[i].executed
                || executed && transactions[i].executed)
            {
                transactionIdsTemp[count] = i;
                count += 1;
            }
        _transactionIds = new uint[](to - from);
        for (i=from; i<to; i++)
            _transactionIds[i - from] = transactionIdsTemp[i];
    }
}

/// @title Multisignature wallet with daily limit - Allows an owner to withdraw a daily limit without multisig.
/// @author Stefan George - <[email protected]>
contract MultiSigWalletWithDailyLimit is MultiSigWallet {

    /*
     *  Events
     */
    event DailyLimitChange(uint dailyLimit);

    /*
     *  Storage
     */
    uint public dailyLimit;
    uint public lastDay;
    uint public spentToday;

    /*
     * Public functions
     */
    /// @dev Contract constructor sets initial owners, required number of confirmations and daily withdraw limit.
    /// @param _owners List of initial owners.
    /// @param _required Number of required confirmations.
    /// @param _dailyLimit Amount in wei, which can be withdrawn without confirmations on a daily basis.
    function MultiSigWalletWithDailyLimit(address[] _owners, uint _required, uint _dailyLimit)
        public
        MultiSigWallet(_owners, _required)
    {
        dailyLimit = _dailyLimit;
    }

    /// @dev Allows to change the daily limit. Transaction has to be sent by wallet.
    /// @param _dailyLimit Amount in wei.
    function changeDailyLimit(uint _dailyLimit)
        public
        onlyWallet
    {
        dailyLimit = _dailyLimit;
        DailyLimitChange(_dailyLimit);
    }

    /// @dev Allows anyone to execute a confirmed transaction or ether withdraws until daily limit is reached.
    /// @param transactionId Transaction ID.
    function executeTransaction(uint transactionId)
        public
        ownerExists(msg.sender)
        confirmed(transactionId, msg.sender)
        notExecuted(transactionId)
    {
        Transaction storage txn = transactions[transactionId];
        bool _confirmed = isConfirmed(transactionId);
        if (_confirmed || txn.data.length == 0 && isUnderLimit(txn.value)) {
            txn.executed = true;
            if (!_confirmed)
                spentToday += txn.value;
            if (txn.destination.call.value(txn.value)(txn.data))
                Execution(transactionId);
            else {
                ExecutionFailure(transactionId);
                txn.executed = false;
                if (!_confirmed)
                    spentToday -= txn.value;
            }
        }
    }

    /*
     * Internal functions
     */
    /// @dev Returns if amount is within daily limit and resets spentToday after one day.
    /// @param amount Amount to withdraw.
    /// @return Returns if amount is under daily limit.
    function isUnderLimit(uint amount)
        internal
        returns (bool)
    {
        if (now > lastDay + 24 hours) {
            lastDay = now;
            spentToday = 0;
        }
        if (spentToday + amount > dailyLimit || spentToday + amount < spentToday)
            return false;
        return true;
    }

    /*
     * Web3 call functions
     */
    /// @dev Returns maximum withdraw amount.
    /// @return Returns amount.
    function calcMaxWithdraw()
        public
        constant
        returns (uint)
    {
        if (now > lastDay + 24 hours)
            return dailyLimit;
        if (dailyLimit < spentToday)
            return 0;
        return dailyLimit - spentToday;
    }
}

Contract ABI

[{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"owners","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"owner","type":"address"}],"name":"removeOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"revokeConfirmation","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"address"}],"name":"confirmations","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"calcMaxWithdraw","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"pending","type":"bool"},{"name":"executed","type":"bool"}],"name":"getTransactionCount","outputs":[{"name":"count","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"dailyLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastDay","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"owner","type":"address"}],"name":"addOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"isConfirmed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"getConfirmationCount","outputs":[{"name":"count","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"transactions","outputs":[{"name":"destination","type":"address"},{"name":"value","type":"uint256"},{"name":"data","type":"bytes"},{"name":"executed","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getOwners","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"from","type":"uint256"},{"name":"to","type":"uint256"},{"name":"pending","type":"bool"},{"name":"executed","type":"bool"}],"name":"getTransactionIds","outputs":[{"name":"_transactionIds","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"getConfirmations","outputs":[{"name":"_confirmations","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"transactionCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_required","type":"uint256"}],"name":"changeRequirement","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"confirmTransaction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"destination","type":"address"},{"name":"value","type":"uint256"},{"name":"data","type":"bytes"}],"name":"submitTransaction","outputs":[{"name":"transactionId","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_dailyLimit","type":"uint256"}],"name":"changeDailyLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"MAX_OWNER_COUNT","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"required","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"owner","type":"address"},{"name":"newOwner","type":"address"}],"name":"replaceOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"transactionId","type":"uint256"}],"name":"executeTransaction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"spentToday","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_owners","type":"address[]"},{"name":"_required","type":"uint256"},{"name":"_dailyLimit","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"dailyLimit","type":"uint256"}],"name":"DailyLimitChange","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"Confirmation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"Revocation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"Submission","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"Execution","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"transactionId","type":"uint256"}],"name":"ExecutionFailure","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"OwnerAddition","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"OwnerRemoval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"required","type":"uint256"}],"name":"RequirementChange","type":"event"}]

606060405234156200001057600080fd5b60405162002616380380620026168339810160405280805182019190602001805190602001909190805190602001909190505082826000825182603282111580156200005c5750818111155b80156200006a575060008114155b801562000078575060008214155b15156200008457600080fd5b600092505b8451831015620001bf57600260008685815181101515620000a657fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015620001355750600085848151811015156200011257fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1614155b15156200014157600080fd5b60016002600087868151811015156200015657fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550828060010193505062000089565b8460039080519060200190620001d7929190620001f4565b5083600481905550505050505080600681905550505050620002c9565b82805482825590600052602060002090810192821562000270579160200282015b828111156200026f5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019062000215565b5b5090506200027f919062000283565b5090565b620002c691905b80821115620002c257600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055506001016200028a565b5090565b90565b61233d80620002d96000396000f300606060405260043610610154576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063025e7c27146101ae578063173825d91461021157806320ea8d861461024a5780632f54bf6e1461026d5780633411c81c146102be5780634bc9fdc214610318578063547415251461034157806367eeba0c146103855780636b0c932d146103ae5780637065cb48146103d7578063784547a7146104105780638b51d13f1461044b5780639ace38c214610482578063a0e67e2b14610580578063a8abe69a146105ea578063b5dc40c314610681578063b77bf600146106f9578063ba51a6df14610722578063c01a8c8414610745578063c642747414610768578063cea0862114610801578063d74f8edd14610824578063dc8452cd1461084d578063e20056e614610876578063ee22610b146108ce578063f059cf2b146108f1575b60003411156101ac573373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a25b005b34156101b957600080fd5b6101cf600480803590602001909190505061091a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561021c57600080fd5b610248600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610959565b005b341561025557600080fd5b61026b6004808035906020019091905050610bf5565b005b341561027857600080fd5b6102a4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610d9d565b604051808215151515815260200191505060405180910390f35b34156102c957600080fd5b6102fe600480803590602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610dbd565b604051808215151515815260200191505060405180910390f35b341561032357600080fd5b61032b610dec565b6040518082815260200191505060405180910390f35b341561034c57600080fd5b61036f600480803515159060200190919080351515906020019091905050610e29565b6040518082815260200191505060405180910390f35b341561039057600080fd5b610398610ebb565b6040518082815260200191505060405180910390f35b34156103b957600080fd5b6103c1610ec1565b6040518082815260200191505060405180910390f35b34156103e257600080fd5b61040e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610ec7565b005b341561041b57600080fd5b61043160048080359060200190919050506110c9565b604051808215151515815260200191505060405180910390f35b341561045657600080fd5b61046c60048080359060200190919050506111af565b6040518082815260200191505060405180910390f35b341561048d57600080fd5b6104a3600480803590602001909190505061127b565b604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001806020018315151515815260200182810382528481815460018160011615610100020316600290048152602001915080546001816001161561010002031660029004801561056e5780601f106105435761010080835404028352916020019161056e565b820191906000526020600020905b81548152906001019060200180831161055157829003601f168201915b50509550505050505060405180910390f35b341561058b57600080fd5b6105936112d7565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156105d65780820151818401526020810190506105bb565b505050509050019250505060405180910390f35b34156105f557600080fd5b61062a60048080359060200190919080359060200190919080351515906020019091908035151590602001909190505061136b565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561066d578082015181840152602081019050610652565b505050509050019250505060405180910390f35b341561068c57600080fd5b6106a260048080359060200190919050506114c7565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156106e55780820151818401526020810190506106ca565b505050509050019250505060405180910390f35b341561070457600080fd5b61070c6116f1565b6040518082815260200191505060405180910390f35b341561072d57600080fd5b61074360048080359060200190919050506116f7565b005b341561075057600080fd5b61076660048080359060200190919050506117b1565b005b341561077357600080fd5b6107eb600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190505061198e565b6040518082815260200191505060405180910390f35b341561080c57600080fd5b61082260048080359060200190919050506119ad565b005b341561082f57600080fd5b610837611a28565b6040518082815260200191505060405180910390f35b341561085857600080fd5b610860611a2d565b6040518082815260200191505060405180910390f35b341561088157600080fd5b6108cc600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a33565b005b34156108d957600080fd5b6108ef6004808035906020019091905050611d4a565b005b34156108fc57600080fd5b610904612042565b6040518082815260200191505060405180910390f35b60038181548110151561092957fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561099557600080fd5b81600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156109ee57600080fd5b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600091505b600160038054905003821015610b76578273ffffffffffffffffffffffffffffffffffffffff16600383815481101515610a8157fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610b69576003600160038054905003815481101515610ae057fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600383815481101515610b1b57fe5b906000526020600020900160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b76565b8180600101925050610a4b565b6001600381818054905003915081610b8e91906121ec565b506003805490506004541115610bad57610bac6003805490506116f7565b5b8273ffffffffffffffffffffffffffffffffffffffff167f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9060405160405180910390a2505050565b33600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610c4e57600080fd5b81336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610cb957600080fd5b8360008082815260200190815260200160002060030160009054906101000a900460ff16151515610ce957600080fd5b60006001600087815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550843373ffffffffffffffffffffffffffffffffffffffff167ff6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e960405160405180910390a35050505050565b60026020528060005260406000206000915054906101000a900460ff1681565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006201518060075401421115610e07576006549050610e26565b6008546006541015610e1c5760009050610e26565b6008546006540390505b90565b600080600090505b600554811015610eb457838015610e68575060008082815260200190815260200160002060030160009054906101000a900460ff16155b80610e9b5750828015610e9a575060008082815260200190815260200160002060030160009054906101000a900460ff165b5b15610ea7576001820191505b8080600101915050610e31565b5092915050565b60065481565b60075481565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f0157600080fd5b80600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610f5b57600080fd5b8160008173ffffffffffffffffffffffffffffffffffffffff1614151515610f8257600080fd5b60016003805490500160045460328211158015610f9f5750818111155b8015610fac575060008114155b8015610fb9575060008214155b1515610fc457600080fd5b6001600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600380548060010182816110309190612218565b9160005260206000209001600087909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550508473ffffffffffffffffffffffffffffffffffffffff167ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d60405160405180910390a25050505050565b6000806000809150600090505b6003805490508110156111a75760016000858152602001908152602001600020600060038381548110151561110757fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611187576001820191505b60045482141561119a57600192506111a8565b80806001019150506110d6565b5b5050919050565b600080600090505b600380549050811015611275576001600084815260200190815260200160002060006003838154811015156111e857fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611268576001820191505b80806001019150506111b7565b50919050565b60006020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600101549080600201908060030160009054906101000a900460ff16905084565b6112df612244565b600380548060200260200160405190810160405280929190818152602001828054801561136157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611317575b5050505050905090565b611373612258565b61137b612258565b60008060055460405180591061138e5750595b9080825280602002602001820160405250925060009150600090505b60055481101561144a578580156113e1575060008082815260200190815260200160002060030160009054906101000a900460ff16155b806114145750848015611413575060008082815260200190815260200160002060030160009054906101000a900460ff165b5b1561143d5780838381518110151561142857fe5b90602001906020020181815250506001820191505b80806001019150506113aa565b87870360405180591061145a5750595b908082528060200260200182016040525093508790505b868110156114bc57828181518110151561148757fe5b90602001906020020151848983038151811015156114a157fe5b90602001906020020181815250508080600101915050611471565b505050949350505050565b6114cf612244565b6114d7612244565b6000806003805490506040518059106114ed5750595b9080825280602002602001820160405250925060009150600090505b60038054905081101561164c5760016000868152602001908152602001600020600060038381548110151561153a57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561163f576003818154811015156115c257fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683838151811015156115fc57fe5b9060200190602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506001820191505b8080600101915050611509565b8160405180591061165a5750595b90808252806020026020018201604052509350600090505b818110156116e957828181518110151561168857fe5b9060200190602002015184828151811015156116a057fe5b9060200190602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508080600101915050611672565b505050919050565b60055481565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561173157600080fd5b60038054905081603282111580156117495750818111155b8015611756575060008114155b8015611763575060008214155b151561176e57600080fd5b826004819055507fa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a836040518082815260200191505060405180910390a1505050565b33600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561180a57600080fd5b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561186657600080fd5b82336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156118d257600080fd5b600180600087815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550843373ffffffffffffffffffffffffffffffffffffffff167f4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef60405160405180910390a361198785611d4a565b5050505050565b600061199b848484612048565b90506119a6816117b1565b9392505050565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119e757600080fd5b806006819055507fc71bdc6afaf9b1aa90a7078191d4fc1adf3bf680fca3183697df6b0dc226bca2816040518082815260200191505060405180910390a150565b603281565b60045481565b60003073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a6f57600080fd5b82600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611ac857600080fd5b82600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611b2257600080fd5b600092505b600380549050831015611c0d578473ffffffffffffffffffffffffffffffffffffffff16600384815481101515611b5a57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611c005783600384815481101515611bb257fe5b906000526020600020900160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611c0d565b8280600101935050611b27565b6000600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508473ffffffffffffffffffffffffffffffffffffffff167f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9060405160405180910390a28373ffffffffffffffffffffffffffffffffffffffff167ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d60405160405180910390a25050505050565b60008033600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611da657600080fd5b83336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611e1157600080fd5b8560008082815260200190815260200160002060030160009054906101000a900460ff16151515611e4157600080fd5b6000808881526020019081526020016000209550611e5e876110c9565b94508480611e995750600086600201805460018160011615610100020316600290049050148015611e985750611e97866001015461219a565b5b5b156120395760018660030160006101000a81548160ff021916908315150217905550841515611ed75785600101546008600082825401925050819055505b8560000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168660010154876002016040518082805460018160011615610100020316600290048015611f805780601f10611f5557610100808354040283529160200191611f80565b820191906000526020600020905b815481529060010190602001808311611f6357829003601f168201915b505091505060006040518083038185876187965a03f19250505015611fd157867f33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed7560405160405180910390a2612038565b867f526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b7923660405160405180910390a260008660030160006101000a81548160ff0219169083151502179055508415156120375785600101546008600082825403925050819055505b5b5b50505050505050565b60085481565b60008360008173ffffffffffffffffffffffffffffffffffffffff161415151561207157600080fd5b60055491506080604051908101604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018581526020018481526020016000151581525060008084815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201908051906020019061213092919061226c565b5060608201518160030160006101000a81548160ff0219169083151502179055509050506001600560008282540192505081905550817fc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e5160405160405180910390a2509392505050565b600062015180600754014211156121bb574260078190555060006008819055505b600654826008540111806121d457506008548260085401105b156121e257600090506121e7565b600190505b919050565b8154818355818115116122135781836000526020600020918201910161221291906122ec565b5b505050565b81548183558181151161223f5781836000526020600020918201910161223e91906122ec565b5b505050565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106122ad57805160ff19168380011785556122db565b828001600101855582156122db579182015b828111156122da5782518255916020019190600101906122bf565b5b5090506122e891906122ec565b5090565b61230e91905b8082111561230a5760008160009055506001016122f2565b5090565b905600a165627a7a723058207a083fc9111b1e743b3e6a8a4011c2a704783380ac0246f4e7140573c449e3ee00290000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000cca090fd60d405a10b786559933daeec4e2053af0000000000000000000000005eb449b88ff8f03cd0c736a72ac70b76258e4b10000000000000000000000000568658dd13a880ff8418efe194004019a675955f

Deployed ByteCode Sourcemap

13097:3107:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3656:1;3644:9;:13;3640:62;;;3680:10;3672:30;;;3692:9;3672:30;;;;;;;;;;;;;;;;;;3640:62;13097:3107;2100:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4869:475;;;;;;;;;;;;;;;;;;;;;;;;;;;;7511:299;;;;;;;;;;;;;;;;;;;;;;;;;;2053:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1982:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15930:271;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10555:328;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13277:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13306:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4455:287;;;;;;;;;;;;;;;;;;;;;;;;;;;;8665:349;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10027:260;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1926:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10971:121;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;12224:694:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;11276:591:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;2157:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6190:214;;;;;;;;;;;;;;;;;;;;;;;;;;7030:353;;;;;;;;;;;;;;;;;;;;;;;;;;6670:250;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14070:168;;;;;;;;;;;;;;;;;;;;;;;;;;1842:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2130:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5551:464;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14404:819;;;;;;;;;;;;;;;;;;;;;;;;;;13332:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2100:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4869:475::-;5023:6;2424:4;2402:27;;:10;:27;;;2394:36;;;;;;;;4962:5;2618:7;:14;2626:5;2618:14;;;;;;;;;;;;;;;;;;;;;;;;;2610:23;;;;;;;;5002:5;4985:7;:14;4993:5;4985:14;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;5030:1;5023:8;;5018:174;5051:1;5035:6;:13;;;;:17;5033:1;:19;5018:174;;;5089:5;5076:18;;:6;5083:1;5076:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;5072:120;;;5127:6;5150:1;5134:6;:13;;;;:17;5127:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;5115:6;5122:1;5115:9;;;;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;5171:5;;5072:120;5054:3;;;;;;;5018:174;;;5219:1;5202:6;:18;;;;;;;;;;;;;;:::i;:::-;;5246:6;:13;;;;5235:8;;:24;5231:75;;;5274:32;5292:6;:13;;;;5274:17;:32::i;:::-;5231:75;5330:5;5317:19;;;;;;;;;;;;2441:1;4869:475;;:::o;7511:299::-;7596:10;2618:7;:14;2626:5;2618:14;;;;;;;;;;;;;;;;;;;;;;;;;2610:23;;;;;;;;7627:13;7642:10;2873:13;:28;2887:13;2873:28;;;;;;;;;;;:35;2902:5;2873:35;;;;;;;;;;;;;;;;;;;;;;;;;2865:44;;;;;;;;7675:13;3139:12;:27;3152:13;3139:27;;;;;;;;;;;:36;;;;;;;;;;;;3138:37;3130:46;;;;;;;;7749:5;7706:13;:28;7720:13;7706:28;;;;;;;;;;;:40;7735:10;7706:40;;;;;;;;;;;;;;;;:48;;;;;;;;;;;;;;;;;;7788:13;7776:10;7765:37;;;;;;;;;;;;2920:1;2644;;7511:299;;:::o;2053:40::-;;;;;;;;;;;;;;;;;;;;;;:::o;1982:64::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;15930:271::-;16009:4;16051:8;16041:7;;:18;16035:3;:24;16031:60;;;16081:10;;16074:17;;;;16031:60;16119:10;;16106;;:23;16102:50;;;16151:1;16144:8;;;;16102:50;16183:10;;16170;;:23;16163:30;;15930:271;;:::o;10555:328::-;10665:10;10698:6;10705:1;10698:8;;10693:182;10710:16;;10708:1;:18;10693:182;;;10753:7;:36;;;;;10765:12;:15;10778:1;10765:15;;;;;;;;;;;:24;;;;;;;;;;;;10764:25;10753:36;:93;;;;10810:8;:36;;;;;10822:12;:15;10835:1;10822:15;;;;;;;;;;;:24;;;;;;;;;;;;10810:36;10753:93;10746:129;;;10874:1;10865:10;;;;10746:129;10728:3;;;;;;;10693:182;;;10555:328;;;;;:::o;13277:22::-;;;;:::o;13306:19::-;;;;:::o;4455:287::-;2424:4;2402:27;;:10;:27;;;2394:36;;;;;;;;4551:5;2520:7;:14;2528:5;2520:14;;;;;;;;;;;;;;;;;;;;;;;;;2519:15;2511:24;;;;;;;;4575:5;3270:1;3258:8;:13;;;;3250:22;;;;;;;;4624:1;4608:6;:13;;;;:17;4627:8;;1881:2;3378:10;:29;;:69;;;;;3437:10;3424:9;:23;;3378:69;:100;;;;;3477:1;3464:9;:14;;3378:100;:132;;;;;3509:1;3495:10;:15;;3378:132;3370:141;;;;;;;;4670:4;4653:7;:14;4661:5;4653:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;4685:6;:18;;;;;;;;;;;:::i;:::-;;;;;;;;;;4697:5;4685:18;;;;;;;;;;;;;;;;;;;;;;;4728:5;4714:20;;;;;;;;;;;;3283:1;;2546;2441;4455:287;:::o;8665:349::-;8758:4;8780:10;8810:6;8793:1;8780:14;;8817:1;8810:8;;8805:202;8822:6;:13;;;;8820:1;:15;8805:202;;;8861:13;:28;8875:13;8861:28;;;;;;;;;;;:39;8890:6;8897:1;8890:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;8861:39;;;;;;;;;;;;;;;;;;;;;;;;;8857:72;;;8928:1;8919:10;;;;8857:72;8957:8;;8948:5;:17;8944:51;;;8991:4;8984:11;;;;8944:51;8837:3;;;;;;;8805:202;;;8665:349;;;;;;:::o;10027:260::-;10129:10;10162:6;10169:1;10162:8;;10157:122;10174:6;:13;;;;10172:1;:15;10157:122;;;10211:13;:28;10225:13;10211:28;;;;;;;;;;;:39;10240:6;10247:1;10240:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;10211:39;;;;;;;;;;;;;;;;;;;;;;;;;10207:72;;;10278:1;10269:10;;;;10207:72;10189:3;;;;;;;10157:122;;;10027:260;;;;:::o;1926:49::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;10971:121::-;11044:9;;:::i;:::-;11078:6;11071:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10971:121;:::o;12224:694::-;12352:22;;:::i;:::-;12392:32;;:::i;:::-;12466:10;12491:6;12438:16;;12427:28;;;;;;;;;;;;;;;;;;;;;;;;12392:63;;12479:1;12466:14;;12515:1;12513:3;;12508:256;12520:16;;12518:1;:18;12508:256;;;12563:7;:36;;;;;12575:12;:15;12588:1;12575:15;;;;;;;;;;;:24;;;;;;;;;;;;12574:25;12563:36;:93;;;;12620:8;:36;;;;;12632:12;:15;12645:1;12632:15;;;;;;;;;;;:24;;;;;;;;;;;;12620:36;12563:93;12556:208;;;12718:1;12690:18;12709:5;12690:25;;;;;;;;;;;;;;;;;:29;;;;;12747:1;12738:10;;;;12556:208;12538:3;;;;;;;12508:256;;;12808:4;12803:2;:9;12792:21;;;;;;;;;;;;;;;;;;;;;;;;12774:39;;12831:4;12829:6;;12824:86;12839:2;12837:1;:4;12824:86;;;12889:18;12908:1;12889:21;;;;;;;;;;;;;;;;;;12861:15;12881:4;12877:1;:8;12861:25;;;;;;;;;;;;;;;;;:49;;;;;12843:3;;;;;;;12824:86;;;12224:694;;;;;;;;;:::o;11276:591::-;11374:24;;:::i;:::-;11416:34;;:::i;:::-;11492:10;11517:6;11467;:13;;;;11453:28;;;;;;;;;;;;;;;;;;;;;;;;11416:65;;11505:1;11492:14;;11541:1;11539:3;;11534:190;11546:6;:13;;;;11544:1;:15;11534:190;;;11583:13;:28;11597:13;11583:28;;;;;;;;;;;:39;11612:6;11619:1;11612:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;11583:39;;;;;;;;;;;;;;;;;;;;;;;;;11579:145;;;11670:6;11677:1;11670:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;11643:17;11661:5;11643:24;;;;;;;;;;;;;;;;;:36;;;;;;;;;;;11707:1;11698:10;;;;11579:145;11561:3;;;;;;;11534:190;;;11765:5;11751:20;;;;;;;;;;;;;;;;;;;;;;;;11734:37;;11789:1;11787:3;;11782:77;11794:5;11792:1;:7;11782:77;;;11839:17;11857:1;11839:20;;;;;;;;;;;;;;;;;;11819:14;11834:1;11819:17;;;;;;;;;;;;;;;;;:40;;;;;;;;;;;11801:3;;;;;;;11782:77;;;11276:591;;;;;;:::o;2157:28::-;;;;:::o;6190:214::-;2424:4;2402:27;;:10;:27;;;2394:36;;;;;;;;6295:6;:13;;;;6310:9;1881:2;3378:10;:29;;:69;;;;;3437:10;3424:9;:23;;3378:69;:100;;;;;3477:1;3464:9;:14;;3378:100;:132;;;;;3509:1;3495:10;:15;;3378:132;3370:141;;;;;;;;6348:9;6337:8;:20;;;;6368:28;6386:9;6368:28;;;;;;;;;;;;;;;;;;2441:1;;6190:214;:::o;7030:353::-;7115:10;2618:7;:14;2626:5;2618:14;;;;;;;;;;;;;;;;;;;;;;;;;2610:23;;;;;;;;7154:13;2770:1;2727:12;:27;2740:13;2727:27;;;;;;;;;;;:39;;;;;;;;;;;;:44;;;;2719:53;;;;;;;;7191:13;7206:10;3014:13;:28;3028:13;3014:28;;;;;;;;;;;:35;3043:5;3014:35;;;;;;;;;;;;;;;;;;;;;;;;;3013:36;3005:45;;;;;;;;7277:4;7234:13;:28;7248:13;7234:28;;;;;;;;;;;:40;7263:10;7234:40;;;;;;;;;;;;;;;;:47;;;;;;;;;;;;;;;;;;7317:13;7305:10;7292:39;;;;;;;;;;;;7342:33;7361:13;7342:18;:33::i;:::-;2783:1;;2644;7030:353;;:::o;6670:250::-;6776:18;6828:40;6843:11;6856:5;6863:4;6828:14;:40::i;:::-;6812:56;;6879:33;6898:13;6879:18;:33::i;:::-;6670:250;;;;;:::o;14070:168::-;2424:4;2402:27;;:10;:27;;;2394:36;;;;;;;;14179:11;14166:10;:24;;;;14201:29;14218:11;14201:29;;;;;;;;;;;;;;;;;;14070:168;:::o;1842:41::-;1881:2;1842:41;:::o;2130:20::-;;;;:::o;5551:464::-;5728:6;2424:4;2402:27;;:10;:27;;;2394:36;;;;;;;;5663:5;2618:7;:14;2626:5;2618:14;;;;;;;;;;;;;;;;;;;;;;;;;2610:23;;;;;;;;5697:8;2520:7;:14;2528:5;2520:14;;;;;;;;;;;;;;;;;;;;;;;;;2519:15;2511:24;;;;;;;;5735:1;5728:8;;5723:153;5740:6;:13;;;;5738:1;:15;5723:153;;;5790:5;5777:18;;:6;5784:1;5777:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;5773:103;;;5828:8;5816:6;5823:1;5816:9;;;;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;5855:5;;5773:103;5755:3;;;;;;;5723:153;;;5903:5;5886:7;:14;5894:5;5886:14;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;5939:4;5919:7;:17;5927:8;5919:17;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;5967:5;5954:19;;;;;;;;;;;;5998:8;5984:23;;;;;;;;;;;;2644:1;2441;5551:464;;;:::o;14404:819::-;14599:23;14663:15;14489:10;2618:7;:14;2626:5;2618:14;;;;;;;;;;;;;;;;;;;;;;;;;2610:23;;;;;;;;14520:13;14535:10;2873:13;:28;2887:13;2873:28;;;;;;;;;;;:35;2902:5;2873:35;;;;;;;;;;;;;;;;;;;;;;;;;2865:44;;;;;;;;14568:13;3139:12;:27;3152:13;3139:27;;;;;;;;;;;:36;;;;;;;;;;;;3138:37;3130:46;;;;;;;;14625:12;:27;14638:13;14625:27;;;;;;;;;;;14599:53;;14681:26;14693:13;14681:11;:26::i;:::-;14663:44;;14722:10;:61;;;;14755:1;14736:3;:8;;:15;;;;;;;;;;;;;;;;:20;:47;;;;;14760:23;14773:3;:9;;;14760:12;:23::i;:::-;14736:47;14722:61;14718:498;;;14815:4;14800:3;:12;;;:19;;;;;;;;;;;;;;;;;;14839:10;14838:11;14834:57;;;14882:3;:9;;;14868:10;;:23;;;;;;;;;;;14834:57;14910:3;:15;;;;;;;;;;;;:20;;14937:3;:9;;;14948:3;:8;;14910:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14906:299;;;14986:13;14976:24;;;;;;;;;;14906:299;;;15056:13;15039:31;;;;;;;;;;15104:5;15089:3;:12;;;:20;;;;;;;;;;;;;;;;;;15133:10;15132:11;15128:61;;;15180:3;:9;;;15166:10;;:23;;;;;;;;;;;15128:61;14906:299;14718:498;2920:1;2644;;14404:819;;;;:::o;13332:22::-;;;;:::o;9357:465::-;9492:18;9461:11;3270:1;3258:8;:13;;;;3250:22;;;;;;;;9544:16;;9528:32;;9601:145;;;;;;;;;9641:11;9601:145;;;;;;9674:5;9601:145;;;;9700:4;9601:145;;;;9729:5;9601:145;;;;;9571:12;:27;9584:13;9571:27;;;;;;;;;;;:175;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9777:1;9757:16;;:21;;;;;;;;;;;9800:13;9789:25;;;;;;;;;;9357:465;;;;;;:::o;15466:331::-;15537:4;15579:8;15569:7;;:18;15563:3;:24;15559:99;;;15614:3;15604:7;:13;;;;15645:1;15632:10;:14;;;;15559:99;15694:10;;15685:6;15672:10;;:19;:32;:68;;;;15730:10;;15721:6;15708:10;;:19;:32;15672:68;15668:99;;;15762:5;15755:12;;;;15668:99;15785:4;15778:11;;15466:331;;;;:::o;13097:3107::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o

Metadata Hash

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