Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 308 txns
Token Tracker: CryptoCup (CryptoCup...)
Misc:
Address Watch: Add To Watch List
Contract Creator: 0xff188ad112766432e653916500d5a57cb0136c09at txn 0xb376b4dbe3f73f6df609efec3c348c88f728fd29edd0a97361e54b12bf54f7e7
Token Balance:
 Latest 25 transactions from a total of 308 transactions

TxHash Age From To Value [TxFee]
0x1add74d005bc6d82e4f8ec9226421595e22c058ca963bdbc082e3f3b591e894c120 days 47 mins ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.00429792
0x5dd18248c36da3ca2fa442abd3fb3b1e7b3f0833f25c92399660b923beac5790121 days 11 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.002955661
0x31ec282c0eb24e1f07a0a6157ceeeb16fb66a69e99482e0339e18f8eb81f231a121 days 11 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.00287014
0xda1288d57b6afd10c85019e9ec10918ca93306d4202700da515bb8dee0244600121 days 11 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.00106755
0xe5550ab52e2ba132466a7c8295cd347712a5e821a70d89bc325e8744bc5b8e8d126 days 11 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.000902167
0xf2130421871374e946a094fd455f0b95dd698c7b1686d8bba4d3e5c6ccdbb790126 days 11 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.000773286
0xc60bb9f22b2094de5e597d3cc67f68a881f029c8932d91876d96eaf6ab2c8f30128 days 9 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.007088455
0xd7bdb7b3531f4dfe3462ca41d3ebe5ccddc7bc03e424c61a05a30d395fd20961128 days 10 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.00719405
0xc1d435b35a20210f51420537c923258e47befa6133f2dd9e8903b96591ca43e9128 days 10 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.0021252
0x0d6858aa67ceb5e586f19b06fea3290c436b80d7ab0f20ec92afbf5979220a43131 days 20 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.00637668
0x55330af2dcf38c39233715945d8f740d914acd2c13787803db177697ba82c97f132 days 1 hr ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.006801792
0x6ee5e5f0c1778584f5f4162847ea3ba00e6ebb162b23bff681cf66d942a22977132 days 21 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.00425112
0x8836db25782c4bd5237c696019efda67a6e5aa1cb8805a5cac8d74dcf3ab1064133 days 23 mins ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.007156052
0xb9fc749a30c497cb92be887e280263549efa2f1899dbcf2d349f480880da6b24133 days 20 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.003259192
0x3d54acaf9a56bbb1f30bfd3286cf2896cbfef529013624acb6db7d97ea4661e1134 days 59 mins ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.0028328
0x8e165e96a69864146a8f37fe99cb6b5c7ca8771544c625ac63605e2bf666cab8134 days 18 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.000991928
0x4e8e34a334be7af76ba7344c801faefcb1a0de7a882a659a0de4c305d407c8fc135 days 1 hr ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.00940224
0xaea325ad39ad5118952edd66e8070df6e73950fda4509271e1bf59df6dea4ec7135 days 1 hr ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0 Ether0.00401698
0x754915357db9e6ea0c03bd58c6ead6977956798eaf8345d9ea8e38b680ccb430183 days 5 hrs ago0xff188ad112766432e653916500d5a57cb0136c09  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0.12800000000001 Ether0.0006398514
0xeee9cc97d29ef003ee9510c02bee911da351832489203cdc722a6f21a3e4555a197 days 17 hrs ago0xad565956ae5bd43117f6b0a650ec18c621ff8e0d  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0.16928000000001 Ether0.000400473
0x692f38ecf238681cfd2069189d30dbfe91af16fbd6e909635fc7b60f92333df7200 days 10 hrs ago0x99dc444ea36f3012117ca73727ae61e2ed784193  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0.22387280000001 Ether0.000355473
0x8bcdbebb1cf4efd750b8e52b9cb6141ecc7929b34bfc33b21f71ad1dba96ef64200 days 16 hrs ago0x33497f64e2997669057710ccadd583d70798954a  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0.06400000000001 Ether0.000118501
0x68a391ea7936cb49625c3c43aba1b812f8ec22816fa8a06f1b6e30736fc9cb4a200 days 17 hrs ago0x90f7c7ea1afbd838713bf357cb9fab4abf138b58  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0.00400000000001 Ether0.0000496056
0xc6cd83b9aee2f0eb9539391afca451273ae88f57296dc9f84cd9f198f05a2ef9200 days 17 hrs ago0x90f7c7ea1afbd838713bf357cb9fab4abf138b58  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0.00400000000001 Ether0.0000248028
0x24c7422cd5e718a2e06888d5d2cdb6e3c981bdf3f79772533ec02e44bd063836200 days 17 hrs ago0x90f7c7ea1afbd838713bf357cb9fab4abf138b58  IN   0xfef1595da2bba952fe13003dce7ad32d991c6e2f0.00400000000001 Ether0.000022548
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click here To View More View All
ParentTxHash Block Age From To Value
0x1add74d005bc6d82e4f8ec9226421595e22c058ca963bdbc082e3f3b591e894c5969892120 days 47 mins ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x27c79a01878962ce0b6126af6e184c06d36c8f370.07006082 Ether
0x5dd18248c36da3ca2fa442abd3fb3b1e7b3f0833f25c92399660b923beac57905961162121 days 11 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x057cea717ee94678fa575c7a9419a25504fef1000.03503041 Ether
0x31ec282c0eb24e1f07a0a6157ceeeb16fb66a69e99482e0339e18f8eb81f231a5961107121 days 11 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x27c79a01878962ce0b6126af6e184c06d36c8f370.03503041 Ether
0xe5550ab52e2ba132466a7c8295cd347712a5e821a70d89bc325e8744bc5b8e8d5931676126 days 11 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x057cea717ee94678fa575c7a9419a25504fef1000.017515205 Ether
0xf2130421871374e946a094fd455f0b95dd698c7b1686d8bba4d3e5c6ccdbb7905931648126 days 11 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x823da78946bbc9b249d11e0d4ade10adf1ec928b0.017515205 Ether
0xc60bb9f22b2094de5e597d3cc67f68a881f029c8932d91876d96eaf6ab2c8f305920515128 days 9 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0xff188ad112766432e653916500d5a57cb0136c090.017515205 Ether
0xd7bdb7b3531f4dfe3462ca41d3ebe5ccddc7bc03e424c61a05a30d395fd209615920296128 days 10 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x27c79a01878962ce0b6126af6e184c06d36c8f370.017515205 Ether
0x0d6858aa67ceb5e586f19b06fea3290c436b80d7ab0f20ec92afbf5979220a435900392131 days 20 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x823da78946bbc9b249d11e0d4ade10adf1ec928b0.0087576025 Ether
0x55330af2dcf38c39233715945d8f740d914acd2c13787803db177697ba82c97f5899212132 days 1 hr ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0xf0333b94f895eb5aab3822da376f9cbcfce8a19c0.0087576025 Ether
0x6ee5e5f0c1778584f5f4162847ea3ba00e6ebb162b23bff681cf66d942a229775894252132 days 21 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0xff188ad112766432e653916500d5a57cb0136c090.0087576025 Ether
0x8836db25782c4bd5237c696019efda67a6e5aa1cb8805a5cac8d74dcf3ab10645893608133 days 23 mins ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x99dc444ea36f3012117ca73727ae61e2ed7841930.0087576025 Ether
0xb9fc749a30c497cb92be887e280263549efa2f1899dbcf2d349f480880da6b245888561133 days 20 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x057cea717ee94678fa575c7a9419a25504fef1000.0087576025 Ether
0x3d54acaf9a56bbb1f30bfd3286cf2896cbfef529013624acb6db7d97ea4661e15887506134 days 59 mins ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x123085670e817602041e58febb243abe01a9a8250.0087576025 Ether
0x8e165e96a69864146a8f37fe99cb6b5c7ca8771544c625ac63605e2bf666cab85883363134 days 18 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x99dc444ea36f3012117ca73727ae61e2ed7841930.0087576025 Ether
0x4e8e34a334be7af76ba7344c801faefcb1a0de7a882a659a0de4c305d407c8fc5881547135 days 1 hr ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x27c79a01878962ce0b6126af6e184c06d36c8f370.0087576025 Ether
0x754915357db9e6ea0c03bd58c6ead6977956798eaf8345d9ea8e38b680ccb4305606543183 days 5 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0xff188ad112766432e653916500d5a57cb0136c090.00000000000001 Ether
0x754915357db9e6ea0c03bd58c6ead6977956798eaf8345d9ea8e38b680ccb4305606543183 days 5 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x8c229557d4e479fd87890e0f59cd02d38a612c600.0032 Ether
0x754915357db9e6ea0c03bd58c6ead6977956798eaf8345d9ea8e38b680ccb4305606543183 days 5 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x123085670e817602041e58febb243abe01a9a8250.1184 Ether
0xeee9cc97d29ef003ee9510c02bee911da351832489203cdc722a6f21a3e4555a5523313197 days 17 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0xad565956ae5bd43117f6b0a650ec18c621ff8e0d0.00000000000001 Ether
0xeee9cc97d29ef003ee9510c02bee911da351832489203cdc722a6f21a3e4555a5523313197 days 17 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x8c229557d4e479fd87890e0f59cd02d38a612c600.001104 Ether
0xeee9cc97d29ef003ee9510c02bee911da351832489203cdc722a6f21a3e4555a5523313197 days 17 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x057cea717ee94678fa575c7a9419a25504fef1000.165968 Ether
0x692f38ecf238681cfd2069189d30dbfe91af16fbd6e909635fc7b60f92333df75507861200 days 10 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x99dc444ea36f3012117ca73727ae61e2ed7841930.00000000000001 Ether
0x692f38ecf238681cfd2069189d30dbfe91af16fbd6e909635fc7b60f92333df75507861200 days 10 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x8c229557d4e479fd87890e0f59cd02d38a612c600.00146004 Ether
0x692f38ecf238681cfd2069189d30dbfe91af16fbd6e909635fc7b60f92333df75507861200 days 10 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x057cea717ee94678fa575c7a9419a25504fef1000.21949268 Ether
0x8bcdbebb1cf4efd750b8e52b9cb6141ecc7929b34bfc33b21f71ad1dba96ef645506280200 days 16 hrs ago0xfef1595da2bba952fe13003dce7ad32d991c6e2f0x33497f64e2997669057710ccadd583d70798954a0.00000000000001 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: CryptoCupToken
Compiler Text: v0.4.23+commit.124ca40d
Optimization Enabled: No
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.21;

