ETH Price: $2,636.81 (+7.69%)
Gas: 3 Gwei

Contract

0x93300e37E8865E9B502016e1090a9D10d63CDF90
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Vote113545652020-11-29 15:56:091348 days ago1606665369IN
0x93300e37...0d63CDF90
0 ETH0.0010935911.1
Become Candidate113517782020-11-29 5:37:271349 days ago1606628247IN
0x93300e37...0d63CDF90
0 ETH0.0013770511.1
Vote113517302020-11-29 5:26:561349 days ago1606627616IN
0x93300e37...0d63CDF90
0 ETH0.0011822612
Become Candidate113514662020-11-29 4:34:171349 days ago1606624457IN
0x93300e37...0d63CDF90
0 ETH0.0019468214

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
113478412020-11-28 15:28:101349 days ago1606577290  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Voting

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-11-28
*/

// File: contracts/zeppelin/ownership/Ownable.sol

pragma solidity ^0.5.0;

/**
* @title Ownable
* @dev The Ownable contract has an owner address, and provides basic authorization control
* functions, this simplifies the implementation of "user permissions".
*/
contract Ownable {
    address private _owner;

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

    /**
    * @dev The Ownable constructor sets the original `owner` of the contract to the sender
    * account.
    */
    constructor() public {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }

    /**
    * @return the address of the owner.
    */
    function owner() public view returns(address) {
        return _owner;
    }

    /**
    * @dev Throws if called by any account other than the owner.
    */
    modifier onlyOwner() {
        require(isOwner());
        _;
    }

    /**
    * @return true if `msg.sender` is the owner of the contract.
    */
    function isOwner() public view returns(bool) {
        return msg.sender == _owner;
    }

    /**
    * @dev Allows the current owner to relinquish control of the contract.
    * @notice Renouncing to ownership will leave the contract without an owner.
    * It will not be possible to call the functions with the `onlyOwner`
    * modifier anymore.
    */
    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    /**
    * @dev Allows the current owner to transfer control of the contract to a newOwner.
    * @param newOwner The address to transfer ownership to.
    */
    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    /**
    * @dev Transfers control of the contract to a newOwner.
    * @param newOwner The address to transfer ownership to.
    */
    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0));
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

// File: contracts/interfaces/HydroInterface.sol

pragma solidity ^0.5.0;

interface HydroInterface {
    function balances(address) external view returns (uint);
    function allowed(address, address) external view returns (uint);
    function transfer(address _to, uint256 _amount) external returns (bool success);
    function transferFrom(address _from, address _to, uint256 _amount) external returns (bool success);
    function balanceOf(address _owner) external view returns (uint256 balance);
    function approve(address _spender, uint256 _amount) external returns (bool success);
    function approveAndCall(address _spender, uint256 _value, bytes calldata _extraData)
        external returns (bool success);
    function allowance(address _owner, address _spender) external view returns (uint256 remaining);
    function totalSupply() external view returns (uint);

    function authenticate(uint _value, uint _challenge, uint _partnerId) external;
}

// File: contracts/interfaces/SnowflakeInterface.sol

pragma solidity ^0.5.0;

interface SnowflakeInterface {
    function deposits(uint) external view returns (uint);
    function resolverAllowances(uint, address) external view returns (uint);

    function identityRegistryAddress() external returns (address);
    function hydroTokenAddress() external returns (address);
    function clientRaindropAddress() external returns (address);

    function setAddresses(address _identityRegistryAddress, address _hydroTokenAddress) external;
    function setClientRaindropAddress(address _clientRaindropAddress) external;

    function createIdentityDelegated(
        address recoveryAddress, address associatedAddress, address[] calldata providers, string calldata casedHydroId,
        uint8 v, bytes32 r, bytes32 s, uint timestamp
    ) external returns (uint ein);
    function addProvidersFor(
        address approvingAddress, address[] calldata providers, uint8 v, bytes32 r, bytes32 s, uint timestamp
    ) external;
    function removeProvidersFor(
        address approvingAddress, address[] calldata providers, uint8 v, bytes32 r, bytes32 s, uint timestamp
    ) external;
    function upgradeProvidersFor(
        address approvingAddress, address[] calldata newProviders, address[] calldata oldProviders,
        uint8[2] calldata v, bytes32[2] calldata r, bytes32[2] calldata s, uint[2] calldata timestamp
    ) external;
    function addResolver(address resolver, bool isSnowflake, uint withdrawAllowance, bytes calldata extraData) external;
    function addResolverAsProvider(
        uint ein, address resolver, bool isSnowflake, uint withdrawAllowance, bytes calldata extraData
    ) external;
    function addResolverFor(
        address approvingAddress, address resolver, bool isSnowflake, uint withdrawAllowance, bytes calldata extraData,
        uint8 v, bytes32 r, bytes32 s, uint timestamp
    ) external;
    function changeResolverAllowances(address[] calldata resolvers, uint[] calldata withdrawAllowances) external;
    function changeResolverAllowancesDelegated(
        address approvingAddress, address[] calldata resolvers, uint[] calldata withdrawAllowances,
        uint8 v, bytes32 r, bytes32 s
    ) external;
    function removeResolver(address resolver, bool isSnowflake, bytes calldata extraData) external;
    function removeResolverFor(
        address approvingAddress, address resolver, bool isSnowflake, bytes calldata extraData,
        uint8 v, bytes32 r, bytes32 s, uint timestamp
    ) external;

    function triggerRecoveryAddressChangeFor(
        address approvingAddress, address newRecoveryAddress, uint8 v, bytes32 r, bytes32 s
    ) external;

    function transferSnowflakeBalance(uint einTo, uint amount) external;
    function withdrawSnowflakeBalance(address to, uint amount) external;
    function transferSnowflakeBalanceFrom(uint einFrom, uint einTo, uint amount) external;
    function withdrawSnowflakeBalanceFrom(uint einFrom, address to, uint amount) external;
    function transferSnowflakeBalanceFromVia(uint einFrom, address via, uint einTo, uint amount, bytes calldata _bytes)
        external;
    function withdrawSnowflakeBalanceFromVia(uint einFrom, address via, address to, uint amount, bytes calldata _bytes)
        external;
}

// File: contracts/interfaces/SnowflakeResolverInterface.sol

pragma solidity ^0.5.0;

interface SnowflakeResolverInterface {
    function callOnAddition() external view returns (bool);
    function callOnRemoval() external view returns (bool);
    function onAddition(uint ein, uint allowance, bytes calldata extraData) external returns (bool);
    function onRemoval(uint ein, bytes calldata extraData) external returns (bool);
}

// File: contracts/SnowflakeResolver.sol

pragma solidity ^0.5.0;





