@axelar-network/interchain-token-service
Version:
Interchain token service for EVM chains to faciliate interchain token transfers and contract calls
124 lines (123 loc) • 11.9 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "InterchainTokenDeployer",
"sourceName": "contracts/utils/InterchainTokenDeployer.sol",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "implementationAddress_",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "AddressZero",
"type": "error"
},
{
"inputs": [],
"name": "AlreadyDeployed",
"type": "error"
},
{
"inputs": [],
"name": "DeployFailed",
"type": "error"
},
{
"inputs": [],
"name": "EmptyBytecode",
"type": "error"
},
{
"inputs": [],
"name": "TokenDeploymentFailed",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "tokenId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "minter",
"type": "address"
},
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "symbol",
"type": "string"
},
{
"internalType": "uint8",
"name": "decimals",
"type": "uint8"
}
],
"name": "deployInterchainToken",
"outputs": [
{
"internalType": "address",
"name": "tokenAddress",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
}
],
"name": "deployedAddress",
"outputs": [
{
"internalType": "address",
"name": "tokenAddress",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "implementationAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x60a0604052348015600f57600080fd5b5060405161096f38038061096f833981016040819052602c916062565b6001600160a01b038116605257604051639fabe1c160e01b815260040160405180910390fd5b6001600160a01b03166080526090565b600060208284031215607357600080fd5b81516001600160a01b0381168114608957600080fd5b9392505050565b6080516108be6100b160003960008181604b015261010a01526108be6000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063b97a231914610046578063ee85660314610089578063f575f35b1461009c575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b61006d610097366004610519565b6100af565b61006d6100aa36600461057b565b6100c0565b60006100ba8261023d565b92915050565b6040805160378082526060820190925260009182919060208201818036833750507f3d602d80600a3d3981f3363d3d373d3d3d363d730000000000000000000000006020830152507f0000000000000000000000000000000000000000000000000000000000000000606081901b60348301527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006048830152909150610166828c610358565b9250826001600160a01b03163b6000036101ac576040517fd0a30aa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f8626698f0000000000000000000000000000000000000000000000000000000081526001600160a01b03841690638626698f906101fd908d908d908d908d908d908d908d90600401610664565b600060405180830381600087803b15801561021757600080fd5b505af115801561022b573d6000803e3d6000fd5b50505050505098975050505050505050565b6000803083604051806101c001604052806101828152602001610707610182913980516020918201206040516102c0949392017fff00000000000000000000000000000000000000000000000000000000000000815260609390931b6bffffffffffffffffffffffff191660018401526015830191909152603582015260550190565b60408051601f1981840301815282825280516020918201207fd6940000000000000000000000000000000000000000000000000000000000008285015260601b6bffffffffffffffffffffffff191660228401527f0100000000000000000000000000000000000000000000000000000000000000603684015281516017818503018152603790930190915281519101209392505050565b60006103638261023d565b905082516000036103a0576040517f21744a5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103b2816001600160a01b03166104d6565b156103e9576040517fa6ef0ba100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080604051806101c001604052806101828152602001610707610182913980519091508481602084016000f592506001600160a01b038316610458576040517fb4f5411100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517e7743600000000000000000000000000000000000000000000000000000000081526001600160a01b03841690627743609061049b9089906004016106b8565b600060405180830381600087803b1580156104b557600080fd5b505af11580156104c9573d6000803e3d6000fd5b5050505050505092915050565b60006001600160a01b0382163f801580159061051257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006020828403121561052b57600080fd5b5035919050565b60008083601f84011261054457600080fd5b50813567ffffffffffffffff81111561055c57600080fd5b60208301915083602082850101111561057457600080fd5b9250929050565b60008060008060008060008060c0898b03121561059757600080fd5b883597506020890135965060408901356001600160a01b03811681146105bc57600080fd5b9550606089013567ffffffffffffffff8111156105d857600080fd5b6105e48b828c01610532565b909650945050608089013567ffffffffffffffff81111561060457600080fd5b6106108b828c01610532565b90945092505060a089013560ff8116811461062a57600080fd5b809150509295985092959890939650565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8781526001600160a01b038716602082015260a06040820152600061068d60a08301878961063b565b82810360608401526106a081868861063b565b91505060ff8316608083015298975050505050505050565b602081526000825180602084015260005b818110156106e657602081860181015160408684010152016106c9565b506000604082850101526040601f19601f8301168401019150509291505056fe608060405234801561001057600080fd5b50610162806100206000396000f3fe60806040526004361061001d5760003560e01c806277436014610022575b600080fd5b61003561003036600461007b565b610037565b005b8051602082016000f061004957600080fd5b50565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561008d57600080fd5b813567ffffffffffffffff808211156100a557600080fd5b818401915084601f8301126100b957600080fd5b8135818111156100cb576100cb61004c565b604051601f8201601f19908116603f011681019083821181831017156100f3576100f361004c565b8160405282815287602084870101111561010c57600080fd5b82602086016020830137600092810160200192909252509594505050505056fea264697066735822122094780ce55d28f1d568f4e0ab1b9dc230b96e952b73d2e06456fbff2289fa27f464736f6c63430008150033a2646970667358221220918c9ccba62deea3a95928d3eb5acd8fb4aa56ed30f46b50cfcc75ff3d7dad5f64736f6c634300081b0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063b97a231914610046578063ee85660314610089578063f575f35b1461009c575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b61006d610097366004610519565b6100af565b61006d6100aa36600461057b565b6100c0565b60006100ba8261023d565b92915050565b6040805160378082526060820190925260009182919060208201818036833750507f3d602d80600a3d3981f3363d3d373d3d3d363d730000000000000000000000006020830152507f0000000000000000000000000000000000000000000000000000000000000000606081901b60348301527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006048830152909150610166828c610358565b9250826001600160a01b03163b6000036101ac576040517fd0a30aa600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f8626698f0000000000000000000000000000000000000000000000000000000081526001600160a01b03841690638626698f906101fd908d908d908d908d908d908d908d90600401610664565b600060405180830381600087803b15801561021757600080fd5b505af115801561022b573d6000803e3d6000fd5b50505050505098975050505050505050565b6000803083604051806101c001604052806101828152602001610707610182913980516020918201206040516102c0949392017fff00000000000000000000000000000000000000000000000000000000000000815260609390931b6bffffffffffffffffffffffff191660018401526015830191909152603582015260550190565b60408051601f1981840301815282825280516020918201207fd6940000000000000000000000000000000000000000000000000000000000008285015260601b6bffffffffffffffffffffffff191660228401527f0100000000000000000000000000000000000000000000000000000000000000603684015281516017818503018152603790930190915281519101209392505050565b60006103638261023d565b905082516000036103a0576040517f21744a5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6103b2816001600160a01b03166104d6565b156103e9576040517fa6ef0ba100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080604051806101c001604052806101828152602001610707610182913980519091508481602084016000f592506001600160a01b038316610458576040517fb4f5411100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517e7743600000000000000000000000000000000000000000000000000000000081526001600160a01b03841690627743609061049b9089906004016106b8565b600060405180830381600087803b1580156104b557600080fd5b505af11580156104c9573d6000803e3d6000fd5b5050505050505092915050565b60006001600160a01b0382163f801580159061051257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006020828403121561052b57600080fd5b5035919050565b60008083601f84011261054457600080fd5b50813567ffffffffffffffff81111561055c57600080fd5b60208301915083602082850101111561057457600080fd5b9250929050565b60008060008060008060008060c0898b03121561059757600080fd5b883597506020890135965060408901356001600160a01b03811681146105bc57600080fd5b9550606089013567ffffffffffffffff8111156105d857600080fd5b6105e48b828c01610532565b909650945050608089013567ffffffffffffffff81111561060457600080fd5b6106108b828c01610532565b90945092505060a089013560ff8116811461062a57600080fd5b809150509295985092959890939650565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8781526001600160a01b038716602082015260a06040820152600061068d60a08301878961063b565b82810360608401526106a081868861063b565b91505060ff8316608083015298975050505050505050565b602081526000825180602084015260005b818110156106e657602081860181015160408684010152016106c9565b506000604082850101526040601f19601f8301168401019150509291505056fe608060405234801561001057600080fd5b50610162806100206000396000f3fe60806040526004361061001d5760003560e01c806277436014610022575b600080fd5b61003561003036600461007b565b610037565b005b8051602082016000f061004957600080fd5b50565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561008d57600080fd5b813567ffffffffffffffff808211156100a557600080fd5b818401915084601f8301126100b957600080fd5b8135818111156100cb576100cb61004c565b604051601f8201601f19908116603f011681019083821181831017156100f3576100f361004c565b8160405282815287602084870101111561010c57600080fd5b82602086016020830137600092810160200192909252509594505050505056fea264697066735822122094780ce55d28f1d568f4e0ab1b9dc230b96e952b73d2e06456fbff2289fa27f464736f6c63430008150033a2646970667358221220918c9ccba62deea3a95928d3eb5acd8fb4aa56ed30f46b50cfcc75ff3d7dad5f64736f6c634300081b0033",
"linkReferences": {},
"deployedLinkReferences": {}
}