Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 99 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Buy | 13421153 | 1183 days ago | IN | 1 ETH | 0.01467429 | ||||
Buy | 13284478 | 1205 days ago | IN | 0.69 ETH | 0.01211376 | ||||
Cancel | 13255990 | 1209 days ago | IN | 0 ETH | 0.00627609 | ||||
Cancel | 13236996 | 1212 days ago | IN | 0 ETH | 0.00794053 | ||||
Cancel | 13229742 | 1213 days ago | IN | 0 ETH | 0.00465809 | ||||
Cancel | 13218373 | 1215 days ago | IN | 0 ETH | 0.013249 | ||||
Cancel | 13218249 | 1215 days ago | IN | 0 ETH | 0.00980679 | ||||
Cancel | 13218158 | 1215 days ago | IN | 0 ETH | 0.01033798 | ||||
Cancel | 13217559 | 1215 days ago | IN | 0 ETH | 0.00696072 | ||||
Cancel | 13210605 | 1216 days ago | IN | 0 ETH | 0.00762449 | ||||
Withdraw | 13204485 | 1217 days ago | IN | 0 ETH | 0.00208504 | ||||
Buy | 13194286 | 1219 days ago | IN | 0.49 ETH | 0.01172087 | ||||
Cancel | 13193691 | 1219 days ago | IN | 0 ETH | 0.01037406 | ||||
Cancel | 13177318 | 1221 days ago | IN | 0 ETH | 0.01005417 | ||||
Cancel | 13174360 | 1222 days ago | IN | 0 ETH | 0.01198891 | ||||
Cancel | 13174357 | 1222 days ago | IN | 0 ETH | 0.01481514 | ||||
Cancel | 13174357 | 1222 days ago | IN | 0 ETH | 0.01637405 | ||||
Buy | 13172029 | 1222 days ago | IN | 0.69 ETH | 0.0090307 | ||||
Buy | 13168993 | 1222 days ago | IN | 2 ETH | 0.01084314 | ||||
Cancel | 13158228 | 1224 days ago | IN | 0 ETH | 0.00931767 | ||||
Cancel | 13156782 | 1224 days ago | IN | 0 ETH | 0.0150627 | ||||
Buy | 13155867 | 1224 days ago | IN | 10 ETH | 0.01500961 | ||||
Buy | 13153896 | 1225 days ago | IN | 3 ETH | 0.01953165 | ||||
Cancel | 13135055 | 1228 days ago | IN | 0 ETH | 0.01378361 | ||||
Cancel | 13134038 | 1228 days ago | IN | 0 ETH | 0.01727944 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
13421153 | 1183 days ago | 0.97 ETH | ||||
13284478 | 1205 days ago | 0.6693 ETH | ||||
13204485 | 1217 days ago | 0.4854 ETH | ||||
13194286 | 1219 days ago | 0.4753 ETH | ||||
13172029 | 1222 days ago | 0.6693 ETH | ||||
13168993 | 1222 days ago | 1.94 ETH | ||||
13155867 | 1224 days ago | 9.7 ETH | ||||
13153896 | 1225 days ago | 2.91 ETH | ||||
13131532 | 1228 days ago | 1.70953756 ETH | ||||
13126158 | 1229 days ago | 32.01 ETH | ||||
13124854 | 1229 days ago | 2.425 ETH | ||||
13122393 | 1230 days ago | 8.73 ETH | ||||
13121815 | 1230 days ago | 2.91 ETH | ||||
13121088 | 1230 days ago | 0.97 ETH | ||||
13120981 | 1230 days ago | 0.97 ETH | ||||
13120967 | 1230 days ago | 0.97 ETH | ||||
13120908 | 1230 days ago | 0.97 ETH | ||||
13120650 | 1230 days ago | 0.97 ETH | ||||
13120598 | 1230 days ago | 0.7275 ETH | ||||
13120494 | 1230 days ago | 0.7275 ETH | ||||
13120480 | 1230 days ago | 0.485 ETH | ||||
13120457 | 1230 days ago | 0.2813 ETH | ||||
13120413 | 1230 days ago | 0.2425 ETH | ||||
13120406 | 1230 days ago | 0.0485 ETH | ||||
13120388 | 1230 days ago | 0.0485 ETH |
Loading...
Loading
Contract Name:
Marketplace
Compiler Version
v0.4.19+commit.c4cbbb05
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-02-18 */ pragma solidity ^0.4.18; contract Ownable { address public owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); function Ownable() public { owner = msg.sender; } modifier onlyOwner() { require(msg.sender == owner); _; } function transferOwnership(address newOwner) public onlyOwner { require(newOwner != address(0)); OwnershipTransferred(owner, newOwner); owner = newOwner; } } contract ERC721 { function implementsERC721() public pure returns (bool); function totalSupply() public view returns (uint256 total); function balanceOf(address _owner) public view returns (uint256 balance); function ownerOf(uint256 _tokenId) public view returns (address owner); function approve(address _to, uint256 _tokenId) public; 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 indexed tokenId); event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId); } contract SampleStorage is Ownable { struct Sample { string ipfsHash; uint rarity; } mapping (uint32 => Sample) public sampleTypes; uint32 public numOfSampleTypes; uint32 public numOfCommon; uint32 public numOfRare; uint32 public numOfLegendary; // The mythical sample is a type common that appears only once in a 1000 function addNewSampleType(string _ipfsHash, uint _rarityType) public onlyOwner { if (_rarityType == 0) { numOfCommon++; } else if (_rarityType == 1) { numOfRare++; } else if(_rarityType == 2) { numOfLegendary++; } else if(_rarityType == 3) { numOfCommon++; } sampleTypes[numOfSampleTypes] = Sample({ ipfsHash: _ipfsHash, rarity: _rarityType }); numOfSampleTypes++; } function getType(uint _randomNum) public view returns (uint32) { uint32 range = 0; if (_randomNum > 0 && _randomNum < 600) { range = 600 / numOfCommon; return uint32(_randomNum) / range; } else if(_randomNum >= 600 && _randomNum < 900) { range = 300 / numOfRare; return uint32(_randomNum) / range; } else { range = 100 / numOfLegendary; return uint32(_randomNum) / range; } } } contract Jingle is Ownable, ERC721 { struct MetaInfo { string name; string author; } mapping (uint => address) internal tokensForOwner; mapping (uint => address) internal tokensForApproved; mapping (address => uint[]) internal tokensOwned; mapping (uint => uint) internal tokenPosInArr; mapping(uint => uint[]) internal samplesInJingle; mapping(uint => MetaInfo) public jinglesInfo; mapping(bytes32 => bool) public uniqueJingles; mapping(uint => uint8[]) public soundEffects; mapping(uint => uint8[20]) public settings; uint public numOfJingles; address public cryptoJingles; Marketplace public marketplaceContract; event Transfer(address indexed from, address indexed to, uint256 indexed tokenId); event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId); event EffectAdded(uint indexed jingleId, uint8[] effectParams); event Composed(uint indexed jingleId, address indexed owner, uint32[5] samples, uint32[5] jingleTypes, string name, string author, uint8[20] settings); modifier onlyCryptoJingles() { require(msg.sender == cryptoJingles); _; } function transfer(address _to, uint256 _jingleId) public { require(tokensForOwner[_jingleId] != 0x0); require(tokensForOwner[_jingleId] == msg.sender); tokensForApproved[_jingleId] = 0x0; removeJingle(msg.sender, _jingleId); addJingle(_to, _jingleId); Approval(msg.sender, 0, _jingleId); Transfer(msg.sender, _to, _jingleId); } function approve(address _to, uint256 _jingleId) public { require(tokensForOwner[_jingleId] != 0x0); require(ownerOf(_jingleId) == msg.sender); require(_to != msg.sender); if (_getApproved(_jingleId) != 0x0 || _to != 0x0) { tokensForApproved[_jingleId] = _to; Approval(msg.sender, _to, _jingleId); } } function transferFrom(address _from, address _to, uint256 _jingleId) public { require(tokensForOwner[_jingleId] != 0x0); require(_getApproved(_jingleId) == msg.sender); require(ownerOf(_jingleId) == _from); require(_to != 0x0); tokensForApproved[_jingleId] = 0x0; removeJingle(_from, _jingleId); addJingle(_to, _jingleId); Approval(_from, 0, _jingleId); Transfer(_from, _to, _jingleId); } function approveAndSell(uint _jingleId, uint _amount) public { approve(address(marketplaceContract), _jingleId); marketplaceContract.sell(msg.sender, _jingleId, _amount); } function composeJingle(address _owner, uint32[5] jingles, uint32[5] jingleTypes, string name, string author, uint8[20] _settings) public onlyCryptoJingles { uint _jingleId = numOfJingles; uniqueJingles[keccak256(jingles)] = true; tokensForOwner[_jingleId] = _owner; tokensOwned[_owner].push(_jingleId); samplesInJingle[_jingleId] = jingles; settings[_jingleId] = _settings; tokenPosInArr[_jingleId] = tokensOwned[_owner].length - 1; if (bytes(author).length == 0) { author = "Soundtoshi Nakajingles"; } jinglesInfo[numOfJingles] = MetaInfo({ name: name, author: author }); Composed(numOfJingles, _owner, jingles, jingleTypes, name, author, _settings); numOfJingles++; } function addSoundEffect(uint _jingleId, uint8[] _effectParams) external { require(msg.sender == ownerOf(_jingleId)); soundEffects[_jingleId] = _effectParams; EffectAdded(_jingleId, _effectParams); } function implementsERC721() public pure returns (bool) { return true; } function totalSupply() public view returns (uint256) { return numOfJingles; } function balanceOf(address _owner) public view returns (uint256 balance) { return tokensOwned[_owner].length; } function ownerOf(uint256 _jingleId) public view returns (address) { return tokensForOwner[_jingleId]; } function tokenOfOwnerByIndex(address _owner, uint256 _index) external view returns (uint256) { return tokensOwned[_owner][_index]; } function getSamplesForJingle(uint _jingleId) external view returns(uint[]) { return samplesInJingle[_jingleId]; } function getAllJingles(address _owner) external view returns(uint[]) { return tokensOwned[_owner]; } function getMetaInfo(uint _jingleId) external view returns(string, string) { return (jinglesInfo[_jingleId].name, jinglesInfo[_jingleId].author); } function _getApproved(uint _jingleId) internal view returns (address) { return tokensForApproved[_jingleId]; } // Internal functions of the contract function addJingle(address _owner, uint _jingleId) internal { tokensForOwner[_jingleId] = _owner; tokensOwned[_owner].push(_jingleId); tokenPosInArr[_jingleId] = tokensOwned[_owner].length - 1; } // find who owns that jingle and at what position is it in the owners arr // Swap that token with the last one in arr and delete the end of arr function removeJingle(address _owner, uint _jingleId) internal { uint length = tokensOwned[_owner].length; uint index = tokenPosInArr[_jingleId]; uint swapToken = tokensOwned[_owner][length - 1]; tokensOwned[_owner][index] = swapToken; tokenPosInArr[swapToken] = index; delete tokensOwned[_owner][length - 1]; tokensOwned[_owner].length--; } // Owner functions function setCryptoJinglesContract(address _cryptoJingles) public onlyOwner { require(cryptoJingles == 0x0); cryptoJingles = _cryptoJingles; } function setMarketplaceContract(address _marketplace) public onlyOwner { require(address(marketplaceContract) == 0x0); marketplaceContract = Marketplace(_marketplace); } } contract Sample is Ownable { mapping (uint => address) internal tokensForOwner; mapping (address => uint[]) internal tokensOwned; mapping (uint => uint) internal tokenPosInArr; mapping (uint => uint32) public tokenType; uint public numOfSamples; address public cryptoJingles; address public sampleRegistry; SampleStorage public sampleStorage; event Mint(address indexed _to, uint256 indexed _tokenId); modifier onlyCryptoJingles() { require(msg.sender == cryptoJingles); _; } function Sample(address _sampleStorage) public { sampleStorage = SampleStorage(_sampleStorage); } function mint(address _owner, uint _randomNum) public onlyCryptoJingles { uint32 sampleType = sampleStorage.getType(_randomNum); addSample(_owner, sampleType, numOfSamples); Mint(_owner, numOfSamples); numOfSamples++; } function mintForSampleRegitry(address _owner, uint32 _type) public { require(msg.sender == sampleRegistry); addSample(_owner, _type, numOfSamples); Mint(_owner, numOfSamples); numOfSamples++; } function removeSample(address _owner, uint _sampleId) public onlyCryptoJingles { uint length = tokensOwned[_owner].length; uint index = tokenPosInArr[_sampleId]; uint swapToken = tokensOwned[_owner][length - 1]; tokensOwned[_owner][index] = swapToken; tokenPosInArr[swapToken] = index; delete tokensOwned[_owner][length - 1]; tokensOwned[_owner].length--; tokensForOwner[_sampleId] = 0x0; } function getSamplesForOwner(address _owner) public constant returns (uint[]) { return tokensOwned[_owner]; } function getTokenType(uint _sampleId) public constant returns (uint) { return tokenType[_sampleId]; } function isTokenOwner(uint _tokenId, address _user) public constant returns(bool) { return tokensForOwner[_tokenId] == _user; } function getAllSamplesForOwner(address _owner) public constant returns(uint[]) { uint[] memory samples = tokensOwned[_owner]; uint[] memory usersSamples = new uint[](samples.length * 2); uint j = 0; for(uint i = 0; i < samples.length; ++i) { usersSamples[j] = samples[i]; usersSamples[j + 1] = tokenType[samples[i]]; j += 2; } return usersSamples; } // Internal functions of the contract function addSample(address _owner, uint32 _sampleType, uint _sampleId) internal { tokensForOwner[_sampleId] = _owner; tokensOwned[_owner].push(_sampleId); tokenType[_sampleId] = _sampleType; tokenPosInArr[_sampleId] = tokensOwned[_owner].length - 1; } // Owner functions // Set the crypto jingles contract can function setCryptoJinglesContract(address _cryptoJingles) public onlyOwner { require(cryptoJingles == 0x0); cryptoJingles = _cryptoJingles; } function setSampleRegistry(address _sampleRegistry) public onlyOwner { sampleRegistry = _sampleRegistry; } } contract CryptoJingles is Ownable { struct Purchase { address user; uint blockNumber; bool revealed; uint numSamples; bool exists; } event Purchased(address indexed user, uint blockNumber, uint numJingles, uint numOfPurchases); event JinglesOpened(address byWhom, address jingleOwner, uint currBlockNumber); mapping (uint => bool) public isAlreadyUsed; mapping(address => string) public authors; uint numOfPurchases; uint MAX_SAMPLES_PER_PURCHASE = 15; uint SAMPLE_PRICE = 10 ** 15; uint SAMPLES_PER_JINGLE = 5; uint NUM_SAMPLE_RANGE = 1000; Sample public sampleContract; Jingle public jingleContract; function CryptoJingles(address _sample, address _jingle) public { numOfPurchases = 0; sampleContract = Sample(_sample); jingleContract = Jingle(_jingle); } function buySamples(uint _numSamples, address _to) public payable { require(_numSamples <= MAX_SAMPLES_PER_PURCHASE); require(msg.value >= (SAMPLE_PRICE * _numSamples)); require(_to != 0x0); for (uint i = 0; i < _numSamples; ++i) { bytes32 blockHash = block.blockhash(block.number - 1); uint randomNum = randomGen(blockHash, i); sampleContract.mint(_to, randomNum); } Purchased(_to, block.number, _numSamples, numOfPurchases); numOfPurchases++; } function composeJingle(string name, uint32[5] samples, uint8[20] settings) public { require(jingleContract.uniqueJingles(keccak256(samples)) == false); uint32[5] memory sampleTypes; //check if you own all the 5 samples for (uint i = 0; i < SAMPLES_PER_JINGLE; ++i) { bool isOwner = sampleContract.isTokenOwner(samples[i], msg.sender); require(isOwner == true && isAlreadyUsed[samples[i]] == false); isAlreadyUsed[samples[i]] = true; sampleTypes[i] = sampleContract.tokenType(samples[i]); sampleContract.removeSample(msg.sender, samples[i]); } //create a new jingle containing those 5 samples jingleContract.composeJingle(msg.sender, samples, sampleTypes, name, authors[msg.sender], settings); } // Addresses can set their name when composing jingles function setAuthorName(string _name) public { authors[msg.sender] = _name; } function randomGen(bytes32 blockHash, uint seed) constant public returns (uint randomNumber) { return (uint(keccak256(blockHash, block.timestamp, numOfPurchases, seed )) % NUM_SAMPLE_RANGE); } // The only ether kept on this contract are owner money for samples function withdraw(uint _amount) public onlyOwner { require(_amount <= this.balance); msg.sender.transfer(_amount); } } contract Marketplace is Ownable { modifier onlyJingle() { require(msg.sender == address(jingleContract)); _; } struct Order { uint price; address seller; uint timestamp; bool exists; } event SellOrder(address owner, uint jingleId, uint price); event Bought(uint jingleId, address buyer, uint price); event Canceled(address owner, uint jingleId); uint public numOrders; uint public ownerBalance; uint OWNERS_CUT = 3; // 3 percent of every sale goes to owner mapping (uint => Order) public sellOrders; mapping(uint => uint) public positionOfJingle; uint[] public jinglesOnSale; Jingle public jingleContract; function Marketplace(address _jingle) public { jingleContract = Jingle(_jingle); ownerBalance = 0; } function sell(address _owner, uint _jingleId, uint _amount) public onlyJingle { require(_amount > 100); require(sellOrders[_jingleId].exists == false); sellOrders[_jingleId] = Order({ price: _amount, seller: _owner, timestamp: now, exists: true }); numOrders++; // set for iterating jinglesOnSale.push(_jingleId); positionOfJingle[_jingleId] = jinglesOnSale.length - 1; //transfer ownership jingleContract.transferFrom(_owner, this, _jingleId); //Fire an sell event SellOrder(_owner, _jingleId, _amount); } function buy(uint _jingleId) public payable { require(sellOrders[_jingleId].exists == true); require(msg.value >= sellOrders[_jingleId].price); sellOrders[_jingleId].exists = false; numOrders--; //delete stuff for iterating removeOrder(_jingleId); //transfer ownership jingleContract.transfer(msg.sender, _jingleId); // transfer money to seller uint price = sellOrders[_jingleId].price; uint threePercent = (price / 100) * OWNERS_CUT; sellOrders[_jingleId].seller.transfer(price - threePercent); ownerBalance += threePercent; //fire and event Bought(_jingleId, msg.sender, msg.value); } function cancel(uint _jingleId) public { require(sellOrders[_jingleId].exists == true); require(sellOrders[_jingleId].seller == msg.sender); sellOrders[_jingleId].exists = false; numOrders--; //delete stuff for iterating removeOrder(_jingleId); jingleContract.transfer(msg.sender, _jingleId); //fire and event Canceled(msg.sender, _jingleId); } function removeOrder(uint _jingleId) internal { uint length = jinglesOnSale.length; uint index = positionOfJingle[_jingleId]; uint lastOne = jinglesOnSale[length - 1]; jinglesOnSale[index] = lastOne; positionOfJingle[lastOne] = index; delete jinglesOnSale[length - 1]; jinglesOnSale.length--; } function getAllJinglesOnSale() public view returns(uint[]) { return jinglesOnSale; } //Owners functions function withdraw(uint _amount) public onlyOwner { require(_amount <= ownerBalance); msg.sender.transfer(_amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_jingleId","type":"uint256"}],"name":"cancel","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numOrders","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"sellOrders","outputs":[{"name":"price","type":"uint256"},{"name":"seller","type":"address"},{"name":"timestamp","type":"uint256"},{"name":"exists","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"positionOfJingle","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"},{"name":"_jingleId","type":"uint256"},{"name":"_amount","type":"uint256"}],"name":"sell","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"jingleContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ownerBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAllJinglesOnSale","outputs":[{"name":"","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_jingleId","type":"uint256"}],"name":"buy","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"jinglesOnSale","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_jingle","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"jingleId","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"}],"name":"SellOrder","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"jingleId","type":"uint256"},{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"price","type":"uint256"}],"name":"Bought","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"jingleId","type":"uint256"}],"name":"Canceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
606060405260038055341561001357600080fd5b6040516020806111ba83398101604052808051906020019091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600281905550506110f2806100c86000396000f3006060604052600436106100c5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680632e1a7d4d146100ca57806340e58ee5146100ed57806345d53788146101105780634a8393f31461013957806366417115146101b55780636a272462146101ec5780638da5cb5b14610237578063a82e31791461028c578063bedcf003146102e1578063c591c8a31461030a578063d96a094a14610374578063f2fde38b1461038c578063fc76687c146103c5575b600080fd5b34156100d557600080fd5b6100eb60048080359060200190919050506103fc565b005b34156100f857600080fd5b61010e60048080359060200190919050506104ab565b005b341561011b57600080fd5b6101236106e2565b6040518082815260200191505060405180910390f35b341561014457600080fd5b61015a60048080359060200190919050506106e8565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018215151515815260200194505050505060405180910390f35b34156101c057600080fd5b6101d66004808035906020019091905050610745565b6040518082815260200191505060405180910390f35b34156101f757600080fd5b610235600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190505061075d565b005b341561024257600080fd5b61024a610aa9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561029757600080fd5b61029f610ace565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102ec57600080fd5b6102f4610af4565b6040518082815260200191505060405180910390f35b341561031557600080fd5b61031d610afa565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610360578082015181840152602081019050610345565b505050509050019250505060405180910390f35b61038a6004808035906020019091905050610b58565b005b341561039757600080fd5b6103c3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610e05565b005b34156103d057600080fd5b6103e66004808035906020019091905050610f5a565b6040518082815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561045757600080fd5b600254811115151561046857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015156104a857600080fd5b50565b600115156004600083815260200190815260200160002060030160009054906101000a900460ff1615151415156104e157600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166004600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561055157600080fd5b60006004600083815260200190815260200160002060030160006101000a81548160ff0219169083151502179055506001600081548092919060019003919050555061059c81610f7e565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b151561066057600080fd5b6102c65a03f1151561067157600080fd5b5050507ff3a6ef5718c05d9183af076f5753197b68b04552a763c34796637d6134bdd0f23382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60015481565b60046020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030160009054906101000a900460ff16905084565b60056020528060005260406000206000915090505481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156107b957600080fd5b6064811115156107c857600080fd5b600015156004600084815260200190815260200160002060030160009054906101000a900460ff1615151415156107fe57600080fd5b6080604051908101604052808281526020018473ffffffffffffffffffffffffffffffffffffffff16815260200142815260200160011515815250600460008481526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040820151816002015560608201518160030160006101000a81548160ff021916908315150217905550905050600160008154809291906001019190505550600680548060010182816108f09190611035565b9160005260206000209001600084909190915055506001600680549050036005600084815260200190815260200160002081905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8430856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b1515610a1d57600080fd5b6102c65a03f11515610a2e57600080fd5b5050507fcbc0df49dd88ec0ba5b87a3c77ed66af6480b175df0f21649805ed6201c56145838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60025481565b610b02611061565b6006805480602002602001604051908101604052809291908181526020018280548015610b4e57602002820191906000526020600020905b815481526020019060010190808311610b3a575b5050505050905090565b600080600115156004600085815260200190815260200160002060030160009054906101000a900460ff161515141515610b9157600080fd5b60046000848152602001908152602001600020600001543410151515610bb657600080fd5b60006004600085815260200190815260200160002060030160006101000a81548160ff02191690831515021790555060016000815480929190600190039190505550610c0183610f7e565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610cc557600080fd5b6102c65a03f11515610cd657600080fd5b50505060046000848152602001908152602001600020600001549150600354606483811515610d0157fe5b040290506004600084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8284039081150290604051600060405180830381858888f193505050501515610d7d57600080fd5b806002600082825401925050819055507fd2728f908c7e0feb83c6278798370fcb86b62f236c9dbf1a3f541096c2159040833334604051808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a1505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600681815481101515610f6957fe5b90600052602060002090016000915090505481565b6000806000600680549050925060056000858152602001908152602001600020549150600660018403815481101515610fb357fe5b906000526020600020900154905080600683815481101515610fd157fe5b90600052602060002090018190555081600560008381526020019081526020016000208190555060066001840381548110151561100a57fe5b906000526020600020900160009055600680548091906001900361102e9190611075565b5050505050565b81548183558181151161105c5781836000526020600020918201910161105b91906110a1565b5b505050565b602060405190810160405280600081525090565b81548183558181151161109c5781836000526020600020918201910161109b91906110a1565b5b505050565b6110c391905b808211156110bf5760008160009055506001016110a7565b5090565b905600a165627a7a7230582085673e787fe669197b1d40ed7eacb154af01c530b00da2f25847837b9226e9e700290000000000000000000000005b6660ca047cc351bfedca4fc864d0a88f551485
Deployed Bytecode
0x6060604052600436106100c5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680632e1a7d4d146100ca57806340e58ee5146100ed57806345d53788146101105780634a8393f31461013957806366417115146101b55780636a272462146101ec5780638da5cb5b14610237578063a82e31791461028c578063bedcf003146102e1578063c591c8a31461030a578063d96a094a14610374578063f2fde38b1461038c578063fc76687c146103c5575b600080fd5b34156100d557600080fd5b6100eb60048080359060200190919050506103fc565b005b34156100f857600080fd5b61010e60048080359060200190919050506104ab565b005b341561011b57600080fd5b6101236106e2565b6040518082815260200191505060405180910390f35b341561014457600080fd5b61015a60048080359060200190919050506106e8565b604051808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018215151515815260200194505050505060405180910390f35b34156101c057600080fd5b6101d66004808035906020019091905050610745565b6040518082815260200191505060405180910390f35b34156101f757600080fd5b610235600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001909190505061075d565b005b341561024257600080fd5b61024a610aa9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561029757600080fd5b61029f610ace565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156102ec57600080fd5b6102f4610af4565b6040518082815260200191505060405180910390f35b341561031557600080fd5b61031d610afa565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610360578082015181840152602081019050610345565b505050509050019250505060405180910390f35b61038a6004808035906020019091905050610b58565b005b341561039757600080fd5b6103c3600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610e05565b005b34156103d057600080fd5b6103e66004808035906020019091905050610f5a565b6040518082815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561045757600080fd5b600254811115151561046857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015156104a857600080fd5b50565b600115156004600083815260200190815260200160002060030160009054906101000a900460ff1615151415156104e157600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166004600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561055157600080fd5b60006004600083815260200190815260200160002060030160006101000a81548160ff0219169083151502179055506001600081548092919060019003919050555061059c81610f7e565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b151561066057600080fd5b6102c65a03f1151561067157600080fd5b5050507ff3a6ef5718c05d9183af076f5753197b68b04552a763c34796637d6134bdd0f23382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b60015481565b60046020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030160009054906101000a900460ff16905084565b60056020528060005260406000206000915090505481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156107b957600080fd5b6064811115156107c857600080fd5b600015156004600084815260200190815260200160002060030160009054906101000a900460ff1615151415156107fe57600080fd5b6080604051908101604052808281526020018473ffffffffffffffffffffffffffffffffffffffff16815260200142815260200160011515815250600460008481526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040820151816002015560608201518160030160006101000a81548160ff021916908315150217905550905050600160008154809291906001019190505550600680548060010182816108f09190611035565b9160005260206000209001600084909190915055506001600680549050036005600084815260200190815260200160002081905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8430856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b1515610a1d57600080fd5b6102c65a03f11515610a2e57600080fd5b5050507fcbc0df49dd88ec0ba5b87a3c77ed66af6480b175df0f21649805ed6201c56145838383604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60025481565b610b02611061565b6006805480602002602001604051908101604052809291908181526020018280548015610b4e57602002820191906000526020600020905b815481526020019060010190808311610b3a575b5050505050905090565b600080600115156004600085815260200190815260200160002060030160009054906101000a900460ff161515141515610b9157600080fd5b60046000848152602001908152602001600020600001543410151515610bb657600080fd5b60006004600085815260200190815260200160002060030160006101000a81548160ff02191690831515021790555060016000815480929190600190039190505550610c0183610f7e565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b1515610cc557600080fd5b6102c65a03f11515610cd657600080fd5b50505060046000848152602001908152602001600020600001549150600354606483811515610d0157fe5b040290506004600084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8284039081150290604051600060405180830381858888f193505050501515610d7d57600080fd5b806002600082825401925050819055507fd2728f908c7e0feb83c6278798370fcb86b62f236c9dbf1a3f541096c2159040833334604051808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390a1505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610e9c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600681815481101515610f6957fe5b90600052602060002090016000915090505481565b6000806000600680549050925060056000858152602001908152602001600020549150600660018403815481101515610fb357fe5b906000526020600020900154905080600683815481101515610fd157fe5b90600052602060002090018190555081600560008381526020019081526020016000208190555060066001840381548110151561100a57fe5b906000526020600020900160009055600680548091906001900361102e9190611075565b5050505050565b81548183558181151161105c5781836000526020600020918201910161105b91906110a1565b5b505050565b602060405190810160405280600081525090565b81548183558181151161109c5781836000526020600020918201910161109b91906110a1565b5b505050565b6110c391905b808211156110bf5760008160009055506001016110a7565b5090565b905600a165627a7a7230582085673e787fe669197b1d40ed7eacb154af01c530b00da2f25847837b9226e9e70029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000005b6660ca047cc351bfedca4fc864d0a88f551485
-----Decoded View---------------
Arg [0] : _jingle (address): 0x5B6660ca047Cc351BFEdCA4Fc864d0A88F551485
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000005b6660ca047cc351bfedca4fc864d0a88f551485
Swarm Source
bzzr://85673e787fe669197b1d40ed7eacb154af01c530b00da2f25847837b9226e9e7
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | Ether (ETH) | 100.00% | $3,268.53 | 0.0507 | $165.71 |
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.