Contract 0xa0e6B86957f5d1F29954B995671750A22E91aBff

 
Txn Hash
Block
From
To
Value [Txn Fee]
0x9206c4023752a1402f54b171ce9b2bcafcc76e100219453ad6e5b7cf773ef76680503912021-06-06 4:00:0917 days 11 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0x9b48dd4b478cb422eeecb84bc45a10bcfbac0ffb9b0057f6c14391ca29778acd80177552021-06-05 0:44:4418 days 14 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0x8a5dba1c872af927faa3ee0a67a13b3f46353eece96d2244039fdffcc887116979543162021-06-02 19:42:5420 days 19 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0x007c5b5766a32dd18e56b8861aca41ed5f5fc3b6be781905954a9a6b9f2c99fb79221402021-06-01 16:49:3521 days 22 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0xd7110a57ee27aa41758aec7ed7b4a4fdddae36131b517abf94ae94e49af359a478494502021-05-30 4:00:0824 days 11 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0x7897f6c6fa4fd9b3296f59bfa6747c60f5295d52b924e3d60c2cfb8f423e0a4578366572021-05-29 17:19:1724 days 21 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0xf6647d7bf1f8cb7c02e61fa06b9592004ab38ed9d24b994840ed3e0e0597718777943022021-05-28 5:54:1426 days 9 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0x1c84c847066b58be328ed0dd34ffa474349a4a5c8d764e8e0de41a23b2735b2a77826242021-05-27 20:07:5926 days 19 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0x31b80aed70407509f15e33e43682f7d32d03319b6ce3c94444bb37c173db1f3677062332021-05-25 4:00:1029 days 11 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0xf64036943f1893523c36bfae8270660b9b3b89d5769aa53611d342c61d743a5076918432021-05-24 15:58:3429 days 23 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0x01e60982e66a662c1b1aa9c0949f2f21ea9a78aa30e63b47a5f9fae801be18d976628172021-05-23 15:41:1330 days 23 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0x856a9973ee95fbe5d22fe46de5a034cc1ab7b6111e1c2e93c34d9d00079c262476340422021-05-22 15:37:2031 days 23 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00109481
0xf97320223bdb9102d2d50067045a7ba358783ce016b455c2b843c26d3320540d75953862021-05-21 7:16:0133 days 8 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  0xa0e6b86957f5d1f29954b995671750a22e91abff0 BNB0.00116987
0x84893ba7f6e9d28528a5a8059795ee7feb78be76270ab4bfe60dad6c5b602ddc75484762021-05-19 15:58:0834 days 23 hrs ago0x0ca82c887265a45f81ea19ba0b77479f1e81b919 IN  Contract Creation0 BNB0.00888535
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
VCRegistry

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at BscScan.com on 2021-05-21
*/

/**
 *Submitted for verification at BscScan.com on 2021-05-20
*/

pragma solidity >=0.7.0 <0.8.0;
//pragma experimental ABIEncoderV2;
//import "./AccessControl.sol";
contract Context {

  function _msgSender() internal view returns (address payable) {
    return msg.sender;
  }

  function _msgData() internal view returns (bytes memory) {
    this; 
    return msg.data;
  }
}
contract Ownable is Context {
 string public ownerName="STAMPING";
 address private _owner; //Public key of owner by smart contract
 address[] private masters; //Master Role for create, remove, revoke and active news DID
 event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
 constructor ()  {
    address msgSender = _msgSender();
    _owner = msgSender;
    emit OwnershipTransferred(address(0), msgSender);
  }
 function owner() external view returns (address) {
    return _owner;
  }
 modifier onlyOwner() {
    require(_owner == _msgSender(), "Ownable: caller is not the owner");
    _;
  }
 function _existMasters(address _senderTx) internal  view returns (bool) {
      bool _isMaster=false;
      for(uint8 i=0;i<masters.length; i++) {
             if(masters[i]==_senderTx) {
                _isMaster=true;
                 break;
             }
        }
      return _isMaster;
  }  
 function isMaster(address DID) external  view returns (bool) {
    return (_existMasters(DID));
  }
 modifier onlyMaster() {
    address  _senderTx = _msgSender();
    require(_owner == _senderTx || _existMasters(_senderTx), "Masterable: caller is not the owner or master");
    
    _;
  }
 function addMaster(address DID)  external  onlyMaster returns (bool) {
      require(!_existMasters(DID),"DID already exists with master role");
      masters.push(DID);
      return true;
  }  
 function removeMaster(address DID) external  onlyMaster returns (bool) {
      bool _isMaster=false;
      uint _index;
      for(uint i=0;i<masters.length; i++) {
             if(masters[i]==DID) {
                 _isMaster=true;
                 _index=i;
                 break;
             }
        }
      if (_isMaster==true) {    
        delete masters[_index];
        return true;
      } else {
        return false;  
      }
  } 
 function getMasterList() external view returns (address[] memory){
		return masters;
}
 function renounceOwnership() external onlyOwner {
    emit OwnershipTransferred(_owner, address(0));
    _owner = address(0);
  }
 function transferOwnership(address newOwner) external onlyOwner {
    _transferOwnership(newOwner);
  }
 function _transferOwnership(address newOwner) internal {
    require(newOwner != address(0), "Ownable: new owner is the zero address");

    emit OwnershipTransferred(_owner, newOwner);
    _owner = newOwner;
  }
}

