ETH Price: $1,895.27 (-0.45%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Deal122960652021-04-23 11:01:041418 days ago1619175664IN
0xB907EEdD...8c9fd2c85
0 ETH0.01026185175.0125
Dent122959432021-04-23 10:31:181418 days ago1619173878IN
0xB907EEdD...8c9fd2c85
0 ETH0.01343827121.33333333
Dent122951842021-04-23 7:40:481418 days ago1619163648IN
0xB907EEdD...8c9fd2c85
0 ETH0.01139963123.93333333
Tend122951832021-04-23 7:40:401418 days ago1619163640IN
0xB907EEdD...8c9fd2c85
0 ETH0.01044645123.60333333
Tend122950222021-04-23 7:01:471419 days ago1619161307IN
0xB907EEdD...8c9fd2c85
0 ETH0.01027498142.09433333
Tend122950182021-04-23 7:00:511419 days ago1619161251IN
0xB907EEdD...8c9fd2c85
0 ETH0.01204232142.56666666
Deal122632332021-04-18 9:16:261423 days ago1618737386IN
0xB907EEdD...8c9fd2c85
0 ETH0.00776317155
Dent122631752021-04-18 9:02:351423 days ago1618736555IN
0xB907EEdD...8c9fd2c85
0 ETH0.00670506210.89095238
Dent122631752021-04-18 9:02:351423 days ago1618736555IN
0xB907EEdD...8c9fd2c85
0 ETH0.01816072242.52459523
Dent122631732021-04-18 9:00:301423 days ago1618736430IN
0xB907EEdD...8c9fd2c85
0 ETH0.00630491198.38
Dent122631732021-04-18 9:00:301423 days ago1618736430IN
0xB907EEdD...8c9fd2c85
0 ETH0.01708061228.137
Dent122631602021-04-18 8:57:321423 days ago1618736252IN
0xB907EEdD...8c9fd2c85
0 ETH0.018731200
Dent122631602021-04-18 8:57:321423 days ago1618736252IN
0xB907EEdD...8c9fd2c85
0 ETH0.0187286200
Dent122631042021-04-18 8:44:221423 days ago1618735462IN
0xB907EEdD...8c9fd2c85
0 ETH0.01830655195.468
Dent122631012021-04-18 8:43:261423 days ago1618735406IN
0xB907EEdD...8c9fd2c85
0 ETH0.01781077190.19866666
Dent122623132021-04-18 5:47:011424 days ago1618724821IN
0xB907EEdD...8c9fd2c85
0 ETH0.04538225493.38186333
Dent122623132021-04-18 5:47:011424 days ago1618724821IN
0xB907EEdD...8c9fd2c85
0 ETH0.04550404494.77050333
Tend122623112021-04-18 5:46:321424 days ago1618724792IN
0xB907EEdD...8c9fd2c85
0 ETH0.03244843383.878
Tend122623112021-04-18 5:46:321424 days ago1618724792IN
0xB907EEdD...8c9fd2c85
0 ETH0.03280638388.278
Tend122621472021-04-18 5:08:241424 days ago1618722504IN
0xB907EEdD...8c9fd2c85
0 ETH0.02869762396.73226666
Tend122621462021-04-18 5:08:181424 days ago1618722498IN
0xB907EEdD...8c9fd2c85
0 ETH0.02868334396.73226666
Tend122621452021-04-18 5:07:531424 days ago1618722473IN
0xB907EEdD...8c9fd2c85
0 ETH0.02869762396.73226666
Tend122621452021-04-18 5:07:531424 days ago1618722473IN
0xB907EEdD...8c9fd2c85
0 ETH0.02868334396.73226666
Tend122621442021-04-18 5:07:261424 days ago1618722446IN
0xB907EEdD...8c9fd2c85
0 ETH0.03350642396.73226666
Tend122621442021-04-18 5:07:261424 days ago1618722446IN
0xB907EEdD...8c9fd2c85
0 ETH0.0335207396.73226666
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Method Block
From
To
-109326672020-09-25 15:45:081628 days ago1601048708  Contract Creation0 ETH
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xF32836B9...bC276407f
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Flipper

Compiler Version
v0.5.12+commit.7709ece9

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU AGPLv3 license
/**
 *Submitted for verification at Etherscan.io on 2020-08-27
*/

/// flip.sol -- Collateral auction

// Copyright (C) 2018 Rain <[email protected]>
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program.  If not, see <https://www.gnu.org/licenses/>.

pragma solidity >=0.5.12;

contract LibNote {
    event LogNote(
        bytes4   indexed  sig,
        address  indexed  usr,
        bytes32  indexed  arg1,
        bytes32  indexed  arg2,
        bytes             data
    ) anonymous;

    modifier note {
        _;
        assembly {
            // log an 'anonymous' event with a constant 6 words of calldata
            // and four indexed topics: selector, caller, arg1 and arg2
            let mark := msize()                       // end of memory ensures zero
            mstore(0x40, add(mark, 288))              // update free memory pointer
            mstore(mark, 0x20)                        // bytes type data offset
            mstore(add(mark, 0x20), 224)              // bytes size (padded)
            calldatacopy(add(mark, 0x40), 0, 224)     // bytes payload
            log4(mark, 288,                           // calldata
                 shl(224, shr(224, calldataload(0))), // msg.sig
                 caller(),                            // msg.sender
                 calldataload(4),                     // arg1
                 calldataload(36)                     // arg2
                )
        }
    }
}

interface VatLike {
    function move(address,address,uint256) external;
    function flux(bytes32,address,address,uint256) external;
}

interface CatLike {
    function claw(uint256) external;
}

/*
   This thing lets you flip some gems for a given amount of dai.
   Once the given amount of dai is raised, gems are forgone instead.

 - `lot` gems in return for bid
 - `tab` total dai wanted
 - `bid` dai paid
 - `gal` receives dai income
 - `usr` receives gem forgone
 - `ttl` single bid lifetime
 - `beg` minimum bid increase
 - `end` max auction duration
*/

contract Flipper is LibNote {
    // --- Auth ---
    mapping (address => uint256) public wards;
    function rely(address usr) external note auth { wards[usr] = 1; }
    function deny(address usr) external note auth { wards[usr] = 0; }
    modifier auth {
        require(wards[msg.sender] == 1, "Flipper/not-authorized");
        _;
    }

    // --- Data ---
    struct Bid {
        uint256 bid;  // dai paid                 [rad]
        uint256 lot;  // gems in return for bid   [wad]
        address guy;  // high bidder
        uint48  tic;  // bid expiry time          [unix epoch time]
        uint48  end;  // auction expiry time      [unix epoch time]
        address usr;
        address gal;
        uint256 tab;  // total dai wanted         [rad]
    }

    mapping (uint256 => Bid) public bids;

    VatLike public   vat;            // CDP Engine
    bytes32 public   ilk;            // collateral type

    uint256 constant ONE = 1.00E18;
    uint256 public   beg = 1.05E18;  // 5% minimum bid increase
    uint48  public   ttl = 3 hours;  // 3 hours bid duration         [seconds]
    uint48  public   tau = 2 days;   // 2 days total auction length  [seconds]
    uint256 public kicks = 0;
    CatLike public   cat;            // cat liquidation module

    // --- Events ---
    event Kick(
      uint256 id,
      uint256 lot,
      uint256 bid,
      uint256 tab,
      address indexed usr,
      address indexed gal
    );

    // --- Init ---
    constructor(address vat_, address cat_, bytes32 ilk_) public {
        vat = VatLike(vat_);
        cat = CatLike(cat_);
        ilk = ilk_;
        wards[msg.sender] = 1;
    }

    // --- Math ---
    function add(uint48 x, uint48 y) internal pure returns (uint48 z) {
        require((z = x + y) >= x);
    }
    function mul(uint256 x, uint256 y) internal pure returns (uint256 z) {
        require(y == 0 || (z = x * y) / y == x);
    }

    // --- Admin ---
    function file(bytes32 what, uint256 data) external note auth {
        if (what == "beg") beg = data;
        else if (what == "ttl") ttl = uint48(data);
        else if (what == "tau") tau = uint48(data);
        else revert("Flipper/file-unrecognized-param");
    }
    function file(bytes32 what, address data) external note auth {
        if (what == "cat") cat = CatLike(data);
        else revert("Flipper/file-unrecognized-param");
    }

    // --- Auction ---
    function kick(address usr, address gal, uint256 tab, uint256 lot, uint256 bid)
        public auth returns (uint256 id)
    {
        require(kicks < uint256(-1), "Flipper/overflow");
        id = ++kicks;

        bids[id].bid = bid;
        bids[id].lot = lot;
        bids[id].guy = msg.sender;  // configurable??
        bids[id].end = add(uint48(now), tau);
        bids[id].usr = usr;
        bids[id].gal = gal;
        bids[id].tab = tab;

        vat.flux(ilk, msg.sender, address(this), lot);

        emit Kick(id, lot, bid, tab, usr, gal);
    }
    function tick(uint256 id) external note {
        require(bids[id].end < now, "Flipper/not-finished");
        require(bids[id].tic == 0, "Flipper/bid-already-placed");
        bids[id].end = add(uint48(now), tau);
    }
    function tend(uint256 id, uint256 lot, uint256 bid) external note {
        require(bids[id].guy != address(0), "Flipper/guy-not-set");
        require(bids[id].tic > now || bids[id].tic == 0, "Flipper/already-finished-tic");
        require(bids[id].end > now, "Flipper/already-finished-end");

        require(lot == bids[id].lot, "Flipper/lot-not-matching");
        require(bid <= bids[id].tab, "Flipper/higher-than-tab");
        require(bid >  bids[id].bid, "Flipper/bid-not-higher");
        require(mul(bid, ONE) >= mul(beg, bids[id].bid) || bid == bids[id].tab, "Flipper/insufficient-increase");

        if (msg.sender != bids[id].guy) {
            vat.move(msg.sender, bids[id].guy, bids[id].bid);
            bids[id].guy = msg.sender;
        }
        vat.move(msg.sender, bids[id].gal, bid - bids[id].bid);

        bids[id].bid = bid;
        bids[id].tic = add(uint48(now), ttl);
    }
    function dent(uint256 id, uint256 lot, uint256 bid) external note {
        require(bids[id].guy != address(0), "Flipper/guy-not-set");
        require(bids[id].tic > now || bids[id].tic == 0, "Flipper/already-finished-tic");
        require(bids[id].end > now, "Flipper/already-finished-end");

        require(bid == bids[id].bid, "Flipper/not-matching-bid");
        require(bid == bids[id].tab, "Flipper/tend-not-finished");
        require(lot < bids[id].lot, "Flipper/lot-not-lower");
        require(mul(beg, lot) <= mul(bids[id].lot, ONE), "Flipper/insufficient-decrease");

        if (msg.sender != bids[id].guy) {
            vat.move(msg.sender, bids[id].guy, bid);
            bids[id].guy = msg.sender;
        }
        vat.flux(ilk, address(this), bids[id].usr, bids[id].lot - lot);

        bids[id].lot = lot;
        bids[id].tic = add(uint48(now), ttl);
    }
    function deal(uint256 id) external note {
        require(bids[id].tic != 0 && (bids[id].tic < now || bids[id].end < now), "Flipper/not-finished");
        cat.claw(bids[id].tab);
        vat.flux(ilk, address(this), bids[id].guy, bids[id].lot);
        delete bids[id];
    }

    function yank(uint256 id) external note auth {
        require(bids[id].guy != address(0), "Flipper/guy-not-set");
        require(bids[id].bid < bids[id].tab, "Flipper/already-dent-phase");
        cat.claw(bids[id].tab);
        vat.flux(ilk, address(this), msg.sender, bids[id].lot);
        vat.move(msg.sender, bids[id].guy, bids[id].bid);
        delete bids[id];
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"vat_","type":"address"},{"internalType":"address","name":"cat_","type":"address"},{"internalType":"bytes32","name":"ilk_","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"lot","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"bid","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tab","type":"uint256"},{"indexed":true,"internalType":"address","name":"usr","type":"address"},{"indexed":true,"internalType":"address","name":"gal","type":"address"}],"name":"Kick","type":"event"},{"anonymous":true,"inputs":[{"indexed":true,"internalType":"bytes4","name":"sig","type":"bytes4"},{"indexed":true,"internalType":"address","name":"usr","type":"address"},{"indexed":true,"internalType":"bytes32","name":"arg1","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"arg2","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"LogNote","type":"event"},{"constant":true,"inputs":[],"name":"beg","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"bids","outputs":[{"internalType":"uint256","name":"bid","type":"uint256"},{"internalType":"uint256","name":"lot","type":"uint256"},{"internalType":"address","name":"guy","type":"address"},{"internalType":"uint48","name":"tic","type":"uint48"},{"internalType":"uint48","name":"end","type":"uint48"},{"internalType":"address","name":"usr","type":"address"},{"internalType":"address","name":"gal","type":"address"},{"internalType":"uint256","name":"tab","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"cat","outputs":[{"internalType":"contract CatLike","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"deal","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"lot","type":"uint256"},{"internalType":"uint256","name":"bid","type":"uint256"}],"name":"dent","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"deny","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"what","type":"bytes32"},{"internalType":"uint256","name":"data","type":"uint256"}],"name":"file","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes32","name":"what","type":"bytes32"},{"internalType":"address","name":"data","type":"address"}],"name":"file","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ilk","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"usr","type":"address"},{"internalType":"address","name":"gal","type":"address"},{"internalType":"uint256","name":"tab","type":"uint256"},{"internalType":"uint256","name":"lot","type":"uint256"},{"internalType":"uint256","name":"bid","type":"uint256"}],"name":"kick","outputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kicks","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"rely","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tau","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"lot","type":"uint256"},{"internalType":"uint256","name":"bid","type":"uint256"}],"name":"tend","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"tick","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ttl","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"vat","outputs":[{"internalType":"contract VatLike","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"wards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"yank","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101215760003560e01c80637d780d82116100ad578063cfc4af5511610071578063cfc4af551461057f578063cfdd3302146105ad578063d4e8be83146105cb578063e488181314610619578063fc7b6aee1461066357610121565b80637d780d82146104795780639c52a7f114610497578063bf353dbb146104db578063c5ce281e14610533578063c959c42b1461055157610121565b80634423c5f1116100f45780634423c5f11461026c5780634b43ed12146103835780634e8b1dd5146103c55780635ff3a382146103f357806365fae35e1461043557610121565b806326e027f11461012657806329ae811414610154578063351de6001461018c57806336569e7714610222575b600080fd5b6101526004803603602081101561013c57600080fd5b8101908080359060200190929190505050610691565b005b61018a6004803603604081101561016a57600080fd5b810190808035906020019092919080359060200190929190505050610cc3565b005b61020c600480360360a08110156101a257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919080359060200190929190505050610ef6565b6040518082815260200191505060405180910390f35b61022a61137f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102986004803603602081101561028257600080fd5b81019080803590602001909291905050506113a5565b604051808981526020018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018665ffffffffffff1665ffffffffffff1681526020018565ffffffffffff1665ffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019850505050505050505060405180910390f35b6103c36004803603606081101561039957600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050611471565b005b6103cd611d25565b604051808265ffffffffffff1665ffffffffffff16815260200191505060405180910390f35b6104336004803603606081101561040957600080fd5b81019080803590602001909291908035906020019092919080359060200190929190505050611d3d565b005b6104776004803603602081101561044b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506125c4565b005b6104816126f2565b6040518082815260200191505060405180910390f35b6104d9600480360360208110156104ad57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506126f8565b005b61051d600480360360208110156104f157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612826565b6040518082815260200191505060405180910390f35b61053b61283e565b6040518082815260200191505060405180910390f35b61057d6004803603602081101561056757600080fd5b8101908080359060200190929190505050612844565b005b610587612c59565b604051808265ffffffffffff1665ffffffffffff16815260200191505060405180910390f35b6105b5612c71565b6040518082815260200191505060405180910390f35b610617600480360360408110156105e157600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612c77565b005b610621612e3e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61068f6004803603602081101561067957600080fd5b8101908080359060200190929190505050612e64565b005b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610745576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f466c69707065722f6e6f742d617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561081e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f466c69707065722f6775792d6e6f742d7365740000000000000000000000000081525060200191505060405180910390fd5b60016000828152602001908152602001600020600501546001600083815260200190815260200160002060000154106108bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f466c69707065722f616c72656164792d64656e742d706861736500000000000081525060200191505060405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e66d279b60016000848152602001908152602001600020600501546040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561094a57600080fd5b505af115801561095e573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636111be2e600354303360016000878152602001908152602001600020600101546040518563ffffffff1660e01b8152600401808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050600060405180830381600087803b158015610a5f57600080fd5b505af1158015610a73573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb35783b336001600085815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016000868152602001908152602001600020600001546040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015610ba057600080fd5b505af1158015610bb4573d6000803e3d6000fd5b505050506001600082815260200190815260200160002060008082016000905560018201600090556002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160146101000a81549065ffffffffffff021916905560028201601a6101000a81549065ffffffffffff02191690556003820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905550505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610d77576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f466c69707065722f6e6f742d617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b7f6265670000000000000000000000000000000000000000000000000000000000821415610dab5780600481905550610ebf565b7f74746c0000000000000000000000000000000000000000000000000000000000821415610dfd5780600560006101000a81548165ffffffffffff021916908365ffffffffffff160217905550610ebe565b7f7461750000000000000000000000000000000000000000000000000000000000821415610e4f5780600560066101000a81548165ffffffffffff021916908365ffffffffffff160217905550610ebd565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f466c69707065722f66696c652d756e7265636f676e697a65642d706172616d0081525060200191505060405180910390fd5b5b5b5961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b600060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610fac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f466c69707065722f6e6f742d617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60065410611043576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f466c69707065722f6f766572666c6f770000000000000000000000000000000081525060200191505060405180910390fd5b6006600081546001019190508190559050816001600083815260200190815260200160002060000181905550826001600083815260200190815260200160002060010181905550336001600083815260200190815260200160002060020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110fd42600560069054906101000a900465ffffffffffff1661303b565b60016000838152602001908152602001600020600201601a6101000a81548165ffffffffffff021916908365ffffffffffff160217905550856001600083815260200190815260200160002060030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550846001600083815260200190815260200160002060040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836001600083815260200190815260200160002060050181905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636111be2e6003543330876040518563ffffffff1660e01b8152600401808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050600060405180830381600087803b1580156112e157600080fd5b505af11580156112f5573d6000803e3d6000fd5b505050508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fc84ce3a1172f0dec3173f04caaa6005151a4bfe40d4c9f3ea28dba5f719b2a7a838686896040518085815260200184815260200183815260200182815260200194505050505060405180910390a395945050505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60016020528060005260406000206000915090508060000154908060010154908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020160149054906101000a900465ffffffffffff169080600201601a9054906101000a900465ffffffffffff16908060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060050154905088565b600073ffffffffffffffffffffffffffffffffffffffff166001600085815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561154a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f466c69707065722f6775792d6e6f742d7365740000000000000000000000000081525060200191505060405180910390fd5b426001600085815260200190815260200160002060020160149054906101000a900465ffffffffffff1665ffffffffffff1611806115b8575060006001600085815260200190815260200160002060020160149054906101000a900465ffffffffffff1665ffffffffffff16145b61162a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f466c69707065722f616c72656164792d66696e69736865642d7469630000000081525060200191505060405180910390fd5b4260016000858152602001908152602001600020600201601a9054906101000a900465ffffffffffff1665ffffffffffff16116116cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f466c69707065722f616c72656164792d66696e69736865642d656e640000000081525060200191505060405180910390fd5b6001600084815260200190815260200160002060010154821461175a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f466c69707065722f6c6f742d6e6f742d6d61746368696e67000000000000000081525060200191505060405180910390fd5b60016000848152602001908152602001600020600501548111156117e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f466c69707065722f6869676865722d7468616e2d74616200000000000000000081525060200191505060405180910390fd5b60016000848152602001908152602001600020600001548111611871576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f466c69707065722f6269642d6e6f742d6869676865720000000000000000000081525060200191505060405180910390fd5b6118936004546001600086815260200190815260200160002060000154613065565b6118a582670de0b6b3a7640000613065565b1015806118c75750600160008481526020019081526020016000206005015481145b611939576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f466c69707065722f696e73756666696369656e742d696e63726561736500000081525060200191505060405180910390fd5b6001600084815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b3957600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb35783b336001600087815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016000888152602001908152602001600020600001546040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015611acb57600080fd5b505af1158015611adf573d6000803e3d6000fd5b50505050336001600085815260200190815260200160002060020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb35783b336001600087815260200190815260200160002060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160008881526020019081526020016000206000015485036040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015611c6457600080fd5b505af1158015611c78573d6000803e3d6000fd5b50505050806001600085815260200190815260200160002060000181905550611cb542600560009054906101000a900465ffffffffffff1661303b565b6001600085815260200190815260200160002060020160146101000a81548165ffffffffffff021916908365ffffffffffff1602179055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450505050565b600560009054906101000a900465ffffffffffff1681565b600073ffffffffffffffffffffffffffffffffffffffff166001600085815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611e16576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f466c69707065722f6775792d6e6f742d7365740000000000000000000000000081525060200191505060405180910390fd5b426001600085815260200190815260200160002060020160149054906101000a900465ffffffffffff1665ffffffffffff161180611e84575060006001600085815260200190815260200160002060020160149054906101000a900465ffffffffffff1665ffffffffffff16145b611ef6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f466c69707065722f616c72656164792d66696e69736865642d7469630000000081525060200191505060405180910390fd5b4260016000858152602001908152602001600020600201601a9054906101000a900465ffffffffffff1665ffffffffffff1611611f9b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f466c69707065722f616c72656164792d66696e69736865642d656e640000000081525060200191505060405180910390fd5b60016000848152602001908152602001600020600001548114612026576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f466c69707065722f6e6f742d6d61746368696e672d626964000000000000000081525060200191505060405180910390fd5b600160008481526020019081526020016000206005015481146120b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f466c69707065722f74656e642d6e6f742d66696e69736865640000000000000081525060200191505060405180910390fd5b6001600084815260200190815260200160002060010154821061213c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f466c69707065722f6c6f742d6e6f742d6c6f776572000000000000000000000081525060200191505060405180910390fd5b6121646001600085815260200190815260200160002060010154670de0b6b3a7640000613065565b61217060045484613065565b11156121e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f466c69707065722f696e73756666696369656e742d646563726561736500000081525060200191505060405180910390fd5b6001600084815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146123ce57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb35783b336001600087815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b15801561236057600080fd5b505af1158015612374573d6000803e3d6000fd5b50505050336001600085815260200190815260200160002060020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636111be2e600354306001600088815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1686600160008a815260200190815260200160002060010154036040518563ffffffff1660e01b8152600401808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050600060405180830381600087803b15801561250357600080fd5b505af1158015612517573d6000803e3d6000fd5b5050505081600160008581526020019081526020016000206001018190555061255442600560009054906101000a900465ffffffffffff1661303b565b6001600085815260200190815260200160002060020160146101000a81548165ffffffffffff021916908365ffffffffffff1602179055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450505050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414612678576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f466c69707065722f6e6f742d617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b60016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60045481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146127ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f466c69707065722f6e6f742d617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60006020528060005260406000206000915090505481565b60035481565b60006001600083815260200190815260200160002060020160149054906101000a900465ffffffffffff1665ffffffffffff16141580156128ee5750426001600083815260200190815260200160002060020160149054906101000a900465ffffffffffff1665ffffffffffff1610806128ed57504260016000838152602001908152602001600020600201601a9054906101000a900465ffffffffffff1665ffffffffffff16105b5b612960576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f466c69707065722f6e6f742d66696e697368656400000000000000000000000081525060200191505060405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e66d279b60016000848152602001908152602001600020600501546040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b1580156129eb57600080fd5b505af11580156129ff573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636111be2e600354306001600086815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016000878152602001908152602001600020600101546040518563ffffffff1660e01b8152600401808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050600060405180830381600087803b158015612b3657600080fd5b505af1158015612b4a573d6000803e3d6000fd5b505050506001600082815260200190815260200160002060008082016000905560018201600090556002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160146101000a81549065ffffffffffff021916905560028201601a6101000a81549065ffffffffffff02191690556003820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905550505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b600560069054906101000a900465ffffffffffff1681565b60065481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414612d2b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f466c69707065722f6e6f742d617574686f72697a65640000000000000000000081525060200191505060405180910390fd5b7f6361740000000000000000000000000000000000000000000000000000000000821415612d995780600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612e07565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f466c69707065722f66696c652d756e7265636f676e697a65642d706172616d0081525060200191505060405180910390fd5b5961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b4260016000838152602001908152602001600020600201601a9054906101000a900465ffffffffffff1665ffffffffffff1610612f09576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f466c69707065722f6e6f742d66696e697368656400000000000000000000000081525060200191505060405180910390fd5b60006001600083815260200190815260200160002060020160149054906101000a900465ffffffffffff1665ffffffffffff1614612faf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f466c69707065722f6269642d616c72656164792d706c6163656400000000000081525060200191505060405180910390fd5b612fcd42600560069054906101000a900465ffffffffffff1661303b565b60016000838152602001908152602001600020600201601a6101000a81548165ffffffffffff021916908365ffffffffffff1602179055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60008265ffffffffffff1682840191508165ffffffffffff16101561305f57600080fd5b92915050565b600080821480613082575082828385029250828161307f57fe5b04145b61308b57600080fd5b9291505056fea265627a7a7231582093663ba43dedfa09aef4de625adb63616d22377dbe6e93b60f247eab6115a0d464736f6c634300050c0032

