Transactions
Token Transfers
Tokens
Internal Transactions
Coin Balance History
Logs
Code
Read Contract
Write Contract
Warning! Contract bytecode has been changed and doesn't match the verified one. Therefore, interaction with this smart contract may be risky.
This contract has been partially verified via Sourcify.
View contract in Sourcify repository
- Contract name:
- AXSToken
- Optimization enabled
- true
- Compiler version
- v0.5.17+commit.d19bba13
- Optimization runs
- 200
- EVM Version
- istanbul
- Verified at
- 2026-02-11T21:29:50.201621Z
Constructor Arguments
45524332304761746577617957686974656c6973743a2073657474696e67206761746577617920746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f770000000000000000000000001a2a1c938ce3ec39b6d47113c7955baa9dd454f2
Arg [0] (address) : 0x57686974656c6973743a2073657474696e672067
AXSToken.sol
// File: math/SafeMath.sol
pragma solidity 0.5.17;
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
c = a + b;
require(c >= a, "SafeMath: addition overflow");
}
function sub(uint256 a, uint256 b) internal pure returns (uint256 c) {
require(b <= a, "SafeMath: subtraction overflow");
return a - b;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
if (a == 0) {
return 0;
}
c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
}
function div(uint256 a, uint256 b) internal pure returns (uint256 c) {
// Since Solidity automatically asserts when dividing by 0,
// but we only need it to revert.
require(b > 0, "SafeMath: division by zero");
return a / b;
}
function mod(uint256 a, uint256 b) internal pure returns (uint256 c) {
// Same reason as `div`.
require(b > 0, "SafeMath: modulo by zero");
return a % b;
}
}
// File: token/erc20/IERC20.sol
pragma solidity 0.5.17;
interface IERC20 {
event Transfer(address indexed _from, address indexed _to, uint256 _value);
event Approval(address indexed _owner, address indexed _spender, uint256 _value);
function totalSupply() external view returns (uint256 _supply);
function balanceOf(address _owner) external view returns (uint256 _balance);
function approve(address _spender, uint256 _value) external returns (bool _success);
function allowance(address _owner, address _spender) external view returns (uint256 _value);
function transfer(address _to, uint256 _value) external returns (bool _success);
function transferFrom(address _from, address _to, uint256 _value) external returns (bool _success);
}
// File: token/erc20/ERC20.sol
pragma solidity 0.5.17;
contract ERC20 is IERC20 {
using SafeMath for uint256;
uint256 public totalSupply;
mapping (address => uint256) public balanceOf;
mapping (address => mapping (address => uint256)) internal _allowance;
function approve(address _spender, uint256 _value) public returns (bool) {
_approve(msg.sender, _spender, _value);
return true;
}
function allowance(address _owner, address _spender) public view returns (uint256) {
return _allowance[_owner][_spender];
}
function increaseAllowance(address _spender, uint256 _value) public returns (bool) {
_approve(msg.sender, _spender, _allowance[msg.sender][_spender].add(_value));
return true;
}
function decreaseAllowance(address _spender, uint256 _value) public returns (bool) {
_approve(msg.sender, _spender, _allowance[msg.sender][_spender].sub(_value));
return true;
}
function transfer(address _to, uint256 _value) public returns (bool _success) {
_transfer(msg.sender, _to, _value);
return true;
}
function transferFrom(address _from, address _to, uint256 _value) public returns (bool _success) {
_transfer(_from, _to, _value);
_approve(_from, msg.sender, _allowance[_from][msg.sender].sub(_value));
return true;
}
function _approve(address _owner, address _spender, uint256 _amount) internal {
require(_owner != address(0), "ERC20: approve from the zero address");
require(_spender != address(0), "ERC20: approve to the zero address");
_allowance[_owner][_spender] = _amount;
emit Approval(_owner, _spender, _amount);
}
function _transfer(address _from, address _to, uint256 _value) internal {
require(_from != address(0), "ERC20: transfer from the zero address");
require(_to != address(0), "ERC20: transfer to the zero address");
require(_to != address(this), "ERC20: transfer to this contract address");
balanceOf[_from] = balanceOf[_from].sub(_value);
balanceOf[_to] = balanceOf[_to].add(_value);
emit Transfer(_from, _to, _value);
}
}
// File: token/erc20/IERC20Detailed.sol
pragma solidity 0.5.17;
interface IERC20Detailed {
function name() external view returns (string memory _name);
function symbol() external view returns (string memory _symbol);
function decimals() external view returns (uint8 _decimals);
}
// File: token/erc20/ERC20Detailed.sol
pragma solidity 0.5.17;
contract ERC20Detailed is ERC20, IERC20Detailed {
string public name;
string public symbol;
uint8 public decimals;
constructor(string memory _name, string memory _symbol, uint8 _decimals) public {
name = _name;
symbol = _symbol;
decimals = _decimals;
}
}
// File: token/erc20/ERC20GatewayWhitelist.sol
pragma solidity 0.5.17;
contract ERC20GatewayWhitelist is ERC20 {
address public mainchainGateway;
function allowance(address _owner, address _spender)
public
view
returns (uint256 _value)
{
if (_spender == mainchainGateway) return uint256(-1);
return _allowance[_owner][_spender];
}
function transferFrom(
address _from,
address _to,
uint256 _value
)
public
returns (bool _success)
{
if (allowance(_from, msg.sender) != uint256(-1)) {
super._approve(_from, msg.sender, _allowance[_from][msg.sender].sub(_value));
}
_transfer(_from, _to, _value);
return true;
}
function _setGateway(address _mainchainGateway) internal {
require(
_mainchainGateway != address(0),
"ERC20GatewayWhitelist: setting gateway to the zero address"
);
mainchainGateway = _mainchainGateway;
}
}
// File: AXSToken.sol
pragma solidity 0.5.17;
contract AXSToken is ERC20Detailed, ERC20GatewayWhitelist {
constructor(address _mainchainGateway)
public
ERC20Detailed("Axie Infinity Shard", "AXS", 18)
{
totalSupply = uint256(270000000).mul(uint256(10)**18);
balanceOf[msg.sender] = totalSupply;
emit Transfer(address(0), msg.sender, totalSupply);
_setGateway(_mainchainGateway);
}
}
Compiler Settings
{"remappings":[],"optimizer":{"runs":200,"enabled":true},"libraries":{},"evmVersion":"istanbul","compilationTarget":{"AXSToken.sol":"AXSToken"}}
Contract ABI
[{"type":"constructor","stateMutability":"nonpayable","payable":false,"inputs":[{"type":"address","name":"_mainchainGateway","internalType":"address"}]},{"type":"event","name":"Approval","inputs":[{"type":"address","name":"_owner","internalType":"address","indexed":true},{"type":"address","name":"_spender","internalType":"address","indexed":true},{"type":"uint256","name":"_value","internalType":"uint256","indexed":false}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"type":"address","name":"_from","internalType":"address","indexed":true},{"type":"address","name":"_to","internalType":"address","indexed":true},{"type":"uint256","name":"_value","internalType":"uint256","indexed":false}],"anonymous":false},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"uint256","name":"_value","internalType":"uint256"}],"name":"allowance","inputs":[{"type":"address","name":"_owner","internalType":"address"},{"type":"address","name":"_spender","internalType":"address"}],"constant":true},{"type":"function","stateMutability":"nonpayable","payable":false,"outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"approve","inputs":[{"type":"address","name":"_spender","internalType":"address"},{"type":"uint256","name":"_value","internalType":"uint256"}],"constant":false},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"balanceOf","inputs":[{"type":"address","name":"","internalType":"address"}],"constant":true},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"uint8","name":"","internalType":"uint8"}],"name":"decimals","inputs":[],"constant":true},{"type":"function","stateMutability":"nonpayable","payable":false,"outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"decreaseAllowance","inputs":[{"type":"address","name":"_spender","internalType":"address"},{"type":"uint256","name":"_value","internalType":"uint256"}],"constant":false},{"type":"function","stateMutability":"nonpayable","payable":false,"outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"increaseAllowance","inputs":[{"type":"address","name":"_spender","internalType":"address"},{"type":"uint256","name":"_value","internalType":"uint256"}],"constant":false},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"address","name":"","internalType":"address"}],"name":"mainchainGateway","inputs":[],"constant":true},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"string","name":"","internalType":"string"}],"name":"name","inputs":[],"constant":true},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"string","name":"","internalType":"string"}],"name":"symbol","inputs":[],"constant":true},{"type":"function","stateMutability":"view","payable":false,"outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"totalSupply","inputs":[],"constant":true},{"type":"function","stateMutability":"nonpayable","payable":false,"outputs":[{"type":"bool","name":"_success","internalType":"bool"}],"name":"transfer","inputs":[{"type":"address","name":"_to","internalType":"address"},{"type":"uint256","name":"_value","internalType":"uint256"}],"constant":false},{"type":"function","stateMutability":"nonpayable","payable":false,"outputs":[{"type":"bool","name":"_success","internalType":"bool"}],"name":"transferFrom","inputs":[{"type":"address","name":"_from","internalType":"address"},{"type":"address","name":"_to","internalType":"address"},{"type":"uint256","name":"_value","internalType":"uint256"}],"constant":false}]
Contract Creation Code
0x60806040523480156200001157600080fd5b5060405162000d2b38038062000d2b833981810160405260208110156200003757600080fd5b5051604080518082018252601381527f4178696520496e66696e697479205368617264000000000000000000000000006020828101918252835180850190945260038085526241585360e81b9185019190915282519293926012926200009e92916200022a565b508151620000b49060049060208501906200022a565b506005805460ff191660ff9290921691909117905550620000f09050631017df80670de0b6b3a764000062000156602090811b6200088b17901c565b60008181553380825260016020908152604080842085905580519485525191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a36200014f816001600160e01b03620001bb16565b50620002cf565b6000826200016757506000620001b5565b50818102818382816200017657fe5b0414620001b55760405162461bcd60e51b815260040180806020018281038252602181526020018062000d0a6021913960400191505060405180910390fd5b92915050565b6001600160a01b038116620002025760405162461bcd60e51b815260040180806020018281038252603a81526020018062000cd0603a913960400191505060405180910390fd5b600580546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200026d57805160ff19168380011785556200029d565b828001600101855582156200029d579182015b828111156200029d57825182559160200191906001019062000280565b50620002ab929150620002af565b5090565b620002cc91905b80821115620002ab5760008155600101620002b6565b90565b6109f180620002df6000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80635a4ccad8116100715780635a4ccad81461021057806370a082311461023457806395d89b411461025a578063a457c2d714610262578063a9059cbb1461028e578063dd62ed3e146102ba576100b4565b806306fdde03146100b9578063095ea7b31461013657806318160ddd1461017657806323b872dd14610190578063313ce567146101c657806339509351146101e4575b600080fd5b6100c16102e8565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100fb5781810151838201526020016100e3565b50505050905090810190601f1680156101285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101626004803603604081101561014c57600080fd5b506001600160a01b038135169060200135610376565b604080519115158252519081900360200190f35b61017e61038d565b60408051918252519081900360200190f35b610162600480360360608110156101a657600080fd5b506001600160a01b03813581169160208101359091169060400135610393565b6101ce6103fc565b6040805160ff9092168252519081900360200190f35b610162600480360360408110156101fa57600080fd5b506001600160a01b038135169060200135610405565b610218610441565b604080516001600160a01b039092168252519081900360200190f35b61017e6004803603602081101561024a57600080fd5b50356001600160a01b0316610455565b6100c1610467565b6101626004803603604081101561027857600080fd5b506001600160a01b0381351690602001356104c2565b610162600480360360408110156102a457600080fd5b506001600160a01b0381351690602001356104fe565b61017e600480360360408110156102d057600080fd5b506001600160a01b038135811691602001351661050b565b6003805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561036e5780601f106103435761010080835404028352916020019161036e565b820191906000526020600020905b81548152906001019060200180831161035157829003601f168201915b505050505081565b600061038333848461055e565b5060015b92915050565b60005481565b60006000196103a2853361050b565b146103e7576001600160a01b0384166000908152600260209081526040808320338085529252909120546103e79186916103e2908663ffffffff61064a16565b61055e565b6103f28484846106a7565b5060019392505050565b60055460ff1681565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916103839185906103e2908663ffffffff61083316565b60055461010090046001600160a01b031681565b60016020526000908152604090205481565b6004805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561036e5780601f106103435761010080835404028352916020019161036e565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916103839185906103e2908663ffffffff61064a16565b60006103833384846106a7565b6005546000906001600160a01b038381166101009092041614156105325750600019610387565b506001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6001600160a01b0383166105a35760405162461bcd60e51b81526004018080602001828103825260248152602001806109996024913960400191505060405180910390fd5b6001600160a01b0382166105e85760405162461bcd60e51b81526004018080602001828103825260228152602001806109096022913960400191505060405180910390fd5b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6000828211156106a1576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6001600160a01b0383166106ec5760405162461bcd60e51b81526004018080602001828103825260258152602001806109746025913960400191505060405180910390fd5b6001600160a01b0382166107315760405162461bcd60e51b81526004018080602001828103825260238152602001806108e66023913960400191505060405180910390fd5b6001600160a01b0382163014156107795760405162461bcd60e51b815260040180806020018281038252602881526020018061092b6028913960400191505060405180910390fd5b6001600160a01b0383166000908152600160205260409020546107a2908263ffffffff61064a16565b6001600160a01b0380851660009081526001602052604080822093909355908416815220546107d7908263ffffffff61083316565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b81810182811015610387576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008261089a57506000610387565b50818102818382816108a857fe5b04146103875760405162461bcd60e51b81526004018080602001828103825260218152602001806109536021913960400191505060405180910390fdfe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220746f207468697320636f6e74726163742061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a265627a7a7231582095f49deabe52e00860ba84f6d37c2f2e1a01e050df211941a057490c6d93f0ab64736f6c6343000511003245524332304761746577617957686974656c6973743a2073657474696e67206761746577617920746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f770000000000000000000000001a2a1c938ce3ec39b6d47113c7955baa9dd454f2
Deployed ByteCode
0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80635a4ccad8116100715780635a4ccad81461021057806370a082311461023457806395d89b411461025a578063a457c2d714610262578063a9059cbb1461028e578063dd62ed3e146102ba576100b4565b806306fdde03146100b9578063095ea7b31461013657806318160ddd1461017657806323b872dd14610190578063313ce567146101c657806339509351146101e4575b600080fd5b6100c16102e8565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100fb5781810151838201526020016100e3565b50505050905090810190601f1680156101285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101626004803603604081101561014c57600080fd5b506001600160a01b038135169060200135610376565b604080519115158252519081900360200190f35b61017e61038d565b60408051918252519081900360200190f35b610162600480360360608110156101a657600080fd5b506001600160a01b03813581169160208101359091169060400135610393565b6101ce6103fc565b6040805160ff9092168252519081900360200190f35b610162600480360360408110156101fa57600080fd5b506001600160a01b038135169060200135610405565b610218610441565b604080516001600160a01b039092168252519081900360200190f35b61017e6004803603602081101561024a57600080fd5b50356001600160a01b0316610455565b6100c1610467565b6101626004803603604081101561027857600080fd5b506001600160a01b0381351690602001356104c2565b610162600480360360408110156102a457600080fd5b506001600160a01b0381351690602001356104fe565b61017e600480360360408110156102d057600080fd5b506001600160a01b038135811691602001351661050b565b6003805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561036e5780601f106103435761010080835404028352916020019161036e565b820191906000526020600020905b81548152906001019060200180831161035157829003601f168201915b505050505081565b600061038333848461055e565b5060015b92915050565b60005481565b60006000196103a2853361050b565b146103e7576001600160a01b0384166000908152600260209081526040808320338085529252909120546103e79186916103e2908663ffffffff61064a16565b61055e565b6103f28484846106a7565b5060019392505050565b60055460ff1681565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916103839185906103e2908663ffffffff61083316565b60055461010090046001600160a01b031681565b60016020526000908152604090205481565b6004805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561036e5780601f106103435761010080835404028352916020019161036e565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916103839185906103e2908663ffffffff61064a16565b60006103833384846106a7565b6005546000906001600160a01b038381166101009092041614156105325750600019610387565b506001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6001600160a01b0383166105a35760405162461bcd60e51b81526004018080602001828103825260248152602001806109996024913960400191505060405180910390fd5b6001600160a01b0382166105e85760405162461bcd60e51b81526004018080602001828103825260228152602001806109096022913960400191505060405180910390fd5b6001600160a01b03808416600081815260026020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6000828211156106a1576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6001600160a01b0383166106ec5760405162461bcd60e51b81526004018080602001828103825260258152602001806109746025913960400191505060405180910390fd5b6001600160a01b0382166107315760405162461bcd60e51b81526004018080602001828103825260238152602001806108e66023913960400191505060405180910390fd5b6001600160a01b0382163014156107795760405162461bcd60e51b815260040180806020018281038252602881526020018061092b6028913960400191505060405180910390fd5b6001600160a01b0383166000908152600160205260409020546107a2908263ffffffff61064a16565b6001600160a01b0380851660009081526001602052604080822093909355908416815220546107d7908263ffffffff61083316565b6001600160a01b0380841660008181526001602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b81810182811015610387576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008261089a57506000610387565b50818102818382816108a857fe5b04146103875760405162461bcd60e51b81526004018080602001828103825260218152602001806109536021913960400191505060405180910390fdfe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220746f207468697320636f6e74726163742061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a265627a7a7231582095f49deabe52e00860ba84f6d37c2f2e1a01e050df211941a057490c6d93f0ab64736f6c63430005110032