ETH Price: $2,560.60 (+0.01%)

Contract

0xcda949D0415aF93828f91E1b6B130F8eB407D704
 

Overview

ETH Balance

0.00002678 ETH

Eth Value

$0.07 (@ $2,560.60/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Claim Level One ...204533902024-08-04 6:27:2348 days ago1722752843IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204533902024-08-04 6:27:2348 days ago1722752843IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204533902024-08-04 6:27:2348 days ago1722752843IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204533782024-08-04 6:24:5948 days ago1722752699IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204533702024-08-04 6:23:2348 days ago1722752603IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204533702024-08-04 6:23:2348 days ago1722752603IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204533702024-08-04 6:23:2348 days ago1722752603IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204533602024-08-04 6:21:2348 days ago1722752483IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204533462024-08-04 6:18:3548 days ago1722752315IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204532922024-08-04 6:07:3548 days ago1722751655IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204532052024-08-04 5:50:1148 days ago1722750611IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204529362024-08-04 4:56:1148 days ago1722747371IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204529362024-08-04 4:56:1148 days ago1722747371IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...204528502024-08-04 4:38:5948 days ago1722746339IN
0xcda949D0...eB407D704
0 ETH0.000033851
Claim Level One ...155589042022-09-18 7:20:11734 days ago1663485611IN
0xcda949D0...eB407D704
0 ETH0.00006772
Claim Level One ...121805502021-04-05 15:50:001264 days ago1617637800IN
0xcda949D0...eB407D704
0 ETH0.00661122198.00000145
Claim Level One ...121804892021-04-05 15:36:481264 days ago1617637008IN
0xcda949D0...eB407D704
0 ETH0.00704529211
Claim Level One ...121804422021-04-05 15:25:531265 days ago1617636353IN
0xcda949D0...eB407D704
0 ETH0.00694512208
Claim Level One ...121804322021-04-05 15:23:521265 days ago1617636232IN
0xcda949D0...eB407D704
0 ETH0.00714546214.00000145
Claim Level One ...121803482021-04-05 15:04:131265 days ago1617635053IN
0xcda949D0...eB407D704
0 ETH0.00681156204.00000145
Claim Level One ...121803482021-04-05 15:04:131265 days ago1617635053IN
0xcda949D0...eB407D704
0 ETH0.00684495205.00000145
Claim Level One ...121801182021-04-05 14:15:311265 days ago1617632131IN
0xcda949D0...eB407D704
0 ETH0.00624393187
Claim Level One ...111296272020-10-26 3:29:561426 days ago1603682996IN
0xcda949D0...eB407D704
0 ETH0.0062151649.00000145
Claim Level One ...111284922020-10-25 23:08:441426 days ago1603667324IN
0xcda949D0...eB407D704
0 ETH0.0017884414.1
Claim Level One ...111280552020-10-25 21:39:091426 days ago1603661949IN
0xcda949D0...eB407D704
0 ETH0.001902615
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
111296272020-10-26 3:29:561426 days ago1603682996
0xcda949D0...eB407D704
0.1 ETH
111284922020-10-25 23:08:441426 days ago1603667324
0xcda949D0...eB407D704
0.1 ETH
111280552020-10-25 21:39:091426 days ago1603661949
0xcda949D0...eB407D704
0.1 ETH
111278912020-10-25 21:06:121426 days ago1603659972
0xcda949D0...eB407D704
0.1 ETH
111277052020-10-25 20:29:181426 days ago1603657758
0xcda949D0...eB407D704
0.1 ETH
111272762020-10-25 18:50:281426 days ago1603651828
0xcda949D0...eB407D704
0.1 ETH
111272722020-10-25 18:49:551426 days ago1603651795
0xcda949D0...eB407D704
0.1 ETH
111272642020-10-25 18:47:051426 days ago1603651625
0xcda949D0...eB407D704
0.1 ETH
111272542020-10-25 18:45:141426 days ago1603651514
0xcda949D0...eB407D704
0.1 ETH
111272282020-10-25 18:38:491426 days ago1603651129
0xcda949D0...eB407D704
0.1 ETH
111265392020-10-25 16:04:211426 days ago1603641861
0xcda949D0...eB407D704
0.1 ETH
111265382020-10-25 16:04:201426 days ago1603641860
0xcda949D0...eB407D704
0.1 ETH
111265032020-10-25 15:57:261426 days ago1603641446
0xcda949D0...eB407D704
0.1 ETH
111264902020-10-25 15:54:431426 days ago1603641283
0xcda949D0...eB407D704
0.1 ETH
111264742020-10-25 15:51:381426 days ago1603641098
0xcda949D0...eB407D704
0.1 ETH
111264432020-10-25 15:45:071426 days ago1603640707
0xcda949D0...eB407D704
0.1 ETH
111264262020-10-25 15:40:181426 days ago1603640418
0xcda949D0...eB407D704
0.1 ETH
111263862020-10-25 15:28:291427 days ago1603639709
0xcda949D0...eB407D704
0.1 ETH
111263462020-10-25 15:17:141427 days ago1603639034
0xcda949D0...eB407D704
0.1 ETH
111263362020-10-25 15:15:371427 days ago1603638937
0xcda949D0...eB407D704
0.1 ETH
111262102020-10-25 14:45:181427 days ago1603637118
0xcda949D0...eB407D704
0.1 ETH
111261782020-10-25 14:38:201427 days ago1603636700
0xcda949D0...eB407D704
0.1 ETH
111261522020-10-25 14:31:391427 days ago1603636299
0xcda949D0...eB407D704
0.1 ETH
111260252020-10-25 14:03:291427 days ago1603634609
0xcda949D0...eB407D704
0.1 ETH
111260042020-10-25 13:58:081427 days ago1603634288
0xcda949D0...eB407D704
0.1 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Offer

Compiler Version
v0.6.8+commit.0bbfe453

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2020-05-20
*/

pragma experimental ABIEncoderV2;
pragma solidity ^0.6.0;

contract OfferStorage {

  mapping(address => bool) public accessAllowed;
  mapping(address => mapping(uint => bool)) public userOfferClaim;
  mapping(uint256 => address[]) public claimedUsers;

  constructor() public {
    accessAllowed[msg.sender] = true;
  }

  modifier platform() {
    require(accessAllowed[msg.sender] == true);
    _;
  }

  function allowAccess(address _address) platform public {
    accessAllowed[_address] = true;
  }

  function denyAccess(address _address) platform public {
    accessAllowed[_address] = false;
  }

  function setUserClaim(address _address, uint offerId, bool status) platform public returns(bool) {
    userOfferClaim[_address][offerId] = status;
    if (status) {
      claimedUsers[offerId].push(_address);
    }
    return true;
  }

  function getClaimedUsersLength(uint _offerId) platform public view returns(uint256){
      return claimedUsers[_offerId].length;
  }

}

abstract contract OpenAlexalO {

    struct UserStruct {
        bool isExist;
        uint id;
        uint referrerID;
        uint currentLevel;
        uint totalEarningEth;
        address[] referral;
        mapping(uint => uint) levelExpired;
    }

    mapping (address => UserStruct) public users;
    mapping (uint => address) public userList;
    mapping (address => uint) public createdDate;

    function viewUserReferral(address _userAddress) virtual external view returns (address[] memory);

}

contract Offer {
  OfferStorage public offerStorage;
  OpenAlexalO public openAlexa;

  address payable public owner;

  struct UserStruct {
    bool isExist;
    uint id;
    uint referrerID;
    uint currentLevel;
    uint totalEarningEth;
    address[] referral;
    mapping(uint => uint) levelExpired;
  }


  mapping(uint => uint) public offerActiveDate;

  uint public levelOneCashBackId;
  uint public levelOneCashBackAmt;

  uint public goLevelSixId;
  uint public goLevelSixAmt;

  uint public leadersPoolAmt;
  uint public leadersPoolId;
  uint public leadersPoolMaxUsers;

  event Claimed(address indexed _from, address indexed _to, uint256 _offerId, uint256 _value);

  modifier onlyActive(uint offerId) {
    require(offerActiveDate[offerId] < openAlexa.createdDate(msg.sender), "Offer not active for user");
    _;
  }

  constructor(address offerStorageAddress, address payable openAlexaAddress) public {

    owner = msg.sender;

    offerStorage = OfferStorage(offerStorageAddress);
    openAlexa = OpenAlexalO(openAlexaAddress);

    // unique id for each offer
    levelOneCashBackId = 1;
    goLevelSixId = 2;
    leadersPoolId = 3;

    levelOneCashBackAmt = 0.03 ether;
    goLevelSixAmt = 3 ether;
    leadersPoolAmt = 102 ether;

    offerActiveDate[levelOneCashBackId] = 1588886820;
    offerActiveDate[goLevelSixId] = 1588886820;
    offerActiveDate[leadersPoolId] = 1588886820;

    leadersPoolMaxUsers = 21;

  }

  // stack to deep cant add modifier
  function levelOneCashBackEligible(address _userAddress) view external
  returns(
    string [4] memory  _message,
    uint _userId,
    uint _userLevel,
    uint _createdDate,
    address[] memory _refs,
    uint256[4] memory _refDates
  ) {
    if(offerActiveDate[levelOneCashBackId] > openAlexa.createdDate(_userAddress)) _message[0] = "Offer not active for User";

    if (address(this).balance < levelOneCashBackAmt) _message[1] = "Contract Balance Low";

    if (offerStorage.userOfferClaim(_userAddress, levelOneCashBackId)) _message[2] = "Offer Already claimed";

    UserStruct memory user;
    (, user.id, user.referrerID, user.currentLevel, ) = openAlexa.users(_userAddress);

    if (user.currentLevel < 2) _message[3] = "Level less than 2";

    // fetch his referrers
    address[] memory refs = openAlexa.viewUserReferral(_userAddress);
    uint256[4] memory temprefs;

    if (refs.length == 2) {
      UserStruct memory ref1;
      (, ref1.id, , , ) = openAlexa.users(refs[0]);
      UserStruct memory ref2;
      (, ref2.id, , , ) = openAlexa.users(refs[1]);
      temprefs = [ref1.id, openAlexa.createdDate(refs[0]), ref2.id, openAlexa.createdDate(refs[1])];
    }

    return (_message,
      user.id,
      user.currentLevel,
      openAlexa.createdDate(_userAddress),
      refs,
      temprefs
    );

  }


  function claimLevelOneCashBack() public {
    require(offerActiveDate[levelOneCashBackId] < openAlexa.createdDate(msg.sender), "Offer not active for User");
    // check has claimed
    require(!offerStorage.userOfferClaim(msg.sender, levelOneCashBackId), "Offer Already Claimed");
    // check contract has funds
    require(address(this).balance > levelOneCashBackAmt, "Contract Balance Low, try again after sometime");
    // fetch his structure
    UserStruct memory user;
    (user.isExist,
      user.id,
      user.referrerID,
      user.currentLevel,
      user.totalEarningEth) = openAlexa.users(msg.sender);
    // check level at 2
    require(user.currentLevel >= 2, "Level not upgraded from 1");
    // fetch his referrers
    address[] memory children = openAlexa.viewUserReferral(msg.sender);
    // check they are two
    require(children.length == 2, "Two downlines not found");
    // fetch their created at date
    uint child1Date = openAlexa.createdDate(children[0]);
    uint child2Date = openAlexa.createdDate(children[1]);
    // fetch his created at date
    uint userDate = openAlexa.createdDate(msg.sender);
    // match date of user with u2 and u3 < 48 hrs
    require(((child1Date - userDate) < 48 hours) && ((child2Date - userDate) < 48 hours), "Downline not registered within 48 hrs");
    // all good transfer 0.03ETH
    require((payable(msg.sender).send(levelOneCashBackAmt)), "Sending Offer Reward Failure");
    // mark the address for address => (offerid => true/false)
    require(offerStorage.setUserClaim(msg.sender, levelOneCashBackId, true), "Setting Claim failed");
    emit Claimed(address(this), msg.sender, levelOneCashBackId, levelOneCashBackAmt);
  }

  function getLine6Users(address[] memory users) public view returns(address[] memory) {

    uint level = 0;
    uint totalLevels = 5;

    uint8[5] memory levelPartners = [4, 8, 16, 32, 64];

    address[] memory result = new address[](64);

    while (level < totalLevels) {
      if(users.length == 0) return result;    
      users = getEachLevelUsers(users, levelPartners[level]);
      if (level == 4)
        result = users;
      level++;
    }

    return result;

  }

  function getEachLevelUsers(address[] memory users, uint limit) public view returns(address[] memory) {
    address[] memory total = new address[](limit);
    uint index = 0;

    for (uint i = 0; i < users.length; i++) {
      if (users[i] == address(0)) break;
      address[] memory children = openAlexa.viewUserReferral(users[i]);
      for (uint j = 0; j < children.length; j++) {
        if (children[j] == address(0)) break;
        total[index] = children[j];
        index++;
      }
    }
    return total;

  }

  function goLevelSixEligible(address _userAddress) view external
  returns(
    string [4] memory _message,
    uint _userId,
    uint _currentLevel,
    address[] memory _refs,
    address[] memory _lineSixrefs,
    bool lineSixComplete
  ) {
    // string [4] memory message;
    if(offerActiveDate[goLevelSixId] > openAlexa.createdDate(_userAddress)) _message[0] = "Offer not active for User";
     // check contract has funds
    if (address(this).balance < goLevelSixAmt) _message[1] = "Contract Balance Low, try again after sometime";
    // check has claimed
    if (offerStorage.userOfferClaim(_userAddress, goLevelSixId)) _message[2] = "Offer Already Claimed";

    // fetch his structure
    UserStruct memory user;
    (, user.id,, user.currentLevel, ) = openAlexa.users(_userAddress);
    // check level at 6
    if (user.currentLevel < 4) _message[3] = "Minimum level 4 required";
    // get referrals
    address[] memory refs = openAlexa.viewUserReferral(_userAddress);
    // refs at level 6
    address[] memory lineSixrefs = getLine6Users(refs);

    return (_message,
      user.id,
      user.currentLevel,
      refs,
      lineSixrefs,
      checkOfferClaimed(lineSixrefs, levelOneCashBackId)
    );

  }

  function claimGoLevelSix() public {
    require(offerActiveDate[goLevelSixId] < openAlexa.createdDate(msg.sender), "Offer not active for User");
    // check has claimed
    require(!offerStorage.userOfferClaim(msg.sender, goLevelSixId), "Offer Already claimed");
    // check contract has funds
    require(address(this).balance > goLevelSixAmt, "Contract Balance Low, try again after sometime");
    // fetch his structure
    UserStruct memory user;
    (user.isExist,
      user.id,
      user.referrerID,
      user.currentLevel,
      user.totalEarningEth) = openAlexa.users(msg.sender);
    // check level
    require(user.currentLevel >= 4, "Minimum level expected is 4");
    // get user register date
    uint userDate = openAlexa.createdDate(msg.sender);
    // match date of user with u2 and u3 < 48 hrs
    require(((now - userDate) < 12 days), "User registration date passed 12 days");
    // get referrals
    address[] memory children = openAlexa.viewUserReferral(msg.sender);
    // children at level 6
    address[] memory line6children = getLine6Users(children);
    // check they took offer 1
    require(checkOfferClaimed(line6children, levelOneCashBackId), "Level 6 partners not claimed cashback offer");
    // all good transfer 0.03ETH
    require((payable(msg.sender).send(goLevelSixAmt)), "Sending Offer Failure");
    // mark the address for address => (offerid => true/false)
    require(offerStorage.setUserClaim(msg.sender, goLevelSixId, true), "Setting Claim failed");
    emit Claimed(address(this), msg.sender, goLevelSixId, goLevelSixAmt);
  }

  function leadersPoolEligible(address _userAddress) view external returns(
    string [4] memory _message,
    uint _userId,
    uint _earnedEth,
    uint _totalClaims,
    uint _maxClaims,
    uint _OfferAmt
  ) {
    if(offerActiveDate[leadersPoolId] > openAlexa.createdDate(_userAddress)) _message[0] = "Offer not active for User";
    UserStruct memory user;
    (, user.id, , , user.totalEarningEth) = openAlexa.users(_userAddress);
    if(offerStorage.getClaimedUsersLength(leadersPoolId) >= (leadersPoolMaxUsers)) _message[1] = "Offer Max users reached";
    if (offerStorage.userOfferClaim(_userAddress, goLevelSixId)) _message[2] = "Offer Already Claimed";
    if(user.totalEarningEth < leadersPoolAmt) _message[3] = "Earned ETH less than offer amount";
    return (
      _message,
      user.id,
      user.totalEarningEth,
      offerStorage.getClaimedUsersLength(leadersPoolId),
      leadersPoolMaxUsers,
      leadersPoolAmt
    );
  }

  function claimLeadersPool() public {
    require(offerActiveDate[leadersPoolId] < openAlexa.createdDate(msg.sender), "Offer not active for user");
    require(!offerStorage.userOfferClaim(msg.sender, leadersPoolId), "Offer Already Claimed");
    require(offerStorage.getClaimedUsersLength(leadersPoolId) < leadersPoolMaxUsers, "Offer claimed by max users");
    // fetch his structure
    UserStruct memory user;
    (user.isExist,
      user.id,
      user.referrerID,
      user.currentLevel,
      user.totalEarningEth) = openAlexa.users(msg.sender);
    require(user.currentLevel >= 1, "Minimum level expected is 1");
    require(user.totalEarningEth >= leadersPoolAmt, "Earned ether less than required amount");
    require(offerStorage.setUserClaim(msg.sender, leadersPoolId, true), "Setting Claim failed");
    emit Claimed(address(this), msg.sender, leadersPoolId, leadersPoolAmt);

  }

  function checkOfferClaimed(address[] memory user, uint offerId) public view returns(bool) {
    bool claimed;
    for (uint i = 0; i < user.length; i++) {
      claimed = true;
      if (!offerStorage.userOfferClaim(user[i], offerId)) {
        claimed = false;
        break;
      }
    }

    return claimed;
  }

  function getOfferClaimedUser(address userAddress, uint offerId) public view returns(
      bool _isClaimed,
      uint _userId,
      uint _currentLevel,
      uint _earnedEth,
      uint _createdDate
      ) {

    UserStruct memory user;
    (, user.id, ,user.currentLevel,user.totalEarningEth) = openAlexa.users(userAddress);

    return (
        offerStorage.userOfferClaim(userAddress, offerId),
        user.id,
        user.currentLevel,
        user.totalEarningEth,
        openAlexa.createdDate(userAddress)
        );
  }

  function addressToUser(address _user) public view returns(
    bool _isExist,
    uint _userId,
    uint _refId,
    uint _currentLevel,
    uint _totalEarningEth,
    uint _createdDate
  ) {
    UserStruct memory user;
    (user.isExist,
      user.id,
      user.referrerID,
      user.currentLevel,
      user.totalEarningEth) = openAlexa.users(_user);


    return (
      user.isExist,
      user.id,
      user.referrerID,
      user.currentLevel,
      user.totalEarningEth,
      openAlexa.createdDate(_user)
    );
  }
  
  function userIDtoAddress(uint _id) public view returns(address _userAddress){
      return openAlexa.userList(_id);
  }

  function getUserByOfferId(uint offerId, uint index) public view returns(
    uint _length,
    address _address
  ) {
    return (
      offerStorage.getClaimedUsersLength(offerId),
      offerStorage.claimedUsers(offerId, index)
    );
  }


  function changeOfferDetails(uint _levelOneCashBackAmt, uint _goLevelSixAmt, uint _leadersPoolAmt, uint _leadersPoolMaxUsers) public {
    require(msg.sender == owner, "Owner only!");
    levelOneCashBackAmt = _levelOneCashBackAmt;
    goLevelSixAmt = _goLevelSixAmt;
    leadersPoolAmt = _leadersPoolAmt;
    leadersPoolMaxUsers = _leadersPoolMaxUsers;
  }

  function changeOfferActive(uint offerId, uint _startDate) public {
    require(msg.sender == owner, "Owner only!");
    offerActiveDate[offerId] = _startDate;
  }

  function withdraw() public {
    require(msg.sender == owner, "Owner only!");
    owner.transfer(address(this).balance);
  }
  
  function changeOwner(address payable newowner) public {
    require(msg.sender == owner, "Owner only!");
    owner = newowner;
  }

  receive () payable external {
    require(msg.sender == owner, "Owner only!");
  }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"offerStorageAddress","type":"address"},{"internalType":"address payable","name":"openAlexaAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_offerId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Claimed","type":"event"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"addressToUser","outputs":[{"internalType":"bool","name":"_isExist","type":"bool"},{"internalType":"uint256","name":"_userId","type":"uint256"},{"internalType":"uint256","name":"_refId","type":"uint256"},{"internalType":"uint256","name":"_currentLevel","type":"uint256"},{"internalType":"uint256","name":"_totalEarningEth","type":"uint256"},{"internalType":"uint256","name":"_createdDate","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"offerId","type":"uint256"},{"internalType":"uint256","name":"_startDate","type":"uint256"}],"name":"changeOfferActive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_levelOneCashBackAmt","type":"uint256"},{"internalType":"uint256","name":"_goLevelSixAmt","type":"uint256"},{"internalType":"uint256","name":"_leadersPoolAmt","type":"uint256"},{"internalType":"uint256","name":"_leadersPoolMaxUsers","type":"uint256"}],"name":"changeOfferDetails","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"newowner","type":"address"}],"name":"changeOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"user","type":"address[]"},{"internalType":"uint256","name":"offerId","type":"uint256"}],"name":"checkOfferClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimGoLevelSix","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimLeadersPool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimLevelOneCashBack","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"uint256","name":"limit","type":"uint256"}],"name":"getEachLevelUsers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"users","type":"address[]"}],"name":"getLine6Users","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint256","name":"offerId","type":"uint256"}],"name":"getOfferClaimedUser","outputs":[{"internalType":"bool","name":"_isClaimed","type":"bool"},{"internalType":"uint256","name":"_userId","type":"uint256"},{"internalType":"uint256","name":"_currentLevel","type":"uint256"},{"internalType":"uint256","name":"_earnedEth","type":"uint256"},{"internalType":"uint256","name":"_createdDate","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"offerId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getUserByOfferId","outputs":[{"internalType":"uint256","name":"_length","type":"uint256"},{"internalType":"address","name":"_address","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"goLevelSixAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_userAddress","type":"address"}],"name":"goLevelSixEligible","outputs":[{"internalType":"string[4]","name":"_message","type":"string[4]"},{"internalType":"uint256","name":"_userId","type":"uint256"},{"internalType":"uint256","name":"_currentLevel","type":"uint256"},{"internalType":"address[]","name":"_refs","type":"address[]"},{"internalType":"address[]","name":"_lineSixrefs","type":"address[]"},{"internalType":"bool","name":"lineSixComplete","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"goLevelSixId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"leadersPoolAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_userAddress","type":"address"}],"name":"leadersPoolEligible","outputs":[{"internalType":"string[4]","name":"_message","type":"string[4]"},{"internalType":"uint256","name":"_userId","type":"uint256"},{"internalType":"uint256","name":"_earnedEth","type":"uint256"},{"internalType":"uint256","name":"_totalClaims","type":"uint256"},{"internalType":"uint256","name":"_maxClaims","type":"uint256"},{"internalType":"uint256","name":"_OfferAmt","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"leadersPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"leadersPoolMaxUsers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"levelOneCashBackAmt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_userAddress","type":"address"}],"name":"levelOneCashBackEligible","outputs":[{"internalType":"string[4]","name":"_message","type":"string[4]"},{"internalType":"uint256","name":"_userId","type":"uint256"},{"internalType":"uint256","name":"_userLevel","type":"uint256"},{"internalType":"uint256","name":"_createdDate","type":"uint256"},{"internalType":"address[]","name":"_refs","type":"address[]"},{"internalType":"uint256[4]","name":"_refDates","type":"uint256[4]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"levelOneCashBackId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"offerActiveDate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"offerStorage","outputs":[{"internalType":"contract OfferStorage","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openAlexa","outputs":[{"internalType":"contract OpenAlexalO","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_id","type":"uint256"}],"name":"userIDtoAddress","outputs":[{"internalType":"address","name":"_userAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b5060405162005626380380620056268339818101604052810190620000379190620001d6565b33600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160048190555060026006819055506003600981905550666a94d74f4300006005819055506729a2241af62c000060078190555068058788cb94b1d80000600881905550635eb47d2460036000600454815260200190815260200160002081905550635eb47d2460036000600654815260200190815260200160002081905550635eb47d24600360006009548152602001908152602001600020819055506015600a81905550505062000293565b600081519050620001b9816200025f565b92915050565b600081519050620001d08162000279565b92915050565b60008060408385031215620001ea57600080fd5b6000620001fa85828601620001a8565b92505060206200020d85828601620001bf565b9150509250929050565b600062000224826200023f565b9050919050565b600062000238826200023f565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200026a8162000217565b81146200027657600080fd5b50565b62000284816200022b565b81146200029057600080fd5b50565b61538380620002a36000396000f3fe6080604052600436106101bb5760003560e01c806374707643116100ec578063c594b98b1161008a578063dead85c711610064578063dead85c7146106bf578063edf53886146106fc578063fbd9eea81461073e578063fdd8d6a41461076957610252565b8063c594b98b1461062e578063cebee50214610657578063d65cb0b81461068257610252565b8063888b5ae3116100c6578063888b5ae3146105865780638da5cb5b146105c3578063a6f9dae1146105ee578063a865c1d81461061757610252565b806374707643146104dd57806376f0f98a1461051e57806379ab40621461055b57610252565b80634c59a5ca116101595780635480593711610133578063548059371461042e57806364acdb3a1461045957806365ac38321461049b578063706040d8146104c657610252565b80634c59a5ca146103ae57806351566dd5146103c557806353eca1961461040357610252565b8063389a493b11610195578063389a493b146102ff5780633ccfd60b1461034157806341a2d419146103585780634592b7911461038357610252565b80630b400b1414610257578063292bc038146102805780632db4f99a146102bd57610252565b3661025257600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610250576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161024790614f64565b60405180910390fd5b005b600080fd5b34801561026357600080fd5b5061027e600480360381019061027991906142a6565b610794565b005b34801561028c57600080fd5b506102a760048036038101906102a29190614218565b610846565b6040516102b49190614a75565b60405180910390f35b3480156102c957600080fd5b506102e460048036038101906102df9190613feb565b6108fa565b6040516102f696959493929190614b71565b60405180910390f35b34801561030b57600080fd5b5061032660048036038101906103219190613feb565b610d6e565b60405161033896959493929190614c57565b60405180910390f35b34801561034d57600080fd5b5061035661126f565b005b34801561036457600080fd5b5061036d61136a565b60405161037a9190615004565b60405180910390f35b34801561038f57600080fd5b50610398611370565b6040516103a59190615004565b60405180910390f35b3480156103ba57600080fd5b506103c3611376565b005b3480156103d157600080fd5b506103ec60048036038101906103e7919061426a565b611c33565b6040516103fa92919061501f565b60405180910390f35b34801561040f57600080fd5b50610418611d97565b6040516104259190615004565b60405180910390f35b34801561043a57600080fd5b50610443611d9d565b6040516104509190615004565b60405180910390f35b34801561046557600080fd5b50610480600480360381019061047b9190613feb565b611da3565b60405161049296959493929190614be7565b60405180910390f35b3480156104a757600080fd5b506104b0612645565b6040516104bd9190614da9565b60405180910390f35b3480156104d257600080fd5b506104db61266b565b005b3480156104e957600080fd5b5061050460048036038101906104ff9190614066565b612c1e565b604051610515959493929190614cda565b60405180910390f35b34801561052a57600080fd5b50610545600480360381019061054091906140a2565b612e77565b6040516105529190614b4f565b60405180910390f35b34801561056757600080fd5b50610570612f7a565b60405161057d9190615004565b60405180910390f35b34801561059257600080fd5b506105ad60048036038101906105a89190614124565b612f80565b6040516105ba9190614b4f565b60405180910390f35b3480156105cf57600080fd5b506105d86131da565b6040516105e59190614aab565b60405180910390f35b3480156105fa57600080fd5b506106156004803603810190610610919061403d565b613200565b005b34801561062357600080fd5b5061062c6132d4565b005b34801561063a57600080fd5b506106556004803603810190610650919061426a565b613a0e565b005b34801561066357600080fd5b5061066c613aba565b6040516106799190614d8e565b60405180910390f35b34801561068e57600080fd5b506106a960048036038101906106a49190614124565b613adf565b6040516106b69190614cbf565b60405180910390f35b3480156106cb57600080fd5b506106e660048036038101906106e19190614218565b613bd9565b6040516106f39190615004565b60405180910390f35b34801561070857600080fd5b50610723600480360381019061071e9190613feb565b613bf1565b60405161073596959493929190614d2d565b60405180910390f35b34801561074a57600080fd5b50610753613db8565b6040516107609190615004565b60405180910390f35b34801561077557600080fd5b5061077e613dbe565b60405161078b9190615004565b60405180910390f35b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610824576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081b90614f64565b60405180910390fd5b83600581905550826007819055508160088190555080600a8190555050505050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639f4216e8836040518263ffffffff1660e01b81526004016108a39190615004565b60206040518083038186803b1580156108bb57600080fd5b505afa1580156108cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f39190614014565b9050919050565b610902613dc4565b6000806060806000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff886040518263ffffffff1660e01b81526004016109659190614a75565b60206040518083038186803b15801561097d57600080fd5b505afa158015610991573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b59190614241565b600360006006548152602001908152602001600020541115610a1d576040518060400160405280601981526020017f4f66666572206e6f742061637469766520666f7220557365720000000000000081525086600060048110610a1457fe5b60200201819052505b600754471015610a56576040518060600160405280602e8152602001615320602e913986600160048110610a4d57fe5b60200201819052505b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569886006546040518363ffffffff1660e01b8152600401610ab4929190614b26565b60206040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190614178565b15610b55576040518060400160405280601581526020017f4f6666657220416c726561647920436c61696d6564000000000000000000000081525086600260048110610b4c57fe5b60200201819052505b610b5d613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b8152600401610bb89190614a75565b60a06040518083038186803b158015610bd057600080fd5b505afa158015610be4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0891906141a1565b909192935090915050826020018360600182815250828152505050600481606001511015610c7c576040518060400160405280601881526020017f4d696e696d756d206c6576656c2034207265717569726564000000000000000081525087600360048110610c7357fe5b60200201819052505b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f8a6040518263ffffffff1660e01b8152600401610cd99190614a75565b60006040518083038186803b158015610cf157600080fd5b505afa158015610d05573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610d2e91906140e3565b90506060610d3b82612e77565b905088836020015184606001518484610d5686600454613adf565b98509850985098509850985050505091939550919395565b610d76613dc4565b6000806000806000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff886040518263ffffffff1660e01b8152600401610dd99190614a75565b60206040518083038186803b158015610df157600080fd5b505afa158015610e05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e299190614241565b600360006009548152602001908152602001600020541115610e91576040518060400160405280601981526020017f4f66666572206e6f742061637469766520666f7220557365720000000000000081525086600060048110610e8857fe5b60200201819052505b610e99613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b8152600401610ef49190614a75565b60a06040518083038186803b158015610f0c57600080fd5b505afa158015610f20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4491906141a1565b90919293509091509050826020018360800182815250828152505050600a546000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b901dd936009546040518263ffffffff1660e01b8152600401610fbf9190615004565b60206040518083038186803b158015610fd757600080fd5b505afa158015610feb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100f9190614241565b10611060576040518060400160405280601781526020017f4f66666572204d617820757365727320726561636865640000000000000000008152508760016004811061105757fe5b60200201819052505b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569896006546040518363ffffffff1660e01b81526004016110be929190614b26565b60206040518083038186803b1580156110d657600080fd5b505afa1580156110ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110e9190614178565b1561115f576040518060400160405280601581526020017f4f6666657220416c726561647920436c61696d656400000000000000000000008152508760026004811061115657fe5b60200201819052505b6008548160800151101561119c576040518060600160405280602181526020016152ff602191398760036004811061119357fe5b60200201819052505b86816020015182608001516000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b901dd936009546040518263ffffffff1660e01b81526004016112039190615004565b60206040518083038186803b15801561121b57600080fd5b505afa15801561122f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112539190614241565b600a546008549650965096509650965096505091939550919395565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f690614f64565b60405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015611367573d6000803e3d6000fd5b50565b60065481565b60045481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b81526004016113d19190614a90565b60206040518083038186803b1580156113e957600080fd5b505afa1580156113fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114219190614241565b6003600060045481526020019081526020016000205410611477576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146e90614dc4565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569336004546040518363ffffffff1660e01b81526004016114d5929190614ac6565b60206040518083038186803b1580156114ed57600080fd5b505afa158015611501573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115259190614178565b15611565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155c90614ea4565b60405180910390fd5b60055447116115a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a090614fc4565b60405180910390fd5b6115b1613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba336040518263ffffffff1660e01b815260040161160c9190614a90565b60a06040518083038186803b15801561162457600080fd5b505afa158015611638573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165c91906141a1565b856000018660200187604001886060018960800185815250858152508581525085815250851515151581525050505050506002816060015110156116d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cc90614e04565b60405180910390fd5b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f336040518263ffffffff1660e01b81526004016117329190614a90565b60006040518083038186803b15801561174a57600080fd5b505afa15801561175e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061178791906140e3565b905060028151146117cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c490614fa4565b60405180910390fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8360008151811061181a57fe5b60200260200101516040518263ffffffff1660e01b815260040161183e9190614a75565b60206040518083038186803b15801561185657600080fd5b505afa15801561186a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061188e9190614241565b90506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff846001815181106118dd57fe5b60200260200101516040518263ffffffff1660e01b81526004016119019190614a75565b60206040518083038186803b15801561191957600080fd5b505afa15801561192d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119519190614241565b90506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b81526004016119b09190614a90565b60206040518083038186803b1580156119c857600080fd5b505afa1580156119dc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a009190614241565b90506202a300818403108015611a1a57506202a300818303105b611a59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5090614ee4565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc6005549081150290604051600060405180830381858888f19350505050611acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac690614e44565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c39093b3360045460016040518463ffffffff1660e01b8152600401611b3093929190614aef565b602060405180830381600087803b158015611b4a57600080fd5b505af1158015611b5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b829190614178565b611bc1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb890614f84565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f2f6639d24651730c7bf57c95ddbf96d66d11477e4ec626876f92c22e5f365e68600454600554604051611c24929190615048565b60405180910390a35050505050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b901dd93856040518263ffffffff1660e01b8152600401611c909190615004565b60206040518083038186803b158015611ca857600080fd5b505afa158015611cbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ce09190614241565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663198169ea86866040518363ffffffff1660e01b8152600401611d3c929190615048565b60206040518083038186803b158015611d5457600080fd5b505afa158015611d68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d8c9190614014565b915091509250929050565b600a5481565b60095481565b611dab613dc4565b60008060006060611dba613e23565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff886040518263ffffffff1660e01b8152600401611e159190614a75565b60206040518083038186803b158015611e2d57600080fd5b505afa158015611e41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e659190614241565b600360006004548152602001908152602001600020541115611ecd576040518060400160405280601981526020017f4f66666572206e6f742061637469766520666f7220557365720000000000000081525086600060048110611ec457fe5b60200201819052505b600554471015611f23576040518060400160405280601481526020017f436f6e74726163742042616c616e6365204c6f7700000000000000000000000081525086600160048110611f1a57fe5b60200201819052505b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569886004546040518363ffffffff1660e01b8152600401611f81929190614b26565b60206040518083038186803b158015611f9957600080fd5b505afa158015611fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd19190614178565b15612022576040518060400160405280601581526020017f4f6666657220416c726561647920636c61696d656400000000000000000000008152508660026004811061201957fe5b60200201819052505b61202a613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b81526004016120859190614a75565b60a06040518083038186803b15801561209d57600080fd5b505afa1580156120b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120d591906141a1565b90919293505083602001846040018560600183815250838152508381525050505060028160600151101561214f576040518060400160405280601181526020017f4c6576656c206c657373207468616e20320000000000000000000000000000008152508760036004811061214657fe5b60200201819052505b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f8a6040518263ffffffff1660e01b81526004016121ac9190614a75565b60006040518083038186803b1580156121c457600080fd5b505afa1580156121d8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061220191906140e3565b905061220b613e23565b6002825114156125755761221d613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba8460008151811061226857fe5b60200260200101516040518263ffffffff1660e01b815260040161228c9190614a75565b60a06040518083038186803b1580156122a457600080fd5b505afa1580156122b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122dc91906141a1565b90919293509091509050508160200181815250506122f8613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba8560018151811061234357fe5b60200260200101516040518263ffffffff1660e01b81526004016123679190614a75565b60a06040518083038186803b15801561237f57600080fd5b505afa158015612393573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123b791906141a1565b9091929350909150905050816020018181525050604051806080016040528083602001518152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8760008151811061242b57fe5b60200260200101516040518263ffffffff1660e01b815260040161244f9190614a75565b60206040518083038186803b15801561246757600080fd5b505afa15801561247b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061249f9190614241565b815260200182602001518152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff876001815181106124f957fe5b60200260200101516040518263ffffffff1660e01b815260040161251d9190614a75565b60206040518083038186803b15801561253557600080fd5b505afa158015612549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061256d9190614241565b815250925050505b8883602001518460600151600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8e6040518263ffffffff1660e01b81526004016125db9190614a75565b60206040518083038186803b1580156125f357600080fd5b505afa158015612607573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061262b9190614241565b858598509850985098509850985050505091939550919395565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b81526004016126c69190614a90565b60206040518083038186803b1580156126de57600080fd5b505afa1580156126f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127169190614241565b600360006009548152602001908152602001600020541061276c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161276390614fe4565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569336009546040518363ffffffff1660e01b81526004016127ca929190614ac6565b60206040518083038186803b1580156127e257600080fd5b505afa1580156127f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061281a9190614178565b1561285a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161285190614ea4565b60405180910390fd5b600a546000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b901dd936009546040518263ffffffff1660e01b81526004016128b99190615004565b60206040518083038186803b1580156128d157600080fd5b505afa1580156128e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129099190614241565b10612949576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161294090614e64565b60405180910390fd5b612951613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba336040518263ffffffff1660e01b81526004016129ac9190614a90565b60a06040518083038186803b1580156129c457600080fd5b505afa1580156129d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129fc91906141a1565b85600001866020018760400188606001896080018581525085815250858152508581525085151515158152505050505050600181606001511015612a75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a6c90614de4565b60405180910390fd5b60085481608001511015612abe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ab590614f44565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c39093b3360095460016040518463ffffffff1660e01b8152600401612b1f93929190614aef565b602060405180830381600087803b158015612b3957600080fd5b505af1158015612b4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b719190614178565b612bb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ba790614f84565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f2f6639d24651730c7bf57c95ddbf96d66d11477e4ec626876f92c22e5f365e68600954600854604051612c13929190615048565b60405180910390a350565b6000806000806000612c2e613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b8152600401612c899190614a75565b60a06040518083038186803b158015612ca157600080fd5b505afa158015612cb5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cd991906141a1565b90919293509091508360200184606001856080018381525083815250838152505050506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a956989896040518363ffffffff1660e01b8152600401612d58929190614b26565b60206040518083038186803b158015612d7057600080fd5b505afa158015612d84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612da89190614178565b816020015182606001518360800151600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8d6040518263ffffffff1660e01b8152600401612e129190614a75565b60206040518083038186803b158015612e2a57600080fd5b505afa158015612e3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e629190614241565b95509550955095509550509295509295909350565b60606000809050600060059050612e8c613e45565b6040518060a00160405280600460ff168152602001600860ff168152602001601060ff168152602001602060ff168152602001604060ff1681525090506060604067ffffffffffffffff81118015612ee357600080fd5b50604051908082528060200260200182016040528015612f125781602001602082028036833780820191505090505b5090505b82841015612f6d57600086511415612f345780945050505050612f75565b612f5186838660058110612f4457fe5b602002015160ff16612f80565b95506004841415612f60578590505b8380600101945050612f16565b809450505050505b919050565b60075481565b6060808267ffffffffffffffff81118015612f9a57600080fd5b50604051908082528060200260200182016040528015612fc95781602001602082028036833780820191505090505b509050600080905060008090505b85518110156131ce57600073ffffffffffffffffffffffffffffffffffffffff1686828151811061300457fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16141561302d576131ce565b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f88848151811061307957fe5b60200260200101516040518263ffffffff1660e01b815260040161309d9190614a75565b60006040518083038186803b1580156130b557600080fd5b505afa1580156130c9573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906130f291906140e3565b905060008090505b81518110156131bf57600073ffffffffffffffffffffffffffffffffffffffff1682828151811061312757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff161415613150576131bf565b81818151811061315c57fe5b602002602001015185858151811061317057fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050838060010194505080806001019150506130fa565b50508080600101915050612fd7565b50819250505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613290576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161328790614f64565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b815260040161332f9190614a90565b60206040518083038186803b15801561334757600080fd5b505afa15801561335b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061337f9190614241565b60036000600654815260200190815260200160002054106133d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133cc90614dc4565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569336006546040518363ffffffff1660e01b8152600401613433929190614ac6565b60206040518083038186803b15801561344b57600080fd5b505afa15801561345f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134839190614178565b156134c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134ba90614f04565b60405180910390fd5b6007544711613507576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134fe90614fc4565b60405180910390fd5b61350f613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba336040518263ffffffff1660e01b815260040161356a9190614a90565b60a06040518083038186803b15801561358257600080fd5b505afa158015613596573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135ba91906141a1565b85600001866020018760400188606001896080018581525085815250858152508581525085151515158152505050505050600481606001511015613633576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161362a90614ec4565b60405180910390fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b81526004016136909190614a90565b60206040518083038186803b1580156136a857600080fd5b505afa1580156136bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136e09190614241565b9050620fd20081420310613729576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161372090614f24565b60405180910390fd5b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f336040518263ffffffff1660e01b81526004016137869190614a90565b60006040518083038186803b15801561379e57600080fd5b505afa1580156137b2573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906137db91906140e3565b905060606137e882612e77565b90506137f681600454613adf565b613835576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161382c90614e24565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc6007549081150290604051600060405180830381858888f193505050506138ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016138a290614e84565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c39093b3360065460016040518463ffffffff1660e01b815260040161390c93929190614aef565b602060405180830381600087803b15801561392657600080fd5b505af115801561393a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061395e9190614178565b61399d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161399490614f84565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f2f6639d24651730c7bf57c95ddbf96d66d11477e4ec626876f92c22e5f365e68600654600754604051613a00929190615048565b60405180910390a350505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613a9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a9590614f64565b60405180910390fd5b8060036000848152602001908152602001600020819055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008090505b8451811015613bce57600191506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569868381518110613b3e57fe5b6020026020010151866040518363ffffffff1660e01b8152600401613b64929190614b26565b60206040518083038186803b158015613b7c57600080fd5b505afa158015613b90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613bb49190614178565b613bc15760009150613bce565b8080600101915050613ae8565b508091505092915050565b60036020528060005260406000206000915090505481565b600080600080600080613c02613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b8152600401613c5d9190614a75565b60a06040518083038186803b158015613c7557600080fd5b505afa158015613c89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613cad91906141a1565b8560000186602001876040018860600189608001858152508581525085815250858152508515151515815250505050505080600001518160200151826040015183606001518460800151600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8e6040518263ffffffff1660e01b8152600401613d529190614a75565b60206040518083038186803b158015613d6a57600080fd5b505afa158015613d7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613da29190614241565b9650965096509650965096505091939550919395565b60055481565b60085481565b60405180608001604052806004905b6060815260200190600190039081613dd35790505090565b6040518060c0016040528060001515815260200160008152602001600081526020016000815260200160008152602001606081525090565b6040518060800160405280600490602082028036833780820191505090505090565b6040518060a00160405280600590602082028036833780820191505090505090565b600081359050613e76816152a2565b92915050565b600081519050613e8b816152a2565b92915050565b600081359050613ea0816152b9565b92915050565b600082601f830112613eb757600080fd5b8135613eca613ec58261509e565b615071565b91508181835260208401935060208101905083856020840282011115613eef57600080fd5b60005b83811015613f1f5781613f058882613e67565b845260208401935060208301925050600181019050613ef2565b5050505092915050565b600082601f830112613f3a57600080fd5b8151613f4d613f488261509e565b615071565b91508181835260208401935060208101905083856020840282011115613f7257600080fd5b60005b83811015613fa25781613f888882613e7c565b845260208401935060208301925050600181019050613f75565b5050505092915050565b600081519050613fbb816152d0565b92915050565b600081359050613fd0816152e7565b92915050565b600081519050613fe5816152e7565b92915050565b600060208284031215613ffd57600080fd5b600061400b84828501613e67565b91505092915050565b60006020828403121561402657600080fd5b600061403484828501613e7c565b91505092915050565b60006020828403121561404f57600080fd5b600061405d84828501613e91565b91505092915050565b6000806040838503121561407957600080fd5b600061408785828601613e67565b925050602061409885828601613fc1565b9150509250929050565b6000602082840312156140b457600080fd5b600082013567ffffffffffffffff8111156140ce57600080fd5b6140da84828501613ea6565b91505092915050565b6000602082840312156140f557600080fd5b600082015167ffffffffffffffff81111561410f57600080fd5b61411b84828501613f29565b91505092915050565b6000806040838503121561413757600080fd5b600083013567ffffffffffffffff81111561415157600080fd5b61415d85828601613ea6565b925050602061416e85828601613fc1565b9150509250929050565b60006020828403121561418a57600080fd5b600061419884828501613fac565b91505092915050565b600080600080600060a086880312156141b957600080fd5b60006141c788828901613fac565b95505060206141d888828901613fd6565b94505060406141e988828901613fd6565b93505060606141fa88828901613fd6565b925050608061420b88828901613fd6565b9150509295509295909350565b60006020828403121561422a57600080fd5b600061423884828501613fc1565b91505092915050565b60006020828403121561425357600080fd5b600061426184828501613fd6565b91505092915050565b6000806040838503121561427d57600080fd5b600061428b85828601613fc1565b925050602061429c85828601613fc1565b9150509250929050565b600080600080608085870312156142bc57600080fd5b60006142ca87828801613fc1565b94505060206142db87828801613fc1565b93505060406142ec87828801613fc1565b92505060606142fd87828801613fc1565b91505092959194509250565b6000614315838361436b565b60208301905092915050565b600061432d83836144e0565b905092915050565b60006143418383614a57565b60208301905092915050565b614356816151e0565b82525050565b61436581615198565b82525050565b61437481615186565b82525050565b61438381615186565b82525050565b6000614394826150ea565b61439e818561513d565b93506143a9836150c6565b8060005b838110156143da5781516143c18882614309565b97506143cc83615116565b9250506001810190506143ad565b5085935050505092915050565b60006143f2826150f5565b6143fc818561514e565b93508360208202850161440e856150d6565b8060005b8581101561444a578484038952815161442b8582614321565b945061443683615123565b925060208a01995050600181019050614412565b50829750879550505050505092915050565b61446581615100565b61446f8184615159565b925061447a826150e0565b8060005b838110156144ab5781516144928782614335565b965061449d83615130565b92505060018101905061447e565b505050505050565b6144bc816151aa565b82525050565b6144cb816151f2565b82525050565b6144da81615216565b82525050565b60006144eb8261510b565b6144f58185615164565b935061450581856020860161525e565b61450e81615291565b840191505092915050565b6000614526601983615175565b91507f4f66666572206e6f742061637469766520666f722055736572000000000000006000830152602082019050919050565b6000614566601b83615175565b91507f4d696e696d756d206c6576656c206578706563746564206973203100000000006000830152602082019050919050565b60006145a6601983615175565b91507f4c6576656c206e6f742075706772616465642066726f6d2031000000000000006000830152602082019050919050565b60006145e6602b83615175565b91507f4c6576656c203620706172746e657273206e6f7420636c61696d65642063617360008301527f686261636b206f666665720000000000000000000000000000000000000000006020830152604082019050919050565b600061464c601c83615175565b91507f53656e64696e67204f6666657220526577617264204661696c757265000000006000830152602082019050919050565b600061468c601a83615175565b91507f4f6666657220636c61696d6564206279206d61782075736572730000000000006000830152602082019050919050565b60006146cc601583615175565b91507f53656e64696e67204f66666572204661696c75726500000000000000000000006000830152602082019050919050565b600061470c601583615175565b91507f4f6666657220416c726561647920436c61696d656400000000000000000000006000830152602082019050919050565b600061474c601b83615175565b91507f4d696e696d756d206c6576656c206578706563746564206973203400000000006000830152602082019050919050565b600061478c602583615175565b91507f446f776e6c696e65206e6f7420726567697374657265642077697468696e203460008301527f38206872730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006147f2601583615175565b91507f4f6666657220416c726561647920636c61696d656400000000000000000000006000830152602082019050919050565b6000614832602583615175565b91507f5573657220726567697374726174696f6e20646174652070617373656420313260008301527f20646179730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000614898602683615175565b91507f4561726e6564206574686572206c657373207468616e2072657175697265642060008301527f616d6f756e7400000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006148fe600b83615175565b91507f4f776e6572206f6e6c79210000000000000000000000000000000000000000006000830152602082019050919050565b600061493e601483615175565b91507f53657474696e6720436c61696d206661696c65640000000000000000000000006000830152602082019050919050565b600061497e601783615175565b91507f54776f20646f776e6c696e6573206e6f7420666f756e640000000000000000006000830152602082019050919050565b60006149be602e83615175565b91507f436f6e74726163742042616c616e6365204c6f772c2074727920616761696e2060008301527f616674657220736f6d6574696d650000000000000000000000000000000000006020830152604082019050919050565b6000614a24601983615175565b91507f4f66666572206e6f742061637469766520666f722075736572000000000000006000830152602082019050919050565b614a60816151d6565b82525050565b614a6f816151d6565b82525050565b6000602082019050614a8a600083018461437a565b92915050565b6000602082019050614aa5600083018461434d565b92915050565b6000602082019050614ac0600083018461435c565b92915050565b6000604082019050614adb600083018561434d565b614ae86020830184614a66565b9392505050565b6000606082019050614b04600083018661434d565b614b116020830185614a66565b614b1e60408301846144b3565b949350505050565b6000604082019050614b3b600083018561437a565b614b486020830184614a66565b9392505050565b60006020820190508181036000830152614b698184614389565b905092915050565b600060c0820190508181036000830152614b8b81896143e7565b9050614b9a6020830188614a66565b614ba76040830187614a66565b8181036060830152614bb98186614389565b90508181036080830152614bcd8185614389565b9050614bdc60a08301846144b3565b979650505050505050565b6000610120820190508181036000830152614c0281896143e7565b9050614c116020830188614a66565b614c1e6040830187614a66565b614c2b6060830186614a66565b8181036080830152614c3d8185614389565b9050614c4c60a083018461445c565b979650505050505050565b600060c0820190508181036000830152614c7181896143e7565b9050614c806020830188614a66565b614c8d6040830187614a66565b614c9a6060830186614a66565b614ca76080830185614a66565b614cb460a0830184614a66565b979650505050505050565b6000602082019050614cd460008301846144b3565b92915050565b600060a082019050614cef60008301886144b3565b614cfc6020830187614a66565b614d096040830186614a66565b614d166060830185614a66565b614d236080830184614a66565b9695505050505050565b600060c082019050614d4260008301896144b3565b614d4f6020830188614a66565b614d5c6040830187614a66565b614d696060830186614a66565b614d766080830185614a66565b614d8360a0830184614a66565b979650505050505050565b6000602082019050614da360008301846144c2565b92915050565b6000602082019050614dbe60008301846144d1565b92915050565b60006020820190508181036000830152614ddd81614519565b9050919050565b60006020820190508181036000830152614dfd81614559565b9050919050565b60006020820190508181036000830152614e1d81614599565b9050919050565b60006020820190508181036000830152614e3d816145d9565b9050919050565b60006020820190508181036000830152614e5d8161463f565b9050919050565b60006020820190508181036000830152614e7d8161467f565b9050919050565b60006020820190508181036000830152614e9d816146bf565b9050919050565b60006020820190508181036000830152614ebd816146ff565b9050919050565b60006020820190508181036000830152614edd8161473f565b9050919050565b60006020820190508181036000830152614efd8161477f565b9050919050565b60006020820190508181036000830152614f1d816147e5565b9050919050565b60006020820190508181036000830152614f3d81614825565b9050919050565b60006020820190508181036000830152614f5d8161488b565b9050919050565b60006020820190508181036000830152614f7d816148f1565b9050919050565b60006020820190508181036000830152614f9d81614931565b9050919050565b60006020820190508181036000830152614fbd81614971565b9050919050565b60006020820190508181036000830152614fdd816149b1565b9050919050565b60006020820190508181036000830152614ffd81614a17565b9050919050565b60006020820190506150196000830184614a66565b92915050565b60006040820190506150346000830185614a66565b615041602083018461437a565b9392505050565b600060408201905061505d6000830185614a66565b61506a6020830184614a66565b9392505050565b6000604051905081810181811067ffffffffffffffff8211171561509457600080fd5b8060405250919050565b600067ffffffffffffffff8211156150b557600080fd5b602082029050602081019050919050565b6000819050602082019050919050565b6000819050919050565b6000819050919050565b600081519050919050565b600060049050919050565b600060049050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600081905092915050565b600081905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000615191826151b6565b9050919050565b60006151a3826151b6565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006151eb8261523a565b9050919050565b60006151fd82615204565b9050919050565b600061520f826151b6565b9050919050565b600061522182615228565b9050919050565b6000615233826151b6565b9050919050565b60006152458261524c565b9050919050565b6000615257826151b6565b9050919050565b60005b8381101561527c578082015181840152602081019050615261565b8381111561528b576000848401525b50505050565b6000601f19601f8301169050919050565b6152ab81615186565b81146152b657600080fd5b50565b6152c281615198565b81146152cd57600080fd5b50565b6152d9816151aa565b81146152e457600080fd5b50565b6152f0816151d6565b81146152fb57600080fd5b5056fe4561726e656420455448206c657373207468616e206f6666657220616d6f756e74436f6e74726163742042616c616e6365204c6f772c2074727920616761696e20616674657220736f6d6574696d65a2646970667358221220fd7e7ba0377869079920c217fb1a28666c099caec3f1ad853adbb172c19cc1ff64736f6c6343000608003300000000000000000000000075fd7ea35186937865a503b4199e10180e05004600000000000000000000000080e9540c204c05be63cfe44b43302780175b60ff

Deployed Bytecode

0x6080604052600436106101bb5760003560e01c806374707643116100ec578063c594b98b1161008a578063dead85c711610064578063dead85c7146106bf578063edf53886146106fc578063fbd9eea81461073e578063fdd8d6a41461076957610252565b8063c594b98b1461062e578063cebee50214610657578063d65cb0b81461068257610252565b8063888b5ae3116100c6578063888b5ae3146105865780638da5cb5b146105c3578063a6f9dae1146105ee578063a865c1d81461061757610252565b806374707643146104dd57806376f0f98a1461051e57806379ab40621461055b57610252565b80634c59a5ca116101595780635480593711610133578063548059371461042e57806364acdb3a1461045957806365ac38321461049b578063706040d8146104c657610252565b80634c59a5ca146103ae57806351566dd5146103c557806353eca1961461040357610252565b8063389a493b11610195578063389a493b146102ff5780633ccfd60b1461034157806341a2d419146103585780634592b7911461038357610252565b80630b400b1414610257578063292bc038146102805780632db4f99a146102bd57610252565b3661025257600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610250576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161024790614f64565b60405180910390fd5b005b600080fd5b34801561026357600080fd5b5061027e600480360381019061027991906142a6565b610794565b005b34801561028c57600080fd5b506102a760048036038101906102a29190614218565b610846565b6040516102b49190614a75565b60405180910390f35b3480156102c957600080fd5b506102e460048036038101906102df9190613feb565b6108fa565b6040516102f696959493929190614b71565b60405180910390f35b34801561030b57600080fd5b5061032660048036038101906103219190613feb565b610d6e565b60405161033896959493929190614c57565b60405180910390f35b34801561034d57600080fd5b5061035661126f565b005b34801561036457600080fd5b5061036d61136a565b60405161037a9190615004565b60405180910390f35b34801561038f57600080fd5b50610398611370565b6040516103a59190615004565b60405180910390f35b3480156103ba57600080fd5b506103c3611376565b005b3480156103d157600080fd5b506103ec60048036038101906103e7919061426a565b611c33565b6040516103fa92919061501f565b60405180910390f35b34801561040f57600080fd5b50610418611d97565b6040516104259190615004565b60405180910390f35b34801561043a57600080fd5b50610443611d9d565b6040516104509190615004565b60405180910390f35b34801561046557600080fd5b50610480600480360381019061047b9190613feb565b611da3565b60405161049296959493929190614be7565b60405180910390f35b3480156104a757600080fd5b506104b0612645565b6040516104bd9190614da9565b60405180910390f35b3480156104d257600080fd5b506104db61266b565b005b3480156104e957600080fd5b5061050460048036038101906104ff9190614066565b612c1e565b604051610515959493929190614cda565b60405180910390f35b34801561052a57600080fd5b50610545600480360381019061054091906140a2565b612e77565b6040516105529190614b4f565b60405180910390f35b34801561056757600080fd5b50610570612f7a565b60405161057d9190615004565b60405180910390f35b34801561059257600080fd5b506105ad60048036038101906105a89190614124565b612f80565b6040516105ba9190614b4f565b60405180910390f35b3480156105cf57600080fd5b506105d86131da565b6040516105e59190614aab565b60405180910390f35b3480156105fa57600080fd5b506106156004803603810190610610919061403d565b613200565b005b34801561062357600080fd5b5061062c6132d4565b005b34801561063a57600080fd5b506106556004803603810190610650919061426a565b613a0e565b005b34801561066357600080fd5b5061066c613aba565b6040516106799190614d8e565b60405180910390f35b34801561068e57600080fd5b506106a960048036038101906106a49190614124565b613adf565b6040516106b69190614cbf565b60405180910390f35b3480156106cb57600080fd5b506106e660048036038101906106e19190614218565b613bd9565b6040516106f39190615004565b60405180910390f35b34801561070857600080fd5b50610723600480360381019061071e9190613feb565b613bf1565b60405161073596959493929190614d2d565b60405180910390f35b34801561074a57600080fd5b50610753613db8565b6040516107609190615004565b60405180910390f35b34801561077557600080fd5b5061077e613dbe565b60405161078b9190615004565b60405180910390f35b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610824576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161081b90614f64565b60405180910390fd5b83600581905550826007819055508160088190555080600a8190555050505050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639f4216e8836040518263ffffffff1660e01b81526004016108a39190615004565b60206040518083038186803b1580156108bb57600080fd5b505afa1580156108cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f39190614014565b9050919050565b610902613dc4565b6000806060806000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff886040518263ffffffff1660e01b81526004016109659190614a75565b60206040518083038186803b15801561097d57600080fd5b505afa158015610991573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b59190614241565b600360006006548152602001908152602001600020541115610a1d576040518060400160405280601981526020017f4f66666572206e6f742061637469766520666f7220557365720000000000000081525086600060048110610a1457fe5b60200201819052505b600754471015610a56576040518060600160405280602e8152602001615320602e913986600160048110610a4d57fe5b60200201819052505b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569886006546040518363ffffffff1660e01b8152600401610ab4929190614b26565b60206040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190614178565b15610b55576040518060400160405280601581526020017f4f6666657220416c726561647920436c61696d6564000000000000000000000081525086600260048110610b4c57fe5b60200201819052505b610b5d613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b8152600401610bb89190614a75565b60a06040518083038186803b158015610bd057600080fd5b505afa158015610be4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0891906141a1565b909192935090915050826020018360600182815250828152505050600481606001511015610c7c576040518060400160405280601881526020017f4d696e696d756d206c6576656c2034207265717569726564000000000000000081525087600360048110610c7357fe5b60200201819052505b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f8a6040518263ffffffff1660e01b8152600401610cd99190614a75565b60006040518083038186803b158015610cf157600080fd5b505afa158015610d05573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610d2e91906140e3565b90506060610d3b82612e77565b905088836020015184606001518484610d5686600454613adf565b98509850985098509850985050505091939550919395565b610d76613dc4565b6000806000806000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff886040518263ffffffff1660e01b8152600401610dd99190614a75565b60206040518083038186803b158015610df157600080fd5b505afa158015610e05573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e299190614241565b600360006009548152602001908152602001600020541115610e91576040518060400160405280601981526020017f4f66666572206e6f742061637469766520666f7220557365720000000000000081525086600060048110610e8857fe5b60200201819052505b610e99613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b8152600401610ef49190614a75565b60a06040518083038186803b158015610f0c57600080fd5b505afa158015610f20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4491906141a1565b90919293509091509050826020018360800182815250828152505050600a546000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b901dd936009546040518263ffffffff1660e01b8152600401610fbf9190615004565b60206040518083038186803b158015610fd757600080fd5b505afa158015610feb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100f9190614241565b10611060576040518060400160405280601781526020017f4f66666572204d617820757365727320726561636865640000000000000000008152508760016004811061105757fe5b60200201819052505b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569896006546040518363ffffffff1660e01b81526004016110be929190614b26565b60206040518083038186803b1580156110d657600080fd5b505afa1580156110ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110e9190614178565b1561115f576040518060400160405280601581526020017f4f6666657220416c726561647920436c61696d656400000000000000000000008152508760026004811061115657fe5b60200201819052505b6008548160800151101561119c576040518060600160405280602181526020016152ff602191398760036004811061119357fe5b60200201819052505b86816020015182608001516000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b901dd936009546040518263ffffffff1660e01b81526004016112039190615004565b60206040518083038186803b15801561121b57600080fd5b505afa15801561122f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112539190614241565b600a546008549650965096509650965096505091939550919395565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f690614f64565b60405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015611367573d6000803e3d6000fd5b50565b60065481565b60045481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b81526004016113d19190614a90565b60206040518083038186803b1580156113e957600080fd5b505afa1580156113fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114219190614241565b6003600060045481526020019081526020016000205410611477576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146e90614dc4565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569336004546040518363ffffffff1660e01b81526004016114d5929190614ac6565b60206040518083038186803b1580156114ed57600080fd5b505afa158015611501573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115259190614178565b15611565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155c90614ea4565b60405180910390fd5b60055447116115a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a090614fc4565b60405180910390fd5b6115b1613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba336040518263ffffffff1660e01b815260040161160c9190614a90565b60a06040518083038186803b15801561162457600080fd5b505afa158015611638573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165c91906141a1565b856000018660200187604001886060018960800185815250858152508581525085815250851515151581525050505050506002816060015110156116d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cc90614e04565b60405180910390fd5b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f336040518263ffffffff1660e01b81526004016117329190614a90565b60006040518083038186803b15801561174a57600080fd5b505afa15801561175e573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061178791906140e3565b905060028151146117cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c490614fa4565b60405180910390fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8360008151811061181a57fe5b60200260200101516040518263ffffffff1660e01b815260040161183e9190614a75565b60206040518083038186803b15801561185657600080fd5b505afa15801561186a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061188e9190614241565b90506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff846001815181106118dd57fe5b60200260200101516040518263ffffffff1660e01b81526004016119019190614a75565b60206040518083038186803b15801561191957600080fd5b505afa15801561192d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119519190614241565b90506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b81526004016119b09190614a90565b60206040518083038186803b1580156119c857600080fd5b505afa1580156119dc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a009190614241565b90506202a300818403108015611a1a57506202a300818303105b611a59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5090614ee4565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc6005549081150290604051600060405180830381858888f19350505050611acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ac690614e44565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c39093b3360045460016040518463ffffffff1660e01b8152600401611b3093929190614aef565b602060405180830381600087803b158015611b4a57600080fd5b505af1158015611b5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b829190614178565b611bc1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb890614f84565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f2f6639d24651730c7bf57c95ddbf96d66d11477e4ec626876f92c22e5f365e68600454600554604051611c24929190615048565b60405180910390a35050505050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b901dd93856040518263ffffffff1660e01b8152600401611c909190615004565b60206040518083038186803b158015611ca857600080fd5b505afa158015611cbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ce09190614241565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663198169ea86866040518363ffffffff1660e01b8152600401611d3c929190615048565b60206040518083038186803b158015611d5457600080fd5b505afa158015611d68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d8c9190614014565b915091509250929050565b600a5481565b60095481565b611dab613dc4565b60008060006060611dba613e23565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff886040518263ffffffff1660e01b8152600401611e159190614a75565b60206040518083038186803b158015611e2d57600080fd5b505afa158015611e41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e659190614241565b600360006004548152602001908152602001600020541115611ecd576040518060400160405280601981526020017f4f66666572206e6f742061637469766520666f7220557365720000000000000081525086600060048110611ec457fe5b60200201819052505b600554471015611f23576040518060400160405280601481526020017f436f6e74726163742042616c616e6365204c6f7700000000000000000000000081525086600160048110611f1a57fe5b60200201819052505b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569886004546040518363ffffffff1660e01b8152600401611f81929190614b26565b60206040518083038186803b158015611f9957600080fd5b505afa158015611fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd19190614178565b15612022576040518060400160405280601581526020017f4f6666657220416c726561647920636c61696d656400000000000000000000008152508660026004811061201957fe5b60200201819052505b61202a613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b81526004016120859190614a75565b60a06040518083038186803b15801561209d57600080fd5b505afa1580156120b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120d591906141a1565b90919293505083602001846040018560600183815250838152508381525050505060028160600151101561214f576040518060400160405280601181526020017f4c6576656c206c657373207468616e20320000000000000000000000000000008152508760036004811061214657fe5b60200201819052505b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f8a6040518263ffffffff1660e01b81526004016121ac9190614a75565b60006040518083038186803b1580156121c457600080fd5b505afa1580156121d8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061220191906140e3565b905061220b613e23565b6002825114156125755761221d613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba8460008151811061226857fe5b60200260200101516040518263ffffffff1660e01b815260040161228c9190614a75565b60a06040518083038186803b1580156122a457600080fd5b505afa1580156122b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122dc91906141a1565b90919293509091509050508160200181815250506122f8613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba8560018151811061234357fe5b60200260200101516040518263ffffffff1660e01b81526004016123679190614a75565b60a06040518083038186803b15801561237f57600080fd5b505afa158015612393573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123b791906141a1565b9091929350909150905050816020018181525050604051806080016040528083602001518152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8760008151811061242b57fe5b60200260200101516040518263ffffffff1660e01b815260040161244f9190614a75565b60206040518083038186803b15801561246757600080fd5b505afa15801561247b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061249f9190614241565b815260200182602001518152602001600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff876001815181106124f957fe5b60200260200101516040518263ffffffff1660e01b815260040161251d9190614a75565b60206040518083038186803b15801561253557600080fd5b505afa158015612549573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061256d9190614241565b815250925050505b8883602001518460600151600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8e6040518263ffffffff1660e01b81526004016125db9190614a75565b60206040518083038186803b1580156125f357600080fd5b505afa158015612607573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061262b9190614241565b858598509850985098509850985050505091939550919395565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b81526004016126c69190614a90565b60206040518083038186803b1580156126de57600080fd5b505afa1580156126f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127169190614241565b600360006009548152602001908152602001600020541061276c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161276390614fe4565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569336009546040518363ffffffff1660e01b81526004016127ca929190614ac6565b60206040518083038186803b1580156127e257600080fd5b505afa1580156127f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061281a9190614178565b1561285a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161285190614ea4565b60405180910390fd5b600a546000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b901dd936009546040518263ffffffff1660e01b81526004016128b99190615004565b60206040518083038186803b1580156128d157600080fd5b505afa1580156128e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129099190614241565b10612949576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161294090614e64565b60405180910390fd5b612951613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba336040518263ffffffff1660e01b81526004016129ac9190614a90565b60a06040518083038186803b1580156129c457600080fd5b505afa1580156129d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129fc91906141a1565b85600001866020018760400188606001896080018581525085815250858152508581525085151515158152505050505050600181606001511015612a75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a6c90614de4565b60405180910390fd5b60085481608001511015612abe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ab590614f44565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c39093b3360095460016040518463ffffffff1660e01b8152600401612b1f93929190614aef565b602060405180830381600087803b158015612b3957600080fd5b505af1158015612b4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b719190614178565b612bb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ba790614f84565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f2f6639d24651730c7bf57c95ddbf96d66d11477e4ec626876f92c22e5f365e68600954600854604051612c13929190615048565b60405180910390a350565b6000806000806000612c2e613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b8152600401612c899190614a75565b60a06040518083038186803b158015612ca157600080fd5b505afa158015612cb5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cd991906141a1565b90919293509091508360200184606001856080018381525083815250838152505050506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a956989896040518363ffffffff1660e01b8152600401612d58929190614b26565b60206040518083038186803b158015612d7057600080fd5b505afa158015612d84573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612da89190614178565b816020015182606001518360800151600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8d6040518263ffffffff1660e01b8152600401612e129190614a75565b60206040518083038186803b158015612e2a57600080fd5b505afa158015612e3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e629190614241565b95509550955095509550509295509295909350565b60606000809050600060059050612e8c613e45565b6040518060a00160405280600460ff168152602001600860ff168152602001601060ff168152602001602060ff168152602001604060ff1681525090506060604067ffffffffffffffff81118015612ee357600080fd5b50604051908082528060200260200182016040528015612f125781602001602082028036833780820191505090505b5090505b82841015612f6d57600086511415612f345780945050505050612f75565b612f5186838660058110612f4457fe5b602002015160ff16612f80565b95506004841415612f60578590505b8380600101945050612f16565b809450505050505b919050565b60075481565b6060808267ffffffffffffffff81118015612f9a57600080fd5b50604051908082528060200260200182016040528015612fc95781602001602082028036833780820191505090505b509050600080905060008090505b85518110156131ce57600073ffffffffffffffffffffffffffffffffffffffff1686828151811061300457fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16141561302d576131ce565b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f88848151811061307957fe5b60200260200101516040518263ffffffff1660e01b815260040161309d9190614a75565b60006040518083038186803b1580156130b557600080fd5b505afa1580156130c9573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906130f291906140e3565b905060008090505b81518110156131bf57600073ffffffffffffffffffffffffffffffffffffffff1682828151811061312757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff161415613150576131bf565b81818151811061315c57fe5b602002602001015185858151811061317057fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050838060010194505080806001019150506130fa565b50508080600101915050612fd7565b50819250505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613290576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161328790614f64565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b815260040161332f9190614a90565b60206040518083038186803b15801561334757600080fd5b505afa15801561335b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061337f9190614241565b60036000600654815260200190815260200160002054106133d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133cc90614dc4565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569336006546040518363ffffffff1660e01b8152600401613433929190614ac6565b60206040518083038186803b15801561344b57600080fd5b505afa15801561345f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134839190614178565b156134c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134ba90614f04565b60405180910390fd5b6007544711613507576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134fe90614fc4565b60405180910390fd5b61350f613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba336040518263ffffffff1660e01b815260040161356a9190614a90565b60a06040518083038186803b15801561358257600080fd5b505afa158015613596573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135ba91906141a1565b85600001866020018760400188606001896080018581525085815250858152508581525085151515158152505050505050600481606001511015613633576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161362a90614ec4565b60405180910390fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff336040518263ffffffff1660e01b81526004016136909190614a90565b60206040518083038186803b1580156136a857600080fd5b505afa1580156136bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136e09190614241565b9050620fd20081420310613729576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161372090614f24565b60405180910390fd5b6060600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634a4baa8f336040518263ffffffff1660e01b81526004016137869190614a90565b60006040518083038186803b15801561379e57600080fd5b505afa1580156137b2573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906137db91906140e3565b905060606137e882612e77565b90506137f681600454613adf565b613835576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161382c90614e24565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc6007549081150290604051600060405180830381858888f193505050506138ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016138a290614e84565b60405180910390fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c39093b3360065460016040518463ffffffff1660e01b815260040161390c93929190614aef565b602060405180830381600087803b15801561392657600080fd5b505af115801561393a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061395e9190614178565b61399d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161399490614f84565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f2f6639d24651730c7bf57c95ddbf96d66d11477e4ec626876f92c22e5f365e68600654600754604051613a00929190615048565b60405180910390a350505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613a9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a9590614f64565b60405180910390fd5b8060036000848152602001908152602001600020819055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008090505b8451811015613bce57600191506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663965a9569868381518110613b3e57fe5b6020026020010151866040518363ffffffff1660e01b8152600401613b64929190614b26565b60206040518083038186803b158015613b7c57600080fd5b505afa158015613b90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613bb49190614178565b613bc15760009150613bce565b8080600101915050613ae8565b508091505092915050565b60036020528060005260406000206000915090505481565b600080600080600080613c02613deb565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a87430ba896040518263ffffffff1660e01b8152600401613c5d9190614a75565b60a06040518083038186803b158015613c7557600080fd5b505afa158015613c89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613cad91906141a1565b8560000186602001876040018860600189608001858152508581525085815250858152508515151515815250505050505080600001518160200151826040015183606001518460800151600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631ec932ff8e6040518263ffffffff1660e01b8152600401613d529190614a75565b60206040518083038186803b158015613d6a57600080fd5b505afa158015613d7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613da29190614241565b9650965096509650965096505091939550919395565b60055481565b60085481565b60405180608001604052806004905b6060815260200190600190039081613dd35790505090565b6040518060c0016040528060001515815260200160008152602001600081526020016000815260200160008152602001606081525090565b6040518060800160405280600490602082028036833780820191505090505090565b6040518060a00160405280600590602082028036833780820191505090505090565b600081359050613e76816152a2565b92915050565b600081519050613e8b816152a2565b92915050565b600081359050613ea0816152b9565b92915050565b600082601f830112613eb757600080fd5b8135613eca613ec58261509e565b615071565b91508181835260208401935060208101905083856020840282011115613eef57600080fd5b60005b83811015613f1f5781613f058882613e67565b845260208401935060208301925050600181019050613ef2565b5050505092915050565b600082601f830112613f3a57600080fd5b8151613f4d613f488261509e565b615071565b91508181835260208401935060208101905083856020840282011115613f7257600080fd5b60005b83811015613fa25781613f888882613e7c565b845260208401935060208301925050600181019050613f75565b5050505092915050565b600081519050613fbb816152d0565b92915050565b600081359050613fd0816152e7565b92915050565b600081519050613fe5816152e7565b92915050565b600060208284031215613ffd57600080fd5b600061400b84828501613e67565b91505092915050565b60006020828403121561402657600080fd5b600061403484828501613e7c565b91505092915050565b60006020828403121561404f57600080fd5b600061405d84828501613e91565b91505092915050565b6000806040838503121561407957600080fd5b600061408785828601613e67565b925050602061409885828601613fc1565b9150509250929050565b6000602082840312156140b457600080fd5b600082013567ffffffffffffffff8111156140ce57600080fd5b6140da84828501613ea6565b91505092915050565b6000602082840312156140f557600080fd5b600082015167ffffffffffffffff81111561410f57600080fd5b61411b84828501613f29565b91505092915050565b6000806040838503121561413757600080fd5b600083013567ffffffffffffffff81111561415157600080fd5b61415d85828601613ea6565b925050602061416e85828601613fc1565b9150509250929050565b60006020828403121561418a57600080fd5b600061419884828501613fac565b91505092915050565b600080600080600060a086880312156141b957600080fd5b60006141c788828901613fac565b95505060206141d888828901613fd6565b94505060406141e988828901613fd6565b93505060606141fa88828901613fd6565b925050608061420b88828901613fd6565b9150509295509295909350565b60006020828403121561422a57600080fd5b600061423884828501613fc1565b91505092915050565b60006020828403121561425357600080fd5b600061426184828501613fd6565b91505092915050565b6000806040838503121561427d57600080fd5b600061428b85828601613fc1565b925050602061429c85828601613fc1565b9150509250929050565b600080600080608085870312156142bc57600080fd5b60006142ca87828801613fc1565b94505060206142db87828801613fc1565b93505060406142ec87828801613fc1565b92505060606142fd87828801613fc1565b91505092959194509250565b6000614315838361436b565b60208301905092915050565b600061432d83836144e0565b905092915050565b60006143418383614a57565b60208301905092915050565b614356816151e0565b82525050565b61436581615198565b82525050565b61437481615186565b82525050565b61438381615186565b82525050565b6000614394826150ea565b61439e818561513d565b93506143a9836150c6565b8060005b838110156143da5781516143c18882614309565b97506143cc83615116565b9250506001810190506143ad565b5085935050505092915050565b60006143f2826150f5565b6143fc818561514e565b93508360208202850161440e856150d6565b8060005b8581101561444a578484038952815161442b8582614321565b945061443683615123565b925060208a01995050600181019050614412565b50829750879550505050505092915050565b61446581615100565b61446f8184615159565b925061447a826150e0565b8060005b838110156144ab5781516144928782614335565b965061449d83615130565b92505060018101905061447e565b505050505050565b6144bc816151aa565b82525050565b6144cb816151f2565b82525050565b6144da81615216565b82525050565b60006144eb8261510b565b6144f58185615164565b935061450581856020860161525e565b61450e81615291565b840191505092915050565b6000614526601983615175565b91507f4f66666572206e6f742061637469766520666f722055736572000000000000006000830152602082019050919050565b6000614566601b83615175565b91507f4d696e696d756d206c6576656c206578706563746564206973203100000000006000830152602082019050919050565b60006145a6601983615175565b91507f4c6576656c206e6f742075706772616465642066726f6d2031000000000000006000830152602082019050919050565b60006145e6602b83615175565b91507f4c6576656c203620706172746e657273206e6f7420636c61696d65642063617360008301527f686261636b206f666665720000000000000000000000000000000000000000006020830152604082019050919050565b600061464c601c83615175565b91507f53656e64696e67204f6666657220526577617264204661696c757265000000006000830152602082019050919050565b600061468c601a83615175565b91507f4f6666657220636c61696d6564206279206d61782075736572730000000000006000830152602082019050919050565b60006146cc601583615175565b91507f53656e64696e67204f66666572204661696c75726500000000000000000000006000830152602082019050919050565b600061470c601583615175565b91507f4f6666657220416c726561647920436c61696d656400000000000000000000006000830152602082019050919050565b600061474c601b83615175565b91507f4d696e696d756d206c6576656c206578706563746564206973203400000000006000830152602082019050919050565b600061478c602583615175565b91507f446f776e6c696e65206e6f7420726567697374657265642077697468696e203460008301527f38206872730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006147f2601583615175565b91507f4f6666657220416c726561647920636c61696d656400000000000000000000006000830152602082019050919050565b6000614832602583615175565b91507f5573657220726567697374726174696f6e20646174652070617373656420313260008301527f20646179730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000614898602683615175565b91507f4561726e6564206574686572206c657373207468616e2072657175697265642060008301527f616d6f756e7400000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006148fe600b83615175565b91507f4f776e6572206f6e6c79210000000000000000000000000000000000000000006000830152602082019050919050565b600061493e601483615175565b91507f53657474696e6720436c61696d206661696c65640000000000000000000000006000830152602082019050919050565b600061497e601783615175565b91507f54776f20646f776e6c696e6573206e6f7420666f756e640000000000000000006000830152602082019050919050565b60006149be602e83615175565b91507f436f6e74726163742042616c616e6365204c6f772c2074727920616761696e2060008301527f616674657220736f6d6574696d650000000000000000000000000000000000006020830152604082019050919050565b6000614a24601983615175565b91507f4f66666572206e6f742061637469766520666f722075736572000000000000006000830152602082019050919050565b614a60816151d6565b82525050565b614a6f816151d6565b82525050565b6000602082019050614a8a600083018461437a565b92915050565b6000602082019050614aa5600083018461434d565b92915050565b6000602082019050614ac0600083018461435c565b92915050565b6000604082019050614adb600083018561434d565b614ae86020830184614a66565b9392505050565b6000606082019050614b04600083018661434d565b614b116020830185614a66565b614b1e60408301846144b3565b949350505050565b6000604082019050614b3b600083018561437a565b614b486020830184614a66565b9392505050565b60006020820190508181036000830152614b698184614389565b905092915050565b600060c0820190508181036000830152614b8b81896143e7565b9050614b9a6020830188614a66565b614ba76040830187614a66565b8181036060830152614bb98186614389565b90508181036080830152614bcd8185614389565b9050614bdc60a08301846144b3565b979650505050505050565b6000610120820190508181036000830152614c0281896143e7565b9050614c116020830188614a66565b614c1e6040830187614a66565b614c2b6060830186614a66565b8181036080830152614c3d8185614389565b9050614c4c60a083018461445c565b979650505050505050565b600060c0820190508181036000830152614c7181896143e7565b9050614c806020830188614a66565b614c8d6040830187614a66565b614c9a6060830186614a66565b614ca76080830185614a66565b614cb460a0830184614a66565b979650505050505050565b6000602082019050614cd460008301846144b3565b92915050565b600060a082019050614cef60008301886144b3565b614cfc6020830187614a66565b614d096040830186614a66565b614d166060830185614a66565b614d236080830184614a66565b9695505050505050565b600060c082019050614d4260008301896144b3565b614d4f6020830188614a66565b614d5c6040830187614a66565b614d696060830186614a66565b614d766080830185614a66565b614d8360a0830184614a66565b979650505050505050565b6000602082019050614da360008301846144c2565b92915050565b6000602082019050614dbe60008301846144d1565b92915050565b60006020820190508181036000830152614ddd81614519565b9050919050565b60006020820190508181036000830152614dfd81614559565b9050919050565b60006020820190508181036000830152614e1d81614599565b9050919050565b60006020820190508181036000830152614e3d816145d9565b9050919050565b60006020820190508181036000830152614e5d8161463f565b9050919050565b60006020820190508181036000830152614e7d8161467f565b9050919050565b60006020820190508181036000830152614e9d816146bf565b9050919050565b60006020820190508181036000830152614ebd816146ff565b9050919050565b60006020820190508181036000830152614edd8161473f565b9050919050565b60006020820190508181036000830152614efd8161477f565b9050919050565b60006020820190508181036000830152614f1d816147e5565b9050919050565b60006020820190508181036000830152614f3d81614825565b9050919050565b60006020820190508181036000830152614f5d8161488b565b9050919050565b60006020820190508181036000830152614f7d816148f1565b9050919050565b60006020820190508181036000830152614f9d81614931565b9050919050565b60006020820190508181036000830152614fbd81614971565b9050919050565b60006020820190508181036000830152614fdd816149b1565b9050919050565b60006020820190508181036000830152614ffd81614a17565b9050919050565b60006020820190506150196000830184614a66565b92915050565b60006040820190506150346000830185614a66565b615041602083018461437a565b9392505050565b600060408201905061505d6000830185614a66565b61506a6020830184614a66565b9392505050565b6000604051905081810181811067ffffffffffffffff8211171561509457600080fd5b8060405250919050565b600067ffffffffffffffff8211156150b557600080fd5b602082029050602081019050919050565b6000819050602082019050919050565b6000819050919050565b6000819050919050565b600081519050919050565b600060049050919050565b600060049050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600081905092915050565b600081905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000615191826151b6565b9050919050565b60006151a3826151b6565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006151eb8261523a565b9050919050565b60006151fd82615204565b9050919050565b600061520f826151b6565b9050919050565b600061522182615228565b9050919050565b6000615233826151b6565b9050919050565b60006152458261524c565b9050919050565b6000615257826151b6565b9050919050565b60005b8381101561527c578082015181840152602081019050615261565b8381111561528b576000848401525b50505050565b6000601f19601f8301169050919050565b6152ab81615186565b81146152b657600080fd5b50565b6152c281615198565b81146152cd57600080fd5b50565b6152d9816151aa565b81146152e457600080fd5b50565b6152f0816151d6565b81146152fb57600080fd5b5056fe4561726e656420455448206c657373207468616e206f6666657220616d6f756e74436f6e74726163742042616c616e6365204c6f772c2074727920616761696e20616674657220736f6d6574696d65a2646970667358221220fd7e7ba0377869079920c217fb1a28666c099caec3f1ad853adbb172c19cc1ff64736f6c63430006080033

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

00000000000000000000000075fd7ea35186937865a503b4199e10180e05004600000000000000000000000080e9540c204c05be63cfe44b43302780175b60ff

-----Decoded View---------------
Arg [0] : offerStorageAddress (address): 0x75Fd7ea35186937865a503b4199E10180e050046
Arg [1] : openAlexaAddress (address): 0x80e9540c204c05Be63cfE44b43302780175b60FF

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000075fd7ea35186937865a503b4199e10180e050046
Arg [1] : 00000000000000000000000080e9540c204c05be63cfe44b43302780175b60ff


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.