contract SnowflakeResolver is Ownable {
    string public snowflakeName;
    string public snowflakeDescription;

    address public snowflakeAddress;

    bool public callOnAddition;
    bool public callOnRemoval;

    constructor(
        string memory _snowflakeName, string memory _snowflakeDescription,
        address _snowflakeAddress,
        bool _callOnAddition, bool _callOnRemoval
    )
        public
    {
        snowflakeName = _snowflakeName;
        snowflakeDescription = _snowflakeDescription;

        setSnowflakeAddress(_snowflakeAddress);

        callOnAddition = _callOnAddition;
        callOnRemoval = _callOnRemoval;
    }

    modifier senderIsSnowflake() {
        require(msg.sender == snowflakeAddress, "Did not originate from Snowflake.");
        _;
    }

    // this can be overriden to initialize other variables, such as e.g. an ERC20 object to wrap the HYDRO token
    function setSnowflakeAddress(address _snowflakeAddress) public onlyOwner {
        snowflakeAddress = _snowflakeAddress;
    }

    // if callOnAddition is true, onAddition is called every time a user adds the contract as a resolver
    // this implementation **must** use the senderIsSnowflake modifier
    // returning false will disallow users from adding the contract as a resolver
    function onAddition(uint ein, uint allowance, bytes memory extraData) public returns (bool);

    // if callOnRemoval is true, onRemoval is called every time a user removes the contract as a resolver
    // this function **must** use the senderIsSnowflake modifier
    // returning false soft prevents users from removing the contract as a resolver
    // however, note that they can force remove the resolver, bypassing onRemoval
    function onRemoval(uint ein, bytes memory extraData) public returns (bool);

    function transferHydroBalanceTo(uint einTo, uint amount) internal {
        HydroInterface hydro = HydroInterface(SnowflakeInterface(snowflakeAddress).hydroTokenAddress());
        require(hydro.approveAndCall(snowflakeAddress, amount, abi.encode(einTo)), "Unsuccessful approveAndCall.");
    }

    function withdrawHydroBalanceTo(address to, uint amount) internal {
        HydroInterface hydro = HydroInterface(SnowflakeInterface(snowflakeAddress).hydroTokenAddress());
        require(hydro.transfer(to, amount), "Unsuccessful transfer.");
    }

    function transferHydroBalanceToVia(address via, uint einTo, uint amount, bytes memory snowflakeCallBytes) internal {
        HydroInterface hydro = HydroInterface(SnowflakeInterface(snowflakeAddress).hydroTokenAddress());
        require(
            hydro.approveAndCall(
                snowflakeAddress, amount, abi.encode(true, address(this), via, einTo, snowflakeCallBytes)
            ),
            "Unsuccessful approveAndCall."
        );
    }

    function withdrawHydroBalanceToVia(address via, address to, uint amount, bytes memory snowflakeCallBytes) internal {
        HydroInterface hydro = HydroInterface(SnowflakeInterface(snowflakeAddress).hydroTokenAddress());
        require(
            hydro.approveAndCall(
                snowflakeAddress, amount, abi.encode(false, address(this), via, to, snowflakeCallBytes)
            ),
            "Unsuccessful approveAndCall."
        );
    }
}

// File: contracts/interfaces/IdentityRegistryInterface.sol

pragma solidity ^0.5.0;

interface IdentityRegistryInterface {
    function isSigned(address _address, bytes32 messageHash, uint8 v, bytes32 r, bytes32 s)
        external pure returns (bool);

    // Identity View Functions /////////////////////////////////////////////////////////////////////////////////////////
    function identityExists(uint ein) external view returns (bool);
    function hasIdentity(address _address) external view returns (bool);
    function getEIN(address _address) external view returns (uint ein);
    function isAssociatedAddressFor(uint ein, address _address) external view returns (bool);
    function isProviderFor(uint ein, address provider) external view returns (bool);
    function isResolverFor(uint ein, address resolver) external view returns (bool);
    function getIdentity(uint ein) external view returns (
        address recoveryAddress,
        address[] memory associatedAddresses, address[] memory providers, address[] memory resolvers
    );

    // Identity Management Functions ///////////////////////////////////////////////////////////////////////////////////
    function createIdentity(address recoveryAddress, address[] calldata providers, address[] calldata resolvers)
        external returns (uint ein);
    function createIdentityDelegated(
        address recoveryAddress, address associatedAddress, address[] calldata providers, address[] calldata resolvers,
        uint8 v, bytes32 r, bytes32 s, uint timestamp
    ) external returns (uint ein);
    function addAssociatedAddress(
        address approvingAddress, address addressToAdd, uint8 v, bytes32 r, bytes32 s, uint timestamp
    ) external;
    function addAssociatedAddressDelegated(
        address approvingAddress, address addressToAdd,
        uint8[2] calldata v, bytes32[2] calldata r, bytes32[2] calldata s, uint[2] calldata timestamp
    ) external;
    function removeAssociatedAddress() external;
    function removeAssociatedAddressDelegated(address addressToRemove, uint8 v, bytes32 r, bytes32 s, uint timestamp)
        external;
    function addProviders(address[] calldata providers) external;
    function addProvidersFor(uint ein, address[] calldata providers) external;
    function removeProviders(address[] calldata providers) external;
    function removeProvidersFor(uint ein, address[] calldata providers) external;
    function addResolvers(address[] calldata resolvers) external;
    function addResolversFor(uint ein, address[] calldata resolvers) external;
    function removeResolvers(address[] calldata resolvers) external;
    function removeResolversFor(uint ein, address[] calldata resolvers) external;

    // Recovery Management Functions ///////////////////////////////////////////////////////////////////////////////////
    function triggerRecoveryAddressChange(address newRecoveryAddress) external;
    function triggerRecoveryAddressChangeFor(uint ein, address newRecoveryAddress) external;
    function triggerRecovery(uint ein, address newAssociatedAddress, uint8 v, bytes32 r, bytes32 s, uint timestamp)
        external;
    function triggerDestruction(
        uint ein, address[] calldata firstChunk, address[] calldata lastChunk, bool resetResolvers
    ) external;
}

// File: contracts/resolvers/Voting.sol

pragma solidity ^0.5.0;