library SafeMath {
    /**
    * @dev Multiplies two numbers, throws on overflow.
    */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        assert(c / a == b);
        return c;
    }

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

    /**
    * @dev Substracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }

    /**
    * @dev Adds two numbers, throws on overflow.
    */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}

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

  event Transfer(address indexed from, address indexed to, uint256 tokenId);
  event Approval(address indexed owner, address indexed approved, uint256 tokenId);
}

contract CryptoCupToken is ERC721 {

    // evsoftware.co.uk
    // cryptocup.online

    /*****------ EVENTS -----*****/
    event TeamSold(uint256 indexed team, address indexed from, uint256 oldPrice, address indexed to, uint256 newPrice, uint256 tradingTime, uint256 balance, uint256 lastSixteenPrize, uint256 quarterFinalPrize, uint256 semiFinalPrize, uint256 winnerPrize);
    event PrizePaid(string tournamentStage, uint256 indexed team, address indexed to, uint256 prize, uint256 time);
    event Transfer(address from, address to, uint256 tokenId);

    /*****------- CONSTANTS -------******/
    uint256 private startingPrice = 0.001 ether;
	uint256 private doublePriceUntil = 0.1 ether;
	uint256 private lastSixteenWinnerPayments = 0;
	uint256 private quarterFinalWinnerPayments = 0;
	uint256 private semiFinalWinnerPayments = 0;
	bool private tournamentComplete = false;
    
    /*****------- STORAGE -------******/
    mapping (uint256 => address) public teamOwners;
    mapping (address => uint256) private ownerTeamCount;
    mapping (uint256 => address) public teamToApproved;
    mapping (uint256 => uint256) private teamPrices;
    address public contractModifierAddress;
    address public developerAddress;
    
    /*****------- DATATYPES -------******/
    struct Team {
        string name;
        string code;
        uint256 cost;
        uint256 price;
        address owner;
        uint256 numPayouts;
        mapping (uint256 => Payout) payouts;
    }

    struct Payout {
        string stage;
        uint256 amount;
        address to;
        uint256 when;
    }

    Team[] private teams;
    
    struct PayoutPrizes {
        uint256 LastSixteenWinner;
        bool LastSixteenTotalFixed;
        uint256 QuarterFinalWinner;
        bool QuarterFinalTotalFixed;
        uint256 SemiFinalWinner;
        bool SemiFinalTotalFixed;
        uint256 TournamentWinner;
    }
    
    PayoutPrizes private prizes;

    /*****------- MODIFIERS -------******/
    modifier onlyContractModifier() {
        require(msg.sender == contractModifierAddress);
        _;
    }
    
    /*****------- CONSTRUCTOR -------******/
    constructor() public {
        contractModifierAddress = msg.sender;
        developerAddress = msg.sender;

        // Initialse Prize Totals
        prizes.LastSixteenTotalFixed = false;
        prizes.QuarterFinalTotalFixed = false;
        prizes.SemiFinalTotalFixed = false;
    }
    
    /*****------- PUBLIC FUNCTIONS -------******/
    function name() public pure returns (string) {
        return "CryptoCup";
    }
  
    function symbol() public pure returns (string) {
        return "CryptoCupToken";
    }
    
    function implementsERC721() public pure returns (bool) {
        return true;
    }

    function ownerOf(uint256 _tokenId) public view returns (address owner) {
        owner = teamOwners[_tokenId];
        require(owner != address(0));
        return owner;
    }
    
    function takeOwnership(uint256 _tokenId) public {
        address to = msg.sender;
        address from = teamOwners[_tokenId];
    
        require(_addressNotNull(to));
        require(_approved(to, _tokenId));
    
        _transfer(from, to, _tokenId);
    }
    
    function approve(address _to, uint256 _tokenId) public {
        require(_owns(msg.sender, _tokenId));
        teamToApproved[_tokenId] = _to;
        emit Approval(msg.sender, _to, _tokenId);
    }
    
    function balanceOf(address _owner) public view returns (uint256 balance) {
        return ownerTeamCount[_owner];
    }
    
    function totalSupply() public view returns (uint256 total) {
        return teams.length;
    }
    
    function transfer(address _to, uint256 _tokenId) public {
        require(_owns(msg.sender, _tokenId));
        require(_addressNotNull(_to));
        _transfer(msg.sender, _to, _tokenId);
    }
    
    function transferFrom(address _from, address _to, uint256 _tokenId) public {
        require(_owns(_from, _tokenId));
        require(_approved(_to, _tokenId));
        require(_addressNotNull(_to));
        _transfer(_from, _to, _tokenId);
    }

	function destroy() public onlyContractModifier {
		selfdestruct(contractModifierAddress);
    }

    function setDeveloper(address _newDeveloperAddress) public onlyContractModifier {
        require(_newDeveloperAddress != address(0));
        developerAddress = _newDeveloperAddress;
    }
    
    function createTeams() public onlyContractModifier {
        _createTeam("Russia", "RUS", startingPrice, developerAddress);
        _createTeam("Saudi Arabia", "KSA", startingPrice, developerAddress);
        _createTeam("Egypt", "EGY", startingPrice, developerAddress);
        _createTeam("Uruguay", "URU", startingPrice, developerAddress);
        _createTeam("Portugal", "POR", startingPrice, developerAddress);
        _createTeam("Spain", "SPA", startingPrice, developerAddress);
        _createTeam("Morocco", "MOR", startingPrice, developerAddress);
        _createTeam("Iran", "IRN", startingPrice, developerAddress);
        _createTeam("France", "FRA", startingPrice, developerAddress);
        _createTeam("Australia", "AUS", startingPrice, developerAddress);
        _createTeam("Peru", "PER", startingPrice, developerAddress);
        _createTeam("Denmark", "DEN", startingPrice, developerAddress);
        _createTeam("Argentina", "ARG", startingPrice, developerAddress);
        _createTeam("Iceland", "ICE", startingPrice, developerAddress);
        _createTeam("Croatia", "CRO", startingPrice, developerAddress);
        _createTeam("Nigeria", "NGA", startingPrice, developerAddress);
        _createTeam("Brazil", "BRZ", startingPrice, developerAddress);
        _createTeam("Switzerland", "SWI", startingPrice, developerAddress);
        _createTeam("Costa Rica", "CRC", startingPrice, developerAddress);
        _createTeam("Serbia", "SER", startingPrice, developerAddress);
        _createTeam("Germany", "GER", startingPrice, developerAddress);
        _createTeam("Mexico", "MEX", startingPrice, developerAddress);
        _createTeam("Sweden", "SWE", startingPrice, developerAddress);
        _createTeam("South Korea", "KOR", startingPrice, developerAddress);
        _createTeam("Belgium", "BEL", startingPrice, developerAddress);
        _createTeam("Panama", "PAN", startingPrice, developerAddress);
        _createTeam("Tunisia", "TUN", startingPrice, developerAddress);
        _createTeam("England", "ENG", startingPrice, developerAddress);
        _createTeam("Poland", "POL", startingPrice, developerAddress);
        _createTeam("Senegal", "SEN", startingPrice, developerAddress);
        _createTeam("Colombia", "COL", startingPrice, developerAddress);
        _createTeam("Japan", "JPN", startingPrice, developerAddress);
    }
    
    function createTeam(string name, string code) public onlyContractModifier {
        _createTeam(name, code, startingPrice, developerAddress);
    }
    
    function lockInLastSixteenPrize() public onlyContractModifier {
        prizes.LastSixteenTotalFixed = true;
    }
    
    function payLastSixteenWinner(uint256 _tokenId) public onlyContractModifier {
        require(prizes.LastSixteenTotalFixed != false);
        require(lastSixteenWinnerPayments < 8);
        require(tournamentComplete != true);
        
        Team storage team = teams[_tokenId];
        require(team.numPayouts == 0);
        
        team.owner.transfer(prizes.LastSixteenWinner);
        emit PrizePaid("Last Sixteen", _tokenId, team.owner, prizes.LastSixteenWinner, uint256(now));

        team.payouts[team.numPayouts++] = Payout({
            stage: "Last Sixteen",
            amount: prizes.LastSixteenWinner,
            to: team.owner,
            when: uint256(now)
        });
        
        lastSixteenWinnerPayments++;
    }
    
    function lockInQuarterFinalPrize() public onlyContractModifier {
        require(prizes.LastSixteenTotalFixed != false);
        prizes.QuarterFinalTotalFixed = true;
    }
    
    function payQuarterFinalWinner(uint256 _tokenId) public onlyContractModifier {
        require(prizes.QuarterFinalTotalFixed != false);
        require(quarterFinalWinnerPayments < 4);
        require(tournamentComplete != true);
        Team storage team = teams[_tokenId];
        require(team.numPayouts == 1);
        Payout storage payout = team.payouts[0];
        require(_compareStrings(payout.stage, "Last Sixteen"));

        team.owner.transfer(prizes.QuarterFinalWinner);
        emit PrizePaid("Quarter Final", _tokenId, team.owner, prizes.QuarterFinalWinner, uint256(now));
        team.payouts[team.numPayouts++] = Payout({
            stage: "Quarter Final",
            amount: prizes.QuarterFinalWinner,
            to: team.owner,
            when: uint256(now)
        });
        
        quarterFinalWinnerPayments++;
    }
    
    function lockInSemiFinalPrize() public onlyContractModifier {
        require(prizes.QuarterFinalTotalFixed != false);
        prizes.SemiFinalTotalFixed = true;
    }
        
    function paySemiFinalWinner(uint256 _tokenId) public onlyContractModifier {
        require(prizes.SemiFinalTotalFixed != false);
        require(semiFinalWinnerPayments < 2);
        require(tournamentComplete != true);
        Team storage team = teams[_tokenId];
        require(team.numPayouts == 2);
        Payout storage payout = team.payouts[1];
        require(_compareStrings(payout.stage, "Quarter Final"));
        
        team.owner.transfer(prizes.SemiFinalWinner);
        emit PrizePaid("Semi Final", _tokenId, team.owner, prizes.SemiFinalWinner, uint256(now));
        team.payouts[team.numPayouts++] = Payout({
            stage: "Semi Final",
            amount: prizes.SemiFinalWinner,
            to: team.owner,
            when: uint256(now)
        });
        
        semiFinalWinnerPayments++;
    }
    
    function payTournamentWinner(uint256 _tokenId) public onlyContractModifier {
        require (tournamentComplete != true);
        Team storage team = teams[_tokenId];
        require(team.numPayouts == 3);
        Payout storage payout = team.payouts[2];
        require(_compareStrings(payout.stage, "Semi Final"));

        team.owner.transfer(prizes.TournamentWinner);
        emit PrizePaid("Final", _tokenId, team.owner, prizes.TournamentWinner, uint256(now));
        team.payouts[team.numPayouts++] = Payout({
            stage: "Final",
            amount: prizes.TournamentWinner,
            to: team.owner,
            when: uint256(now)
        });
        
        tournamentComplete = true;
    }

    function payExcess() public onlyContractModifier {
        /* ONLY IF TOURNAMENT FINISHED AND THERE'S EXCESS - THERE SHOULDN'T BE */
        /* ONLY IF TRADES OCCUR AFTER TOURNAMENT FINISHED */
        require (tournamentComplete != false);
        developerAddress.transfer(address(this).balance);
    }

    function getTeam(uint256 _tokenId) public view returns (uint256 id, string name, string code, uint256 cost, uint256 price, address owner, uint256 numPayouts) {
        Team storage team = teams[_tokenId];
        id = _tokenId;
        name = team.name;
        code = team.code;
        cost = team.cost;
        price = team.price;
        owner = team.owner;
        numPayouts = team.numPayouts;
    }
        
    function getTeamPayouts(uint256 _tokenId, uint256 _payoutId) public view returns (uint256 id, string stage, uint256 amount, address to, uint256 when) {
        Team storage team = teams[_tokenId];
        Payout storage payout = team.payouts[_payoutId];
        id = _payoutId;
        stage = payout.stage;
        amount = payout.amount;
        to = payout.to;
        when = payout.when;
    }

    // Allows someone to send ether and obtain the token
    function buyTeam(uint256 _tokenId) public payable {
        address from = teamOwners[_tokenId];
        address to = msg.sender;
        uint256 price = teamPrices[_tokenId];
        
	    require(_addressNotNull(to));
        require(from != to);
        require(msg.value >= price);
        
        Team storage team = teams[_tokenId];
	    
        uint256 purchaseExcess = SafeMath.sub(msg.value, price);
        uint256 profit = SafeMath.sub(price, team.cost);
        
	    // get 15% - 5 goes to dev and 10 stays in prize fund that is split during knockout stages
	    uint256 onePercent = SafeMath.div(profit, 100);
	    uint256 developerAllocation = SafeMath.mul(onePercent, 5);
	    uint256 saleProceeds = SafeMath.add(SafeMath.mul(onePercent, 85), team.cost);
	    uint256 fundProceeds = SafeMath.mul(onePercent, 10);
	    
	    _transfer(from, to, _tokenId);
	    
	    // Pay previous owner if owner is not contract
        if (from != address(this)) {
	        from.transfer(saleProceeds);
        }

        // Pay developer
        if (developerAddress != address(this)) {
	        developerAddress.transfer(developerAllocation);
        }
        
        uint256 slice = 0;
        
        // Increase prize fund totals
        if (!prizes.LastSixteenTotalFixed) {
            slice = SafeMath.div(fundProceeds, 4);
            prizes.LastSixteenWinner += SafeMath.div(slice, 8);    
            prizes.QuarterFinalWinner += SafeMath.div(slice, 4);    
            prizes.SemiFinalWinner += SafeMath.div(slice, 2);    
            prizes.TournamentWinner += slice;    
        } else if (!prizes.QuarterFinalTotalFixed) {
            slice = SafeMath.div(fundProceeds, 3);
            prizes.QuarterFinalWinner += SafeMath.div(slice, 4);    
            prizes.SemiFinalWinner += SafeMath.div(slice, 2);    
            prizes.TournamentWinner += slice;   
        } else if (!prizes.SemiFinalTotalFixed) {
            slice = SafeMath.div(fundProceeds, 2);
            prizes.SemiFinalWinner += SafeMath.div(slice, 2);
            prizes.TournamentWinner += slice;   
        } else {
            prizes.TournamentWinner += fundProceeds;   
        }
	    
		// Set new price for team
	    uint256 newPrice = 0;
        if (price < doublePriceUntil) {
            newPrice = SafeMath.div(SafeMath.mul(price, 200), 100);
        } else {
            newPrice = SafeMath.div(SafeMath.mul(price, 115), 100);
        }
		
	    teamPrices[_tokenId] = newPrice;
	    team.cost = price;
	    team.price = newPrice;
	    
	    emit TeamSold(_tokenId, from, price, to, newPrice, uint256(now), address(this).balance, prizes.LastSixteenWinner, prizes.QuarterFinalWinner, prizes.SemiFinalWinner, prizes.TournamentWinner);
	    
	    msg.sender.transfer(purchaseExcess);
	}
	
    function getPrizeFund() public view returns (bool lastSixteenTotalFixed, uint256 lastSixteenWinner, bool quarterFinalTotalFixed, uint256 quarterFinalWinner, bool semiFinalTotalFixed, uint256 semiFinalWinner, uint256 tournamentWinner, uint256 total) {
        lastSixteenTotalFixed = prizes.LastSixteenTotalFixed;
        lastSixteenWinner = prizes.LastSixteenWinner;   
        quarterFinalTotalFixed = prizes.QuarterFinalTotalFixed;
        quarterFinalWinner = prizes.QuarterFinalWinner;
        semiFinalTotalFixed = prizes.SemiFinalTotalFixed;
        semiFinalWinner = prizes.SemiFinalWinner;
        tournamentWinner = prizes.TournamentWinner;
        total = address(this).balance;
    }

    /********----------- PRIVATE FUNCTIONS ------------********/
    function _addressNotNull(address _to) private pure returns (bool) {
        return _to != address(0);
    }   
    
    function _createTeam(string _name, string _code, uint256 _price, address _owner) private {
        Team memory team = Team({
            name: _name,
            code: _code,
            cost: 0 ether,
            price: _price,
            owner: _owner,
            numPayouts: 0
        });

        uint256 newTeamId = teams.push(team) - 1;
        teamPrices[newTeamId] = _price;
        
        _transfer(address(0), _owner, newTeamId);
    }
    
    function _approved(address _to, uint256 _tokenId) private view returns (bool) {
        return teamToApproved[_tokenId] == _to;
    }
    
    function _transfer(address _from, address _to, uint256 _tokenId) private {
        ownerTeamCount[_to]++;
        teamOwners[_tokenId] = _to;
        
        Team storage team = teams[_tokenId];
        team.owner = _to;
        
        if (_from != address(0)) {
          ownerTeamCount[_from]--;
          delete teamToApproved[_tokenId];
        }
        
        emit Transfer(_from, _to, _tokenId);
    }
    
    function _owns(address _claimant, uint256 _tokenId) private view returns (bool) {
        return _claimant == teamOwners[_tokenId];
    }    
    
    function _compareStrings (string a, string b) private pure returns (bool){
        return keccak256(a) == keccak256(b);
    }
}

    Contract ABI  
