More Info
Private Name Tags
ContractCreator
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 4641112 | 2555 days ago | IN | 0.01 ETH | 0.00105215 |
Latest 4 internal transactions
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
4274009 | 2630 days ago | Contract Creation | 0 ETH | |||
4274009 | 2630 days ago | Contract Creation | 0 ETH | |||
4274009 | 2630 days ago | Contract Creation | 0 ETH | |||
4274009 | 2630 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Contract Name:
GVOptionProgram
Compiler Version
v0.4.16+commit.d7661dd9
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2017-09-14 */ pragma solidity ^0.4.11; /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { function mul(uint256 a, uint256 b) internal constant returns (uint256) { uint256 c = a * b; assert(a == 0 || c / a == b); return c; } function div(uint256 a, uint256 b) internal constant 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; } function sub(uint256 a, uint256 b) internal constant returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal constant returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } } /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { uint256 public totalSupply; function balanceOf(address who) constant returns (uint256); function transfer(address to, uint256 value) returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } /** * @title Basic token * @dev Basic version of StandardToken, with no allowances. */ contract BasicToken is ERC20Basic { using SafeMath for uint256; mapping(address => uint256) balances; /** * @dev transfer token for a specified address * @param _to The address to transfer to. * @param _value The amount to be transferred. */ function transfer(address _to, uint256 _value) returns (bool) { balances[msg.sender] = balances[msg.sender].sub(_value); balances[_to] = balances[_to].add(_value); Transfer(msg.sender, _to, _value); return true; } /** * @dev Gets the balance of the specified address. * @param _owner The address to query the the balance of. * @return An uint256 representing the amount owned by the passed address. */ function balanceOf(address _owner) constant returns (uint256 balance) { return balances[_owner]; } } /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address owner, address spender) constant returns (uint256); function transferFrom(address from, address to, uint256 value) returns (bool); function approve(address spender, uint256 value) returns (bool); event Approval(address indexed owner, address indexed spender, uint256 value); } /** * @title Standard ERC20 token * * @dev Implementation of the basic standard token. * @dev https://github.com/ethereum/EIPs/issues/20 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol */ contract StandardToken is ERC20, BasicToken { mapping (address => mapping (address => uint256)) allowed; /** * @dev Transfer tokens from one address to another * @param _from address The address which you want to send tokens from * @param _to address The address which you want to transfer to * @param _value uint256 the amout of tokens to be transfered */ function transferFrom(address _from, address _to, uint256 _value) returns (bool) { var _allowance = allowed[_from][msg.sender]; // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met // require (_value <= _allowance); balances[_to] = balances[_to].add(_value); balances[_from] = balances[_from].sub(_value); allowed[_from][msg.sender] = _allowance.sub(_value); Transfer(_from, _to, _value); return true; } /** * @dev Aprove the passed address to spend the specified amount of tokens on behalf of msg.sender. * @param _spender The address which will spend the funds. * @param _value The amount of tokens to be spent. */ function approve(address _spender, uint256 _value) returns (bool) { // To change the approve amount you first have to reduce the addresses` // allowance to zero by calling `approve(_spender, 0)` if it is not // already 0 to mitigate the race condition described here: // https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 require((_value == 0) || (allowed[msg.sender][_spender] == 0)); allowed[msg.sender][_spender] = _value; Approval(msg.sender, _spender, _value); return true; } /** * @dev Function to check the amount of tokens that an owner allowed to a spender. * @param _owner address The address which owns the funds. * @param _spender address The address which will spend the funds. * @return A uint256 specifing the amount of tokens still avaible for the spender. */ function allowance(address _owner, address _spender) constant returns (uint256 remaining) { return allowed[_owner][_spender]; } } contract GVOptionToken is StandardToken { address public optionProgram; string public name; string public symbol; uint public constant decimals = 18; uint TOKEN_LIMIT; // Modifiers modifier optionProgramOnly { require(msg.sender == optionProgram); _; } // Constructor function GVOptionToken( address _optionProgram, string _name, string _symbol, uint _TOKEN_LIMIT ) { require(_optionProgram != 0); optionProgram = _optionProgram; name = _name; symbol = _symbol; TOKEN_LIMIT = _TOKEN_LIMIT; } // Create tokens function buyOptions(address buyer, uint value) optionProgramOnly { require(value > 0); require(totalSupply + value <= TOKEN_LIMIT); balances[buyer] += value; totalSupply += value; Transfer(0x0, buyer, value); } function remainingTokensCount() returns(uint) { return TOKEN_LIMIT - totalSupply; } // Burn option tokens after execution during ICO function executeOption(address addr, uint optionsCount) optionProgramOnly returns (uint) { if (balances[addr] < optionsCount) { optionsCount = balances[addr]; } if (optionsCount == 0) { return 0; } balances[addr] -= optionsCount; totalSupply -= optionsCount; return optionsCount; } } contract GVOptionProgram { // Constants uint constant option30perCent = 26 * 1e16; // GVOT30 tokens per usd cent during option purchase uint constant option20perCent = 24 * 1e16; // GVOT20 tokens per usd cent during option purchase uint constant option10perCent = 22 * 1e16; // GVOT10 tokens per usd cent during option purchase uint constant token30perCent = 13684210526315800; // GVT tokens per usd cent during execution of GVOT30 uint constant token20perCent = 12631578947368500; // GVT tokens per usd cent during execution of GVOT20 uint constant token10perCent = 11578947368421100; // GVT tokens per usd cent during execution of GVOT10 string public constant option30name = "30% GVOT"; string public constant option20name = "20% GVOT"; string public constant option10name = "10% GVOT"; string public constant option30symbol = "GVOT30"; string public constant option20symbol = "GVOT20"; string public constant option10symbol = "GVOT10"; uint constant option30_TOKEN_LIMIT = 26 * 1e5 * 1e18; uint constant option20_TOKEN_LIMIT = 36 * 1e5 * 1e18; uint constant option10_TOKEN_LIMIT = 55 * 1e5 * 1e18; // Events event BuyOptions(address buyer, uint amount, string tx, uint8 optionType); event ExecuteOptions(address buyer, uint amount, string tx, uint8 optionType); // State variables address public gvAgent; // payments bot account address public team; // team account address public ico; GVOptionToken public gvOptionToken30; GVOptionToken public gvOptionToken20; GVOptionToken public gvOptionToken10; // Modifiers modifier icoOnly { require(msg.sender == ico); _; } // Constructor function GVOptionProgram(address _ico, address _gvAgent, address _team) { gvOptionToken30 = new GVOptionToken(this, option30name, option30symbol, option30_TOKEN_LIMIT); gvOptionToken20 = new GVOptionToken(this, option20name, option20symbol, option20_TOKEN_LIMIT); gvOptionToken10 = new GVOptionToken(this, option10name, option10symbol, option10_TOKEN_LIMIT); gvAgent = _gvAgent; team = _team; ico = _ico; } // Get remaining tokens for all types of option tokens function getBalance() public returns (uint, uint, uint) { return (gvOptionToken30.remainingTokensCount(), gvOptionToken20.remainingTokensCount(), gvOptionToken10.remainingTokensCount()); } // Execute options during the ICO token purchase. Priority: GVOT30 -> GVOT20 -> GVOT10 function executeOptions(address buyer, uint usdCents, string txHash) icoOnly returns (uint executedTokens, uint remainingCents) { require(usdCents > 0); (executedTokens, remainingCents) = executeIfAvailable(buyer, usdCents, txHash, gvOptionToken30, 0, token30perCent); if (remainingCents == 0) { return (executedTokens, 0); } uint executed20; (executed20, remainingCents) = executeIfAvailable(buyer, remainingCents, txHash, gvOptionToken20, 1, token20perCent); if (remainingCents == 0) { return (executedTokens + executed20, 0); } uint executed10; (executed10, remainingCents) = executeIfAvailable(buyer, remainingCents, txHash, gvOptionToken10, 2, token10perCent); return (executedTokens + executed20 + executed10, remainingCents); } // Buy option tokens. Priority: GVOT30 -> GVOT20 -> GVOT10 function buyOptions(address buyer, uint usdCents, string txHash) icoOnly { require(usdCents > 0); var remainUsdCents = buyIfAvailable(buyer, usdCents, txHash, gvOptionToken30, 0, option30perCent); if (remainUsdCents == 0) { return; } remainUsdCents = buyIfAvailable(buyer, remainUsdCents, txHash, gvOptionToken20, 1, option20perCent); if (remainUsdCents == 0) { return; } remainUsdCents = buyIfAvailable(buyer, remainUsdCents, txHash, gvOptionToken10, 2, option10perCent); } // Private functions function executeIfAvailable(address buyer, uint usdCents, string txHash, GVOptionToken optionToken, uint8 optionType, uint optionPerCent) private returns (uint executedTokens, uint remainingCents) { var optionsAmount = usdCents * optionPerCent; executedTokens = optionToken.executeOption(buyer, optionsAmount); remainingCents = usdCents - (executedTokens / optionPerCent); if (executedTokens > 0) { ExecuteOptions(buyer, executedTokens, txHash, optionType); } return (executedTokens, remainingCents); } function buyIfAvailable(address buyer, uint usdCents, string txHash, GVOptionToken optionToken, uint8 optionType, uint optionsPerCent) private returns (uint) { var availableTokens = optionToken.remainingTokensCount(); if (availableTokens > 0) { var tokens = usdCents * optionsPerCent; if(availableTokens >= tokens) { optionToken.buyOptions(buyer, tokens); BuyOptions(buyer, tokens, txHash, optionType); return 0; } else { optionToken.buyOptions(buyer, availableTokens); BuyOptions(buyer, availableTokens, txHash, optionType); return usdCents - availableTokens / optionsPerCent; } } return usdCents; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"gvOptionToken30","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"buyer","type":"address"},{"name":"usdCents","type":"uint256"},{"name":"txHash","type":"string"}],"name":"buyOptions","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"getBalance","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"option30symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"option10symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ico","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gvOptionToken20","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"option30name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"team","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"option20symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gvOptionToken10","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"buyer","type":"address"},{"name":"usdCents","type":"uint256"},{"name":"txHash","type":"string"}],"name":"executeOptions","outputs":[{"name":"executedTokens","type":"uint256"},{"name":"remainingCents","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"option10name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"option20name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gvAgent","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_ico","type":"address"},{"name":"_gvAgent","type":"address"},{"name":"_team","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"tx","type":"string"},{"indexed":false,"name":"optionType","type":"uint8"}],"name":"BuyOptions","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"tx","type":"string"},{"indexed":false,"name":"optionType","type":"uint8"}],"name":"ExecuteOptions","type":"event"}]
Contract Creation Code
606060405234156200001057600080fd5b60405160608062001fc58339810160405280805191906020018051919060200180519150505b30604080519081016040908152600882527f3330252047564f5400000000000000000000000000000000000000000000000060208301528051908101604052600681527f47564f543330000000000000000000000000000000000000000000000000000060208201526a022692484ce19d09000000620000b562000568565b600160a060020a038516815260608101829052608060208201818152906040830190830186818151815260200191508051906020019080838360005b838110156200010c5780820151818401525b602001620000f1565b50505050905090810190601f1680156200013a5780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b83811015620001735780820151818401525b60200162000158565b50505050905090810190601f168015620001a15780820380516001836020036101000a031916815260200191505b509650505050505050604051809103906000f0801515620001c157600080fd5b60038054600160a060020a031916600160a060020a039290921691909117905530604080519081016040908152600882527f3230252047564f5400000000000000000000000000000000000000000000000060208301528051908101604052600681527f47564f543230000000000000000000000000000000000000000000000000000060208201526a02fa54641bae8aaa0000006200026062000568565b600160a060020a038516815260608101829052608060208201818152906040830190830186818151815260200191508051906020019080838360005b83811015620002b75780820151818401525b6020016200029c565b50505050905090810190601f168015620002e55780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b838110156200031e5780820151818401525b60200162000303565b50505050905090810190601f1680156200034c5780820380516001836020036101000a031916815260200191505b509650505050505050604051809103906000f08015156200036c57600080fd5b60048054600160a060020a031916600160a060020a039290921691909117905530604080519081016040908152600882527f3130252047564f5400000000000000000000000000000000000000000000000060208301528051908101604052600681527f47564f543130000000000000000000000000000000000000000000000000000060208201526a048cab98f1671af58000006200040b62000568565b600160a060020a038516815260608101829052608060208201818152906040830190830186818151815260200191508051906020019080838360005b83811015620004625780820151818401525b60200162000447565b50505050905090810190601f168015620004905780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b83811015620004c95780820151818401525b602001620004ae565b50505050905090810190601f168015620004f75780820380516001836020036101000a031916815260200191505b509650505050505050604051809103906000f08015156200051757600080fd5b60058054600160a060020a0319908116600160a060020a0393841617909155600080548216858416179055600180548216848416179055600280549091169185169190911790555b50505062000579565b604051610af480620014d183390190565b610f4880620005896000396000f300606060405236156100bf5763ffffffff60e060020a60003504166302825adc81146100c457806305fc0586146100f357806312065fe01461015a57806345b426f2146101915780634d46474a1461021c5780635d452201146102a7578063779e5ad8146102d6578063793cf4301461030557806385f2aef2146103905780638cc78a40146103bf578063b6eb15c71461044a578063c75514e814610479578063d64232c0146104f6578063d92d705614610581578063ed8e873c1461060c575b600080fd5b34156100cf57600080fd5b6100d761063b565b604051600160a060020a03909116815260200160405180910390f35b34156100fe57600080fd5b61015860048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061064a95505050505050565b005b341561016557600080fd5b61016d61070d565b60405180848152602001838152602001828152602001935050505060405180910390f35b341561019c57600080fd5b6101a461084a565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022757600080fd5b6101a4610881565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102b257600080fd5b6100d76108b8565b604051600160a060020a03909116815260200160405180910390f35b34156102e157600080fd5b6100d76108c7565b604051600160a060020a03909116815260200160405180910390f35b341561031057600080fd5b6101a46108d6565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561039b57600080fd5b6100d761090d565b604051600160a060020a03909116815260200160405180910390f35b34156103ca57600080fd5b6101a461091c565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561045557600080fd5b6100d7610953565b604051600160a060020a03909116815260200160405180910390f35b341561048457600080fd5b6104de60048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061096295505050505050565b60405191825260208201526040908101905180910390f35b341561050157600080fd5b6101a4610a45565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561058c57600080fd5b6101a4610a7c565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561061757600080fd5b6100d7610ab3565b604051600160a060020a03909116815260200160405180910390f35b600354600160a060020a031681565b60025460009033600160a060020a0390811691161461066857600080fd5b6000831161067557600080fd5b60035461069b90859085908590600160a060020a0316600067039bb49f599a0000610ac2565b90508015156106a957610706565b6004546106cf90859083908590600160a060020a03166001670354a6ba7a180000610ac2565b90508015156106dd57610706565b60055461070390859083908590600160a060020a0316600267030d98d59a960000610ac2565b90505b5b50505050565b60035460009081908190600160a060020a03166306b2fe2282604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561075b57600080fd5b6102c65a03f1151561076c57600080fd5b5050506040518051600454909150600160a060020a03166306b2fe226000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107bf57600080fd5b6102c65a03f115156107d057600080fd5b5050506040518051600554909150600160a060020a03166306b2fe226000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561082357600080fd5b6102c65a03f1151561083457600080fd5b505050604051805190509250925092505b909192565b60408051908101604052600681527f47564f5433300000000000000000000000000000000000000000000000000000602082015281565b60408051908101604052600681527f47564f5431300000000000000000000000000000000000000000000000000000602082015281565b600254600160a060020a031681565b600454600160a060020a031681565b60408051908101604052600881527f3330252047564f54000000000000000000000000000000000000000000000000602082015281565b600154600160a060020a031681565b60408051908101604052600681527f47564f5432300000000000000000000000000000000000000000000000000000602082015281565b600554600160a060020a031681565b60025460009081908190819033600160a060020a0390811691161461098657600080fd5b6000861161099357600080fd5b6003546109b890889088908890600160a060020a0316600066309db78b73e518610db8565b90945092508215156109cd5760009250610a3a565b6004546109f290889085908890600160a060020a03166001662ce05aa81c3634610db8565b93509150821515610a0a579281019260009250610a3a565b600554610a2f90889085908890600160a060020a03166002662922fdc4c486ec610db8565b948301810194935090505b5b5050935093915050565b60408051908101604052600881527f3130252047564f54000000000000000000000000000000000000000000000000602082015281565b60408051908101604052600881527f3230252047564f54000000000000000000000000000000000000000000000000602082015281565b600054600160a060020a031681565b600080600085600160a060020a03166306b2fe226000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b0d57600080fd5b6102c65a03f11515610b1e57600080fd5b50505060405180519250506000821115610da75750868302808210610c6c5785600160a060020a031663b40f6f4c8a8360405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610b9157600080fd5b6102c65a03f11515610ba257600080fd5b5050507f0c754b9f068bc8642663c5228359459200d3ade29a990bf7dd254fe8eb1337d989828988604051600160a060020a03851681526020810184905260ff8216606082015260806040820181815290820184818151815260200191508051906020019080838360005b83811015610c265780820151818401525b602001610c0d565b50505050905090810190601f168015610c535780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160009250610dac565b85600160a060020a031663b40f6f4c8a8460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610cc057600080fd5b6102c65a03f11515610cd157600080fd5b5050507f0c754b9f068bc8642663c5228359459200d3ade29a990bf7dd254fe8eb1337d989838988604051600160a060020a03851681526020810184905260ff8216606082015260806040820181815290820184818151815260200191508051906020019080838360005b83811015610d555780820151818401525b602001610d3c565b50505050905090810190601f168015610d825780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a18382811515610d9d57fe5b0488039250610dac565b5b8792505b50509695505050505050565b600080868302600160a060020a0386166318287ef28a83856040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610e1a57600080fd5b6102c65a03f11515610e2b57600080fd5b5050506040518051905092508383811515610e4257fe5b04880391506000831115610f0f577ffcb163c7a3ddc4902f145296f8572b98376ba5bf6b01aa8784cc2dcf9329418b89848988604051600160a060020a03851681526020810184905260ff8216606082015260806040820181815290820184818151815260200191508051906020019080838360005b83811015610ed15780820151818401525b602001610eb8565b50505050905090810190601f168015610efe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a15b5b509650969450505050505600a165627a7a72305820f203d11c2980f374ed649d22f095b69c4de4bc568f8d8e9bc78ac0f3934bde7a00296060604052341561000f57600080fd5b604051610af4380380610af483398101604052808051919060200180518201919060200180518201919060200180519150505b600160a060020a038416151561005757600080fd5b60038054600160a060020a031916600160a060020a03861617905560048380516100859291602001906100a9565b5060058280516100999291602001906100a9565b5060068190555b50505050610149565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100ea57805160ff1916838001178555610117565b82800160010185558215610117579182015b828111156101175782518255916020019190600101906100fc565b5b50610124929150610128565b5090565b61014691905b80821115610124576000815560010161012e565b5090565b90565b61099c806101586000396000f300606060405236156100c25763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306b2fe2281146100c757806306fdde03146100ec578063095ea7b31461017757806318160ddd146101ad57806318287ef2146101d257806323b872dd14610206578063313ce5671461024257806370a082311461026757806395d89b4114610298578063a9059cbb14610323578063ac8261c914610359578063b40f6f4c14610388578063dd62ed3e146103ac575b600080fd5b34156100d257600080fd5b6100da6103e3565b60405190815260200160405180910390f35b34156100f757600080fd5b6100ff6103ee565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561013c5780820151818401525b602001610123565b50505050905090810190601f1680156101695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561018257600080fd5b610199600160a060020a036004351660243561048c565b604051901515815260200160405180910390f35b34156101b857600080fd5b6100da610533565b60405190815260200160405180910390f35b34156101dd57600080fd5b6100da600160a060020a0360043516602435610539565b60405190815260200160405180910390f35b341561021157600080fd5b610199600160a060020a03600435811690602435166044356105d3565b604051901515815260200160405180910390f35b341561024d57600080fd5b6100da6106e8565b60405190815260200160405180910390f35b341561027257600080fd5b6100da600160a060020a03600435166106ed565b60405190815260200160405180910390f35b34156102a357600080fd5b6100ff61070c565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561013c5780820151818401525b602001610123565b50505050905090810190601f1680156101695780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561032e57600080fd5b610199600160a060020a03600435166024356107aa565b604051901515815260200160405180910390f35b341561036457600080fd5b61036c61086a565b604051600160a060020a03909116815260200160405180910390f35b341561039357600080fd5b6103aa600160a060020a0360043516602435610879565b005b34156103b757600080fd5b6100da600160a060020a0360043581169060243516610912565b60405190815260200160405180910390f35b600054600654035b90565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104845780601f1061045957610100808354040283529160200191610484565b820191906000526020600020905b81548152906001019060200180831161046757829003601f168201915b505050505081565b60008115806104be5750600160a060020a03338116600090815260026020908152604080832093871683529290522054155b15156104c957600080fd5b600160a060020a03338116600081815260026020908152604080832094881680845294909152908190208590557f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a35060015b92915050565b60005481565b60035460009033600160a060020a0390811691161461055757600080fd5b600160a060020a0383166000908152600160205260409020548290101561059457600160a060020a03831660009081526001602052604090205491505b8115156105a35750600061052d565b50600160a060020a03821660009081526001602052604081208054839003905580548290039055805b5b92915050565b600160a060020a03808416600090815260026020908152604080832033851684528252808320549386168352600190915281205490919061061a908463ffffffff61093f16565b600160a060020a03808616600090815260016020526040808220939093559087168152205461064f908463ffffffff61095916565b600160a060020a038616600090815260016020526040902055610678818463ffffffff61095916565b600160a060020a03808716600081815260026020908152604080832033861684529091529081902093909355908616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a3600191505b509392505050565b601281565b600160a060020a0381166000908152600160205260409020545b919050565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104845780601f1061045957610100808354040283529160200191610484565b820191906000526020600020905b81548152906001019060200180831161046757829003601f168201915b505050505081565b600160a060020a0333166000908152600160205260408120546107d3908363ffffffff61095916565b600160a060020a033381166000908152600160205260408082209390935590851681522054610808908363ffffffff61093f16565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060015b92915050565b600354600160a060020a031681565b60035433600160a060020a0390811691161461089457600080fd5b600081116108a157600080fd5b600654600054820111156108b457600080fd5b600160a060020a0382166000818152600160205260408082208054850190558154840182557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a35b5b5050565b600160a060020a038083166000908152600260209081526040808320938516835292905220545b92915050565b60008282018381101561094e57fe5b8091505b5092915050565b60008282111561096557fe5b508082035b929150505600a165627a7a7230582031bd23b83c2cf613eaf535b657b9e8efa7a55c9abd86e626685c5a6e8856f5b800290000000000000000000000004e9547d1a1154ee0451f063c253ad8dc39d5384c0000000000000000000000004ef3cc88299c075623734990baa272a2ed39939f0000000000000000000000005e747502a1c426c1c217cacfa97b076ce06ab9d6
Deployed Bytecode
0x606060405236156100bf5763ffffffff60e060020a60003504166302825adc81146100c457806305fc0586146100f357806312065fe01461015a57806345b426f2146101915780634d46474a1461021c5780635d452201146102a7578063779e5ad8146102d6578063793cf4301461030557806385f2aef2146103905780638cc78a40146103bf578063b6eb15c71461044a578063c75514e814610479578063d64232c0146104f6578063d92d705614610581578063ed8e873c1461060c575b600080fd5b34156100cf57600080fd5b6100d761063b565b604051600160a060020a03909116815260200160405180910390f35b34156100fe57600080fd5b61015860048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061064a95505050505050565b005b341561016557600080fd5b61016d61070d565b60405180848152602001838152602001828152602001935050505060405180910390f35b341561019c57600080fd5b6101a461084a565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022757600080fd5b6101a4610881565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102b257600080fd5b6100d76108b8565b604051600160a060020a03909116815260200160405180910390f35b34156102e157600080fd5b6100d76108c7565b604051600160a060020a03909116815260200160405180910390f35b341561031057600080fd5b6101a46108d6565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561039b57600080fd5b6100d761090d565b604051600160a060020a03909116815260200160405180910390f35b34156103ca57600080fd5b6101a461091c565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561045557600080fd5b6100d7610953565b604051600160a060020a03909116815260200160405180910390f35b341561048457600080fd5b6104de60048035600160a060020a03169060248035919060649060443590810190830135806020601f8201819004810201604051908101604052818152929190602084018383808284375094965061096295505050505050565b60405191825260208201526040908101905180910390f35b341561050157600080fd5b6101a4610a45565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561058c57600080fd5b6101a4610a7c565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101e15780820151818401525b6020016101c8565b50505050905090810190601f16801561020e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561061757600080fd5b6100d7610ab3565b604051600160a060020a03909116815260200160405180910390f35b600354600160a060020a031681565b60025460009033600160a060020a0390811691161461066857600080fd5b6000831161067557600080fd5b60035461069b90859085908590600160a060020a0316600067039bb49f599a0000610ac2565b90508015156106a957610706565b6004546106cf90859083908590600160a060020a03166001670354a6ba7a180000610ac2565b90508015156106dd57610706565b60055461070390859083908590600160a060020a0316600267030d98d59a960000610ac2565b90505b5b50505050565b60035460009081908190600160a060020a03166306b2fe2282604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561075b57600080fd5b6102c65a03f1151561076c57600080fd5b5050506040518051600454909150600160a060020a03166306b2fe226000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156107bf57600080fd5b6102c65a03f115156107d057600080fd5b5050506040518051600554909150600160a060020a03166306b2fe226000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b151561082357600080fd5b6102c65a03f1151561083457600080fd5b505050604051805190509250925092505b909192565b60408051908101604052600681527f47564f5433300000000000000000000000000000000000000000000000000000602082015281565b60408051908101604052600681527f47564f5431300000000000000000000000000000000000000000000000000000602082015281565b600254600160a060020a031681565b600454600160a060020a031681565b60408051908101604052600881527f3330252047564f54000000000000000000000000000000000000000000000000602082015281565b600154600160a060020a031681565b60408051908101604052600681527f47564f5432300000000000000000000000000000000000000000000000000000602082015281565b600554600160a060020a031681565b60025460009081908190819033600160a060020a0390811691161461098657600080fd5b6000861161099357600080fd5b6003546109b890889088908890600160a060020a0316600066309db78b73e518610db8565b90945092508215156109cd5760009250610a3a565b6004546109f290889085908890600160a060020a03166001662ce05aa81c3634610db8565b93509150821515610a0a579281019260009250610a3a565b600554610a2f90889085908890600160a060020a03166002662922fdc4c486ec610db8565b948301810194935090505b5b5050935093915050565b60408051908101604052600881527f3130252047564f54000000000000000000000000000000000000000000000000602082015281565b60408051908101604052600881527f3230252047564f54000000000000000000000000000000000000000000000000602082015281565b600054600160a060020a031681565b600080600085600160a060020a03166306b2fe226000604051602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b1515610b0d57600080fd5b6102c65a03f11515610b1e57600080fd5b50505060405180519250506000821115610da75750868302808210610c6c5785600160a060020a031663b40f6f4c8a8360405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610b9157600080fd5b6102c65a03f11515610ba257600080fd5b5050507f0c754b9f068bc8642663c5228359459200d3ade29a990bf7dd254fe8eb1337d989828988604051600160a060020a03851681526020810184905260ff8216606082015260806040820181815290820184818151815260200191508051906020019080838360005b83811015610c265780820151818401525b602001610c0d565b50505050905090810190601f168015610c535780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160009250610dac565b85600160a060020a031663b40f6f4c8a8460405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401600060405180830381600087803b1515610cc057600080fd5b6102c65a03f11515610cd157600080fd5b5050507f0c754b9f068bc8642663c5228359459200d3ade29a990bf7dd254fe8eb1337d989838988604051600160a060020a03851681526020810184905260ff8216606082015260806040820181815290820184818151815260200191508051906020019080838360005b83811015610d555780820151818401525b602001610d3c565b50505050905090810190601f168015610d825780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a18382811515610d9d57fe5b0488039250610dac565b5b8792505b50509695505050505050565b600080868302600160a060020a0386166318287ef28a83856040516020015260405160e060020a63ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b1515610e1a57600080fd5b6102c65a03f11515610e2b57600080fd5b5050506040518051905092508383811515610e4257fe5b04880391506000831115610f0f577ffcb163c7a3ddc4902f145296f8572b98376ba5bf6b01aa8784cc2dcf9329418b89848988604051600160a060020a03851681526020810184905260ff8216606082015260806040820181815290820184818151815260200191508051906020019080838360005b83811015610ed15780820151818401525b602001610eb8565b50505050905090810190601f168015610efe5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a15b5b509650969450505050505600a165627a7a72305820f203d11c2980f374ed649d22f095b69c4de4bc568f8d8e9bc78ac0f3934bde7a0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000004E9547D1A1154Ee0451F063c253AD8DC39d5384c0000000000000000000000004ef3cc88299c075623734990baa272a2ed39939f0000000000000000000000005e747502a1c426c1c217cacfa97b076ce06ab9d6
-----Decoded View---------------
Arg [0] : _ico (address): 0x4E9547D1A1154Ee0451F063c253AD8DC39d5384c
Arg [1] : _gvAgent (address): 0x4eF3cC88299C075623734990baA272a2ed39939F
Arg [2] : _team (address): 0x5e747502a1c426c1c217caCFA97b076Ce06aB9D6
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000004E9547D1A1154Ee0451F063c253AD8DC39d5384c
Arg [1] : 0000000000000000000000004ef3cc88299c075623734990baa272a2ed39939f
Arg [2] : 0000000000000000000000005e747502a1c426c1c217cacfa97b076ce06ab9d6
Swarm Source
bzzr://31bd23b83c2cf613eaf535b657b9e8efa7a55c9abd86e626685c5a6e8856f5b8
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.