contract Voting is SnowflakeResolver {
mapping(uint=>Candidate) public candidates;
mapping(uint=>bool) public aParticipant;
mapping(uint=>bool) public aCandidate;
mapping(uint=>bool) private hasVoted;

struct Candidate{
    uint voteCount;
}


//uint256 candidateFee= 20000000000000000000;//200tokens
uint256 regFee= 100000000000000000000;//100tokens

//this is the routed address where all fees will go to be later burned
address public FEEWALLET;


uint256 burnAmount=1000000000000000000000;//1000tokens
uint maxNoOfCandidates=2;
address _snowflakeAddress;
uint deadlineInDays;

uint[] candidateEINs;
uint[] voterEINs;

//requires that the ein is a registered candidate
modifier isCandidate(uint ein){
    require(aCandidate[ein]==true,'This EIN has not registered as a candidate');
    _;
}

//requires that the ein has set this contract a resolver
modifier isParticipant(uint _ein){
    require(aParticipant[_ein]==true, 'this EIN has not registered as a participant');
    _;
}

//requires that the entered ein is not a candidate yet
modifier isNotCandidate(uint _ein){
    require(aParticipant[_ein]==true && aCandidate[_ein]==false,"you are a candidate");
    _;
}

//requires that the target does not have a hydroId yet
modifier noIdYet(address target){
    require(checkforReg(target)==false);
    _;
}

modifier HasEIN(address target){
    require(checkforReg(target)==true);
    _;
}

//requires that the deadline hasn't passed
modifier voteStillValid(){
    require (now<=deadlineInDays,"this election has expired");
    _;
}


event voted(uint _candidate);
event becameCandidate(uint _candidateEIN);
event registeredAsVoter(uint voterEin);
event newDeadlineSet(uint _newDeadline);

 constructor (address snowflakeAddress,string memory _name,string memory _description,uint _days,address feeOwner)
        SnowflakeResolver(_name, _description, snowflakeAddress, true, false) public
    {
        snowflakeAddress=_snowflakeAddress;
        deadlineInDays=now+_days*1 days;
        FEEWALLET=feeOwner;
        
    }
//sets the maximum no of candidates for this resolver
//can only be set by contract owner
function setMaxCandidacy(uint _max) public  voteStillValid() onlyOwner(){
    maxNoOfCandidates=_max;
}
//check if address interacting with contract already has an ein
function checkforReg(address _target) public  returns(bool){
    SnowflakeInterface snowfl = SnowflakeInterface(snowflakeAddress);
    IdentityRegistryInterface idRegistry= IdentityRegistryInterface(snowfl.identityRegistryAddress());
    _target=msg.sender;
    bool hasId=idRegistry.hasIdentity(msg.sender);
    return hasId;
}

//basic check to return ein of the specific address
   function checkEIN(address _address) public returns(uint){
        SnowflakeInterface snowfl = SnowflakeInterface(snowflakeAddress);
    IdentityRegistryInterface idRegistry= IdentityRegistryInterface(snowfl.identityRegistryAddress());
       uint Ein=idRegistry.getEIN(_address);
       return Ein;
   }
        
 /**   

//implement create Identity function
//might not be needed for now
function createId(address recoveryAddress) public returns(uint ein){
    SnowflakeInterface snowfl = SnowflakeInterface(snowflakeAddress);
    IdentityRegistryInterface idRegistry= IdentityRegistryInterface(snowfl.identityRegistryAddress());
    address[] memory _providers = new address [](2);
    address[] memory _resolvers= new address [](1);
    _providers[0]= address(this);
    _providers[1]= _snowflakeAddress;
    _resolvers[0]= address(this);
    
    return idRegistry.createIdentity(recoveryAddress,_providers,_resolvers);
    
    
} 

**/
//called to register any new actor in the system
//makes the ein to be a participant in the system
//a fee of 100 tokens is required
function onAddition(uint ein,uint /**allocation**/,bytes memory) public senderIsSnowflake() returns (bool){
    SnowflakeInterface snowfl = SnowflakeInterface(snowflakeAddress);
    snowfl.withdrawSnowflakeBalanceFrom(ein, FEEWALLET, regFee );
    aParticipant[ein]=true;
     emit registeredAsVoter(ein);
    return true;
   
}

 function onRemoval(uint, bytes memory) public senderIsSnowflake() returns (bool) {}
 
 //anyone who wants to become a candidate
 //1000 hydro tokens are deducted from the ein of msg.sender and sent to FEEWALLET
 function becomeCandidate(uint ein) public isParticipant(ein)  voteStillValid() isNotCandidate(ein){
     SnowflakeInterface snowfl=SnowflakeInterface(snowflakeAddress);
   uint candidateCount= candidateEINs.length;
    require(candidateCount<=maxNoOfCandidates,"candidate limit reached!");
    snowfl.withdrawSnowflakeBalanceFrom(ein,FEEWALLET, burnAmount);
    aCandidate[ein]=true;
    candidateEINs.push(ein);
    emit becameCandidate(ein);
 }
 
 //main vote function
function vote(uint _ein) public  HasEIN(msg.sender) isCandidate(_ein)  voteStillValid() returns(bool){
 SnowflakeInterface snowfl=SnowflakeInterface(snowflakeAddress);
 IdentityRegistryInterface idRegistry= IdentityRegistryInterface(snowfl.identityRegistryAddress());
 uint ein=checkEIN(msg.sender);
 
 require(aParticipant[ein]==true,'you are not a voter,register first');
 require (aCandidate[ein]==false,"you are a candidate");
 require(idRegistry.isResolverFor(ein,address(this)),"This EIN has not set this resolver.");
 require (hasVoted[ein]==false,"you have already voted");
 
 candidates[_ein].voteCount++;
 hasVoted[ein]=true;
  emit voted(_ein);
 return (true);


}
//return the current max number of candidates
function getMaxCandidates() public view returns(uint[] memory,uint){
    return(candidateEINs,maxNoOfCandidates);
}



    function withdrawFees(address to) public onlyOwner {
        SnowflakeInterface snowfl = SnowflakeInterface(snowflakeAddress);
        HydroInterface hydro = HydroInterface(snowfl.hydroTokenAddress());
        withdrawHydroBalanceTo(to, hydro.balanceOf(address(this)));
    }
    
    function setNewDeadline(uint _newDays) public onlyOwner voteStillValid returns(uint){
        deadlineInDays=now+_newDays*1 days;
        emit newDeadlineSet(deadlineInDays);
        return deadlineInDays;
    }
    
    function getDeadline() public view returns(uint){
        return deadlineInDays;
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"snowflakeAddress","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_description","type":"string"},{"internalType":"uint256","name":"_days","type":"uint256"},{"internalType":"address","name":"feeOwner","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_candidateEIN","type":"uint256"}],"name":"becameCandidate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_newDeadline","type":"uint256"}],"name":"newDeadlineSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"voterEin","type":"uint256"}],"name":"registeredAsVoter","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_candidate","type":"uint256"}],"name":"voted","type":"event"},{"constant":true,"inputs":[],"name":"FEEWALLET","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"aCandidate","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"aParticipant","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"ein","type":"uint256"}],"name":"becomeCandidate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"callOnAddition","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"callOnRemoval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"candidates","outputs":[{"internalType":"uint256","name":"voteCount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"checkEIN","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_target","type":"address"}],"name":"checkforReg","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getDeadline","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getMaxCandidates","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"},{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"ein","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onAddition","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"onRemoval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_max","type":"uint256"}],"name":"setMaxCandidacy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_newDays","type":"uint256"}],"name":"setNewDeadline","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_snowflakeAddress","type":"address"}],"name":"setSnowflakeAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"snowflakeAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"snowflakeDescription","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"snowflakeName","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_ein","type":"uint256"}],"name":"vote","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"withdrawFees","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