contract VCRegistry is  Context, Ownable {
    
    struct CredentialMetadata {
        address subjectDID;
        uint iat;
        bool status;
        int8 statuscode;
        address creator;
        uint count;
    }
     struct CredentialDataMetadata {
         string data;
         string url;
     }
    event CredentialRegistered(bytes32 indexed credentialHash, address by, address id, uint iat);
    event CredentialRevoked(bytes32 indexed credentialHash, address by, uint date);

  mapping (bytes32 => CredentialMetadata) public  credentialhashs;
  mapping (bytes32 => mapping (address => CredentialMetadata)) public credentials;
  mapping (bytes32 => CredentialDataMetadata) public  credentialdata;
  uint private _count;
  constructor() {
    _count=0;
  }

  function _register(bytes32 credentialHash,  address subjectDID, uint count)  internal returns(bool) {
    CredentialMetadata storage credential = credentialhashs[credentialHash];
    require(credential.subjectDID==address(0),"Credential already exists");

    //credential.issuerDID = issuerDID;
    credential.count = count;
    credential.subjectDID = subjectDID;
    credential.iat = block.timestamp;
    //credential.exp = exp;
    //credential.purpose = purpose;
    credential.status = true;
    credential.statuscode = 0; //"CREATED";
    //credential.url = url;
    //credential.data = data;
    credentials[credentialHash][_msgSender()] = credential;
    credentialhashs[credentialHash] = credential;
    _count++;
    emit CredentialRegistered(credentialHash, _msgSender(), subjectDID, credential.iat);
    return true;

   }

  function register(bytes32 credentialHash,  address subjectDID, uint count)  onlyMaster external returns(bool) {
    return _register(credentialHash, subjectDID, count);
  }
  function registerData(bytes32 credentialHash, address subjectDID, string calldata data, string calldata url, uint count)  onlyMaster external returns(bool) {
    _register(credentialHash,  subjectDID, count);
    CredentialDataMetadata  storage credentialData = credentialdata[credentialHash];
    credentialData.data= data;
    credentialData.url= url;
    credentialdata[credentialHash] = credentialData;
    return  true;
  }
  
  function registerMySelf(bytes32 credentialHash, address subjectDID, string calldata data, string calldata url, uint count)   external returns(bool) {
    _register(credentialHash,  subjectDID,  count);
    CredentialDataMetadata  storage credentialData = credentialdata[credentialHash];
    credentialData.data= data;
    credentialData.url= url;
    credentialdata[credentialHash] = credentialData;
    return true;
  }
  
  function revoke(bytes32 credentialHash)  onlyOwner external returns(bool) {
    CredentialMetadata storage credential = credentialhashs[credentialHash];

    require(credential.subjectDID!=address(0), "credential hash doesn't exist");
    require(credential.status, "Credential is already revoked");  
    credential.status = false;  
    credential.statuscode = 1;// "REVOKED";
    credentials[credentialHash][credential.creator] = credential;
    credentialhashs[credentialHash] = credential;
    _count--;
    emit CredentialRevoked(credentialHash, _msgSender(), block.timestamp);
    return true;
  }
  function active(bytes32 credentialHash)  onlyOwner external returns(bool) {
    CredentialMetadata storage credential = credentialhashs[credentialHash];

    require(credential.subjectDID!=address(0), "credential hash doesn't exist");
    require(!credential.status, "Credential not is revoked");  
     
    credential.status = true;   
    credential.statuscode = 2;// "ACTIVATED";
    credentials[credentialHash][credential.creator] = credential;
    credentialhashs[credentialHash] = credential;
    _count++;
    emit CredentialRegistered(credentialHash, _msgSender(),credential.subjectDID, block.timestamp);
    return true;
  }
  function verify(bytes32 credentialHash, address issuer)  external view returns(bool isValidm, int8 statuscode){
    CredentialMetadata memory credential = credentials[credentialHash][issuer];
    require(credential.subjectDID!=address(0),"Credential hash doesn't exist");
    return (credential.status, credential.statuscode);
  }
  function count() public view returns (uint){
		return _count;
	}
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"credentialHash","type":"bytes32"},{"indexed":false,"internalType":"address","name":"by","type":"address"},{"indexed":false,"internalType":"address","name":"id","type":"address"},{"indexed":false,"internalType":"uint256","name":"iat","type":"uint256"}],"name":"CredentialRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"credentialHash","type":"bytes32"},{"indexed":false,"internalType":"address","name":"by","type":"address"},{"indexed":false,"internalType":"uint256","name":"date","type":"uint256"}],"name":"CredentialRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"bytes32","name":"credentialHash","type":"bytes32"}],"name":"active","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"DID","type":"address"}],"name":"addMaster","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"count","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"credentialdata","outputs":[{"internalType":"string","name":"data","type":"string"},{"internalType":"string","name":"url","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"credentialhashs","outputs":[{"internalType":"address","name":"subjectDID","type":"address"},{"internalType":"uint256","name":"iat","type":"uint256"},{"internalType":"bool","name":"status","type":"bool"},{"internalType":"int8","name":"statuscode","type":"int8"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"uint256","name":"count","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"}],"name":"credentials","outputs":[{"internalType":"address","name":"subjectDID","type":"address"},{"internalType":"uint256","name":"iat","type":"uint256"},{"internalType":"bool","name":"status","type":"bool"},{"internalType":"int8","name":"statuscode","type":"int8"},{"internalType":"address","name":"creator","type":"address"},{"internalType":"uint256","name":"count","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getMasterList","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"DID","type":"address"}],"name":"isMaster","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ownerName","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"credentialHash","type":"bytes32"},{"internalType":"address","name":"subjectDID","type":"address"},{"internalType":"uint256","name":"count","type":"uint256"}],"name":"register","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"credentialHash","type":"bytes32"},{"internalType":"address","name":"subjectDID","type":"address"},{"internalType":"string","name":"data","type":"string"},{"internalType":"string","name":"url","type":"string"},{"internalType":"uint256","name":"count","type":"uint256"}],"name":"registerData","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"credentialHash","type":"bytes32"},{"internalType":"address","name":"subjectDID","type":"address"},{"internalType":"string","name":"data","type":"string"},{"internalType":"string","name":"url","type":"string"},{"internalType":"uint256","name":"count","type":"uint256"}],"name":"registerMySelf","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"DID","type":"address"}],"name":"removeMaster","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"credentialHash","type":"bytes32"}],"name":"revoke","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"credentialHash","type":"bytes32"},{"internalType":"address","name":"issuer","type":"address"}],"name":"verify","outputs":[{"internalType":"bool","name":"isValidm","type":"bool"},{"internalType":"int8","name":"statuscode","type":"int8"}],"stateMutability":"view","type":"function"}]