[{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"getTeam","outputs":[{"name":"id","type":"uint256"},{"name":"name","type":"string"},{"name":"code","type":"string"},{"name":"cost","type":"uint256"},{"name":"price","type":"uint256"},{"name":"owner","type":"address"},{"name":"numPayouts","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"},{"name":"code","type":"string"}],"name":"createTeam","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"payLastSixteenWinner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"buyTeam","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"implementsERC721","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"total","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"paySemiFinalWinner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getPrizeFund","outputs":[{"name":"lastSixteenTotalFixed","type":"bool"},{"name":"lastSixteenWinner","type":"uint256"},{"name":"quarterFinalTotalFixed","type":"bool"},{"name":"quarterFinalWinner","type":"uint256"},{"name":"semiFinalTotalFixed","type":"bool"},{"name":"semiFinalWinner","type":"uint256"},{"name":"tournamentWinner","type":"uint256"},{"name":"total","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"contractModifierAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"lockInQuarterFinalPrize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"teamToApproved","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"name":"owner","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"lockInLastSixteenPrize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"payExcess","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"payTournamentWinner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"lockInSemiFinalPrize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_tokenId","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenId","type":"uint256"},{"name":"_payoutId","type":"uint256"}],"name":"getTeamPayouts","outputs":[{"name":"id","type":"uint256"},{"name":"stage","type":"string"},{"name":"amount","type":"uint256"},{"name":"to","type":"address"},{"name":"when","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"takeOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenId","type":"uint256"}],"name":"payQuarterFinalWinner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"developerAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"teamOwners","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"createTeams","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newDeveloperAddress","type":"address"}],"name":"setDeveloper","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"team","type":"uint256"},{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"oldPrice","type":"uint256"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"newPrice","type":"uint256"},{"indexed":false,"name":"tradingTime","type":"uint256"},{"indexed":false,"name":"balance","type":"uint256"},{"indexed":false,"name":"lastSixteenPrize","type":"uint256"},{"indexed":false,"name":"quarterFinalPrize","type":"uint256"},{"indexed":false,"name":"semiFinalPrize","type":"uint256"},{"indexed":false,"name":"winnerPrize","type":"uint256"}],"name":"TeamSold","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tournamentStage","type":"string"},{"indexed":true,"name":"team","type":"uint256"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"prize","type":"uint256"},{"indexed":false,"name":"time","type":"uint256"}],"name":"PrizePaid","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"from","type":"address"},{"indexed":false,"name":"to","type":"address"},{"indexed":false,"name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"approved","type":"address"},{"indexed":false,"name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"}]

  Contract Creation Code Switch To Opcodes View