608060405268056bc75e2d63100000600855683635c9adc5dea00000600a556002600b553480156200003057600080fd5b5060405162001a2738038062001a27833981810160405260a08110156200005657600080fd5b8151602083018051604051929492938301929190846401000000008211156200007e57600080fd5b9083019060208201858111156200009457600080fd5b8251640100000000811182820188101715620000af57600080fd5b82525081516020918201929091019080838360005b83811015620000de578181015183820152602001620000c4565b50505050905090810190601f1680156200010c5780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200013057600080fd5b9083019060208201858111156200014657600080fd5b82516401000000008111828201881017156200016157600080fd5b82525081516020918201929091019080838360005b838110156200019057818101518382015260200162000176565b50505050905090810190601f168015620001be5780820380516001836020036101000a031916815260200191505b5060408181526020830151920151600080546001600160a01b031916331780825593955090935086928692899260019290916001600160a01b03919091169082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38451620002399060019060208801906200031f565b5083516200024f9060029060208701906200031f565b5062000264836001600160e01b03620002ce16565b6003805460ff60a01b1916600160a01b931515939093029290921760ff60a81b1916600160a81b9115159190910217905550505062015180919091024201600d55600980546001600160a01b0319166001600160a01b0390921691909117905550620003c1915050565b620002e16001600160e01b036200030d16565b620002eb57600080fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633145b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200036257805160ff191683800117855562000392565b8280016001018555821562000392579182015b828111156200039257825182559160200191906001019062000375565b50620003a0929150620003a4565b5090565b6200031c91905b80821115620003a05760008155600101620003ab565b61165680620003d16000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c806376acf1b6116100de5780639182621a11610097578063f2de669911610071578063f2de66991461051e578063f2fde38b14610581578063f9f451b8146105a7578063ff89edd9146105af57610173565b80639182621a1461042e578063c3241931146104db578063c979b05a146104f857610173565b806376acf1b6146102df57806388cdab941461035c5780638da5cb5b146103645780638f06492d1461036c5780638f32d59b1461037457806390bfaf401461037c57610173565b80635f8d96de116101305780635f8d96de1461026057806363399041146102685780636cb74fa61461028e5780636ef52ceb146102ab578063715018a6146102cf57806371790251146102d757610173565b80630121b93f14610178578063164e68de146101a95780632b7799a2146101d157806330c1286e146101ee5780633477ee2e1461021d5780635bd057351461023a575b600080fd5b6101956004803603602081101561018e57600080fd5b50356105cc565b604080519115158252519081900360200190f35b6101cf600480360360208110156101bf57600080fd5b50356001600160a01b0316610941565b005b6101cf600480360360208110156101e757600080fd5b5035610a4f565b61020b6004803603602081101561020457600080fd5b5035610cda565b60408051918252519081900360200190f35b61020b6004803603602081101561023357600080fd5b5035610d87565b61020b6004803603602081101561025057600080fd5b50356001600160a01b0316610d99565b61020b610e94565b6101956004803603602081101561027e57600080fd5b50356001600160a01b0316610e9a565b6101cf600480360360208110156102a457600080fd5b5035610f62565b6102b3610fcb565b604080516001600160a01b039092168252519081900360200190f35b6101cf610fda565b610195611035565b6102e7611045565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610321578181015183820152602001610309565b50505050905090810190601f16801561034e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102e76110d0565b6102b361112a565b610195611139565b610195611149565b6101956004803603606081101561039257600080fd5b8135916020810135918101906060810160408201356401000000008111156103b957600080fd5b8201836020820111156103cb57600080fd5b803590602001918460018302840111640100000000831117156103ed57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061115a945050505050565b6101956004803603604081101561044457600080fd5b8135919081019060408101602082013564010000000081111561046657600080fd5b82018360208201111561047857600080fd5b8035906020019184600183028401116401000000008311171561049a57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061127b945050505050565b610195600480360360208110156104f157600080fd5b50356112cd565b6101cf6004803603602081101561050e57600080fd5b50356001600160a01b03166112e2565b610526611315565b6040518080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561056c578181015183820152602001610554565b50505050905001935050505060405180910390f35b6101cf6004803603602081101561059757600080fd5b50356001600160a01b0316611378565b6102b3611395565b610195600480360360208110156105c557600080fd5b50356113a4565b6000336105d881610e9a565b15156001146105e657600080fd5b600083815260066020526040902054839060ff16151560011461063a5760405162461bcd60e51b815260040180806020018281038252602a815260200180611592602a913960400191505060405180910390fd5b600d5442111561068d576040805162461bcd60e51b81526020600482015260196024820152781d1a1a5cc8195b1958dd1a5bdb881a185cc8195e1c1a5c9959603a1b604482015290519081900360640190fd5b6003546040805163a759ee6f60e01b815290516001600160a01b0390921691600091839163a759ee6f9160048082019260209290919082900301818787803b1580156106d857600080fd5b505af11580156106ec573d6000803e3d6000fd5b505050506040513d602081101561070257600080fd5b50519050600061071133610d99565b60008181526005602052604090205490915060ff1615156001146107665760405162461bcd60e51b81526004018080602001828103825260228152602001806116006022913960400191505060405180910390fd5b60008181526006602052604090205460ff16156107c0576040805162461bcd60e51b8152602060048201526013602482015272796f752061726520612063616e64696461746560681b604482015290519081900360640190fd5b6040805163352c737360e21b81526004810183905230602482015290516001600160a01b0384169163d4b1cdcc916044808301926020929190829003018186803b15801561080d57600080fd5b505afa158015610821573d6000803e3d6000fd5b505050506040513d602081101561083757600080fd5b50516108745760405162461bcd60e51b81526004018080602001828103825260238152602001806115bc6023913960400191505060405180910390fd5b60008181526007602052604090205460ff16156108d1576040805162461bcd60e51b81526020600482015260166024820152751e5bdd481a185d9948185b1c9958591e481d9bdd195960521b604482015290519081900360640190fd5b6000878152600460209081526040808320805460019081019091558484526007835292819020805460ff1916909317909255815189815291517f8fbb38ff86a5b319c33b22609be0afce04335d5db18c6bd100767e251d4028cc9281900390910190a15060019695505050505050565b610949611149565b61095257600080fd5b600354604080516375d7e4bd60e01b815290516001600160a01b039092169160009183916375d7e4bd9160048082019260209290919082900301818787803b15801561099d57600080fd5b505af11580156109b1573d6000803e3d6000fd5b505050506040513d60208110156109c757600080fd5b5051604080516370a0823160e01b81523060048201529051919250610a4a9185916001600160a01b038516916370a0823191602480820192602092909190829003018186803b158015610a1957600080fd5b505afa158015610a2d573d6000803e3d6000fd5b505050506040513d6020811015610a4357600080fd5b50516113b9565b505050565b600081815260056020526040902054819060ff161515600114610aa35760405162461bcd60e51b815260040180806020018281038252602c815260200180611566602c913960400191505060405180910390fd5b600d54421115610af6576040805162461bcd60e51b81526020600482015260196024820152781d1a1a5cc8195b1958dd1a5bdb881a185cc8195e1c1a5c9959603a1b604482015290519081900360640190fd5b600082815260056020526040902054829060ff1615156001148015610b2a575060008181526006602052604090205460ff16155b610b71576040805162461bcd60e51b8152602060048201526013602482015272796f752061726520612063616e64696461746560681b604482015290519081900360640190fd5b600354600e54600b546001600160a01b0390921691811115610bda576040805162461bcd60e51b815260206004820152601860248201527f63616e646964617465206c696d69742072656163686564210000000000000000604482015290519081900360640190fd5b600954600a546040805163edda781560e01b8152600481018990526001600160a01b0393841660248201526044810192909252519184169163edda78159160648082019260009290919082900301818387803b158015610c3957600080fd5b505af1158015610c4d573d6000803e3d6000fd5b5050506000868152600660209081526040808320805460ff19166001908117909155600e805491820181559093527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd909201889055815188815291517fc3bc01c61c169f82d0d375d875473fc98c64a3bb2d798f6a26ade58226b1c5169350918290030190a15050505050565b6000610ce4611149565b610ced57600080fd5b600d54421115610d40576040805162461bcd60e51b81526020600482015260196024820152781d1a1a5cc8195b1958dd1a5bdb881a185cc8195e1c1a5c9959603a1b604482015290519081900360640190fd5b4262015180830201600d81905560408051918252517fcee1d3b8199912e1b22938382a24a6c1d38b707934106fa995e6797c13ffd9c19181900360200190a15050600d5490565b60046020526000908152604090205481565b6003546040805163a759ee6f60e01b815290516000926001600160a01b0316918391839163a759ee6f91600480830192602092919082900301818787803b158015610de357600080fd5b505af1158015610df7573d6000803e3d6000fd5b505050506040513d6020811015610e0d57600080fd5b5051604080516305c62c2f60e01b81526001600160a01b0387811660048301529151929350600092918416916305c62c2f91602480820192602092909190829003018186803b158015610e5f57600080fd5b505afa158015610e73573d6000803e3d6000fd5b505050506040513d6020811015610e8957600080fd5b505195945050505050565b600d5490565b6003546040805163a759ee6f60e01b815290516000926001600160a01b0316918391839163a759ee6f91600480830192602092919082900301818787803b158015610ee457600080fd5b505af1158015610ef8573d6000803e3d6000fd5b505050506040513d6020811015610f0e57600080fd5b50516040805163237f1a2160e01b8152336004820181905291519196509192506000916001600160a01b0384169163237f1a2191602480820192602092909190829003018186803b158015610e5f57600080fd5b600d54421115610fb5576040805162461bcd60e51b81526020600482015260196024820152781d1a1a5cc8195b1958dd1a5bdb881a185cc8195e1c1a5c9959603a1b604482015290519081900360640190fd5b610fbd611149565b610fc657600080fd5b600b55565b6009546001600160a01b031681565b610fe2611149565b610feb57600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600354600160a01b900460ff1681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156110c85780601f1061109d576101008083540402835291602001916110c8565b820191906000526020600020905b8154815290600101906020018083116110ab57829003601f168201915b505050505081565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156110c85780601f1061109d576101008083540402835291602001916110c8565b6000546001600160a01b031690565b600354600160a81b900460ff1681565b6000546001600160a01b0316331490565b6003546000906001600160a01b031633146111a65760405162461bcd60e51b81526004018080602001828103825260218152602001806115df6021913960400191505060405180910390fd5b6003546009546008546040805163edda781560e01b8152600481018990526001600160a01b0393841660248201526044810192909252519190921691829163edda78159160648082019260009290919082900301818387803b15801561120b57600080fd5b505af115801561121f573d6000803e3d6000fd5b505050600086815260056020908152604091829020805460ff19166001179055815188815291517f951576958569db926d87f0c263b82ab8c4fe48aa20496c0ac2629620514465129350918290030190a1506001949350505050565b6003546000906001600160a01b031633146112c75760405162461bcd60e51b81526004018080602001828103825260218152602001806115df6021913960400191505060405180910390fd5b92915050565b60066020526000908152604090205460ff1681565b6112ea611149565b6112f357600080fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b60606000600e600b548180548060200260200160405190810160405280929190818152602001828054801561136957602002820191906000526020600020905b815481526020019060010190808311611355575b50505050509150915091509091565b611380611149565b61138957600080fd5b611392816114f7565b50565b6003546001600160a01b031681565b60056020526000908152604090205460ff1681565b600354604080516375d7e4bd60e01b815290516000926001600160a01b0316916375d7e4bd91600480830192602092919082900301818787803b1580156113ff57600080fd5b505af1158015611413573d6000803e3d6000fd5b505050506040513d602081101561142957600080fd5b50516040805163a9059cbb60e01b81526001600160a01b0386811660048301526024820186905291519293509083169163a9059cbb916044808201926020929091908290030181600087803b15801561148157600080fd5b505af1158015611495573d6000803e3d6000fd5b505050506040513d60208110156114ab57600080fd5b5051610a4a576040805162461bcd60e51b81526020600482015260166024820152752ab739bab1b1b2b9b9b33ab6103a3930b739b332b91760511b604482015290519081900360640190fd5b6001600160a01b03811661150a57600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe746869732045494e20686173206e6f7420726567697374657265642061732061207061727469636970616e74546869732045494e20686173206e6f74207265676973746572656420617320612063616e646964617465546869732045494e20686173206e6f74207365742074686973207265736f6c7665722e446964206e6f74206f726967696e6174652066726f6d20536e6f77666c616b652e796f7520617265206e6f74206120766f7465722c7265676973746572206669727374a265627a7a72315820614453bf8e5d1f759d6f441100f4c4bbc90d297fe2721d80a7e77a7b69403cf664736f6c6343000511003200000000000000000000000032c927d1d1df373c3fae1dc32338570e85f1d4e500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000002000000000000000000000000011d4620d850e1e152fe82ef90c26268b1a78aa40000000000000000000000000000000000000000000000000000000000000004257686f20697320746865206d6f73742062756c6c69736820687964726f20737570706f7274657220666f7220746865206d6f6e7468206f6620446563656d6265723f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005f5468697320697320612073757276657920746f2066696e64206f75742077686f20697320746865206d6f73742062756c6c69736820687964726f20737570706f7274657220666f7220746865206d6f6e7468206f6620646563656d6265722100

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101735760003560e01c806376acf1b6116100de5780639182621a11610097578063f2de669911610071578063f2de66991461051e578063f2fde38b14610581578063f9f451b8146105a7578063ff89edd9146105af57610173565b80639182621a1461042e578063c3241931146104db578063c979b05a146104f857610173565b806376acf1b6146102df57806388cdab941461035c5780638da5cb5b146103645780638f06492d1461036c5780638f32d59b1461037457806390bfaf401461037c57610173565b80635f8d96de116101305780635f8d96de1461026057806363399041146102685780636cb74fa61461028e5780636ef52ceb146102ab578063715018a6146102cf57806371790251146102d757610173565b80630121b93f14610178578063164e68de146101a95780632b7799a2146101d157806330c1286e146101ee5780633477ee2e1461021d5780635bd057351461023a575b600080fd5b6101956004803603602081101561018e57600080fd5b50356105cc565b604080519115158252519081900360200190f35b6101cf600480360360208110156101bf57600080fd5b50356001600160a01b0316610941565b005b6101cf600480360360208110156101e757600080fd5b5035610a4f565b61020b6004803603602081101561020457600080fd5b5035610cda565b60408051918252519081900360200190f35b61020b6004803603602081101561023357600080fd5b5035610d87565b61020b6004803603602081101561025057600080fd5b50356001600160a01b0316610d99565b61020b610e94565b6101956004803603602081101561027e57600080fd5b50356001600160a01b0316610e9a565b6101cf600480360360208110156102a457600080fd5b5035610f62565b6102b3610fcb565b604080516001600160a01b039092168252519081900360200190f35b6101cf610fda565b610195611035565b6102e7611045565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610321578181015183820152602001610309565b50505050905090810190601f16801561034e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102e76110d0565b6102b361112a565b610195611139565b610195611149565b6101956004803603606081101561039257600080fd5b8135916020810135918101906060810160408201356401000000008111156103b957600080fd5b8201836020820111156103cb57600080fd5b803590602001918460018302840111640100000000831117156103ed57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061115a945050505050565b6101956004803603604081101561044457600080fd5b8135919081019060408101602082013564010000000081111561046657600080fd5b82018360208201111561047857600080fd5b8035906020019184600183028401116401000000008311171561049a57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061127b945050505050565b610195600480360360208110156104f157600080fd5b50356112cd565b6101cf6004803603602081101561050e57600080fd5b50356001600160a01b03166112e2565b610526611315565b6040518080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561056c578181015183820152602001610554565b50505050905001935050505060405180910390f35b6101cf6004803603602081101561059757600080fd5b50356001600160a01b0316611378565b6102b3611395565b610195600480360360208110156105c557600080fd5b50356113a4565b6000336105d881610e9a565b15156001146105e657600080fd5b600083815260066020526040902054839060ff16151560011461063a5760405162461bcd60e51b815260040180806020018281038252602a815260200180611592602a913960400191505060405180910390fd5b600d5442111561068d576040805162461bcd60e51b81526020600482015260196024820152781d1a1a5cc8195b1958dd1a5bdb881a185cc8195e1c1a5c9959603a1b604482015290519081900360640190fd5b6003546040805163a759ee6f60e01b815290516001600160a01b0390921691600091839163a759ee6f9160048082019260209290919082900301818787803b1580156106d857600080fd5b505af11580156106ec573d6000803e3d6000fd5b505050506040513d602081101561070257600080fd5b50519050600061071133610d99565b60008181526005602052604090205490915060ff1615156001146107665760405162461bcd60e51b81526004018080602001828103825260228152602001806116006022913960400191505060405180910390fd5b60008181526006602052604090205460ff16156107c0576040805162461bcd60e51b8152602060048201526013602482015272796f752061726520612063616e64696461746560681b604482015290519081900360640190fd5b6040805163352c737360e21b81526004810183905230602482015290516001600160a01b0384169163d4b1cdcc916044808301926020929190829003018186803b15801561080d57600080fd5b505afa158015610821573d6000803e3d6000fd5b505050506040513d602081101561083757600080fd5b50516108745760405162461bcd60e51b81526004018080602001828103825260238152602001806115bc6023913960400191505060405180910390fd5b60008181526007602052604090205460ff16156108d1576040805162461bcd60e51b81526020600482015260166024820152751e5bdd481a185d9948185b1c9958591e481d9bdd195960521b604482015290519081900360640190fd5b6000878152600460209081526040808320805460019081019091558484526007835292819020805460ff1916909317909255815189815291517f8fbb38ff86a5b319c33b22609be0afce04335d5db18c6bd100767e251d4028cc9281900390910190a15060019695505050505050565b610949611149565b61095257600080fd5b600354604080516375d7e4bd60e01b815290516001600160a01b039092169160009183916375d7e4bd9160048082019260209290919082900301818787803b15801561099d57600080fd5b505af11580156109b1573d6000803e3d6000fd5b505050506040513d60208110156109c757600080fd5b5051604080516370a0823160e01b81523060048201529051919250610a4a9185916001600160a01b038516916370a0823191602480820192602092909190829003018186803b158015610a1957600080fd5b505afa158015610a2d573d6000803e3d6000fd5b505050506040513d6020811015610a4357600080fd5b50516113b9565b505050565b600081815260056020526040902054819060ff161515600114610aa35760405162461bcd60e51b815260040180806020018281038252602c815260200180611566602c913960400191505060405180910390fd5b600d54421115610af6576040805162461bcd60e51b81526020600482015260196024820152781d1a1a5cc8195b1958dd1a5bdb881a185cc8195e1c1a5c9959603a1b604482015290519081900360640190fd5b600082815260056020526040902054829060ff1615156001148015610b2a575060008181526006602052604090205460ff16155b610b71576040805162461bcd60e51b8152602060048201526013602482015272796f752061726520612063616e64696461746560681b604482015290519081900360640190fd5b600354600e54600b546001600160a01b0390921691811115610bda576040805162461bcd60e51b815260206004820152601860248201527f63616e646964617465206c696d69742072656163686564210000000000000000604482015290519081900360640190fd5b600954600a546040805163edda781560e01b8152600481018990526001600160a01b0393841660248201526044810192909252519184169163edda78159160648082019260009290919082900301818387803b158015610c3957600080fd5b505af1158015610c4d573d6000803e3d6000fd5b5050506000868152600660209081526040808320805460ff19166001908117909155600e805491820181559093527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd909201889055815188815291517fc3bc01c61c169f82d0d375d875473fc98c64a3bb2d798f6a26ade58226b1c5169350918290030190a15050505050565b6000610ce4611149565b610ced57600080fd5b600d54421115610d40576040805162461bcd60e51b81526020600482015260196024820152781d1a1a5cc8195b1958dd1a5bdb881a185cc8195e1c1a5c9959603a1b604482015290519081900360640190fd5b4262015180830201600d81905560408051918252517fcee1d3b8199912e1b22938382a24a6c1d38b707934106fa995e6797c13ffd9c19181900360200190a15050600d5490565b60046020526000908152604090205481565b6003546040805163a759ee6f60e01b815290516000926001600160a01b0316918391839163a759ee6f91600480830192602092919082900301818787803b158015610de357600080fd5b505af1158015610df7573d6000803e3d6000fd5b505050506040513d6020811015610e0d57600080fd5b5051604080516305c62c2f60e01b81526001600160a01b0387811660048301529151929350600092918416916305c62c2f91602480820192602092909190829003018186803b158015610e5f57600080fd5b505afa158015610e73573d6000803e3d6000fd5b505050506040513d6020811015610e8957600080fd5b505195945050505050565b600d5490565b6003546040805163a759ee6f60e01b815290516000926001600160a01b0316918391839163a759ee6f91600480830192602092919082900301818787803b158015610ee457600080fd5b505af1158015610ef8573d6000803e3d6000fd5b505050506040513d6020811015610f0e57600080fd5b50516040805163237f1a2160e01b8152336004820181905291519196509192506000916001600160a01b0384169163237f1a2191602480820192602092909190829003018186803b158015610e5f57600080fd5b600d54421115610fb5576040805162461bcd60e51b81526020600482015260196024820152781d1a1a5cc8195b1958dd1a5bdb881a185cc8195e1c1a5c9959603a1b604482015290519081900360640190fd5b610fbd611149565b610fc657600080fd5b600b55565b6009546001600160a01b031681565b610fe2611149565b610feb57600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600354600160a01b900460ff1681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156110c85780601f1061109d576101008083540402835291602001916110c8565b820191906000526020600020905b8154815290600101906020018083116110ab57829003601f168201915b505050505081565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156110c85780601f1061109d576101008083540402835291602001916110c8565b6000546001600160a01b031690565b600354600160a81b900460ff1681565b6000546001600160a01b0316331490565b6003546000906001600160a01b031633146111a65760405162461bcd60e51b81526004018080602001828103825260218152602001806115df6021913960400191505060405180910390fd5b6003546009546008546040805163edda781560e01b8152600481018990526001600160a01b0393841660248201526044810192909252519190921691829163edda78159160648082019260009290919082900301818387803b15801561120b57600080fd5b505af115801561121f573d6000803e3d6000fd5b505050600086815260056020908152604091829020805460ff19166001179055815188815291517f951576958569db926d87f0c263b82ab8c4fe48aa20496c0ac2629620514465129350918290030190a1506001949350505050565b6003546000906001600160a01b031633146112c75760405162461bcd60e51b81526004018080602001828103825260218152602001806115df6021913960400191505060405180910390fd5b92915050565b60066020526000908152604090205460ff1681565b6112ea611149565b6112f357600080fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b60606000600e600b548180548060200260200160405190810160405280929190818152602001828054801561136957602002820191906000526020600020905b815481526020019060010190808311611355575b50505050509150915091509091565b611380611149565b61138957600080fd5b611392816114f7565b50565b6003546001600160a01b031681565b60056020526000908152604090205460ff1681565b600354604080516375d7e4bd60e01b815290516000926001600160a01b0316916375d7e4bd91600480830192602092919082900301818787803b1580156113ff57600080fd5b505af1158015611413573d6000803e3d6000fd5b505050506040513d602081101561142957600080fd5b50516040805163a9059cbb60e01b81526001600160a01b0386811660048301526024820186905291519293509083169163a9059cbb916044808201926020929091908290030181600087803b15801561148157600080fd5b505af1158015611495573d6000803e3d6000fd5b505050506040513d60208110156114ab57600080fd5b5051610a4a576040805162461bcd60e51b81526020600482015260166024820152752ab739bab1b1b2b9b9b33ab6103a3930b739b332b91760511b604482015290519081900360640190fd5b6001600160a01b03811661150a57600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe746869732045494e20686173206e6f7420726567697374657265642061732061207061727469636970616e74546869732045494e20686173206e6f74207265676973746572656420617320612063616e646964617465546869732045494e20686173206e6f74207365742074686973207265736f6c7665722e446964206e6f74206f726967696e6174652066726f6d20536e6f77666c616b652e796f7520617265206e6f74206120766f7465722c7265676973746572206669727374a265627a7a72315820614453bf8e5d1f759d6f441100f4c4bbc90d297fe2721d80a7e77a7b69403cf664736f6c63430005110032

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