60c060405260086080819052675354414d50494e4760c01b60a09081526200002b9160009190620000a3565b503480156200003957600080fd5b506000620000466200009f565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060006006556200014f565b3390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282620000db576000855562000126565b82601f10620000f657805160ff191683800117855562000126565b8280016001018555821562000126579182015b828111156200012657825182559160200191906001019062000109565b506200013492915062000138565b5090565b5b8082111562000134576000815560010162000139565b611e50806200015f6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c8063a5b0d68c116100a2578063e26e4cf911610071578063e26e4cf914610619578063e2a2f0a314610636578063f078e5db1461065c578063f2fde38b14610688578063f720f80b146106ae57610116565b8063a5b0d68c14610528578063b75c7dc61461055a578063b88fbd2d14610577578063c1401b03146105c157610116565b8063715018a6116100e9578063715018a6146102bf578063850ee4d8146102c95780638da5cb5b14610336578063958553431461035a5780639fd063051461045557610116565b806306661abd1461011b5780631097d54a146101355780635f5d408c1461016f57806365ac232014610242575b600080fd5b6101236106d4565b60408051918252519081900360200190f35b61015b6004803603602081101561014b57600080fd5b50356001600160a01b03166106da565b604080519115158252519081900360200190f35b61015b600480360360a081101561018557600080fd5b8135916001600160a01b0360208201351691810190606081016040820135600160201b8111156101b457600080fd5b8201836020820111156101c657600080fd5b803590602001918460018302840111600160201b831117156101e757600080fd5b919390929091602081019035600160201b81111561020457600080fd5b82018360208201111561021657600080fd5b803590602001918460018302840111600160201b8311171561023757600080fd5b9193509150356107dd565b61024a610881565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028457818101518382015260200161026c565b50505050905090810190601f1680156102b15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102c761090f565b005b6102e6600480360360208110156102df57600080fd5b50356109b1565b60405180876001600160a01b0316815260200186815260200185151581526020018460000b8152602001836001600160a01b03168152602001828152602001965050505050505060405180910390f35b61033e6109f8565b604080516001600160a01b039092168252519081900360200190f35b6103776004803603602081101561037057600080fd5b5035610a07565b604051808060200180602001838103835285818151815260200191508051906020019080838360005b838110156103b85781810151838201526020016103a0565b50505050905090810190601f1680156103e55780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610418578181015183820152602001610400565b50505050905090810190601f1680156104455780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b61015b600480360360a081101561046b57600080fd5b8135916001600160a01b0360208201351691810190606081016040820135600160201b81111561049a57600080fd5b8201836020820111156104ac57600080fd5b803590602001918460018302840111600160201b831117156104cd57600080fd5b919390929091602081019035600160201b8111156104ea57600080fd5b8201836020820111156104fc57600080fd5b803590602001918460018302840111600160201b8311171561051d57600080fd5b919350915035610b46565b61015b6004803603606081101561053e57600080fd5b508035906001600160a01b036020820135169060400135610c52565b61015b6004803603602081101561057057600080fd5b5035610ccf565b6105a36004803603604081101561058d57600080fd5b50803590602001356001600160a01b03166110dc565b60408051921515835260009190910b60208301528051918290030190f35b6105c96111be565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156106055781810151838201526020016105ed565b505050509050019250505060405180910390f35b61015b6004803603602081101561062f57600080fd5b5035611220565b61015b6004803603602081101561064c57600080fd5b50356001600160a01b0316611638565b6102e66004803603604081101561067257600080fd5b50803590602001356001600160a01b031661173f565b6102c76004803603602081101561069e57600080fd5b50356001600160a01b0316611792565b61015b600480360360208110156106c457600080fd5b50356001600160a01b03166117f6565b60065490565b6000806106e5611807565b6001549091506001600160a01b038083169116148061070857506107088161180b565b6107435760405162461bcd60e51b815260040180806020018281038252602d815260200180611d85602d913960400191505060405180910390fd5b61074c8361180b565b156107885760405162461bcd60e51b8152600401808060200182810382526023815260200180611dd86023913960400191505060405180910390fd5b60028054600180820183556000929092527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b0319166001600160a01b03861617905591505b50919050565b60006107ea88888461186a565b506000888152600560205260409020610804818888611c60565b50610813600182018686611c60565b5060008981526005602052604090208154829190610847908290849060026000196101006001841615020190911604611cec565b506001820181600101908054600181600116156101000203166002900461086f929190611cec565b5060019b9a5050505050505050505050565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109075780601f106108dc57610100808354040283529160200191610907565b820191906000526020600020905b8154815290600101906020018083116108ea57829003601f168201915b505050505081565b610917611807565b6001546001600160a01b03908116911614610967576040805162461bcd60e51b81526020600482018190526024820152600080516020611dfb833981519152604482015290519081900360640190fd5b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b6003602081905260009182526040822080546001820154600283015492909301546001600160a01b039182169460ff841693610100810490910b9262010000909104169086565b6001546001600160a01b031690565b60056020908152600091825260409182902080548351601f60026000196101006001861615020190931692909204918201849004840281018401909452808452909291839190830182828015610a9e5780601f10610a7357610100808354040283529160200191610a9e565b820191906000526020600020905b815481529060010190602001808311610a8157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b3c5780601f10610b1157610100808354040283529160200191610b3c565b820191906000526020600020905b815481529060010190602001808311610b1f57829003601f168201915b5050505050905082565b600080610b51611807565b6001549091506001600160a01b0380831691161480610b745750610b748161180b565b610baf5760405162461bcd60e51b815260040180806020018281038252602d815260200180611d85602d913960400191505060405180910390fd5b610bba89898561186a565b506000898152600560205260409020610bd4818989611c60565b50610be3600182018787611c60565b5060008a81526005602052604090208154829190610c17908290849060026000196101006001841615020190911604611cec565b5060018201816001019080546001816001161561010002031660029004610c3f929190611cec565b5060019c9b505050505050505050505050565b600080610c5d611807565b6001549091506001600160a01b0380831691161480610c805750610c808161180b565b610cbb5760405162461bcd60e51b815260040180806020018281038252602d815260200180611d85602d913960400191505060405180910390fd5b610cc685858561186a565b95945050505050565b6000610cd9611807565b6001546001600160a01b03908116911614610d29576040805162461bcd60e51b81526020600482018190526024820152600080516020611dfb833981519152604482015290519081900360640190fd5b600082815260036020526040902080546001600160a01b0316610d93576040805162461bcd60e51b815260206004820152601d60248201527f63726564656e7469616c206861736820646f65736e2774206578697374000000604482015290519081900360640190fd5b600281015460ff16610dec576040805162461bcd60e51b815260206004820152601d60248201527f43726564656e7469616c20697320616c7265616479207265766f6b6564000000604482015290519081900360640190fd5b60008160020160006101000a81548160ff02191690831515021790555060018160020160016101000a81548160ff021916908360000b60ff160217905550806004600085815260200190815260200160002060008360020160029054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000206000820160009054906101000a90046001600160a01b03168160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600182015481600101556002820160009054906101000a900460ff168160020160006101000a81548160ff0219169083151502179055506002820160019054906101000a900460000b8160020160016101000a81548160ff021916908360000b60ff1602179055506002820160029054906101000a90046001600160a01b03168160020160026101000a8154816001600160a01b0302191690836001600160a01b031602179055506003820154816003015590505080600360008581526020019081526020016000206000820160009054906101000a90046001600160a01b03168160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600182015481600101556002820160009054906101000a900460ff168160020160006101000a81548160ff0219169083151502179055506002820160019054906101000a900460000b8160020160016101000a81548160ff021916908360000b60ff1602179055506002820160029054906101000a90046001600160a01b03168160020160026101000a8154816001600160a01b0302191690836001600160a01b031602179055506003820154816003015590505060066000815480929190600190039190505550827f80d4746828447d65eceb938c7f9d85fbeb232fe7819d5209ed452b3940f8904b6110b3611807565b604080516001600160a01b0390921682524260208301528051918290030190a250600192915050565b60008281526004602090815260408083206001600160a01b038086168552908352818420825160c08101845281548316808252600183015495820195909552600282015460ff81161515948201949094526101008404860b860b860b60608201526201000090930490911660808301526003015460a082015282916111a8576040805162461bcd60e51b815260206004820152601d60248201527f43726564656e7469616c206861736820646f65736e2774206578697374000000604482015290519081900360640190fd5b8060400151816060015192509250509250929050565b6060600280548060200260200160405190810160405280929190818152602001828054801561121657602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116111f8575b5050505050905090565b600061122a611807565b6001546001600160a01b0390811691161461127a576040805162461bcd60e51b81526020600482018190526024820152600080516020611dfb833981519152604482015290519081900360640190fd5b600082815260036020526040902080546001600160a01b03166112e4576040805162461bcd60e51b815260206004820152601d60248201527f63726564656e7469616c206861736820646f65736e2774206578697374000000604482015290519081900360640190fd5b600281015460ff161561133e576040805162461bcd60e51b815260206004820152601960248201527f43726564656e7469616c206e6f74206973207265766f6b656400000000000000604482015290519081900360640190fd5b60018160020160006101000a81548160ff02191690831515021790555060028160020160016101000a81548160ff021916908360000b60ff160217905550806004600085815260200190815260200160002060008360020160029054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020019081526020016000206000820160009054906101000a90046001600160a01b03168160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600182015481600101556002820160009054906101000a900460ff168160020160006101000a81548160ff0219169083151502179055506002820160019054906101000a900460000b8160020160016101000a81548160ff021916908360000b60ff1602179055506002820160029054906101000a90046001600160a01b03168160020160026101000a8154816001600160a01b0302191690836001600160a01b031602179055506003820154816003015590505080600360008581526020019081526020016000206000820160009054906101000a90046001600160a01b03168160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600182015481600101556002820160009054906101000a900460ff168160020160006101000a81548160ff0219169083151502179055506002820160019054906101000a900460000b8160020160016101000a81548160ff021916908360000b60ff1602179055506002820160029054906101000a90046001600160a01b03168160020160026101000a8154816001600160a01b0302191690836001600160a01b0316021790555060038201548160030155905050600660008154809291906001019190505550827f889569e4303664728fba29a472b24d3032707e6ebbee9a46e070c5c8f2ae4c25611604611807565b8354604080516001600160a01b0393841681529290911660208301524282820152519081900360600190a250600192915050565b600080611643611807565b6001549091506001600160a01b038083169116148061166657506116668161180b565b6116a15760405162461bcd60e51b815260040180806020018281038252602d815260200180611d85602d913960400191505060405180910390fd5b600080805b6002548110156116f657856001600160a01b0316600282815481106116c757fe5b6000918252602090912001546001600160a01b031614156116ee57600192508091506116f6565b6001016116a6565b5060018215151415611734576002818154811061170f57fe5b600091825260209091200180546001600160a01b031916905550600192506107d79050565b6000935050506107d7565b600460209081526000928352604080842090915290825281208054600182015460028301546003909301546001600160a01b0392831694919360ff811693610100820490930b9262010000909104169086565b61179a611807565b6001546001600160a01b039081169116146117ea576040805162461bcd60e51b81526020600482018190526024820152600080516020611dfb833981519152604482015290519081900360640190fd5b6117f381611bbf565b50565b60006118018261180b565b92915050565b3390565b600080805b60025460ff8216101561186357836001600160a01b031660028260ff168154811061183757fe5b6000918252602090912001546001600160a01b0316141561185b5760019150611863565b600101611810565b5092915050565b600083815260036020526040812080546001600160a01b0316156118d5576040805162461bcd60e51b815260206004820152601960248201527f43726564656e7469616c20616c72656164792065786973747300000000000000604482015290519081900360640190fd5b6003810183905580546001600160a01b0319166001600160a01b0385161781554260018083019190915560028201805460ff191690911761ff00191690556000858152600460205260408120829161192b611807565b6001600160a01b03166001600160a01b031681526020019081526020016000206000820160009054906101000a90046001600160a01b03168160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600182015481600101556002820160009054906101000a900460ff168160020160006101000a81548160ff0219169083151502179055506002820160019054906101000a900460000b8160020160016101000a81548160ff021916908360000b60ff1602179055506002820160029054906101000a90046001600160a01b03168160020160026101000a8154816001600160a01b0302191690836001600160a01b031602179055506003820154816003015590505080600360008781526020019081526020016000206000820160009054906101000a90046001600160a01b03168160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550600182015481600101556002820160009054906101000a900460ff168160020160006101000a81548160ff0219169083151502179055506002820160019054906101000a900460000b8160020160016101000a81548160ff021916908360000b60ff1602179055506002820160029054906101000a90046001600160a01b03168160020160026101000a8154816001600160a01b0302191690836001600160a01b0316021790555060038201548160030155905050600660008154809291906001019190505550847f889569e4303664728fba29a472b24d3032707e6ebbee9a46e070c5c8f2ae4c25611b85611807565b6001840154604080516001600160a01b039384168152928916602084015282810191909152519081900360600190a2506001949350505050565b6001600160a01b038116611c045760405162461bcd60e51b8152600401808060200182810382526026815260200180611db26026913960400191505060405180910390fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282611c965760008555611cdc565b82601f10611caf5782800160ff19823516178555611cdc565b82800160010185558215611cdc579182015b82811115611cdc578235825591602001919060010190611cc1565b50611ce8929150611d6f565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282611d225760008555611cdc565b82601f10611d335780548555611cdc565b82800160010185558215611cdc57600052602060002091601f016020900482015b82811115611cdc578254825591600101919060010190611d54565b5b80821115611ce85760008155600101611d7056fe4d617374657261626c653a2063616c6c6572206973206e6f7420746865206f776e6572206f72206d61737465724f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737344494420616c7265616479206578697374732077697468206d617374657220726f6c654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a264697066735822122042c5f1e4c10df0e0ee131a68838fd7606d0c0ff57cbfc6eb6133cfcdd6ccf3f564736f6c63430007060033

