ETH Price: $2,880.68 (+0.24%)
 

Overview

ETH Balance

0.000096851270774095 ETH

Eth Value

$0.28 (@ $2,880.68/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Breed97961772020-04-03 2:01:571767 days ago1585879317IN
0xd99E77D4...f844d9bE5
0 ETH0.000270842.4
Breed97957822020-04-03 0:30:231767 days ago1585873823IN
0xd99E77D4...f844d9bE5
0 ETH0.00033873
Breed97956542020-04-03 0:02:071767 days ago1585872127IN
0xd99E77D4...f844d9bE5
0 ETH0.00022582
Breed97942172020-04-02 18:40:141768 days ago1585852814IN
0xd99E77D4...f844d9bE5
0 ETH0.000564265
Breed97932052020-04-02 14:50:551768 days ago1585839055IN
0xd99E77D4...f844d9bE5
0 ETH0.000564515
Breed97926792020-04-02 12:50:251768 days ago1585831825IN
0xd99E77D4...f844d9bE5
0 ETH0.000564515
Breed97899862020-04-02 3:03:531768 days ago1585796633IN
0xd99E77D4...f844d9bE5
0 ETH0.00009482
Breed97898712020-04-02 2:40:461768 days ago1585795246IN
0xd99E77D4...f844d9bE5
0 ETH0.000270962.4
Breed97861072020-04-01 12:41:071769 days ago1585744867IN
0xd99E77D4...f844d9bE5
0 ETH0.000620965.5
Breed97860152020-04-01 12:20:451769 days ago1585743645IN
0xd99E77D4...f844d9bE5
0 ETH0.000519354.6
Breed97841422020-04-01 5:40:201769 days ago1585719620IN
0xd99E77D4...f844d9bE5
0 ETH0.000259442.3
Breed97840502020-04-01 5:20:391769 days ago1585718439IN
0xd99E77D4...f844d9bE5
0 ETH0.000293282.6
Breed97549142020-03-27 17:51:081774 days ago1585331468IN
0xd99E77D4...f844d9bE5
0 ETH0.000248162.2
Breed97543722020-03-27 16:03:051774 days ago1585324985IN
0xd99E77D4...f844d9bE5
0 ETH0.00022562
Breed97539272020-03-27 14:22:111774 days ago1585318931IN
0xd99E77D4...f844d9bE5
0 ETH0.000241755.1
Breed97539272020-03-27 14:22:111774 days ago1585318931IN
0xd99E77D4...f844d9bE5
0 ETH0.000564515
Breed97528772020-03-27 10:20:501774 days ago1585304450IN
0xd99E77D4...f844d9bE5
0 ETH0.00022572
Breed97528442020-03-27 10:13:161774 days ago1585303996IN
0xd99E77D4...f844d9bE5
0 ETH0.000349993.1
Breed97524192020-03-27 8:40:281774 days ago1585298428IN
0xd99E77D4...f844d9bE5
0 ETH0.000564515
Breed97522952020-03-27 8:10:151774 days ago1585296615IN
0xd99E77D4...f844d9bE5
0 ETH0.000564515
Breed97522942020-03-27 8:10:131774 days ago1585296613IN
0xd99E77D4...f844d9bE5
0 ETH0.000564515
Breed97516752020-03-27 5:51:091774 days ago1585288269IN
0xd99E77D4...f844d9bE5
0 ETH0.00022582
Breed97509512020-03-27 3:13:001774 days ago1585278780IN
0xd99E77D4...f844d9bE5
0 ETH0.000451414
Breed97508972020-03-27 3:00:211774 days ago1585278021IN
0xd99E77D4...f844d9bE5
0 ETH0.00033843
Breed97508952020-03-27 2:59:571774 days ago1585277997IN
0xd99E77D4...f844d9bE5
0 ETH0.000104282.2
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
99636092020-04-28 22:17:311742 days ago1588112251
0xd99E77D4...f844d9bE5
0.3334 ETH
98024052020-04-04 0:52:111766 days ago1585961531
0xd99E77D4...f844d9bE5
0.03430907 ETH
98020352020-04-03 23:30:381766 days ago1585956638
0xd99E77D4...f844d9bE5
0.03907148 ETH
97971972020-04-03 5:42:181767 days ago1585892538
0xd99E77D4...f844d9bE5
0.00421601 ETH
97961772020-04-03 2:01:571767 days ago1585879317
0xd99E77D4...f844d9bE5
0.001 ETH
97961772020-04-03 2:01:571767 days ago1585879317
0xd99E77D4...f844d9bE5
0.008 ETH
97957822020-04-03 0:30:231767 days ago1585873823
0xd99E77D4...f844d9bE5
0.001 ETH
97957822020-04-03 0:30:231767 days ago1585873823
0xd99E77D4...f844d9bE5
0.008 ETH
97956542020-04-03 0:02:071767 days ago1585872127
0xd99E77D4...f844d9bE5
0.001 ETH
97956542020-04-03 0:02:071767 days ago1585872127
0xd99E77D4...f844d9bE5
0.008 ETH
97954802020-04-02 23:23:411767 days ago1585869821
0xd99E77D4...f844d9bE5
0.00476346 ETH
97952412020-04-02 22:30:411768 days ago1585866641
0xd99E77D4...f844d9bE5
0.004793 ETH
97952412020-04-02 22:30:411768 days ago1585866641
0xd99E77D4...f844d9bE5
0.004793 ETH
97942172020-04-02 18:40:141768 days ago1585852814
0xd99E77D4...f844d9bE5
0.001 ETH
97942172020-04-02 18:40:141768 days ago1585852814
0xd99E77D4...f844d9bE5
0.008 ETH
97932052020-04-02 14:50:551768 days ago1585839055
0xd99E77D4...f844d9bE5
0.001 ETH
97932052020-04-02 14:50:551768 days ago1585839055
0xd99E77D4...f844d9bE5
0.008 ETH
97926792020-04-02 12:50:251768 days ago1585831825
0xd99E77D4...f844d9bE5
0.001 ETH
97926792020-04-02 12:50:251768 days ago1585831825
0xd99E77D4...f844d9bE5
0.008 ETH
97924282020-04-02 11:51:551768 days ago1585828315
0xd99E77D4...f844d9bE5
0.008 ETH
97917442020-04-02 9:24:181768 days ago1585819458
0xd99E77D4...f844d9bE5
0.06152499 ETH
97904152020-04-02 4:31:541768 days ago1585801914
0xd99E77D4...f844d9bE5
0.00932622 ETH
97899862020-04-02 3:03:531768 days ago1585796633
0xd99E77D4...f844d9bE5
0.008 ETH
97899812020-04-02 3:02:511768 days ago1585796571
0xd99E77D4...f844d9bE5
0.008 ETH
97898712020-04-02 2:40:461768 days ago1585795246
0xd99E77D4...f844d9bE5
0.001 ETH
View All Internal Transactions
Loading...
Loading

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

Contract Name:
SimpleBreeding

Compiler Version
v0.5.3+commit.10d17f24

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-10-04
*/

pragma solidity ^0.5.3;


contract AuctionInterface {
    function cancelAuction(uint256 _tokenId) external;
}

contract ERC721 {
    // Required methods
    function totalSupply() public view returns (uint256 total);
    function balanceOf(address _owner) public view returns (uint256 balance);
    function ownerOf(uint256 _tokenId) external view returns (address owner);
    function approve(address _to, uint256 _tokenId) external;
    function transfer(address _to, uint256 _tokenId) external;
    function transferFrom(address _from, address _to, uint256 _tokenId) external;

    // Events
    event Transfer(address from, address to, uint256 tokenId);
    event Approval(address owner, address approved, uint256 tokenId);

    // Optional
    // function name() public view returns (string name);
    // function symbol() public view returns (string symbol);
    // function tokensOfOwner(address _owner) external view returns (uint256[] tokenIds);
    // function tokenMetadata(uint256 _tokenId, string _preferredTransport) public view returns (string infoUrl);

    // ERC-165 Compatibility (https://github.com/ethereum/EIPs/issues/165)
    function supportsInterface(bytes4 _interfaceID) external view returns (bool);
}

contract KittyCoreInterface is ERC721  {
    uint256 public autoBirthFee;
    address public saleAuction;
    address public siringAuction;
    function breedWithAuto(uint256 _matronId, uint256 _sireId) public payable;
    function createSaleAuction(uint256 _kittyId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration) external;
    function createSiringAuction(uint256 _kittyId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration) external;
    function supportsInterface(bytes4 _interfaceID) external view returns (bool);
}

library SafeMath {
    /**
     * @dev Multiplies two unsigned integers, reverts on overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b);

        return c;
    }

    /**
     * @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Adds two unsigned integers, reverts on overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a);

        return c;
    }

    /**
     * @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo),
     * reverts when dividing by zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b != 0);
        return a % b;
    }
}

/**
 * @title AccessControl
 * @dev AccessControl contract sets roles and permissions
 * Owner - has full control over contract
 * Operator - has limited sub set of allowed actions over contract
 * Multiple operators can be added by owner to delegate a number of tasks in the contract
 */
contract AccessControl {
  address payable public owner;
  mapping(address => bool) public operators;

  event OwnershipTransferred(
    address indexed previousOwner,
    address indexed newOwner
  );

  event OperatorAdded(
    address indexed operator
  );

  event OperatorRemoved(
    address indexed operator
  );

  constructor(address payable _owner) public {
    if(_owner == address(0)) {
      owner = msg.sender;
    } else {
      owner = _owner;
    }
  }

  modifier onlyOwner() {
    require(msg.sender == owner, 'Invalid sender');
    _;
  }

  modifier onlyOwnerOrOperator() {
    require(msg.sender == owner || operators[msg.sender] == true, 'Invalid sender');
    _;
  }

  function transferOwnership(address payable _newOwner) public onlyOwner {
    _transferOwnership(_newOwner);
  }

  function _transferOwnership(address payable _newOwner) internal {
    require(_newOwner != address(0), 'Invalid address');
    emit OwnershipTransferred(owner, _newOwner);
    owner = _newOwner;
  }

  function addOperator(address payable _operator) public onlyOwner {
    require(operators[_operator] != true, 'Operator already exists');
    operators[_operator] = true;

    emit OperatorAdded(_operator);
  }

  function removeOperator(address payable _operator) public onlyOwner {
    require(operators[_operator] == true, 'Operator already exists');
    delete operators[_operator];

    emit OperatorRemoved(_operator);
  }

  function destroy() public onlyOwner {
    selfdestruct(owner);
  }

  function destroyAndSend(address payable _recipient) public onlyOwner {
    selfdestruct(_recipient);
  }
}

/**
 * @title Pausable
 * @dev The Pausable contract can be paused and started by owner
 */
contract Pausable is AccessControl {
    event Pause();
    event Unpause();

    bool public paused = false;

    constructor(address payable _owner) AccessControl(_owner) public {}

    modifier whenNotPaused() {
        require(!paused, "Contract paused");
        _;
    }

    modifier whenPaused() {
        require(paused, "Contract should be paused");
        _;
    }

    function pause() public onlyOwner whenNotPaused {
        paused = true;
        emit Pause();
    }

    function unpause() public onlyOwner whenPaused {
        paused = false;
        emit Unpause();
    }
}

 /**
 * @title CKProxy
 * @dev CKProxy contract allows owner or operator to proxy call to CK Core contract to manage kitties owned by contract
 */
contract CKProxy is Pausable {
  KittyCoreInterface public kittyCore;
  AuctionInterface public saleAuction;
  AuctionInterface public siringAuction;

constructor(address payable _owner, address _kittyCoreAddress) Pausable(_owner) public {
    require(_kittyCoreAddress != address(0), 'Invalid Kitty Core contract address');
    kittyCore = KittyCoreInterface(_kittyCoreAddress);
    require(kittyCore.supportsInterface(0x9a20483d), 'Invalid Kitty Core contract');

    saleAuction = AuctionInterface(kittyCore.saleAuction());
    siringAuction = AuctionInterface(kittyCore.siringAuction());
  }

  /**
   * Owner or operator can transfer kitty
   */
  function transferKitty(address _to, uint256 _kittyId) external onlyOwnerOrOperator {
    kittyCore.transfer(_to, _kittyId);
  }

  /**
   * Owner or operator can transfer kittie in batched to optimize gas usage
   */
  function transferKittyBulk(address _to, uint256[] calldata _kittyIds) external onlyOwnerOrOperator {
    for(uint256 i = 0; i < _kittyIds.length; i++) {
      kittyCore.transfer(_to, _kittyIds[i]);
    }
  }

  /**
   * Owner or operator can transferFrom kitty
   */
  function transferKittyFrom(address _from, address _to, uint256 _kittyId) external onlyOwnerOrOperator {
    kittyCore.transferFrom(_from, _to, _kittyId);
  }

  /**
   * Owner or operator an approve kitty
   */
  function approveKitty(address _to, uint256 _kittyId) external  onlyOwnerOrOperator {
    kittyCore.approve(_to, _kittyId);
  }

  /**
   * Owner or operator can start sales auction for kitty owned by contract
   */
  function createSaleAuction(uint256 _kittyId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration) external onlyOwnerOrOperator {
    kittyCore.createSaleAuction(_kittyId, _startingPrice, _endingPrice, _duration);
  }

  /**
   * Owner or operator can cancel sales auction for kitty owned by contract
   */
  function cancelSaleAuction(uint256 _kittyId) external onlyOwnerOrOperator {
    saleAuction.cancelAuction(_kittyId);
  }

  /**
   * Owner or operator can start siring auction for kitty owned by contract
   */
  function createSiringAuction(uint256 _kittyId, uint256 _startingPrice, uint256 _endingPrice, uint256 _duration) external onlyOwnerOrOperator {
    kittyCore.createSiringAuction(_kittyId, _startingPrice, _endingPrice, _duration);
  }

  /**
   * Owner or operator can cancel siring auction for kitty owned by contract
   */
  function cancelSiringAuction(uint256 _kittyId) external onlyOwnerOrOperator {
    siringAuction.cancelAuction(_kittyId);
  }
}

 /**
 * @title SimpleBreeding
 * @dev Simple breeding contract allows dedicated breeder to breed kitties on behalf of owner, while owner retains control over funds and kitties.
 * Breeder gets reward per each successful breed. Breeder can breed when contract is not paused.
 * Owner should transfer kitties and funds to contact to breeding starts and withdraw afterwards.
 * Breeder can only breed kitties owned by contract and cannot transfer funds or kitties itself.
 */
contract SimpleBreeding is CKProxy {
  address payable public breeder;
  uint256 public breederReward;
  uint256 public originalBreederReward;
  uint256 public maxBreedingFee;

  event Breed(address breeder, uint256 matronId, uint256 sireId, uint256 reward);
  event MaxBreedingFeeChange(uint256 oldBreedingFee, uint256 newBreedingFee);
  event BreederRewardChange(uint256 oldBreederReward, uint256 newBreederReward);

  constructor(address payable _owner, address payable _breeder, address _kittyCoreAddress, uint256 _breederReward)
    CKProxy(_owner, _kittyCoreAddress) public {
    require(_breeder != address(0), 'Invalid breeder address');
    breeder = _breeder;
    maxBreedingFee = kittyCore.autoBirthFee();
    breederReward = _breederReward;
    originalBreederReward = _breederReward;
  }

  /**
   * Contract funds are used to cover breeding fees and pay callee
   */
  function () external payable {}

  /**
   * Owner can withdraw funds from contract
   */
  function withdraw(uint256 amount) external onlyOwner {
    owner.transfer(amount);
  }

  /**
   * Owner can adjust breedering fee if needed
   */
  function setMaxBreedingFee(
    uint256 _maxBreedingFee
  ) external onlyOwner {
    emit MaxBreedingFeeChange(maxBreedingFee, _maxBreedingFee);
    maxBreedingFee = _maxBreedingFee;
  }

   /**
   * Owner or breeder can change breeder's reward if needed.
   * Breeder can lower reward to make more attractive offer, it cannot set more than was originally agreed.
   * Owner can increase reward to motivate breeder to breed during high gas price, it cannot set less than was set by breeder.
   */
  function setBreederReward(
    uint256 _breederReward
  ) external {
    require(msg.sender == breeder || msg.sender == owner, 'Invalid sender');

    if(msg.sender == owner) {
      require(_breederReward >= originalBreederReward || _breederReward > breederReward, 'Reward value is less than required');
    } else if(msg.sender == breeder) {
      require(_breederReward <= originalBreederReward, 'Reward value is more than original');
    }

    emit BreederRewardChange(breederReward, _breederReward);
    breederReward = _breederReward;
  }

  /**
   * Breeder can call this function to breed kitties on behalf of owner
   * Owner can breed as well
   */
  function breed(uint256 _matronId, uint256 _sireId) external whenNotPaused {
    require(msg.sender == breeder || msg.sender == owner, 'Invalid sender');
    uint256 fee = kittyCore.autoBirthFee();
    require(fee <= maxBreedingFee, 'Breeding fee is too high');
    kittyCore.breedWithAuto.value(fee)(_matronId, _sireId);

    uint256 reward = 0;
    // breeder can reenter but that's OK, since breeder is payed per successful breed
    if(msg.sender == breeder) {
      reward = breederReward;
      breeder.transfer(reward);
    }

    emit Breed(msg.sender, _matronId, _sireId, reward);
  }

  function destroy() public onlyOwner {
    require(kittyCore.balanceOf(address(this)) == 0, 'Contract has tokens');
    selfdestruct(owner);
  }

  function destroyAndSend(address payable _recipient) public onlyOwner {
    require(kittyCore.balanceOf(address(this)) == 0, 'Contract has tokens');
    selfdestruct(_recipient);
  }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_kittyId","type":"uint256"}],"name":"approveKitty","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"originalBreederReward","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_kittyId","type":"uint256"}],"name":"cancelSiringAuction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"operators","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"siringAuction","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"kittyCore","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_maxBreedingFee","type":"uint256"}],"name":"setMaxBreedingFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kittyId","type":"uint256"},{"name":"_startingPrice","type":"uint256"},{"name":"_endingPrice","type":"uint256"},{"name":"_duration","type":"uint256"}],"name":"createSaleAuction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_breederReward","type":"uint256"}],"name":"setBreederReward","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kittyId","type":"uint256"},{"name":"_startingPrice","type":"uint256"},{"name":"_endingPrice","type":"uint256"},{"name":"_duration","type":"uint256"}],"name":"createSiringAuction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_kittyIds","type":"uint256[]"}],"name":"transferKittyBulk","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_operator","type":"address"}],"name":"addOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_operator","type":"address"}],"name":"removeOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"breeder","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_kittyId","type":"uint256"}],"name":"transferKittyFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_kittyId","type":"uint256"}],"name":"cancelSaleAuction","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"breederReward","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_matronId","type":"uint256"},{"name":"_sireId","type":"uint256"}],"name":"breed","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"saleAuction","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_recipient","type":"address"}],"name":"destroyAndSend","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxBreedingFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_kittyId","type":"uint256"}],"name":"transferKitty","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_owner","type":"address"},{"name":"_breeder","type":"address"},{"name":"_kittyCoreAddress","type":"address"},{"name":"_breederReward","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"breeder","type":"address"},{"indexed":false,"name":"matronId","type":"uint256"},{"indexed":false,"name":"sireId","type":"uint256"},{"indexed":false,"name":"reward","type":"uint256"}],"name":"Breed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"oldBreedingFee","type":"uint256"},{"indexed":false,"name":"newBreedingFee","type":"uint256"}],"name":"MaxBreedingFeeChange","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"oldBreederReward","type":"uint256"},{"indexed":false,"name":"newBreederReward","type":"uint256"}],"name":"BreederRewardChange","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"operator","type":"address"}],"name":"OperatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"operator","type":"address"}],"name":"OperatorRemoved","type":"event"}]