00000000000000000000000032c927d1d1df373c3fae1dc32338570e85f1d4e500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000002000000000000000000000000011d4620d850e1e152fe82ef90c26268b1a78aa40000000000000000000000000000000000000000000000000000000000000004257686f20697320746865206d6f73742062756c6c69736820687964726f20737570706f7274657220666f7220746865206d6f6e7468206f6620446563656d6265723f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005f5468697320697320612073757276657920746f2066696e64206f75742077686f20697320746865206d6f73742062756c6c69736820687964726f20737570706f7274657220666f7220746865206d6f6e7468206f6620646563656d6265722100

-----Decoded View---------------
Arg [0] : snowflakeAddress (address): 0x32c927D1d1dF373c3FAe1dc32338570e85F1d4e5
Arg [1] : _name (string): Who is the most bullish hydro supporter for the month of December?
Arg [2] : _description (string): This is a survey to find out who is the most bullish hydro supporter for the month of december!
Arg [3] : _days (uint256): 32
Arg [4] : feeOwner (address): 0x11d4620D850e1E152fE82Ef90C26268b1a78Aa40

-----Encoded View---------------
13 Constructor Arguments found :
Arg [0] : 00000000000000000000000032c927d1d1df373c3fae1dc32338570e85f1d4e5
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000120
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000020
Arg [4] : 00000000000000000000000011d4620d850e1e152fe82ef90c26268b1a78aa40
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000042
Arg [6] : 57686f20697320746865206d6f73742062756c6c69736820687964726f207375
Arg [7] : 70706f7274657220666f7220746865206d6f6e7468206f6620446563656d6265
Arg [8] : 723f000000000000000000000000000000000000000000000000000000000000
Arg [9] : 000000000000000000000000000000000000000000000000000000000000005f
Arg [10] : 5468697320697320612073757276657920746f2066696e64206f75742077686f
Arg [11] : 20697320746865206d6f73742062756c6c69736820687964726f20737570706f
Arg [12] : 7274657220666f7220746865206d6f6e7468206f6620646563656d6265722100


