@soma-finance/core-contracts
Version:
SOMA Finance core contracts
1,709 lines • 123 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "SecurityToken",
"sourceName": "contracts/soma/SecurityTokens/SecurityToken.sol",
"abi": [
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"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": "owner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "ApprovalPartition",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "previousBalance",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "newBalance",
"type": "uint256"
}
],
"name": "BalanceChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "Burned",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "DeprecatePartition",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint8",
"name": "version",
"type": "uint8"
}
],
"name": "Initialized",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "Minted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "fromId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "toId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "MovedPartition",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "Paused",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "prevPrivileges",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "newPrivileges",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RequiredPrivilegesUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "fromId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "toId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "Seized",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "token",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "TokensRecovered",
"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"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "fromId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "toId",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "TransferPartition",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "Unpaused",
"type": "event"
},
{
"inputs": [],
"name": "DEFAULT_ID",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "DEFAULT_PARTITION",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "DEFAULT_PRIVILEGES",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "DOMAIN_SEPARATOR",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "GLOBAL_DEPRECATE_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "GLOBAL_MANAGE_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "GLOBAL_MINT_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "GLOBAL_SEIZE_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "GLOBAL_UPDATE_PRIVILEGES_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "LOCAL_DEPRECATE_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "LOCAL_MANAGE_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "LOCAL_MINT_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "LOCAL_SEIZE_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "LOCAL_UPDATE_PRIVILEGES_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "SOMA",
"outputs": [
{
"internalType": "contract ISOMA",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "TOKEN_RECOVERY_ROLE",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
}
],
"name": "allowance",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"internalType": "address",
"name": "spender",
"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": "spender",
"type": "address"
},
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "approve",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
}
],
"name": "balanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "burn",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_from",
"type": "address"
},
{
"internalType": "address",
"name": "_to",
"type": "address"
},
{
"internalType": "bytes32",
"name": "fromId",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "toId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "canTransferFrom",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_from",
"type": "address"
},
{
"internalType": "address",
"name": "_to",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "canTransferFrom",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint32",
"name": "pos",
"type": "uint32"
}
],
"name": "checkpoints",
"outputs": [
{
"components": [
{
"internalType": "uint32",
"name": "fromBlock",
"type": "uint32"
},
{
"internalType": "uint224",
"name": "balance",
"type": "uint224"
}
],
"internalType": "struct ERC20HistoryUpgradeable.Checkpoint",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "decimals",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"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": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "deprecatePartition",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
}
],
"name": "deprecated",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint256",
"name": "blockNumber",
"type": "uint256"
}
],
"name": "getPastBalance",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "blockNumber",
"type": "uint256"
}
],
"name": "getPastTotalSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
}
],
"name": "getRoleAdmin",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "hasPrivileges",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "hasPrivileges",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "role",
"type": "bytes32"
},
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "hasRole",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"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": [
{
"internalType": "string",
"name": "domain",
"type": "string"
},
{
"internalType": "string",
"name": "name",
"type": "string"
},
{
"internalType": "string",
"name": "symbol",
"type": "string"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "mint",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes[]",
"name": "data",
"type": "bytes[]"
}
],
"name": "multicall",
"outputs": [
{
"internalType": "bytes[]",
"name": "results",
"type": "bytes[]"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "name",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "nonces",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "numCheckpoints",
"outputs": [
{
"internalType": "uint32",
"name": "",
"type": "uint32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "pause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "paused",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "deadline",
"type": "uint256"
},
{
"internalType": "uint8",
"name": "v",
"type": "uint8"
},
{
"internalType": "bytes32",
"name": "r",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "s",
"type": "bytes32"
}
],
"name": "permit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "token",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "recoverTokens",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "requiredPrivileges",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
}
],
"name": "requiredPrivileges",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "tokenHolder",
"type": "address"
},
{
"internalType": "bytes32",
"name": "fromId",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "toId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "seize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "interfaceId",
"type": "bytes4"
}
],
"name": "supportsInterface",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "symbol",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
}
],
"name": "totalSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "transfer",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "transfer",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "transferFrom",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "transferFrom",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "bytes32",
"name": "fromId",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "toId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "transferPartition",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "unpause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "newRequiredPrivileges",
"type": "bytes32"
}
],
"name": "updateRequiredPrivileges",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"internalType": "bytes32",
"name": "newRequiredPrivileges",
"type": "bytes32"
}
],
"name": "updateRequiredPrivileges",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x60e0604052730f3dc00189dbcd1d0c574e48031270cae04c4adf6080526001600160401b0360a052600060c0523480156200003957600080fd5b50620000446200004a565b6200010c565b600054610100900460ff1615620000b75760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156200010a576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b60805160a05160c05161545d620001ac60003960008181610504015281816107c601528181610c230152818161116701526136e5015260006105b00152600081816106e201528181610b2e01528181610cf101528181610de401528181610fe20152818161107e0152818161122501528181611739015281816117d5015281816118e501528181611c4e015281816120600152613352015261545d6000f3fe608060405234801561001057600080fd5b50600436106103ba5760003560e01c80635f3e849f116101f4578063a6487c531161011a578063d505accf116100ad578063ef63d57c1161007c578063ef63d57c14610938578063f1127ed814610959578063f25e311f14610996578063f37d11cc146109a957600080fd5b8063d505accf146108e1578063d8697598146108f4578063dd62ed3e1461091b578063eec47d601461092e57600080fd5b8063b524abcf116100e9578063b524abcf1461088c578063ba497d08146108ac578063c3f9213c146108cf578063c72460ee146108d757600080fd5b8063a6487c5314610833578063a9059cbb14610846578063aacbbf5814610859578063ac9650d81461086c57600080fd5b80637ecebe00116101925780638e539e8c116101615780638e539e8c146107f257806391d148541461080557806395d89b4114610818578063a457c2d71461082057600080fd5b80637ecebe00146107a65780638456cb59146107b957806387f67d8f146107c1578063895324b2146107e857600080fd5b806370a08231116101ce57806370a082311461074457806372cee8d51461076d578063754e940b146107805780637dfe53591461079357600080fd5b80635f3e849f146106ca57806363727fc2146106dd5780636fcfff451461071c57600080fd5b8063248a9ca3116102e457806338cd427c116102775780634d30b6be116102465780634d30b6be1461066657806357cb16731461069c5780635c975abb146106af5780635d549d5c146106b757600080fd5b806338cd427c1461062557806339509351146106385780633f4ba83a1461064b5780634b63885a1461065357600080fd5b806330139280116102b357806330139280146105d2578063313ce567146105f9578063330dfd1f146106085780633644e5151461061d57600080fd5b8063248a9ca3146105725780632772ce9d1461058557806328972b15146105985780632a7a0c68146105ab57600080fd5b806310fe82941161035c5780631c8d5d381161032b5780631c8d5d38146104c25780631e26571f14610502578063227102a61461053857806323b872dd1461055f57600080fd5b806310fe829414610476578063161bc4201461048957806318160ddd146104b057806318cb0a40146104b857600080fd5b8063095ea7b311610398578063095ea7b31461041f5780630df86999146104325780630f58f5101461044557806310b74b281461044f57600080fd5b806301ffc9a7146103bf57806306fdde03146103e7578063089566a5146103fc575b600080fd5b6103d26103cd366004614925565b6109bc565b60405190151581526020015b60405180910390f35b6103ef6109e7565b6040516103de919061499f565b61041160008051602061540a83398151915281565b6040519081526020016103de565b6103d261042d3660046149c7565b610a79565b6104116104403660046149c7565b610a91565b6104116102945481565b6104117f0101361cc05e6b89a8f9397a4abf06a8f976d3838579a2733d74c335d8f7804d81565b6103d2610484366004614a96565b610ae5565b6104117fca229e2c24b1e5f3121c063a03d242a28455702c403d7f0a8d2dcc0644576a5b81565b603554610411565b6104116103935481565b6104116104d0366004614af9565b6001600160a01b0392831660009081526069602090815260408083209490951682529283528381209181529152205490565b7f000000000000000000000000000000000000000000000000000000000000000060009081526102fb6020526040902054610411565b6104117ff28c151dcc22c5bfb460fbc387993d6c0d1c1245ca20aca5f3cbd33f33041eb181565b6103d261056d366004614af9565b610b06565b610411610580366004614b3a565b610b2a565b6103d2610593366004614b3a565b610c1c565b6103d26105a6366004614b53565b610c48565b6104117f000000000000000000000000000000000000000000000000000000000000000081565b6104117fca36d5a0569842341b54d50138a85347289de5969cb525e882bbb1a2dedcfef981565b604051601281526020016103de565b61061b610616366004614bc9565b610c73565b005b610411610dd5565b6103d2610633366004614c19565b610ddf565b6103d26106463660046149c7565b610faf565b61061b610fd1565b6103d2610661366004614c6a565b611160565b6104116106743660046149c7565b6001600160a01b03919091166000908152606860209081526040808320938352929052205490565b6103d26106aa366004614a96565b61118c565b6103d261119d565b61061b6106c5366004614bc9565b6111a7565b61061b6106d8366004614af9565b6112fa565b6107047f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016103de565b61072f61072a366004614c6a565b61146b565b60405163ffffffff90911681526020016103de565b610411610752366004614c6a565b6001600160a01b031660009081526033602052604090205490565b6103d261077b366004614c87565b61148e565b6103d261078e366004614cdb565b61159e565b61061b6107a1366004614cfd565b611663565b6104116107b4366004614c6a565b611709565b61061b611728565b6104117f000000000000000000000000000000000000000000000000000000000000000081565b6104116102c75481565b610411610800366004614b3a565b6118b4565b6103d2610813366004614d44565b6118e1565b6103ef6119d9565b6103d261082e3660046149c7565b6119e8565b61061b610841366004614d74565b611a63565b6103d26108543660046149c7565b611b9a565b61061b610867366004614c87565b611ba8565b61087f61087a366004614df2565b611d53565b6040516103de9190614e67565b61041161089a366004614b3a565b60009081526066602052604090205490565b6103d26108ba366004614b3a565b60009081526067602052604090205460ff1690565b610411600081565b6104116102605481565b61061b6108ef366004614ec9565b611e48565b6104117f0b8459b722d944f0580da74c767d2dcae280ce16527c19c825b302a24e208dfd81565b610411610929366004614f40565b611fac565b6104116102fa5481565b610411610946366004614b3a565b60009081526102fb602052604090205490565b61096c610967366004614f6e565b611fd7565b60408051825163ffffffff1681526020928301516001600160e01b031692810192909252016103de565b6103d26109a4366004614d44565b61205c565b6103d26109b7366004614af9565b612137565b60006001600160e01b0319821663a6487c5360e01b14806109e157506109e18261214e565b92915050565b6060603680546109f690614fa5565b80601f0160208091040260200160405190810160405280929190818152602001828054610a2290614fa5565b8015610a6f5780601f10610a4457610100808354040283529160200191610a6f565b820191906000526020600020905b815481529060010190602001808311610a5257829003601f168201915b5050505050905090565b600033610a87818585612173565b5060019392505050565b6000438210610abb5760405162461bcd60e51b8152600401610ab290614fd9565b60405180910390fd5b6001600160a01b038316600090815261010060205260409020610ade9083612297565b9392505050565b600033610af58187878787612354565b50600195945050505050565b905090565b600033610b148582856124a2565b610b1f858585612516565b506001949350505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166371907f176040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b8a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bae919061501a565b6001600160a01b031663248a9ca3836040518263ffffffff1660e01b8152600401610bdb91815260200190565b602060405180830381865afa158015610bf8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e19190615037565b60006109e17f00000000000000000000000000000000000000000000000000000000000000008361159e565b600033610c588782878787612521565b610c668787878888886125a2565b5060019695505050505050565b610393543390610c8390826118e1565b80610ca15750610ca160008051602061540a833981519152826118e1565b610ced5760405162461bcd60e51b815260206004820152601e60248201527f4d696e7461626c6553656375726974793a20554e415554484f52495a454400006044820152606401610ab2565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663921234706040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d71919061501a565b9050610d7f81868686612630565b6001600160a01b038116336001600160a01b03167fd0f462e38655140024816d081b599b90e6e95e69b564ac32b0c2c0244393ca84878787604051610dc693929190615050565b60405180910390a35050505050565b6000610b0161263c565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637ceab3b16040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e64919061501a565b60008681526102fb6020526040812054919250858714610e935760008681526102fb6020526040902054610e95565b815b90506001600160a01b0389161580610f19575060405163253bd7b760e01b81526001600160a01b038a811660048301526024820184905284169063253bd7b790604401602060405180830381865afa158015610ef5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f19919061506f565b8015610fa257506001600160a01b0388161580610fa2575060405163253bd7b760e01b81526001600160a01b0389811660048301526024820183905284169063253bd7b790604401602060405180830381865afa158015610f7e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa2919061506f565b9998505050505050505050565b600033610a87818585610fc28383611fac565b610fcc91906150a7565b612173565b6000339050806001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ee97f7f36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561103e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611062919061501a565b6001600160a01b031614806111095750806001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632d37ead56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fe919061501a565b6001600160a01b0316145b6111555760405162461bcd60e51b815260206004820152601f60248201527f534f4d413a204d4153544552206f7220535542204d4153544552206f6e6c79006044820152606401610ab2565b61115d6126b9565b50565b60006109e17f00000000000000000000000000000000000000000000000000000000000000008361205c565b600033610af58187878088886125a2565b6000610b0161270b565b6103935433906111b790826118e1565b806111d557506111d560008051602061540a833981519152826118e1565b6112215760405162461bcd60e51b815260206004820152601e60248201527f4d696e7461626c6553656375726974793a20554e415554484f52495a454400006044820152606401610ab2565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663921234706040518163ffffffff1660e01b8152600401602060405180830381865afa158015611281573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112a5919061501a565b90506112b381868686612715565b6001600160a01b038116336001600160a01b03167fbb647b33f4e81f826db7a86f0f82f892f5faaba1e9c8bc300ce7f86019631e27878787604051610dc693929190615050565b7f0b8459b722d944f0580da74c767d2dcae280ce16527c19c825b302a24e208dfd61132581336118e1565b6113a15760405162461bcd60e51b815260206004820152604160248201527f536f6d61416363657373436f6e74726f6c3a2063616c6c657220646f6573206e60448201527f6f7420686176652074686520617070726f70726961746520617574686f7269746064820152607960f81b608482015260a401610ab2565b6113ad6103c685612721565b156113fa5760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e5265636f766572793a20494e56414c49445f544f4b454e000000006044820152606401610ab2565b61140e6001600160a01b0385168484612743565b336001600160a01b0316836001600160a01b0316856001600160a01b03167fca574176b1d34032f40f7fb0c519eae468b4535ebf7b27f986a7b6e2fa53d5388560405161145d91815260200190565b60405180910390a450505050565b6001600160a01b038116600090815261010060205260408120546109e190612795565b6000803390506114a16102c754826118e1565b806114d157506114d17f0101361cc05e6b89a8f9397a4abf06a8f976d3838579a2733d74c335d8f7804d826118e1565b61151d5760405162461bcd60e51b815260206004820181905260248201527f5472616e73666572506172746974696f6e733a20554e415554484f52495a45446044820152606401610ab2565b61154a878888886115438c6001600160a01b031660009081526033602052604090205490565b89896127fe565b866001600160a01b03167f88f3ad0eefdad65d8f1bfc7b59905c0ecd55e3b940f32b25fb7f8202adc06b5d8787878760405161158994939291906150ba565b60405180910390a25060019695505050505050565b60006115ae6102fa546108133390565b806115de57506115de7ff28c151dcc22c5bfb460fbc387993d6c0d1c1245ca20aca5f3cbd33f33041eb1336118e1565b6116505760405162461bcd60e51b815260206004820152603860248201527f477561726461626c653a20796f7520646f206e6f74206861766520746865207260448201527f6571756972656420726f6c657320746f20646f207468697300000000000000006064820152608401610ab2565b61165a83836129ec565b50600192915050565b61029454339061167390826118e1565b806116a357506116a37fca229e2c24b1e5f3121c063a03d242a28455702c403d7f0a8d2dcc0644576a5b826118e1565b6116fa5760405162461bcd60e51b815260206004820152602260248201527f446570726563617461626c6553656375726974793a20554e415554484f52495a604482015261115160f21b6064820152608401610ab2565b6117048383612a51565b505050565b6001600160a01b038116600090815261016560205260408120546109e1565b6000339050806001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ee97f7f36040518163ffffffff1660e01b8152600401602060405180830381865afa158015611795573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b9919061501a565b6001600160a01b031614806118605750806001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316632d37ead56040518163ffffffff1660e01b8152600401602060405180830381865afa158015611831573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611855919061501a565b6001600160a01b0316145b6118ac5760405162461bcd60e51b815260206004820152601f60248201527f534f4d413a204d4153544552206f7220535542204d4153544552206f6e6c79006044820152606401610ab2565b61115d612b7e565b60004382106118d55760405162461bcd60e51b8152600401610ab290614fd9565b6109e161010183612297565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166371907f176040518163ffffffff1660e01b8152600401602060405180830381865afa158015611941573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611965919061501a565b604051632474521560e21b8152600481018590526001600160a01b03848116602483015291909116906391d14854906044015b602060405180830381865afa1580156119b5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ade919061506f565b6060603780546109f690614fa5565b600033816119f68286611fac565b905083811015611a565760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610ab2565b610b1f8286868403612173565b600054610100900460ff161580801