Deployed Bytecode

0x6080604052600436106101de576000357c0100000000000000000000000000000000000000000000000000000000900480638456cb5911610114578063c31f586d116100b2578063f2fde38b11610081578063f2fde38b14610902578063f5074f4114610953578063fc1e7476146109a4578063ffc42470146109cf576101de565b8063c31f586d14610800578063d0826cbb1461083b578063d9ecad7b14610866578063e6cbe351146108ab576101de565b80639870d7fe116100ee5780639870d7fe1461068c578063ac8a584a146106dd578063ae9dfc4d1461072e578063b2e2418a14610785576101de565b80638456cb59146105785780638da5cb5b1461058f5780638fb4fc4f146105e6576101de565b80633d280e8e11610181578063489b388c1161015b578063489b388c1461049e5780634ad8c938146104d95780635c975abb1461053257806383197ef014610561576101de565b80633d280e8e146103f35780633d7d3f5a1461042e5780633f4ba83a14610487576101de565b806313e7c9d8116101bd57806313e7c9d8146102a157806321717ebf1461030a5780632e1a7d4d146103615780633d1153341461039c576101de565b8062aa418f146101e05780630504d9c51461023b5780631033356714610266575b005b3480156101ec57600080fd5b506102396004803603604081101561020357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a2a565b005b34801561024757600080fd5b50610250610c2a565b6040518082815260200191505060405180910390f35b34801561027257600080fd5b5061029f6004803603602081101561028957600080fd5b8101908080359060200190929190505050610c30565b005b3480156102ad57600080fd5b506102f0600480360360208110156102c457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dfb565b604051808215151515815260200191505060405180910390f35b34801561031657600080fd5b5061031f610e1b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561036d57600080fd5b5061039a6004803603602081101561038457600080fd5b8101908080359060200190929190505050610e41565b005b3480156103a857600080fd5b506103b1610f70565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103ff57600080fd5b5061042c6004803603602081101561041657600080fd5b8101908080359060200190929190505050610f96565b005b34801561043a57600080fd5b506104856004803603608081101561045157600080fd5b81019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506110a5565b005b34801561049357600080fd5b5061049c61128b565b005b3480156104aa57600080fd5b506104d7600480360360208110156104c157600080fd5b810190808035906020019092919050505061141c565b005b3480156104e557600080fd5b50610530600480360360808110156104fc57600080fd5b81019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506116fb565b005b34801561053e57600080fd5b506105476118e1565b604051808215151515815260200191505060405180910390f35b34801561056d57600080fd5b506105766118f4565b005b34801561058457600080fd5b5061058d611b5f565b005b34801561059b57600080fd5b506105a4611cf1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156105f257600080fd5b5061068a6004803603604081101561060957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561064657600080fd5b82018360208201111561065857600080fd5b8035906020019184602083028401116401000000008311171561067a57600080fd5b9091929391929390505050611d16565b005b34801561069857600080fd5b506106db600480360360208110156106af57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f4a565b005b3480156106e957600080fd5b5061072c6004803603602081101561070057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612174565b005b34801561073a57600080fd5b50610743612395565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561079157600080fd5b506107fe600480360360608110156107a857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506123bb565b005b34801561080c57600080fd5b506108396004803603602081101561082357600080fd5b81019080803590602001909291905050506125f0565b005b34801561084757600080fd5b506108506127bb565b6040518082815260200191505060405180910390f35b34801561087257600080fd5b506108a96004803603604081101561088957600080fd5b8101908080359060200190929190803590602001909291905050506127c1565b005b3480156108b757600080fd5b506108c0612c9c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561090e57600080fd5b506109516004803603602081101561092557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612cc2565b005b34801561095f57600080fd5b506109a26004803603602081101561097657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d92565b005b3480156109b057600080fd5b506109b9612fdc565b6040518082815260200191505060405180910390f35b3480156109db57600080fd5b50610a28600480360360408110156109f257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612fe2565b005b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610ad5575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b1515610b49576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b383836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015610c0e57600080fd5b505af1158015610c22573d6000803e3d6000fd5b505050505050565b60075481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610cdb575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b1515610d4f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166396b5a755826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b158015610de057600080fd5b505af1158015610df4573d6000803e3d6000fd5b5050505050565b60016020528060005260406000206000915054906101000a900460ff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015610f6c573d6000803e3d6000fd5b5050565b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561105a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b7f693d3e7d14d8f845811b787f8d28c1aef4b4bac15721fbea5dc8a8a7c85da61b60085482604051808381526020018281526020019250505060405180910390a18060088190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611150575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b15156111c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633d7d3f5a858585856040518563ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180858152602001848152602001838152602001828152602001945050505050600060405180830381600087803b15801561126d57600080fd5b505af1158015611281573d6000803e3d6000fd5b5050505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561134f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600260009054906101000a900460ff1615156113d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f436f6e74726163742073686f756c64206265207061757365640000000000000081525060200191505060405180910390fd5b6000600260006101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806114c457506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515611538576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156115fb576007548110158061159f575060065481115b15156115f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806133466022913960400191505060405180910390fd5b6116b0565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156116af5760075481111515156116ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806133686022913960400191505060405180910390fd5b5b5b7ffdac16f44d837cccd5f18e297e4e2c1366844b81ed087ea6506eb1f1bcd7b6f460065482604051808381526020018281526020019250505060405180910390a18060068190555050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806117a6575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b151561181a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634ad8c938858585856040518563ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180858152602001848152602001838152602001828152602001945050505050600060405180830381600087803b1580156118c357600080fd5b505af11580156118d7573d6000803e3d6000fd5b5050505050505050565b600260009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611a7557600080fd5b505afa158015611a89573d6000803e3d6000fd5b505050506040513d6020811015611a9f57600080fd5b8101908080519060200190929190505050141515611b25576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f436f6e74726163742068617320746f6b656e730000000000000000000000000081525060200191505060405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c23576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600260009054906101000a900460ff16151515611ca8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f436f6e747261637420706175736564000000000000000000000000000000000081525060200191505060405180910390fd5b6001600260006101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611dc1575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b1515611e35576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b60008090505b82829050811015611f4457600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181101515611e9357fe5b905060200201356040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015611f1f57600080fd5b505af1158015611f33573d6000803e3d6000fd5b505050508080600101915050611e3b565b50505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561200e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b60011515600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515156120d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f70657261746f7220616c72656164792065786973747300000000000000000081525060200191505060405180910390fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fac6fa858e9350a46cec16539926e0fde25b7629f84b5a72bffaae4df888ae86d60405160405180910390a250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612238576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b60011515600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515612300576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f4f70657261746f7220616c72656164792065786973747300000000000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558073ffffffffffffffffffffffffffffffffffffffff167f80c0b871b97b595b16a7741c1b06fed0c6f6f558639f18ccbce50724325dc40d60405160405180910390a250565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480612466575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b15156124da576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8484846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b1580156125d357600080fd5b505af11580156125e7573d6000803e3d6000fd5b50505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061269b575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b151561270f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166396b5a755826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050600060405180830381600087803b1580156127a057600080fd5b505af11580156127b4573d6000803e3d6000fd5b5050505050565b60065481565b600260009054906101000a900460ff16151515612846576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f436f6e747261637420706175736564000000000000000000000000000000000081525060200191505060405180910390fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806128ee57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b1515612962576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b0c35c056040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040160206040518083038186803b1580156129e857600080fd5b505afa1580156129fc573d6000803e3d6000fd5b505050506040513d6020811015612a1257600080fd5b810190808051906020019092919050505090506008548111151515612a9f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f4272656564696e672066656520697320746f6f2068696768000000000000000081525060200191505060405180910390fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f7d8c8838285856040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180838152602001828152602001925050506000604051808303818588803b158015612b3857600080fd5b505af1158015612b4c573d6000803e3d6000fd5b50505050506000809050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415612c1b576006549050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015612c19573d6000803e3d6000fd5b505b7fddf1e8fec06a50aa72b8a39a06787808c53eca73b2bd1cc995681cf7b801465033858584604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200194505050505060405180910390a150505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612d86576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b612d8f816131e2565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612e56576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b6000600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015612f1357600080fd5b505afa158015612f27573d6000803e3d6000fd5b505050506040513d6020811015612f3d57600080fd5b8101908080519060200190929190505050141515612fc3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f436f6e74726163742068617320746f6b656e730000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16ff5b60085481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061308d575060011515600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b1515613101576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f496e76616c69642073656e64657200000000000000000000000000000000000081525060200191505060405180910390fd5b600260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1580156131c657600080fd5b505af11580156131da573d6000803e3d6000fd5b505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515613287576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f496e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505056fe5265776172642076616c7565206973206c657373207468616e2072657175697265645265776172642076616c7565206973206d6f7265207468616e206f726967696e616ca165627a7a723058204ac6268e21c5e75737efd89538f98961aeafc2a593ea7bd50d10d350465d8edd0029