Deployed Bytecode Sourcemap

2586:5798:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2586:5798:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7999:382;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7999:382:0;;;;;;;;;;;;;;;;;:::i;:::-;;4585:272;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4585:272:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5070:574;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;5070:574:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3426:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3381:36;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3381:36:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5880:921;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5880:921:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3639:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6807:897;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6807:897:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2690:65;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2690:65:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;3574:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2761:65;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2761:65:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;2642:41;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2642:41:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3478:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7710:281;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7710:281:0;;;;;;;;;;;;;;;;;:::i;:::-;;3719:29;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3799:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4863:175;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4863:175:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3830:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5650:224;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5650:224:0;;;;;;;;;;;;;;;;;:::i;:::-;;7999:382;2886:1;2865:5;:17;2871:10;2865:17;;;;;;;;;;;;;;;;:22;2857:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8087:1;8063:26;;:4;:8;8068:2;8063:8;;;;;;;;;;;:12;;;;;;;;;;;;:26;;;;8055:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8147:4;:8;8152:2;8147:8;;;;;;;;;;;:12;;;8132:4;:8;8137:2;8132:8;;;;;;;;;;;:12;;;:27;8124:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8201:3;;;;;;;;;;;:8;;;8210:4;:8;8215:2;8210:8;;;;;;;;;;;:12;;;8201:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8201:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8201:22:0;;;;8234:3;;;;;;;;;;;:8;;;8243:3;;8256:4;8263:10;8275:4;:8;8280:2;8275:8;;;;;;;;;;;:12;;;8234:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8234:54:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8234:54:0;;;;8299:3;;;;;;;;;;;:8;;;8308:10;8320:4;:8;8325:2;8320:8;;;;;;;;;;;:12;;;;;;;;;;;;8334:4;:8;8339:2;8334:8;;;;;;;;;;;:12;;;8299:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8299:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8299:48:0;;;;8365:4;:8;8370:2;8365:8;;;;;;;;;;;;8358:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;:::o;4585:272::-;2886:1;2865:5;:17;2871:10;2865:17;;;;;;;;;;;;;;;;:22;2857:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4661:13;:4;:13;4657:192;;;4682:4;4676:3;:10;;;;4657:192;;;4706:13;:4;:13;4702:147;;;4734:4;4721:3;;:18;;;;;;;;;;;;;;;;;;4702:147;;;4759:13;:4;:13;4755:94;;;4787:4;4774:3;;:18;;;;;;;;;;;;;;;;;;4755:94;;;4808:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4755:94;4702:147;4657:192;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;;:::o;5070:574::-;5179:10;2886:1;2865:5;:17;2871:10;2865:17;;;;;;;;;;;;;;;;:22;2857:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5231:2;5215:5;;:19;5207:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5273:5;;5271:7;;;;;;;;;;5266:12;;5306:3;5291:4;:8;5296:2;5291:8;;;;;;;;;;;:12;;:18;;;;5335:3;5320:4;:8;5325:2;5320:8;;;;;;;;;;;:12;;:18;;;;5364:10;5349:4;:8;5354:2;5349:8;;;;;;;;;;;:12;;;:25;;;;;;;;;;;;;;;;;;5419:21;5430:3;5436;;;;;;;;;;;5419;:21::i;:::-;5404:4;:8;5409:2;5404:8;;;;;;;;;;;:12;;;:36;;;;;;;;;;;;;;;;;;5466:3;5451:4;:8;5456:2;5451:8;;;;;;;;;;;:12;;;:18;;;;;;;;;;;;;;;;;;5495:3;5480:4;:8;5485:2;5480:8;;;;;;;;;;;:12;;;:18;;;;;;;;;;;;;;;;;;5524:3;5509:4;:8;5514:2;5509:8;;;;;;;;;;;:12;;:18;;;;5540:3;;;;;;;;;;;:8;;;5549:3;;5554:10;5574:4;5581:3;5540:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5540:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5540:45:0;;;;5632:3;5603:33;;5627:3;5603:33;;;5608:2;5612:3;5617;5622;5603:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5070:574;;;;;;;:::o;3426:20::-;;;;;;;;;;;;;:::o;3381:36::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5880:921::-;5989:1;5965:26;;:4;:8;5970:2;5965:8;;;;;;;;;;;:12;;;;;;;;;;;;:26;;;;5957:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6049:3;6034:4;:8;6039:2;6034:8;;;;;;;;;;;:12;;;;;;;;;;;;:18;;;:39;;;;6072:1;6056:4;:8;6061:2;6056:8;;;;;;;;;;;:12;;;;;;;;;;;;:17;;;6034:39;6026:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6140:3;6125:4;:8;6130:2;6125:8;;;;;;;;;;;:12;;;;;;;;;;;;:18;;;6117:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6204:4;:8;6209:2;6204:8;;;;;;;;;;;:12;;;6197:3;:19;6189:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6271:4;:8;6276:2;6271:8;;;;;;;;;;;:12;;;6264:3;:19;;6256:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6337:4;:8;6342:2;6337:8;;;;;;;;;;;:12;;;6330:3;:19;6322:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6412:22;6416:3;;6421:4;:8;6426:2;6421:8;;;;;;;;;;;:12;;;6412:3;:22::i;:::-;6395:13;6399:3;3560:7;6395:3;:13::i;:::-;:39;;:62;;;;6445:4;:8;6450:2;6445:8;;;;;;;;;;;:12;;;6438:3;:19;6395:62;6387:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6522:4;:8;6527:2;6522:8;;;;;;;;;;;:12;;;;;;;;;;;;6508:26;;:10;:26;;;6504:147;;6551:3;;;;;;;;;;;:8;;;6560:10;6572:4;:8;6577:2;6572:8;;;;;;;;;;;:12;;;;;;;;;;;;6586:4;:8;6591:2;6586:8;;;;;;;;;;;:12;;;6551:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6551:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6551:48:0;;;;6629:10;6614:4;:8;6619:2;6614:8;;;;;;;;;;;:12;;;:25;;;;;;;;;;;;;;;;;;6504:147;6661:3;;;;;;;;;;;:8;;;6670:10;6682:4;:8;6687:2;6682:8;;;;;;;;;;;:12;;;;;;;;;;;;6702:4;:8;6707:2;6702:8;;;;;;;;;;;:12;;;6696:3;:18;6661:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6661:54:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6661:54:0;;;;6743:3;6728:4;:8;6733:2;6728:8;;;;;;;;;;;:12;;:18;;;;6772:21;6783:3;6789;;;;;;;;;;;6772;:21::i;:::-;6757:4;:8;6762:2;6757:8;;;;;;;;;;;:12;;;:36;;;;;;;;;;;;;;;;;;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;;;:::o;3639:30::-;;;;;;;;;;;;;:::o;6807:897::-;6916:1;6892:26;;:4;:8;6897:2;6892:8;;;;;;;;;;;:12;;;;;;;;;;;;:26;;;;6884:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6976:3;6961:4;:8;6966:2;6961:8;;;;;;;;;;;:12;;;;;;;;;;;;:18;;;:39;;;;6999:1;6983:4;:8;6988:2;6983:8;;;;;;;;;;;:12;;;;;;;;;;;;:17;;;6961:39;6953:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7067:3;7052:4;:8;7057:2;7052:8;;;;;;;;;;;:12;;;;;;;;;;;;:18;;;7044:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7131:4;:8;7136:2;7131:8;;;;;;;;;;;:12;;;7124:3;:19;7116:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7198:4;:8;7203:2;7198:8;;;;;;;;;;;:12;;;7191:3;:19;7183:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7265:4;:8;7270:2;7265:8;;;;;;;;;;;:12;;;7259:3;:18;7251:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7339:22;7343:4;:8;7348:2;7343:8;;;;;;;;;;;:12;;;3560:7;7339:3;:22::i;:::-;7322:13;7326:3;;7331;7322;:13::i;:::-;:39;;7314:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7426:4;:8;7431:2;7426:8;;;;;;;;;;;:12;;;;;;;;;;;;7412:26;;:10;:26;;;7408:138;;7455:3;;;;;;;;;;;:8;;;7464:10;7476:4;:8;7481:2;7476:8;;;;;;;;;;;:12;;;;;;;;;;;;7490:3;7455:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7455:39:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7455:39:0;;;;7524:10;7509:4;:8;7514:2;7509:8;;;;;;;;;;;:12;;;:25;;;;;;;;;;;;;;;;;;7408:138;7556:3;;;;;;;;;;;:8;;;7565:3;;7578:4;7585;:8;7590:2;7585:8;;;;;;;;;;;:12;;;;;;;;;;;;7614:3;7599:4;:8;7604:2;7599:8;;;;;;;;;;;:12;;;:18;7556:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7556:62:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7556:62:0;;;;7646:3;7631:4;:8;7636:2;7631:8;;;;;;;;;;;:12;;:18;;;;7675:21;7686:3;7692;;;;;;;;;;;7675;:21::i;:::-;7660:4;:8;7665:2;7660:8;;;;;;;;;;;:12;;;:36;;;;;;;;;;;;;;;;;;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;;;:::o;2690:65::-;2886:1;2865:5;:17;2871:10;2865:17;;;;;;;;;;;;;;;;:22;2857:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2751:1;2738:5;:10;2744:3;2738:10;;;;;;;;;;;;;;;:14;;;;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;:::o;3574:30::-;;;;:::o;2761:65::-;2886:1;2865:5;:17;2871:10;2865:17;;;;;;;;;;;;;;;;:22;2857:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2822:1;2809:5;:10;2815:3;2809:10;;;;;;;;;;;;;;;:14;;;;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;:::o;2642:41::-;;;;;;;;;;;;;;;;;:::o;3478:20::-;;;;:::o;7710:281::-;7785:1;7769:4;:8;7774:2;7769:8;;;;;;;;;;;:12;;;;;;;;;;;;:17;;;;:63;;;;;7806:3;7791:4;:8;7796:2;7791:8;;;;;;;;;;;:12;;;;;;;;;;;;:18;;;:40;;;;7828:3;7813:4;:8;7818:2;7813:8;;;;;;;;;;;:12;;;;;;;;;;;;:18;;;7791:40;7769:63;7761:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7868:3;;;;;;;;;;;:8;;;7877:4;:8;7882:2;7877:8;;;;;;;;;;;:12;;;7868:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7868:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7868:22:0;;;;7901:3;;;;;;;;;;;:8;;;7910:3;;7923:4;7930;:8;7935:2;7930:8;;;;;;;;;;;:12;;;;;;;;;;;;7944:4;:8;7949:2;7944:8;;;;;;;;;;;:12;;;7901:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7901:56:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7901:56:0;;;;7975:4;:8;7980:2;7975:8;;;;;;;;;;;;7968:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;:::o;3719:29::-;;;;;;;;;;;;;:::o;3799:24::-;;;;:::o;4863:175::-;2886:1;2865:5;:17;2871:10;2865:17;;;;;;;;;;;;;;;;:22;2857:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4939:13;:4;:13;4935:95;;;4968:4;4954:3;;:19;;;;;;;;;;;;;;;;;;4935:95;;;4989:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4935:95;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;;:::o;3830:20::-;;;;;;;;;;;;;:::o;5650:224::-;5724:3;5709:4;:8;5714:2;5709:8;;;;;;;;;;;:12;;;;;;;;;;;;:18;;;5701:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5787:1;5771:4;:8;5776:2;5771:8;;;;;;;;;;;:12;;;;;;;;;;;;:17;;;5763:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5845:21;5856:3;5862;;;;;;;;;;;5845;:21::i;:::-;5830:4;:8;5835:2;5830:8;;;;;;;;;;;:12;;;:36;;;;;;;;;;;;;;;;;;1253:7;1349:3;1343:4;1339:14;1333:4;1326:28;1424:4;1418;1411:18;1516:3;1509:4;1503;1499:15;1492:28;1603:3;1600:1;1593:4;1587;1583:15;1570:37;1925:2;1912:16;1862:1;1849:15;1780:8;1745:1;1732:15;1727:3;1723:25;1718:3;1714:35;1653:3;1647:4;1642:333;1076:910;;:::o;4312:110::-;4368:8;4412:1;4397:16;;4406:1;4402;:5;4398:9;;;4397:16;;;;4389:25;;;;;;4312:110;;;;:::o;4428:127::-;4486:9;4521:1;4516;:6;:30;;;;4545:1;4540;4535;4531;:5;4527:9;;;4526:15;;;;;;:20;4516:30;4508:39;;;;;;4428:127;;;;:::o

Swarm Source

bzzr://93663ba43dedfa09aef4de625adb63616d22377dbe6e93b60f247eab6115a0d4

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.