Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
TokenTracker
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
GGCPool
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-09-28 */ pragma solidity ^0.4.24; // ---------------------------------------------------------------------------- // ERC Token Standard #20 Interface // https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md // ---------------------------------------------------------------------------- contract ERC20Interface { function totalSupply() public view returns (uint256); function balanceOf(address tokenOwner) public view returns (uint256 balance); function allowance(address tokenOwner, address spender) public view returns (uint256 remaining); function transfer(address to, uint256 tokens) public returns (bool success); function approve(address spender, uint256 tokens) public returns (bool success); function transferFrom(address from, address to, uint256 tokens) public returns (bool success); event Transfer(address indexed from, address indexed to, uint256 tokens); event Approval(address indexed tokenOwner, address indexed spender, uint256 tokens); } contract GGCPool{ // ------------------------------------------------------------------------ // Events // ------------------------------------------------------------------------ //typeNo WL 1, ACL 2, BL 3, FeeL 4, TransConL 5, GGCPool 6, GGEPool 7 event ListLog(address addr, uint8 indexed typeNo, bool active); event OwnershipTransferred(address indexed _from, address indexed _to); event Deposit(address indexed sender, uint value); bool public transContractLocked = true; address public owner; address private ownerContract = address(0x0); mapping(address => bool) public allowContractList; mapping(address => bool) public blackList; string public symbol; string public name; constructor() public { symbol = "GGCPool"; name = "GramGold Coin Pool"; owner = msg.sender; } function AssignGGCPoolOwner(address _ownerContract) public onlyOwner notNull(_ownerContract) { ownerContract = _ownerContract; emit OwnershipTransferred(owner, ownerContract); owner = ownerContract; } function isContract(address _addr) private view returns (bool) { if(allowContractList[_addr] || !transContractLocked){ return false; } uint256 codeLength = 0; assembly { codeLength := extcodesize(_addr) } return (codeLength > 0); } function() payable { if (msg.value > 0) emit Deposit(msg.sender, msg.value); } function tokenFallback(address from_, uint256 value_, bytes data_) external { from_; value_; data_; revert(); } // ------------------------------------------------------------------------ // Modifiers // ------------------------------------------------------------------------ modifier onlyOwner { require(msg.sender == owner); _; } modifier notNull(address _address) { require(_address != address(0x0)); _; } // ------------------------------------------------------------------------ // onlyOwner API // ------------------------------------------------------------------------ function transferAnyERC20Token(address _tokenAddr, address _to, uint256 _amount) public onlyOwner returns (bool success) { require(!blackList[_tokenAddr]); require(!blackList[_to]); require(!isContract(_to)); return ERC20Interface(_tokenAddr).transfer(_to, _amount); } function reclaimEther(address _addr) external onlyOwner { assert(_addr.send(this.balance)); } function addBlacklist(address _addr) public notNull(_addr) onlyOwner { blackList[_addr] = true; emit ListLog(_addr, 3, true); } function delBlackList(address _addr) public notNull(_addr) onlyOwner { delete blackList[_addr]; emit ListLog(_addr, 3, false); } function setTransContractLocked(bool _lock) public onlyOwner { transContractLocked = _lock; emit ListLog(address(0x0), 5, _lock); } function addAllowContractList(address _addr) public notNull(_addr) onlyOwner { allowContractList[_addr] = true; emit ListLog(_addr, 2, true); } function delAllowContractList(address _addr) public notNull(_addr) onlyOwner { delete allowContractList[_addr]; emit ListLog(_addr, 2, false); } function changeName(string _name, string _symbol) public onlyOwner { name = _name; symbol = _symbol; } // ------------------------------------------------------------------------ // Public view API // ------------------------------------------------------------------------ function getGGCTokenBalance(address _tokenAddr) public view returns (uint256){ return ERC20Interface(_tokenAddr).balanceOf(this); } function getTransContractLocked() public view returns (bool) { return transContractLocked; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"delAllowContractList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"delBlackList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"allowContractList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"blackList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_ownerContract","type":"address"}],"name":"AssignGGCPoolOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addAllowContractList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_lock","type":"bool"}],"name":"setTransContractLocked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"name":"changeName","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":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"reclaimEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addBlacklist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenAddr","type":"address"}],"name":"getGGCTokenBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"transContractLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from_","type":"address"},{"name":"value_","type":"uint256"},{"name":"data_","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAddr","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferAnyERC20Token","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getTransContractLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"},{"indexed":true,"name":"typeNo","type":"uint8"},{"indexed":false,"name":"active","type":"bool"}],"name":"ListLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Deposit","type":"event"}]
Contract Creation Code
60806040526000805460ff191660019081179091558054600160a060020a031916905534801561002e57600080fd5b506040805180820190915260078082527f474743506f6f6c000000000000000000000000000000000000000000000000006020909201918252610073916004916100d5565b506040805180820190915260128082527f4772616d476f6c6420436f696e20506f6f6c000000000000000000000000000060209092019182526100b8916005916100d5565b506000805461010060a860020a0319163361010002179055610170565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061011657805160ff1916838001178555610143565b82800160010185558215610143579182015b82811115610143578251825591602001919060010190610128565b5061014f929150610153565b5090565b61016d91905b8082111561014f5760008155600101610159565b90565b610c8b8061017f6000396000f3006080604052600436106100fb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461013d57806307b39962146101c7578063217987ad146101e85780632945aa3c146102095780634838d1651461023e5780634a7bb6971461025f57806352ffff9914610280578063532399d9146102a157806386575e40146102bb5780638da5cb5b1461035257806395d89b41146103835780639a6a30a4146103985780639cfe42da146103b9578063af1cd9f6146103da578063c0c6b4f11461040d578063c0ee0b8a14610422578063d493b9ac14610453578063e6d343a51461047d575b600034111561013b5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b34801561014957600080fd5b50610152610492565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018c578181015183820152602001610174565b50505050905090810190601f1680156101b95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d357600080fd5b5061013b600160a060020a0360043516610520565b3480156101f457600080fd5b5061013b600160a060020a03600435166105a0565b34801561021557600080fd5b5061022a600160a060020a0360043516610620565b604080519115158252519081900360200190f35b34801561024a57600080fd5b5061022a600160a060020a0360043516610635565b34801561026b57600080fd5b5061013b600160a060020a036004351661064a565b34801561028c57600080fd5b5061013b600160a060020a036004351661071d565b3480156102ad57600080fd5b5061013b60043515156107a1565b3480156102c757600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261013b94369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506107fb9650505050505050565b34801561035e57600080fd5b50610367610843565b60408051600160a060020a039092168252519081900360200190f35b34801561038f57600080fd5b50610152610857565b3480156103a457600080fd5b5061013b600160a060020a03600435166108b2565b3480156103c557600080fd5b5061013b600160a060020a03600435166108fe565b3480156103e657600080fd5b506103fb600160a060020a0360043516610982565b60408051918252519081900360200190f35b34801561041957600080fd5b5061022a610a18565b34801561042e57600080fd5b5061013b60048035600160a060020a0316906024803591604435918201910135610a21565b34801561045f57600080fd5b5061022a600160a060020a0360043581169060243516604435610a26565b34801561048957600080fd5b5061022a610b52565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105185780601f106104ed57610100808354040283529160200191610518565b820191906000526020600020905b8154815290600101906020018083116104fb57829003601f168201915b505050505081565b80600160a060020a038116151561053657600080fd5b6000546101009004600160a060020a0316331461055257600080fd5b600160a060020a0382166000818152600260208181526040808420805460ff1916905580519485529084019290925281519092600080516020610c4083398151915292908290030190a25050565b80600160a060020a03811615156105b657600080fd5b6000546101009004600160a060020a031633146105d257600080fd5b600160a060020a0382166000818152600360208181526040808420805460ff1916905580519485529084019290925281519092600080516020610c4083398151915292908290030190a25050565b60026020526000908152604090205460ff1681565b60036020526000908152604090205460ff1681565b6000546101009004600160a060020a0316331461066657600080fd5b80600160a060020a038116151561067c57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384811691909117918290556000805460405193831693610100909104909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a3505060015460008054600160a060020a039092166101000274ffffffffffffffffffffffffffffffffffffffff0019909216919091179055565b80600160a060020a038116151561073357600080fd5b6000546101009004600160a060020a0316331461074f57600080fd5b600160a060020a038216600081815260026020818152604092839020805460ff1916600190811790915583519485529084015281519092600080516020610c4083398151915292908290030190a25050565b6000546101009004600160a060020a031633146107bd57600080fd5b6000805460ff191682151590811782556040805192835260208301919091528051600592600080516020610c4083398151915292908290030190a250565b6000546101009004600160a060020a0316331461081757600080fd5b815161082a906005906020850190610ba7565b50805161083e906004906020840190610ba7565b505050565b6000546101009004600160a060020a031681565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105185780601f106104ed57610100808354040283529160200191610518565b6000546101009004600160a060020a031633146108ce57600080fd5b604051600160a060020a03821690303180156108fc02916000818181858888f1935050505015156108fb57fe5b50565b80600160a060020a038116151561091457600080fd5b6000546101009004600160a060020a0316331461093057600080fd5b600160a060020a038216600081815260036020818152604092839020805460ff1916600190811790915583519485529084015281519092600080516020610c4083398151915292908290030190a25050565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600091600160a060020a038416916370a082319160248082019260209290919082900301818787803b1580156109e657600080fd5b505af11580156109fa573d6000803e3d6000fd5b505050506040513d6020811015610a1057600080fd5b505192915050565b60005460ff1681565b600080fd5b600080546101009004600160a060020a03163314610a4357600080fd5b600160a060020a03841660009081526003602052604090205460ff1615610a6957600080fd5b600160a060020a03831660009081526003602052604090205460ff1615610a8f57600080fd5b610a9883610b5c565b15610aa257600080fd5b83600160a060020a031663a9059cbb84846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610b1e57600080fd5b505af1158015610b32573d6000803e3d6000fd5b505050506040513d6020811015610b4857600080fd5b5051949350505050565b60005460ff165b90565b600160a060020a038116600090815260026020526040812054819060ff1680610b88575060005460ff16155b15610b965760009150610ba1565b50506000813b908111905b50919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610be857805160ff1916838001178555610c15565b82800160010185558215610c15579182015b82811115610c15578251825591602001919060010190610bfa565b50610c21929150610c25565b5090565b610b5991905b80821115610c215760008155600101610c2b5600b2b9f39141753d381be198627de12fcb914f91e962c8b67f8e88e032b6fff610a165627a7a7230582027347be9d88b8cbc01f0ffcefd95ca0b49ce6373fd6d0ead15955af36dc814220029
Deployed Bytecode
0x6080604052600436106100fb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461013d57806307b39962146101c7578063217987ad146101e85780632945aa3c146102095780634838d1651461023e5780634a7bb6971461025f57806352ffff9914610280578063532399d9146102a157806386575e40146102bb5780638da5cb5b1461035257806395d89b41146103835780639a6a30a4146103985780639cfe42da146103b9578063af1cd9f6146103da578063c0c6b4f11461040d578063c0ee0b8a14610422578063d493b9ac14610453578063e6d343a51461047d575b600034111561013b5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b34801561014957600080fd5b50610152610492565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018c578181015183820152602001610174565b50505050905090810190601f1680156101b95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d357600080fd5b5061013b600160a060020a0360043516610520565b3480156101f457600080fd5b5061013b600160a060020a03600435166105a0565b34801561021557600080fd5b5061022a600160a060020a0360043516610620565b604080519115158252519081900360200190f35b34801561024a57600080fd5b5061022a600160a060020a0360043516610635565b34801561026b57600080fd5b5061013b600160a060020a036004351661064a565b34801561028c57600080fd5b5061013b600160a060020a036004351661071d565b3480156102ad57600080fd5b5061013b60043515156107a1565b3480156102c757600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261013b94369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506107fb9650505050505050565b34801561035e57600080fd5b50610367610843565b60408051600160a060020a039092168252519081900360200190f35b34801561038f57600080fd5b50610152610857565b3480156103a457600080fd5b5061013b600160a060020a03600435166108b2565b3480156103c557600080fd5b5061013b600160a060020a03600435166108fe565b3480156103e657600080fd5b506103fb600160a060020a0360043516610982565b60408051918252519081900360200190f35b34801561041957600080fd5b5061022a610a18565b34801561042e57600080fd5b5061013b60048035600160a060020a0316906024803591604435918201910135610a21565b34801561045f57600080fd5b5061022a600160a060020a0360043581169060243516604435610a26565b34801561048957600080fd5b5061022a610b52565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105185780601f106104ed57610100808354040283529160200191610518565b820191906000526020600020905b8154815290600101906020018083116104fb57829003601f168201915b505050505081565b80600160a060020a038116151561053657600080fd5b6000546101009004600160a060020a0316331461055257600080fd5b600160a060020a0382166000818152600260208181526040808420805460ff1916905580519485529084019290925281519092600080516020610c4083398151915292908290030190a25050565b80600160a060020a03811615156105b657600080fd5b6000546101009004600160a060020a031633146105d257600080fd5b600160a060020a0382166000818152600360208181526040808420805460ff1916905580519485529084019290925281519092600080516020610c4083398151915292908290030190a25050565b60026020526000908152604090205460ff1681565b60036020526000908152604090205460ff1681565b6000546101009004600160a060020a0316331461066657600080fd5b80600160a060020a038116151561067c57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384811691909117918290556000805460405193831693610100909104909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a3505060015460008054600160a060020a039092166101000274ffffffffffffffffffffffffffffffffffffffff0019909216919091179055565b80600160a060020a038116151561073357600080fd5b6000546101009004600160a060020a0316331461074f57600080fd5b600160a060020a038216600081815260026020818152604092839020805460ff1916600190811790915583519485529084015281519092600080516020610c4083398151915292908290030190a25050565b6000546101009004600160a060020a031633146107bd57600080fd5b6000805460ff191682151590811782556040805192835260208301919091528051600592600080516020610c4083398151915292908290030190a250565b6000546101009004600160a060020a0316331461081757600080fd5b815161082a906005906020850190610ba7565b50805161083e906004906020840190610ba7565b505050565b6000546101009004600160a060020a031681565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105185780601f106104ed57610100808354040283529160200191610518565b6000546101009004600160a060020a031633146108ce57600080fd5b604051600160a060020a03821690303180156108fc02916000818181858888f1935050505015156108fb57fe5b50565b80600160a060020a038116151561091457600080fd5b6000546101009004600160a060020a0316331461093057600080fd5b600160a060020a038216600081815260036020818152604092839020805460ff1916600190811790915583519485529084015281519092600080516020610c4083398151915292908290030190a25050565b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600091600160a060020a038416916370a082319160248082019260209290919082900301818787803b1580156109e657600080fd5b505af11580156109fa573d6000803e3d6000fd5b505050506040513d6020811015610a1057600080fd5b505192915050565b60005460ff1681565b600080fd5b600080546101009004600160a060020a03163314610a4357600080fd5b600160a060020a03841660009081526003602052604090205460ff1615610a6957600080fd5b600160a060020a03831660009081526003602052604090205460ff1615610a8f57600080fd5b610a9883610b5c565b15610aa257600080fd5b83600160a060020a031663a9059cbb84846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610b1e57600080fd5b505af1158015610b32573d6000803e3d6000fd5b505050506040513d6020811015610b4857600080fd5b5051949350505050565b60005460ff165b90565b600160a060020a038116600090815260026020526040812054819060ff1680610b88575060005460ff16155b15610b965760009150610ba1565b50506000813b908111905b50919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610be857805160ff1916838001178555610c15565b82800160010185558215610c15579182015b82811115610c15578251825591602001919060010190610bfa565b50610c21929150610c25565b5090565b610b5991905b80821115610c215760008155600101610c2b5600b2b9f39141753d381be198627de12fcb914f91e962c8b67f8e88e032b6fff610a165627a7a7230582027347be9d88b8cbc01f0ffcefd95ca0b49ce6373fd6d0ead15955af36dc814220029
Swarm Source
bzzr://27347be9d88b8cbc01f0ffcefd95ca0b49ce6373fd6d0ead15955af36dc81422
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
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.