Deployed Bytecode Sourcemap

9587:3300:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7872:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7872:128:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7872:128:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9695:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9695:36:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8974:126;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8974:126:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8974:126:0;;;;;;;;;;;;;;;;;:::i;:::-;;3981:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3981:41:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3981:41:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6592:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6592:37:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10588:88;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10588:88:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10588:88:0;;;;;;;;;;;;;;;;;:::i;:::-;;6512:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6512:35:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10744:191;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10744:191:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10744:191:0;;;;;;;;;;;;;;;;;:::i;:::-;;8096:230;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8096:230:0;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;8096:230:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6215:105;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6215:105:0;;;:::i;:::-;;11255:558;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11255:558:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11255:558:0;;;;;;;;;;;;;;;;;:::i;:::-;;8642:234;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8642:234:0;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;8642:234:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5790:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5790:26:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;12548:146;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12548:146:0;;;:::i;:::-;;6104:103;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6104:103:0;;;:::i;:::-;;3948:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3948:28:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7374:211;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7374:211:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7374:211:0;;;;;;;;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;7374:211:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;7374:211:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;7374:211:0;;;;;;;;;;;;:::i;:::-;;4976:214;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4976:214:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4976:214:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5196:219;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5196:219:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5196:219:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;9627:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9627:30:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7652:159;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7652:159:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7652:159:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8423:122;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8423:122:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8423:122:0;;;;;;;;;;;;;;;;;:::i;:::-;;9662:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9662:28:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11936:606;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11936:606:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11936:606:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6552:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6552:35:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4649:113;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4649:113:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4649:113:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;12700:184;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12700:184:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12700:184:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;9736:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9736:29:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7148:129;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7148:129:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7148:129:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;7872:128;4572:5;;;;;;;;;;;4558:19;;:10;:19;;;:52;;;;4606:4;4581:29;;:9;:21;4591:10;4581:21;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;4558:52;4550:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7962:9;;;;;;;;;;;:17;;;7980:3;7985:8;7962:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7962:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7962:32:0;;;;7872:128;;:::o;9695:36::-;;;;:::o;8974:126::-;4572:5;;;;;;;;;;;4558:19;;:10;:19;;;:52;;;;4606:4;4581:29;;:9;:21;4591:10;4581:21;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;4558:52;4550:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9057:13;;;;;;;;;;;:27;;;9085:8;9057:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9057:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9057:37:0;;;;8974:126;:::o;3981:41::-;;;;;;;;;;;;;;;;;;;;;;:::o;6592:37::-;;;;;;;;;;;;;:::o;10588:88::-;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10648:5;;;;;;;;;;;:14;;:22;10663:6;10648:22;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10648:22:0;10588:88;:::o;6512:35::-;;;;;;;;;;;;;:::o;10744:191::-;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10837:53;10858:14;;10874:15;10837:53;;;;;;;;;;;;;;;;;;;;;;;;10914:15;10897:14;:32;;;;10744:191;:::o;8096:230::-;4572:5;;;;;;;;;;;4558:19;;:10;:19;;;:52;;;;4606:4;4581:29;;:9;:21;4591:10;4581:21;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;4558:52;4550:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8242:9;;;;;;;;;;;:27;;;8270:8;8280:14;8296:12;8310:9;8242:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8242:78:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8242:78:0;;;;8096:230;;;;:::o;6215:105::-;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6040:6;;;;;;;;;;;6032:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6282:5;6273:6;;:14;;;;;;;;;;;;;;;;;;6303:9;;;;;;;;;;6215:105::o;11255:558::-;11353:7;;;;;;;;;;;11339:21;;:10;:21;;;:44;;;;11378:5;;;;;;;;;;;11364:19;;:10;:19;;;11339:44;11331:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11428:5;;;;;;;;;;;11414:19;;:10;:19;;;11411:296;;;11470:21;;11452:14;:39;;:73;;;;11512:13;;11495:14;:30;11452:73;11444:120;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11411:296;;;11595:7;;;;;;;;;;;11581:21;;:10;:21;;;11578:129;;;11639:21;;11621:14;:39;;11613:86;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11578:129;11411:296;11720:50;11740:13;;11755:14;11720:50;;;;;;;;;;;;;;;;;;;;;;;;11793:14;11777:13;:30;;;;11255:558;:::o;8642:234::-;4572:5;;;;;;;;;;;4558:19;;:10;:19;;;:52;;;;4606:4;4581:29;;:9;:21;4591:10;4581:21;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;4558:52;4550:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8790:9;;;;;;;;;;;:29;;;8820:8;8830:14;8846:12;8860:9;8790:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8790:80:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8790:80:0;;;;8642:234;;;;:::o;5790:26::-;;;;;;;;;;;;;:::o;12548:146::-;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12637:1;12599:9;;;;;;;;;;;:19;;;12627:4;12599:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12599:34:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12599:34:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12599:34:0;;;;;;;;;;;;;;;;:39;12591:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12682:5;;;;;;;;;;;12669:19;;;6104:103;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5945:6;;;;;;;;;;;5944:7;5936:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6172:4;6163:6;;:13;;;;;;;;;;;;;;;;;;6192:7;;;;;;;;;;6104:103::o;3948:28::-;;;;;;;;;;;;;:::o;7374:211::-;4572:5;;;;;;;;;;;4558:19;;:10;:19;;;:52;;;;4606:4;4581:29;;:9;:21;4591:10;4581:21;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;4558:52;4550:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7484:9;7496:1;7484:13;;7480:100;7503:9;;:16;;7499:1;:20;7480:100;;;7535:9;;;;;;;;;;;:18;;;7554:3;7559:9;;7569:1;7559:12;;;;;;;;;;;;;;;7535:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7535:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7535:37:0;;;;7521:3;;;;;;;7480:100;;;;7374:211;;;:::o;4976:214::-;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5080:4;5056:28;;:9;:20;5066:9;5056:20;;;;;;;;;;;;;;;;;;;;;;;;;:28;;;;5048:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5142:4;5119:9;:20;5129:9;5119:20;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;5174:9;5160:24;;;;;;;;;;;;4976:214;:::o;5196:219::-;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5303:4;5279:28;;:9;:20;5289:9;5279:20;;;;;;;;;;;;;;;;;;;;;;;;;:28;;;5271:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5349:9;:20;5359:9;5349:20;;;;;;;;;;;;;;;;5342:27;;;;;;;;;;;5399:9;5383:26;;;;;;;;;;;;5196:219;:::o;9627:30::-;;;;;;;;;;;;;:::o;7652:159::-;4572:5;;;;;;;;;;;4558:19;;:10;:19;;;:52;;;;4606:4;4581:29;;:9;:21;4591:10;4581:21;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;4558:52;4550:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7761:9;;;;;;;;;;;:22;;;7784:5;7791:3;7796:8;7761:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7761:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7761:44:0;;;;7652:159;;;:::o;8423:122::-;4572:5;;;;;;;;;;;4558:19;;:10;:19;;;:52;;;;4606:4;4581:29;;:9;:21;4591:10;4581:21;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;4558:52;4550:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8504:11;;;;;;;;;;;:25;;;8530:8;8504:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8504:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8504:35:0;;;;8423:122;:::o;9662:28::-;;;;:::o;11936:606::-;5945:6;;;;;;;;;;;5944:7;5936:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12039:7;;;;;;;;;;;12025:21;;:10;:21;;;:44;;;;12064:5;;;;;;;;;;;12050:19;;:10;:19;;;12025:44;12017:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12095:11;12109:9;;;;;;;;;;;:22;;;:24;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12109:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12109:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12109:24:0;;;;;;;;;;;;;;;;12095:38;;12155:14;;12148:3;:21;;12140:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12205:9;;;;;;;;;;;:23;;;12235:3;12240:9;12251:7;12205:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12205:54:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12205:54:0;;;;;12268:14;12285:1;12268:18;;12397:7;;;;;;;;;;;12383:21;;:10;:21;;;12380:98;;;12424:13;;12415:22;;12446:7;;;;;;;;;;;:16;;:24;12463:6;12446:24;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12446:24:0;12380:98;12491:45;12497:10;12509:9;12520:7;12529:6;12491:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5982:1;;11936:606;;:::o;6552:35::-;;;;;;;;;;;;;:::o;4649:113::-;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4727:29;4746:9;4727:18;:29::i;:::-;4649:113;:::o;12700:184::-;4468:5;;;;;;;;;;;4454:19;;:10;:19;;;4446:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12822:1;12784:9;;;;;;;;;;;:19;;;12812:4;12784:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12784:34:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12784:34:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12784:34:0;;;;;;;;;;;;;;;;:39;12776:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12867:10;12854:24;;;9736:29;;;;:::o;7148:129::-;4572:5;;;;;;;;;;;4558:19;;:10;:19;;;:52;;;;4606:4;4581:29;;:9;:21;4591:10;4581:21;;;;;;;;;;;;;;;;;;;;;;;;;:29;;;4558:52;4550:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7238:9;;;;;;;;;;;:18;;;7257:3;7262:8;7238:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7238:33:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7238:33:0;;;;7148:129;;:::o;4768:202::-;4868:1;4847:23;;:9;:23;;;;4839:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4930:9;4902:38;;4923:5;;;;;;;;;;;4902:38;;;;;;;;;;;;4955:9;4947:5;;:17;;;;;;;;;;;;;;;;;;4768:202;:::o

Swarm Source

bzzr://4ac6268e21c5e75737efd89538f98961aeafc2a593ea7bd50d10d350465d8edd

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.