Deployed ByteCode Sourcemap

2878:4395:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7204:66;;;:::i;:::-;;;;;;;;;;;;;;;;1655:196;;;;;;;;;;;;;;;;-1:-1:-1;1655:196:0;-1:-1:-1;;;;;1655:196:0;;:::i;:::-;;;;;;;;;;;;;;;;;;5160:427;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5160:427:0;;;;;;;;;;;;;;;;-1:-1:-1;;;5160:427:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5160:427:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5160:427:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5160:427:0;;;;;;;;;;;;-1:-1:-1;5160:427:0;-1:-1:-1;5160:427:0;;:::i;429:34::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2411:132;;;:::i;:::-;;3390:63;;;;;;;;;;;;;;;;-1:-1:-1;3390:63:0;;:::i;:::-;;;;;-1:-1:-1;;;;;3390:63:0;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3390:63:0;;;;;;;;;;;;;;;;;;;;;;;;;854:75;;;:::i;:::-;;;;-1:-1:-1;;;;;854:75:0;;;;;;;;;;;;;;3542:66;;;;;;;;;;;;;;;;-1:-1:-1;3542:66:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3542:66:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4717:435;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4717:435:0;;;;;;;;;;;;;;;;-1:-1:-1;;;4717:435:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4717:435:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4717:435:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4717:435:0;;;;;;;;;;;;-1:-1:-1;4717:435:0;-1:-1:-1;4717:435:0;;:::i;4539:174::-;;;;;;;;;;;;;;;;-1:-1:-1;4539:174:0;;;-1:-1:-1;;;;;4539:174:0;;;;;;;;;;:::i;5595:616::-;;;;;;;;;;;;;;;;-1:-1:-1;5595:616:0;;:::i;6866:334::-;;;;;;;;;;;;;;;;-1:-1:-1;6866:334:0;;;;;;-1:-1:-1;;;;;6866:334:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;2320:88;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6215:647;;;;;;;;;;;;;;;;-1:-1:-1;6215:647:0;;:::i;1856:460::-;;;;;;;;;;;;;;;;-1:-1:-1;1856:460:0;-1:-1:-1;;;;;1856:460:0;;:::i;3458:79::-;;;;;;;;;;;;;;;;-1:-1:-1;3458:79:0;;;;;;-1:-1:-1;;;;;3458:79:0;;:::i;2546:105::-;;;;;;;;;;;;;;;;-1:-1:-1;2546:105:0;-1:-1:-1;;;;;2546:105:0;;:::i;1354:101::-;;;;;;;;;;;;;;;;-1:-1:-1;1354:101:0;-1:-1:-1;;;;;1354:101:0;;:::i;7204:66::-;7259:6;;7204:66;:::o;1655:196::-;1718:4;1487:18;1508:12;:10;:12::i;:::-;1535:6;;1487:33;;-1:-1:-1;;;;;;1535:19:0;;;:6;;:19;;:47;;;1558:24;1572:9;1558:13;:24::i;:::-;1527:105;;;;-1:-1:-1;;;1527:105:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1742:18:::1;1756:3;1742:13;:18::i;:::-;1741:19;1733:66;;;;-1:-1:-1::0;;;1733:66:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1808:7;:17:::0;;::::1;::::0;;::::1;::::0;;-1:-1:-1;1808:17:0;;;;;::::1;::::0;;-1:-1:-1;;;;;;1808:17:0::1;-1:-1:-1::0;;;;;1808:17:0;::::1;;::::0;;;-1:-1:-1;1645:1:0::1;1655:196:::0;;;;:::o;5160:427::-;5302:4;5315:46;5325:14;5342:10;5355:5;5315:9;:46::i;:::-;-1:-1:-1;5368:46:0;5417:30;;;:14;:30;;;;;5454:25;5417:30;5475:4;;5454:25;:::i;:::-;-1:-1:-1;5486:23:0;:18;;;5506:3;;5486:23;:::i;:::-;-1:-1:-1;5516:30:0;;;;:14;:30;;;;;:47;;5549:14;;5516:30;:47;;:30;;5549:14;;5516:47;-1:-1:-1;;5516:47:0;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5577:4:0;;5160:427;-1:-1:-1;;;;;;;;;;;5160:427:0:o;429:34::-;;;;;;;;;;;;;;;-1:-1:-1;;429:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2411:132::-;978:12;:10;:12::i;:::-;968:6;;-1:-1:-1;;;;;968:6:0;;;:22;;;960:67;;;;;-1:-1:-1;;;960:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;960:67:0;;;;;;;;;;;;;;;2492:6:::1;::::0;2471:40:::1;::::0;2508:1:::1;::::0;-1:-1:-1;;;;;2492:6:0::1;::::0;2471:40:::1;::::0;2508:1;;2471:40:::1;2518:6;:19:::0;;-1:-1:-1;;;;;;2518:19:0::1;::::0;;2411:132::o;3390:63::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3390:63:0;;;;;;;;;;;;;;;;;;;;;;:::o;854:75::-;917:6;;-1:-1:-1;;;;;917:6:0;854:75;:::o;3542:66::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3542:66:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4717:435::-;4867:4;1487:18;1508:12;:10;:12::i;:::-;1535:6;;1487:33;;-1:-1:-1;;;;;;1535:19:0;;;:6;;:19;;:47;;;1558:24;1572:9;1558:13;:24::i;:::-;1527:105;;;;-1:-1:-1;;;1527:105:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4880:45:::1;4890:14;4907:10;4919:5;4880:9;:45::i;:::-;-1:-1:-1::0;4932:46:0::1;4981:30:::0;;;:14:::1;:30;::::0;;;;5018:25:::1;4981:30:::0;5039:4;;5018:25:::1;:::i;:::-;-1:-1:-1::0;5050:23:0::1;:18;::::0;::::1;5070:3:::0;;5050:23:::1;:::i;:::-;-1:-1:-1::0;5080:30:0::1;::::0;;;:14:::1;:30;::::0;;;;:47;;5113:14;;5080:30;:47:::1;::::0;:30;;5113:14;;5080:47:::1;-1:-1:-1::0;;5080:47:0::1;;::::0;::::1;;;::::0;;;::::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;5142:4:0::1;::::0;4717:435;-1:-1:-1;;;;;;;;;;;;4717:435:0:o;4539:174::-;4643:4;1487:18;1508:12;:10;:12::i;:::-;1535:6;;1487:33;;-1:-1:-1;;;;;;1535:19:0;;;:6;;:19;;:47;;;1558:24;1572:9;1558:13;:24::i;:::-;1527:105;;;;-1:-1:-1;;;1527:105:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4663:44:::1;4673:14;4689:10;4701:5;4663:9;:44::i;:::-;4656:51:::0;4539:174;-1:-1:-1;;;;;4539:174:0:o;5595:616::-;5663:4;978:12;:10;:12::i;:::-;968:6;;-1:-1:-1;;;;;968:6:0;;;:22;;;960:67;;;;;-1:-1:-1;;;960:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;960:67:0;;;;;;;;;;;;;;;5676:37:::1;5716:31:::0;;;:15:::1;:31;::::0;;;;5764:21;;-1:-1:-1;;;;;5764:21:0::1;5756:75;;;::::0;;-1:-1:-1;;;5756:75:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;5846:17;::::0;::::1;::::0;::::1;;5838:59;;;::::0;;-1:-1:-1;;;5838:59:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;5926:5;5906:10;:17;;;:25;;;;;;;;;;;;;;;;;;5964:1;5940:10;:21;;;:25;;;;;;;;;;;;;;;;;;;;6035:10;5985:11;:27;5997:14;5985:27;;;;;;;;;;;:47;6013:10;:18;;;;;;;;;;-1:-1:-1::0;;;;;6013:18:0::1;-1:-1:-1::0;;;;;5985:47:0::1;-1:-1:-1::0;;;;;5985:47:0::1;;;;;;;;;;;;:60;;;;;;;;;;;-1:-1:-1::0;;;;;5985:60:0::1;;;;;;;;;;-1:-1:-1::0;;;;;5985:60:0::1;;;;;-1:-1:-1::0;;;;;5985:60:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;5985:60:0::1;;;;;;;;;;-1:-1:-1::0;;;;;5985:60:0::1;;;;;-1:-1:-1::0;;;;;5985:60:0::1;;;;;;;;;;;;;;;;;6086:10;6052:15;:31;6068:14;6052:31;;;;;;;;;;;:44;;;;;;;;;;;-1:-1:-1::0;;;;;6052:44:0::1;;;;;;;;;;-1:-1:-1::0;;;;;6052:44:0::1;;;;;-1:-1:-1::0;;;;;6052:44:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;6052:44:0::1;;;;;;;;;;-1:-1:-1::0;;;;;6052:44:0::1;;;;;-1:-1:-1::0;;;;;6052:44:0::1;;;;;;;;;;;;;;;;;6103:6;;:8;;;;;;;;;;;;;;6141:14;6123:64;6157:12;:10;:12::i;:::-;6123:64;::::0;;-1:-1:-1;;;;;6123:64:0;;::::1;::::0;;6171:15:::1;6123:64;::::0;::::1;::::0;;;;;;;;;::::1;-1:-1:-1::0;6201:4:0::1;::::0;5595:616;-1:-1:-1;;5595:616:0:o;6866:334::-;6945:13;7022:27;;;:11;:27;;;;;;;;-1:-1:-1;;;;;7022:35:0;;;;;;;;;;;6983:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6945:13;;7064:74;;;;;-1:-1:-1;;;7064:74:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7153:10;:17;;;7172:10;:21;;;7145:49;;;;;6866:334;;;;;:::o;2320:88::-;2368:16;2397:7;2390:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2390:14:0;;;;;;;;;;;;;;;;;;;;;;;2320:88;:::o;6215:647::-;6283:4;978:12;:10;:12::i;:::-;968:6;;-1:-1:-1;;;;;968:6:0;;;:22;;;960:67;;;;;-1:-1:-1;;;960:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;960:67:0;;;;;;;;;;;;;;;6296:37:::1;6336:31:::0;;;:15:::1;:31;::::0;;;;6384:21;;-1:-1:-1;;;;;6384:21:0::1;6376:75;;;::::0;;-1:-1:-1;;;6376:75:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;6467:17;::::0;::::1;::::0;::::1;;6466:18;6458:56;;;::::0;;-1:-1:-1;;;6458:56:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;6550:4;6530:10;:17;;;:24;;;;;;;;;;;;;;;;;;6588:1;6564:10;:21;;;:25;;;;;;;;;;;;;;;;;;;;6661:10;6611:11;:27;6623:14;6611:27;;;;;;;;;;;:47;6639:10;:18;;;;;;;;;;-1:-1:-1::0;;;;;6639:18:0::1;-1:-1:-1::0;;;;;6611:47:0::1;-1:-1:-1::0;;;;;6611:47:0::1;;;;;;;;;;;;:60;;;;;;;;;;;-1:-1:-1::0;;;;;6611:60:0::1;;;;;;;;;;-1:-1:-1::0;;;;;6611:60:0::1;;;;;-1:-1:-1::0;;;;;6611:60:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;6611:60:0::1;;;;;;;;;;-1:-1:-1::0;;;;;6611:60:0::1;;;;;-1:-1:-1::0;;;;;6611:60:0::1;;;;;;;;;;;;;;;;;6712:10;6678:15;:31;6694:14;6678:31;;;;;;;;;;;:44;;;;;;;;;;;-1:-1:-1::0;;;;;6678:44:0::1;;;;;;;;;;-1:-1:-1::0;;;;;6678:44:0::1;;;;;-1:-1:-1::0;;;;;6678:44:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;6678:44:0::1;;;;;;;;;;-1:-1:-1::0;;;;;6678:44:0::1;;;;;-1:-1:-1::0;;;;;6678:44:0::1;;;;;;;;;;;;;;;;;6729:6;;:8;;;;;;;;;;;;;6770:14;6749:89;6786:12;:10;:12::i;:::-;6799:21:::0;;6749:89:::1;::::0;;-1:-1:-1;;;;;6749:89:0;;::::1;::::0;;6799:21;;;::::1;6749:89;::::0;::::1;::::0;6822:15:::1;6749:89:::0;;;;;;;;;;;;::::1;-1:-1:-1::0;6852:4:0::1;::::0;6215:647;-1:-1:-1;;6215:647:0:o;1856:460::-;1921:4;1487:18;1508:12;:10;:12::i;:::-;1535:6;;1487:33;;-1:-1:-1;;;;;;1535:19:0;;;:6;;:19;;:47;;;1558:24;1572:9;1558:13;:24::i;:::-;1527:105;;;;-1:-1:-1;;;1527:105:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1936:14:::1;::::0;;1985:187:::1;2000:7;:14:::0;1998:16;::::1;1985:187;;;2052:3;-1:-1:-1::0;;;;;2040:15:0::1;:7;2048:1;2040:10;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;2040:10:0::1;:15;2037:124;;;2087:4;2077:14;;2118:1;2111:8;;2139:5;;2037:124;2016:3;;1985:187;;;-1:-1:-1::0;2195:4:0::1;2184:15:::0;::::1;;;2180:131;;;2223:7;2231:6;2223:15;;;;;;;;;::::0;;;::::1;::::0;;;::::1;2216:22:::0;;-1:-1:-1;;;;;;2216:22:0::1;::::0;;-1:-1:-1;2216:22:0;;-1:-1:-1;2249:11:0::1;::::0;-1:-1:-1;2249:11:0::1;2180:131;2294:5;2287:12;;;;;;3458:79:::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3458:79:0;;;;;;;;;;;;;;;;;;;;;;;;:::o;2546:105::-;978:12;:10;:12::i;:::-;968:6;;-1:-1:-1;;;;;968:6:0;;;:22;;;960:67;;;;;-1:-1:-1;;;960:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;960:67:0;;;;;;;;;;;;;;;2617:28:::1;2636:8;2617:18;:28::i;:::-;2546:105:::0;:::o;1354:101::-;1409:4;1430:18;1444:3;1430:13;:18::i;:::-;1422:27;1354:101;-1:-1:-1;;1354:101:0:o;197:92::-;273:10;197:92;:::o;1044:305::-;1110:4;;;1154:165;1170:7;:14;1168:16;;;;1154:165;;;1222:9;-1:-1:-1;;;;;1210:21:0;:7;1218:1;1210:10;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1210:10:0;:21;1207:101;;;1262:4;1252:14;;1286:5;;1207:101;1186:3;;1154:165;;;-1:-1:-1;1334:9:0;1044:305;-1:-1:-1;;1044:305:0:o;3678:855::-;3772:4;3825:31;;;:15;:31;;;;;3871:21;;-1:-1:-1;;;;;3871:21:0;:33;3863:70;;;;;-1:-1:-1;;;3863:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;3983:16;;;:24;;;4014:34;;-1:-1:-1;;;;;;4014:34:0;-1:-1:-1;;;;;4014:34:0;;;;;4072:15;-1:-1:-1;4055:14:0;;;:32;;;;-1:-1:-1;4160:17:0;;:24;;-1:-1:-1;;4160:24:0;;;;-1:-1:-1;;4191:25:0;;;-1:-1:-1;4296:27:0;;;:11;:27;;;;;3983:16;;4324:12;:10;:12::i;:::-;-1:-1:-1;;;;;4296:41:0;-1:-1:-1;;;;;4296:41:0;;;;;;;;;;;;:54;;;;;;;;;;;-1:-1:-1;;;;;4296:54:0;;;;;;;;;;-1:-1:-1;;;;;4296:54:0;;;;;-1:-1:-1;;;;;4296:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4296:54:0;;;;;;;;;;-1:-1:-1;;;;;4296:54:0;;;;;-1:-1:-1;;;;;4296:54:0;;;;;;;;;;;;;;;;;4391:10;4357:15;:31;4373:14;4357:31;;;;;;;;;;;:44;;;;;;;;;;;-1:-1:-1;;;;;4357:44:0;;;;;;;;;;-1:-1:-1;;;;;4357:44:0;;;;;-1:-1:-1;;;;;4357:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4357:44:0;;;;;;;;;;-1:-1:-1;;;;;4357:44:0;;;;;-1:-1:-1;;;;;4357:44:0;;;;;;;;;;;;;;;;;4408:6;;:8;;;;;;;;;;;;;4449:14;4428:78;4465:12;:10;:12::i;:::-;4491:14;;;;4428:78;;;-1:-1:-1;;;;;4428:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4520:4:0;;3678:855;-1:-1:-1;;;;3678:855:0:o;2654:217::-;-1:-1:-1;;;;;2724:22:0;;2716:73;;;;-1:-1:-1;;;2716:73:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2824:6;;2803:38;;-1:-1:-1;;;;;2803:38:0;;;;2824:6;;2803:38;;2824:6;;2803:38;2848:6;:17;;-1:-1:-1;;;;;;2848:17:0;-1:-1:-1;;;;;2848:17:0;;;;;;;;;;2654:217::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Swarm Source

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