Deployed Bytecode Sourcemap

13885:6384:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13885:6384:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18789:691;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18789:691:0;;:::i;:::-;;;;;;;;;;;;;;;;;;19658:279;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19658:279:0;-1:-1:-1;;;;;19658:279:0;;:::i;:::-;;18307:454;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;18307:454:0;;:::i;19949:215::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19949:215:0;;:::i;:::-;;;;;;;;;;;;;;;;13925:42;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13925:42:0;;:::i;16647:308::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16647:308:0;-1:-1:-1;;;;;16647:308:0;;:::i;20176:88::-;;;:::i;16253:334::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16253:334:0;-1:-1:-1;;;;;16253:334:0;;:::i;16081:105::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16081:105:0;;:::i;14323:24::-;;;:::i;:::-;;;;-1:-1:-1;;;;;14323:24:0;;;;;;;;;;;;;;1451:140;;;:::i;7250:26::-;;;:::i;7167:34::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;7167:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7133:27;;;:::i;749:78::-;;;:::i;7283:25::-;;;:::i;1079:91::-;;;:::i;17751:335::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17751:335:0;;;;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;17751:335:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;17751:335:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;17751:335:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;17751:335:0;;-1:-1:-1;17751:335:0;;-1:-1:-1;;;;;17751:335:0:i;18091:83::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18091:83:0;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;18091:83:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;18091:83:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;18091:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;18091:83:0;;-1:-1:-1;18091:83:0;;-1:-1:-1;;;;;18091:83:0:i;14012:37::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14012:37:0;;:::i;8028:128::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8028:128:0;-1:-1:-1;;;;;8028:128:0;;:::i;19529:117::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;19529:117:0;;;;;;;;;;;;;;;;;;1765:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1765:109:0;-1:-1:-1;;;;;1765:109:0;;:::i;7210:31::-;;;:::i;13970:39::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13970:39:0;;:::i;18789:691::-;18885:4;18829:10;15294:19;15306:6;15294:11;:19::i;:::-;:25;;15315:4;15294:25;15286:34;;;;;;14629:15;;;;:10;:15;;;;;;18853:4;;14629:15;;:21;;:15;:21;14621:75;;;;-1:-1:-1;;;14621:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15426:14;;15421:3;:19;;15412:57;;;;;-1:-1:-1;;;15412:57:0;;;;;;;;;;;;-1:-1:-1;;;15412:57:0;;;;;;;;;;;;;;;18939:16;;19024:32;;;-1:-1:-1;;;19024:32:0;;;;-1:-1:-1;;;;;18939:16:0;;;;18894:25;;18939:16;;19024:30;;:32;;;;;;;;;;;;;;;18894:25;18939:16;19024:32;;;5:2:-1;;;;30:1;27;20:12;5:2;19024:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19024:32:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19024:32:0;;-1:-1:-1;19061:8:0;19070:20;19079:10;19070:8;:20::i;:::-;19105:17;;;;:12;:17;;;;;;19061:29;;-1:-1:-1;19105:17:0;;:23;;:17;:23;19097:69;;;;-1:-1:-1;;;19097:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19179:15;;;;:10;:15;;;;;;;;:22;19170:54;;;;;-1:-1:-1;;;19170:54:0;;;;;;;;;;;;-1:-1:-1;;;19170:54:0;;;;;;;;;;;;;;;19236:43;;;-1:-1:-1;;;19236:43:0;;;;;;;;19273:4;19236:43;;;;;;-1:-1:-1;;;;;19236:24:0;;;;;:43;;;;;;;;;;;;;;:24;:43;;;5:2:-1;;;;30:1;27;20:12;5:2;19236:43:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19236:43:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19236:43:0;19228:90;;;;-1:-1:-1;;;19228:90:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19331:13;;;;:8;:13;;;;;;;;:20;19322:55;;;;;-1:-1:-1;;;19322:55:0;;;;;;;;;;;;-1:-1:-1;;;19322:55:0;;;;;;;;;;;;;;;19384:16;;;;:10;:16;;;;;;;;:28;;;;;;;;;19416:13;;;:8;:13;;;;;;:18;;-1:-1:-1;;19416:18:0;;;;;;;19444:11;;;;;;;;;;;;;;;;;-1:-1:-1;19467:4:0;;18789:691;-1:-1:-1;;;;;;18789:691:0:o;19658:279::-;958:9;:7;:9::i;:::-;950:18;;;;;;19767:16;;19833:26;;;-1:-1:-1;;;19833:26:0;;;;-1:-1:-1;;;;;19767:16:0;;;;19720:25;;19767:16;;19833:24;;:26;;;;;;;;;;;;;;;19720:25;19767:16;19833:26;;;5:2:-1;;;;30:1;27;20:12;5:2;19833:26:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19833:26:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19833:26:0;19898:30;;;-1:-1:-1;;;19898:30:0;;19922:4;19898:30;;;;;;19833:26;;-1:-1:-1;19871:58:0;;19894:2;;-1:-1:-1;;;;;19898:15:0;;;;;:30;;;;;19833:26;;19898:30;;;;;;;;:15;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;19898:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19898:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19898:30:0;19871:22;:58::i;:::-;979:1;;19658:279;:::o;18307:454::-;14818:18;;;;:12;:18;;;;;;18363:3;;14818:18;;:24;;:18;:24;14810:81;;;;-1:-1:-1;;;14810:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15426:14;;15421:3;:19;;15412:57;;;;;-1:-1:-1;;;15412:57:0;;;;;;;;;;;;-1:-1:-1;;;15412:57:0;;;;;;;;;;;;;;;15012:18;;;;:12;:18;;;;;;18401:3;;15012:18;;:24;;:18;:24;:51;;;;-1:-1:-1;15040:16:0;;;;:10;:16;;;;;;;;:23;15012:51;15004:82;;;;;-1:-1:-1;;;15004:82:0;;;;;;;;;;;;-1:-1:-1;;;15004:82:0;;;;;;;;;;;;;;;18458:16;;18502:13;:20;18553:17;;-1:-1:-1;;;;;18458:16:0;;;;18537:33;;;18529:69;;;;;-1:-1:-1;;;18529:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;18645:9;;18656:10;;18605:62;;;-1:-1:-1;;;18605:62:0;;;;;;;;-1:-1:-1;;;;;18645:9:0;;;18605:62;;;;;;;;;;;;:35;;;;;;:62;;;;;18645:9;;18605:62;;;;;;;;18645:9;18605:35;:62;;;5:2:-1;;;;30:1;27;20:12;5:2;18605:62:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;;18674:15:0;;;;:10;:15;;;;;;;;:20;;-1:-1:-1;;18674:20:0;18690:4;18674:20;;;;;;18701:13;27:10:-1;;23:18;;;45:23;;18701::0;;;;;;;;;;18736:20;;;;;;;;;-1:-1:-1;18736:20:0;;;;;;;15093:1;;15476;18307:454;;:::o;19949:215::-;20028:4;958:9;:7;:9::i;:::-;950:18;;;;;;15426:14;;15421:3;:19;;15412:57;;;;;-1:-1:-1;;;15412:57:0;;;;;;;;;;;;-1:-1:-1;;;15412:57:0;;;;;;;;;;;;;;;20059:3;20072:6;20063:15;;20059:19;20044:14;:34;;;20094:30;;;;;;;;;;;;;;;;-1:-1:-1;;20142:14:0;;;19949:215::o;13925:42::-;;;;;;;;;;;;;:::o;16647:308::-;16761:16;;16849:32;;;-1:-1:-1;;;16849:32:0;;;;16698:4;;-1:-1:-1;;;;;16761:16:0;;16698:4;;16761:16;;16849:30;;:32;;;;;;;;;;;;;;16698:4;16761:16;16849:32;;;5:2:-1;;;;30:1;27;20:12;5:2;16849:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16849:32:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16849:32:0;16901:27;;;-1:-1:-1;;;16901:27:0;;-1:-1:-1;;;;;16901:27:0;;;;;;;;;16849:32;;-1:-1:-1;16892:8:0;;16901:17;;;;;;:27;;;;;16849:32;;16901:27;;;;;;;;:17;:27;;;5:2:-1;;;;30:1;27;20:12;5:2;16901:27:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16901:27:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16901:27:0;;16647:308;-1:-1:-1;;;;;16647:308:0:o;20176:88::-;20242:14;;20176:88;:::o;16253:334::-;16366:16;;16454:32;;;-1:-1:-1;;;16454:32:0;;;;16307:4;;-1:-1:-1;;;;;16366:16:0;;16307:4;;16366:16;;16454:30;;:32;;;;;;;;;;;;;;16307:4;16366:16;16454:32;;;5:2:-1;;;;30:1;27;20:12;5:2;16454:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16454:32:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16454:32:0;16530:34;;;-1:-1:-1;;;16530:34:0;;16502:10;16530:34;;;;;;;;16502:10;;-1:-1:-1;16454:32:0;;-1:-1:-1;16519:10:0;;-1:-1:-1;;;;;16530:22:0;;;;;:34;;;;;16454:32;;16530:34;;;;;;;;:22;:34;;;5:2:-1;;;;30:1;27;20:12;16081:105:0;15426:14;;15421:3;:19;;15412:57;;;;;-1:-1:-1;;;15412:57:0;;;;;;;;;;;;-1:-1:-1;;;15412:57:0;;;;;;;;;;;;;;;958:9;:7;:9::i;:::-;950:18;;;;;;16160:17;:22;16081:105::o;14323:24::-;;;-1:-1:-1;;;;;14323:24:0;;:::o;1451:140::-;958:9;:7;:9::i;:::-;950:18;;;;;;1550:1;1534:6;;1513:40;;-1:-1:-1;;;;;1534:6:0;;;;1513:40;;1550:1;;1513:40;1581:1;1564:19;;-1:-1:-1;;;;;;1564:19:0;;;1451:140::o;7250:26::-;;;-1:-1:-1;;;7250:26:0;;;;;:::o;7167:34::-;;;;;;;;;;;;;;-1:-1:-1;;7167:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7133:27::-;;;;;;;;;;;;;;;-1:-1:-1;;7133:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;749:78;786:7;813:6;-1:-1:-1;;;;;813:6:0;749:78;:::o;7283:25::-;;;-1:-1:-1;;;7283:25:0;;;;;:::o;1079:91::-;1118:4;1156:6;-1:-1:-1;;;;;1156:6:0;1142:10;:20;;1079:91::o;17751:335::-;7832:16;;17852:4;;-1:-1:-1;;;;;7832:16:0;7818:10;:30;7810:76;;;;-1:-1:-1;;;7810:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17911:16;;17976:9;;17987:6;;17935:60;;;-1:-1:-1;;;17935:60:0;;;;;;;;-1:-1:-1;;;;;17976:9:0;;;17935:60;;;;;;;;;;;;17911:16;;;;;;;17935:35;;:60;;;;;17864:25;;17935:60;;;;;;;;17864:25;17911:16;17935:60;;;5:2:-1;;;;30:1;27;20:12;5:2;17935:60:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;;18002:17:0;;;;:12;:17;;;;;;;;;:22;;-1:-1:-1;;18002:22:0;18020:4;18002:22;;;18037;;;;;;;;;-1:-1:-1;18037:22:0;;;;;;;-1:-1:-1;18073:4:0;;17751:335;-1:-1:-1;;;;17751:335:0:o;18091:83::-;7832:16;;18166:4;;-1:-1:-1;;;;;7832:16:0;7818:10;:30;7810:76;;;;-1:-1:-1;;;7810:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18091:83;;;;:::o;14012:37::-;;;;;;;;;;;;;;;:::o;8028:128::-;958:9;:7;:9::i;:::-;950:18;;;;;;8112:16;:36;;-1:-1:-1;;;;;;8112:36:0;-1:-1:-1;;;;;8112:36:0;;;;;;;;;;8028:128::o;19529:117::-;19577:13;19591:4;19610:13;19624:17;;19603:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19529:117;;:::o;1765:109::-;958:9;:7;:9::i;:::-;950:18;;;;;;1838:28;1857:8;1838:18;:28::i;:::-;1765:109;:::o;7210:31::-;;;-1:-1:-1;;;;;7210:31:0;;:::o;13970:39::-;;;;;;;;;;;;;;;:::o;9254:252::-;9388:16;;9369:56;;;-1:-1:-1;;;9369:56:0;;;;9331:20;;-1:-1:-1;;;;;9388:16:0;;9369:54;;:56;;;;;;;;;;;;;;9331:20;9388:16;9369:56;;;5:2:-1;;;;30:1;27;20:12;5:2;9369:56:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9369:56:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9369:56:0;9445:26;;;-1:-1:-1;;;9445:26:0;;-1:-1:-1;;;;;9445:26:0;;;;;;;;;;;;;;;9369:56;;-1:-1:-1;9445:14:0;;;;;;:26;;;;;9369:56;;9445:26;;;;;;;;-1:-1:-1;9445:14:0;:26;;;5:2:-1;;;;30:1;27;20:12;5:2;9445:26:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9445:26:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9445:26:0;9437:61;;;;;-1:-1:-1;;;9437:61:0;;;;;;;;;;;;-1:-1:-1;;;9437:61:0;;;;;;;;;;;;;;2021:187;-1:-1:-1;;;;;2095:22:0;;2087:31;;;;;;2155:6;;;2134:38;;-1:-1:-1;;;;;2134:38:0;;;;2155:6;;;2134:38;;;2183:6;:17;;-1:-1:-1;;;;;;2183:17:0;-1:-1:-1;;;;;2183:17:0;;;;;;;;;;2021:187::o

Swarm Source

bzzr://614453bf8e5d1f759d6f441100f4c4bbc90d297fe2721d80a7e77a7b69403cf6

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.