@axelar-network/interchain-token-service
Version:
Interchain token service for EVM chains to faciliate interchain token transfers and contract calls
248 lines (247 loc) • 10.4 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "ERC20",
"sourceName": "contracts/interchain-token/ERC20.sol",
"abi": [
{
"inputs": [],
"name": "InvalidAccount",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "Approval",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "Transfer",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "allowance",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "approve",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"internalType": "uint256",
"name": "subtractedValue",
"type": "uint256"
}
],
"name": "decreaseAllowance",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"internalType": "uint256",
"name": "addedValue",
"type": "uint256"
}
],
"name": "increaseAllowance",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "recipient",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"internalType": "address",
"name": "recipient",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x6080604052348015600f57600080fd5b506105288061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100f2578063a457c2d714610112578063a9059cbb14610125578063dd62ed3e1461013857600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100cc57806339509351146100df575b600080fd5b6100a061009b3660046103e1565b610163565b60405190151581526020015b60405180910390f35b6100be60025481565b6040519081526020016100ac565b6100a06100da36600461040b565b61017a565b6100a06100ed3660046103e1565b6101d1565b6100be610100366004610448565b60006020819052908152604090205481565b6100a06101203660046103e1565b610208565b6100a06101333660046103e1565b61023f565b6100be61014636600461046a565b600160209081526000928352604080842090915290825290205481565b600061017033848461024c565b5060015b92915050565b6001600160a01b038316600090815260016020908152604080832033845290915281205460001981146101bb576101bb85336101b686856104cc565b61024c565b6101c68585856102e9565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916101709185906101b69086906104df565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916101709185906101b69086906104cc565b60006101703384846102e9565b6001600160a01b038316158061026957506001600160a01b038216155b1561028757604051630da30f6560e31b815260040160405180910390fd5b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316158061030657506001600160a01b038216155b1561032457604051630da30f6560e31b815260040160405180910390fd5b6001600160a01b0383166000908152602081905260408120805483929061034c9084906104cc565b90915550506001600160a01b038216600090815260208190526040812080548392906103799084906104df565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516102dc91815260200190565b80356001600160a01b03811681146103dc57600080fd5b919050565b600080604083850312156103f457600080fd5b6103fd836103c5565b946020939093013593505050565b60008060006060848603121561042057600080fd5b610429846103c5565b9250610437602085016103c5565b929592945050506040919091013590565b60006020828403121561045a57600080fd5b610463826103c5565b9392505050565b6000806040838503121561047d57600080fd5b610486836103c5565b9150610494602084016103c5565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101745761017461049d565b808201808211156101745761017461049d56fea264697066735822122056ed9256cef87f996f3f8d631c60c7fb487d4caa9e7fc8531bf65f7119b257df64736f6c634300081b0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100f2578063a457c2d714610112578063a9059cbb14610125578063dd62ed3e1461013857600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100cc57806339509351146100df575b600080fd5b6100a061009b3660046103e1565b610163565b60405190151581526020015b60405180910390f35b6100be60025481565b6040519081526020016100ac565b6100a06100da36600461040b565b61017a565b6100a06100ed3660046103e1565b6101d1565b6100be610100366004610448565b60006020819052908152604090205481565b6100a06101203660046103e1565b610208565b6100a06101333660046103e1565b61023f565b6100be61014636600461046a565b600160209081526000928352604080842090915290825290205481565b600061017033848461024c565b5060015b92915050565b6001600160a01b038316600090815260016020908152604080832033845290915281205460001981146101bb576101bb85336101b686856104cc565b61024c565b6101c68585856102e9565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916101709185906101b69086906104df565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916101709185906101b69086906104cc565b60006101703384846102e9565b6001600160a01b038316158061026957506001600160a01b038216155b1561028757604051630da30f6560e31b815260040160405180910390fd5b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316158061030657506001600160a01b038216155b1561032457604051630da30f6560e31b815260040160405180910390fd5b6001600160a01b0383166000908152602081905260408120805483929061034c9084906104cc565b90915550506001600160a01b038216600090815260208190526040812080548392906103799084906104df565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516102dc91815260200190565b80356001600160a01b03811681146103dc57600080fd5b919050565b600080604083850312156103f457600080fd5b6103fd836103c5565b946020939093013593505050565b60008060006060848603121561042057600080fd5b610429846103c5565b9250610437602085016103c5565b929592945050506040919091013590565b60006020828403121561045a57600080fd5b610463826103c5565b9392505050565b6000806040838503121561047d57600080fd5b610486836103c5565b9150610494602084016103c5565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101745761017461049d565b808201808211156101745761017461049d56fea264697066735822122056ed9256cef87f996f3f8d631c60c7fb487d4caa9e7fc8531bf65f7119b257df64736f6c634300081b0033",
"linkReferences": {},
"deployedLinkReferences": {}
}