608060405266038d7ea4c6800060005567016345785d8a00006001556000600255600060035560006004556000600560006101000a81548160ff02191690831515021790555034801561005157600080fd5b5033600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d60010160006101000a81548160ff0219169083151502179055506000600d60030160006101000a81548160ff0219169083151502179055506000600d60050160006101000a81548160ff0219169083151502179055506148608061013d6000396000f30060806040526004361061017f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680628e0f1b1461018457806301a682c1146102e55780630309c7f81461039457806306fdde03146103c1578063095ea7b3146104515780630feb172f1461049e5780631051db34146104be57806318160ddd146104ed57806319689e761461051857806319ee1f1c146105455780631b04803e146105ad57806323b872dd1461060457806330d15b0a1461067157806331574cdf146106885780636352211e146106f55780636d2666b91461076257806370a08231146107795780637345a3a2146107d057806383197ef0146107e757806391dbd4c3146107fe57806395d89b411461082b5780639a4b8fc9146108bb578063a9059cbb146108d2578063b143c9161461091f578063b2e6ceeb14610a17578063bcedb86c14610a44578063caccd7f714610a71578063d70ef96514610ac8578063fe03809314610b35578063ff70fa4914610b4c575b600080fd5b34801561019057600080fd5b506101af60048036038101908080359060200190929190505050610b8f565b6040518088815260200180602001806020018781526020018681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001838103835289818151815260200191508051906020019080838360005b8381101561023d578082015181840152602081019050610222565b50505050905090810190601f16801561026a5780820380516001836020036101000a031916815260200191505b50838103825288818151815260200191508051906020019080838360005b838110156102a3578082015181840152602081019050610288565b50505050905090810190601f1680156102d05780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390f35b3480156102f157600080fd5b50610392600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610d44565b005b3480156103a057600080fd5b506103bf60048036038101908080359060200190929190505050610dd4565b005b3480156103cd57600080fd5b506103d6611135565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104165780820151818401526020810190506103fb565b50505050905090810190601f1680156104435780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561045d57600080fd5b5061049c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611172565b005b6104bc60048036038101908080359060200190929190505050611242565b005b3480156104ca57600080fd5b506104d36117d3565b604051808215151515815260200191505060405180910390f35b3480156104f957600080fd5b506105026117dc565b6040518082815260200191505060405180910390f35b34801561052457600080fd5b50610543600480360381019080803590602001909291905050506117e9565b005b34801561055157600080fd5b5061055a611c4a565b604051808915151515815260200188815260200187151515158152602001868152602001851515151581526020018481526020018381526020018281526020019850505050505050505060405180910390f35b3480156105b957600080fd5b506105c2611cd9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561061057600080fd5b5061066f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611cff565b005b34801561067d57600080fd5b50610686611d4d565b005b34801561069457600080fd5b506106b360048036038101908080359060200190929190505050611def565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561070157600080fd5b5061072060048036038101908080359060200190929190505050611e22565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561076e57600080fd5b50610777611e9e565b005b34801561078557600080fd5b506107ba600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f1a565b6040518082815260200191505060405180910390f35b3480156107dc57600080fd5b506107e5611f63565b005b3480156107f357600080fd5b506107fc612064565b005b34801561080a57600080fd5b50610829600480360381019080803590602001909291905050506120fb565b005b34801561083757600080fd5b5061084061252e565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610880578082015181840152602081019050610865565b50505050905090810190601f1680156108ad5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108c757600080fd5b506108d061256b565b005b3480156108de57600080fd5b5061091d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061260d565b005b34801561092b57600080fd5b506109546004803603810190808035906020019092919080359060200190929190505050612645565b60405180868152602001806020018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825286818151815260200191508051906020019080838360005b838110156109d85780820151818401526020810190506109bd565b50505050905090810190601f168015610a055780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b348015610a2357600080fd5b50610a426004803603810190808035906020019092919050505061276a565b005b348015610a5057600080fd5b50610a6f600480360381019080803590602001909291905050506127df565b005b348015610a7d57600080fd5b50610a86612c3f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ad457600080fd5b50610af360048036038101908080359060200190929190505050612c65565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b4157600080fd5b50610b4a612c98565b005b348015610b5857600080fd5b50610b8d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050614036565b005b60006060806000806000806000600c89815481101515610bab57fe5b90600052602060002090600702019050889750806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c565780601f10610c2b57610100808354040283529160200191610c56565b820191906000526020600020905b815481529060010190602001808311610c3957829003601f168201915b50505050509650806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cf55780601f10610cca57610100808354040283529160200191610cf5565b820191906000526020600020905b815481529060010190602001808311610cd857829003601f168201915b5050505050955080600201549450806003015493508060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692508060050154915050919395979092949650565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610da057600080fd5b610dd08282600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b5050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e3257600080fd5b60001515600d60010160009054906101000a900460ff16151514151515610e5857600080fd5b6008600254101515610e6957600080fd5b60011515600560009054906101000a900460ff16151514151515610e8c57600080fd5b600c82815481101515610e9b57fe5b9060005260206000209060070201905060008160050154141515610ebe57600080fd5b8060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc600d600001549081150290604051600060405180830381858888f19350505050158015610f2d573d6000803e3d6000fd5b508060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16827fa9df0576afe2fdae1326273cc40094c73c8204033b69899e1b7c4776914bee63600d600001544260405180806020018481526020018381526020018281038252600c8152602001807f4c617374205369787465656e0000000000000000000000000000000000000000815250602001935050505060405180910390a36080604051908101604052806040805190810160405280600c81526020017f4c617374205369787465656e00000000000000000000000000000000000000008152508152602001600d6000015481526020018260040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020014281525081600601600083600501600081548092919060010191905055815260200190815260200160002060008201518160000190805190602001906110c0929190614742565b506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301559050506002600081548092919060010191905055505050565b60606040805190810160405280600981526020017f43727970746f4375700000000000000000000000000000000000000000000000815250905090565b61117c3382614264565b151561118757600080fd5b816008600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35050565b600080600080600080600080600080600080600660008e815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169b50339a50600960008e81526020019081526020016000205499506112ac8b6142d0565b15156112b757600080fd5b8a73ffffffffffffffffffffffffffffffffffffffff168c73ffffffffffffffffffffffffffffffffffffffff16141515156112f257600080fd5b89341015151561130157600080fd5b600c8d81548110151561131057fe5b9060005260206000209060070201985061132a348b614309565b975061133a8a8a60020154614309565b9650611347876064614322565b955061135486600561433d565b945061136e61136487605561433d565b8a60020154614378565b935061137b86600a61433d565b92506113888c8c8f614396565b3073ffffffffffffffffffffffffffffffffffffffff168c73ffffffffffffffffffffffffffffffffffffffff16141515611405578b73ffffffffffffffffffffffffffffffffffffffff166108fc859081150290604051600060405180830381858888f19350505050158015611403573d6000803e3d6000fd5b505b3073ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156114c657600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc869081150290604051600060405180830381858888f193505050501580156114c4573d6000803e3d6000fd5b505b60009150600d60010160009054906101000a900460ff16151561155f576114ee836004614322565b91506114fb826008614322565b600d60000160008282540192505081905550611518826004614322565b600d60020160008282540192505081905550611535826002614322565b600d6004016000828254019250508190555081600d60060160008282540192505081905550611648565b600d60030160009054906101000a900460ff1615156115d757611583836003614322565b9150611590826004614322565b600d600201600082825401925050819055506115ad826002614322565b600d6004016000828254019250508190555081600d60060160008282540192505081905550611647565b600d60050160009054906101000a900460ff161515611632576115fb836002614322565b9150611608826002614322565b600d6004016000828254019250508190555081600d60060160008282540192505081905550611646565b82600d600601600082825401925050819055505b5b5b600090506001548a10156116725761166b6116648b60c861433d565b6064614322565b905061168a565b6116876116808b607361433d565b6064614322565b90505b80600960008f8152602001908152602001600020819055508989600201819055508089600301819055508a73ffffffffffffffffffffffffffffffffffffffff168c73ffffffffffffffffffffffffffffffffffffffff168e7f8379f52c448c616e9ccd2b6eb23a3ba1860e22ae1819341d85fe3621cc9c2ebe8d85423073ffffffffffffffffffffffffffffffffffffffff1631600d60000154600d60020154600d60040154600d60060154604051808981526020018881526020018781526020018681526020018581526020018481526020018381526020018281526020019850505050505050505060405180910390a43373ffffffffffffffffffffffffffffffffffffffff166108fc899081150290604051600060405180830381858888f193505050501580156117c3573d6000803e3d6000fd5b5050505050505050505050505050565b60006001905090565b6000600c80549050905090565b600080600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561184857600080fd5b60001515600d60050160009054906101000a900460ff1615151415151561186e57600080fd5b600260045410151561187f57600080fd5b60011515600560009054906101000a900460ff161515141515156118a257600080fd5b600c838154811015156118b157fe5b90600052602060002090600702019150600282600501541415156118d457600080fd5b8160060160006001815260200190815260200160002090506119c7816000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119875780601f1061195c57610100808354040283529160200191611987565b820191906000526020600020905b81548152906001019060200180831161196a57829003601f168201915b50505050506040805190810160405280600d81526020017f517561727465722046696e616c000000000000000000000000000000000000008152506145fd565b15156119d257600080fd5b8160040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc600d600401549081150290604051600060405180830381858888f19350505050158015611a41573d6000803e3d6000fd5b508160040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16837fa9df0576afe2fdae1326273cc40094c73c8204033b69899e1b7c4776914bee63600d600401544260405180806020018481526020018381526020018281038252600a8152602001807f53656d692046696e616c00000000000000000000000000000000000000000000815250602001935050505060405180910390a36080604051908101604052806040805190810160405280600a81526020017f53656d692046696e616c000000000000000000000000000000000000000000008152508152602001600d6004015481526020018360040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001428152508260060160008460050160008154809291906001019190505581526020019081526020016000206000820151816000019080519060200190611bd4929190614742565b506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060608201518160030155905050600460008154809291906001019190505550505050565b600080600080600080600080600d60010160009054906101000a900460ff169750600d600001549650600d60030160009054906101000a900460ff169550600d600201549450600d60050160009054906101000a900460ff169350600d600401549250600d6006015491503073ffffffffffffffffffffffffffffffffffffffff163190509091929394959697565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611d098382614264565b1515611d1457600080fd5b611d1e82826146d6565b1515611d2957600080fd5b611d32826142d0565b1515611d3d57600080fd5b611d48838383614396565b505050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611da957600080fd5b60001515600d60010160009054906101000a900460ff16151514151515611dcf57600080fd5b6001600d60030160006101000a81548160ff021916908315150217905550565b60086020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611e9657600080fd5b809050919050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611efa57600080fd5b6001600d60010160006101000a81548160ff021916908315150217905550565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611fbf57600080fd5b60001515600560009054906101000a900460ff16151514151515611fe257600080fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015612061573d6000803e3d6000fd5b50565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156120c057600080fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b600080600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561215a57600080fd5b60011515600560009054906101000a900460ff1615151415151561217d57600080fd5b600c8381548110151561218c57fe5b90600052602060002090600702019150600382600501541415156121af57600080fd5b8160060160006002815260200190815260200160002090506122a2816000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156122625780601f1061223757610100808354040283529160200191612262565b820191906000526020600020905b81548152906001019060200180831161224557829003601f168201915b50505050506040805190810160405280600a81526020017f53656d692046696e616c000000000000000000000000000000000000000000008152506145fd565b15156122ad57600080fd5b8160040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc600d600601549081150290604051600060405180830381858888f1935050505015801561231c573d6000803e3d6000fd5b508160040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16837fa9df0576afe2fdae1326273cc40094c73c8204033b69899e1b7c4776914bee63600d60060154426040518080602001848152602001838152602001828103825260058152602001807f46696e616c000000000000000000000000000000000000000000000000000000815250602001935050505060405180910390a36080604051908101604052806040805190810160405280600581526020017f46696e616c0000000000000000000000000000000000000000000000000000008152508152602001600d6006015481526020018360040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020014281525082600601600084600501600081548092919060010191905055815260200190815260200160002060008201518160000190805190602001906124af929190614742565b506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301559050506001600560006101000a81548160ff021916908315150217905550505050565b60606040805190810160405280600e81526020017f43727970746f437570546f6b656e000000000000000000000000000000000000815250905090565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156125c757600080fd5b60001515600d60030160009054906101000a900460ff161515141515156125ed57600080fd5b6001600d60050160006101000a81548160ff021916908315150217905550565b6126173382614264565b151561262257600080fd5b61262b826142d0565b151561263657600080fd5b612641338383614396565b5050565b600060606000806000806000600c8981548110151561266057fe5b906000526020600020906007020191508160060160008981526020019081526020016000209050879650806000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156127225780601f106126f757610100808354040283529160200191612722565b820191906000526020600020905b81548152906001019060200180831161270557829003601f168201915b50505050509550806001015494508060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1693508060030154925050509295509295909350565b6000803391506006600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506127af826142d0565b15156127ba57600080fd5b6127c482846146d6565b15156127cf57600080fd5b6127da818385614396565b505050565b600080600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561283e57600080fd5b60001515600d60030160009054906101000a900460ff1615151415151561286457600080fd5b600460035410151561287557600080fd5b60011515600560009054906101000a900460ff1615151415151561289857600080fd5b600c838154811015156128a757fe5b90600052602060002090600702019150600182600501541415156128ca57600080fd5b81600601600080815260200190815260200160002090506129bc816000018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561297c5780601f106129515761010080835404028352916020019161297c565b820191906000526020600020905b81548152906001019060200180831161295f57829003601f168201915b50505050506040805190810160405280600c81526020017f4c617374205369787465656e00000000000000000000000000000000000000008152506145fd565b15156129c757600080fd5b8160040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc600d600201549081150290604051600060405180830381858888f19350505050158015612a36573d6000803e3d6000fd5b508160040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16837fa9df0576afe2fdae1326273cc40094c73c8204033b69899e1b7c4776914bee63600d600201544260405180806020018481526020018381526020018281038252600d8152602001807f517561727465722046696e616c00000000000000000000000000000000000000815250602001935050505060405180910390a36080604051908101604052806040805190810160405280600d81526020017f517561727465722046696e616c000000000000000000000000000000000000008152508152602001600d6002015481526020018360040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001428152508260060160008460050160008154809291906001019190505581526020019081526020016000206000820151816000019080519060200190612bc9929190614742565b506020820151816001015560408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060608201518160030155905050600360008154809291906001019190505550505050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60066020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612cf457600080fd5b612d8e6040805190810160405280600681526020017f52757373696100000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f5255530000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b612e286040805190810160405280600c81526020017f53617564692041726162696100000000000000000000000000000000000000008152506040805190810160405280600381526020017f4b53410000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b612ec26040805190810160405280600581526020017f45677970740000000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4547590000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b612f5c6040805190810160405280600781526020017f55727567756179000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f5552550000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b612ff66040805190810160405280600881526020017f506f72747567616c0000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f504f520000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6130906040805190810160405280600581526020017f537061696e0000000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f5350410000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b61312a6040805190810160405280600781526020017f4d6f726f63636f000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4d4f520000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6131c46040805190810160405280600481526020017f4972616e000000000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f49524e0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b61325e6040805190810160405280600681526020017f4672616e636500000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4652410000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6132f86040805190810160405280600981526020017f4175737472616c696100000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4155530000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6133926040805190810160405280600481526020017f50657275000000000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f5045520000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b61342c6040805190810160405280600781526020017f44656e6d61726b000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f44454e0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6134c66040805190810160405280600981526020017f417267656e74696e6100000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4152470000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6135606040805190810160405280600781526020017f4963656c616e64000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4943450000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6135fa6040805190810160405280600781526020017f43726f61746961000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f43524f0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6136946040805190810160405280600781526020017f4e696765726961000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4e47410000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b61372e6040805190810160405280600681526020017f4272617a696c00000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f42525a0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6137c86040805190810160405280600b81526020017f537769747a65726c616e640000000000000000000000000000000000000000008152506040805190810160405280600381526020017f5357490000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6138626040805190810160405280600a81526020017f436f7374612052696361000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4352430000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6138fc6040805190810160405280600681526020017f53657262696100000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f5345520000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6139966040805190810160405280600781526020017f4765726d616e79000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4745520000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613a306040805190810160405280600681526020017f4d657869636f00000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4d45580000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613aca6040805190810160405280600681526020017f53776564656e00000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f5357450000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613b646040805190810160405280600b81526020017f536f757468204b6f7265610000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4b4f520000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613bfe6040805190810160405280600781526020017f42656c6769756d000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f42454c0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613c986040805190810160405280600681526020017f50616e616d6100000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f50414e0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613d326040805190810160405280600781526020017f54756e69736961000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f54554e0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613dcc6040805190810160405280600781526020017f456e676c616e64000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f454e470000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613e666040805190810160405280600681526020017f506f6c616e6400000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f504f4c0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613f006040805190810160405280600781526020017f53656e6567616c000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f53454e0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b613f9a6040805190810160405280600881526020017f436f6c6f6d6269610000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f434f4c0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b6140346040805190810160405280600581526020017f4a6170616e0000000000000000000000000000000000000000000000000000008152506040805190810160405280600381526020017f4a504e0000000000000000000000000000000000000000000000000000000000815250600054600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16614112565b565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561409257600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156140ce57600080fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61411a6147c2565b600060c060405190810160405280878152602001868152602001600081526020018581526020018473ffffffffffffffffffffffffffffffffffffffff168152602001600081525091506001600c839080600181540180825580915050906001820390600052602060002090600702016000909192909190915060008201518160000190805190602001906141b0929190614742565b5060208201518160010190805190602001906141cd929190614742565b50604082015181600201556060820151816003015560808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060a08201518160050155505003905083600960008381526020019081526020016000208190555061425c60008483614396565b505050505050565b60006006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600082821115151561431757fe5b818303905092915050565b600080828481151561433057fe5b0490508091505092915050565b60008060008414156143525760009150614371565b828402905082848281151561436357fe5b0414151561436d57fe5b8091505b5092915050565b600080828401905083811015151561438c57fe5b8091505092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001019190505550826006600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c8281548110151561444857fe5b90600052602060002090600702019050828160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151561455857600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906001900391905055506008600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef848484604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a150505050565b6000816040518082805190602001908083835b6020831015156146355780518252602082019150602081019050602083039250614610565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916836040518082805190602001908083835b60208310151561469c5780518252602082019150602081019050602083039250614677565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191614905092915050565b60008273ffffffffffffffffffffffffffffffffffffffff166008600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061478357805160ff19168380011785556147b1565b828001600101855582156147b1579182015b828111156147b0578251825591602001919060010190614795565b5b5090506147be919061480f565b5090565b60c06040519081016040528060608152602001606081526020016000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b61483191905b8082111561482d576000816000905550600101614815565b5090565b905600a165627a7a72305820dab3bc46813e0d35f454b16010feeec48df7a1a3044f8ddaa3928431de4862d70029

   Swarm Source:
bzzr://dab3bc46813e0d35f454b16010feeec48df7a1a3044f8ddaa3928431de4862d7

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.