[
{
"inputs": [
{
"internalType": "address",
"name": "transferRules_",
"type": "address"
},
{
"internalType": "address",
"name": "contractAdmin_",
"type": "address"
},
{
"internalType": "address",
"name": "reserveAdmin_",
"type": "address"
},
{
"internalType": "string",
"name": "symbol_",
"type": "string"
},
{
"internalType": "string",
"name": "name_",
"type": "string"
},
{
"internalType": "uint8",
"name": "decimals_",
"type": "uint8"
},
{
"internalType": "uint256",
"name": "maxTotalSupply_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "minTimelockAmount_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxReleaseDelay_",
"type": "uint256"
},
{
"internalType": "address",
"name": "trustedForwarder_",
"type": "address"
},
{
"internalType": "bool",
"name": "snapshotsEnabled_",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "CheckpointUnorderedInsertion",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "increasedSupply",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "cap",
"type": "uint256"
}
],
"name": "ERC20ExceededSafeSupply",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"internalType": "uint256",
"name": "allowance",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "needed",
"type": "uint256"
}
],
"name": "ERC20InsufficientAllowance",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"internalType": "uint256",
"name": "balance",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "needed",
"type": "uint256"
}
],
"name": "ERC20InsufficientBalance",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "approver",
"type": "address"
}
],
"name": "ERC20InvalidApprover",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "receiver",
"type": "address"
}
],
"name": "ERC20InvalidReceiver",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "ERC20InvalidSender",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "spender",
"type": "address"
}
],
"name": "ERC20InvalidSpender",
"type": "error"
},
{
"inputs": [],
"name": "EasyAccessControl_AlreadyHasRole",
"type": "error"
},
{
"inputs": [],
"name": "EasyAccessControl_ArraysMustBeSameLength",
"type": "error"
},
{
"inputs": [],
"name": "EasyAccessControl_AtLeastOneContractAdminRequired",
"type": "error"
},
{
"inputs": [],
"name": "EasyAccessControl_CannotRevokeRole",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "EasyAccessControl_DoesNotHaveAdminRole",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "EasyAccessControl_DoesNotHaveContractAdminRole",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "EasyAccessControl_DoesNotHaveContractOrTransferAdminRole",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "EasyAccessControl_DoesNotHaveReserveAdminRole",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "EasyAccessControl_DoesNotHaveTransferAdminRole",
"type": "error"
},
{
"inputs": [],
"name": "EasyAccessControl_InvalidRole",
"type": "error"
},
{
"inputs": [],
"name": "EasyAccessControl_InvalidZeroAddress",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "timepoint",
"type": "uint256"
},
{
"internalType": "uint48",
"name": "clock",
"type": "uint48"
}
],
"name": "FutureLookup",
"type": "error"
},
{
"inputs": [],
"name": "ReentrancyGuardReentrantCall",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_AddressAlreadyHasHolder",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_AmountExceedsUnlockedBalance",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_AmountLessThanReleaseCount",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_CannotExceedMaxTotalSupply",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_CannotRemoveHolderWithActiveTimelocks",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_CannotRemoveLastWallet",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_CantVestAllForMultipleReleases",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_CommencementTimestampDoesNotMatch",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_HolderAddressDoesNotExist",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_HolderAlreadyExists",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_HolderDoesNotExist",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InitialReleaseOutOfRange",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InsufficientBurnableBalance",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InsufficientTotalBalanceOf",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidAddressArray",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidAmount",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidContractAdmin",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidFirstRelease",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidFundAddress",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidFundAmount",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidMinTimelockAmount",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidName",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidNumberOfRelases",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidRInitialReleaseBIPS",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidRecipientAddress",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidReclaimTo",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidReleasePeriod",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidReleasePortionForSingleRelease",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidReserveAdmin",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidScheduleId",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidSimpleTokenAmount",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidSymbol",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidTimelock",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidTotalSupplySnapshot",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidTransferRules",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidTrustedForwarder",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidWalletsOrTransferAdmin",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidZeroAddress",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_InvalidZeroGroupHolderGroupMax",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_MaxCancelersExceeded",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_MaxHolderCountReached",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_MaxHolderGroupCountReached",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_MaxTimelocksExceeded",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_MismatchedArrayLength",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_NewHolderGroupMaxMustExceedCurrentHolderGroupCount",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_NewHolderMaxMustExceedCurrentHolderCount",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_NewMaxTotalSupplyMustExceedCurrentTotalSupply",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_NewTransferRulesContractDoesNotImplementITransferRules",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_RecipientAndAmountLengthsShouldMatch",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_SafeApprove",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_ScheduleIdDoesNotMatch",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "RestrictedLockupToken_SenderCannotBeRecipient",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_TimelockCannotBeCanceled",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_TimelockHasNoValueRemaining",
"type": "error"
},
{
"inputs": [],
"name": "RestrictedLockupToken_TotalAmountDoesNotMatch",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint8",
"name": "bits",
"type": "uint8"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "SafeCastOverflowedUintDowncast",
"type": "error"
},
{
"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": "AccountBalanceChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "addr",
"type": "address"
},
{
"indexed": true,
"internalType": "bool",
"name": "status",
"type": "bool"
}
],
"name": "AddressFrozen",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "addr",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "AddressTransferGroup",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "fromGroup",
"type": "uint256"
},
{
"indexed": true,
"internalType": "uint256",
"name": "toGroup",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "lockedUntil",
"type": "uint256"
}
],
"name": "AllowGroupTransfer",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "addr",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "holderId",
"type": "uint256"
}
],
"name": "AppendHolderAddress",
"type": "event"
},
{
"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": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "ForceTransferBetween",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "holderId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "HolderCreated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "bool",
"name": "status",
"type": "bool"
}
],
"name": "Pause",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "holderId",
"type": "uint256"
}
],
"name": "RemoveHolder",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "holderId",
"type": "uint256"
},
{
"indexed": true,
"internalType": "address",
"name": "addr",
"type": "address"
}
],
"name": "RemoveWalletFromHolder",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "grantor",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "grantee",
"type": "address"
},
{
"indexed": false,
"internalType": "uint8",
"name": "role",
"type": "uint8"
},
{
"indexed": true,
"internalType": "bool",
"name": "status",
"type": "bool"
}
],
"name": "RoleChange",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "scheduleId",
"type": "uint256"
}
],
"name": "ScheduleCreated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "scheduleId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "commencementTimestamp",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "timelockId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address[]",
"name": "cancelableBy",
"type": "address[]"
}
],
"name": "ScheduleFunded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "groupId",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "holderGroupMax",
"type": "uint256"
}
],
"name": "SetHolderGroupMax",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "holderMax",
"type": "uint256"
}
],
"name": "SetHolderMax",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "admin",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "maxTotalSupply",
"type": "uint256"
}
],
"name": "SetMaxTotalSupply",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "canceledBy",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "target",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "timelockIndex",
"type": "uint256"
},
{
"indexed": false,
"internalType": "address",
"name": "reclaimTokenTo",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "canceledAmount",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "paidAmount",
"type": "uint256"
}
],
"name": "TimelockCanceled",
"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": "admin",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "oldRules",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newRules",
"type": "address"
}
],
"name": "Upgrade",
"type": "event"
},
{
"inputs": [],
"name": "CONTRACT_ADMIN_ROLE",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MAX_CANCELABLE_BY",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "MAX_WALLETS_PER_HOLDER",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "RESERVE_ADMIN_ROLE",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "TRANSFER_ADMIN_ROLE",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "WALLETS_ADMIN_ROLE",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "_ITRANSFER_RULES_INTERFACE_ID",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "addresses_",
"type": "address[]"
}
],
"name": "addHolderWithAddresses",
"outputs": [
{
"internalType": "uint256",
"name": "_holderId",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
}
],
"name": "addressHasHolder",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"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": "addr_",
"type": "address"
},
{
"internalType": "uint256",
"name": "holderId_",
"type": "uint256"
}
],
"name": "appendHolderAddress",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "spender",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "approve",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "balanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
},
{
"internalType": "uint256",
"name": "timelockIndex_",
"type": "uint256"
}
],
"name": "balanceOfTimelock",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "to",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "commencementTimestamps",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "scheduleIds",
"type": "uint256[]"
},
{
"internalType": "address[]",
"name": "cancelableBy",
"type": "address[]"
}
],
"name": "batchFundReleaseSchedule",
"outputs": [
{
"internalType": "bool",
"name": "success",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "addresses",
"type": "address[]"
},
{
"internalType": "uint8[]",
"name": "roles",
"type": "uint8[]"
}
],
"name": "batchGrantRoles",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "to",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "commencementTimestamps",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "scheduleIds",
"type": "uint256[]"
},
{
"internalType": "address[]",
"name": "cancelableBy",
"type": "address[]"
}
],
"name": "batchMintReleaseSchedule",
"outputs": [
{
"internalType": "bool",
"name": "success",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "addresses_",
"type": "address[]"
}
],
"name": "batchRemoveWalletFromHolder",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "addresses",
"type": "address[]"
},
{
"internalType": "uint8[]",
"name": "roles",
"type": "uint8[]"
}
],
"name": "batchRevokeRoles",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "recipients",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]"
}
],
"name": "batchTransfer",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from_",
"type": "address"
},
{
"internalType": "uint256",
"name": "value_",
"type": "uint256"
}
],
"name": "burn",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "commencedTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "currentTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
},
{
"components": [
{
"internalType": "uint256",
"name": "releaseCount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "delayUntilFirstReleaseInSeconds",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "initialReleasePortionInBips",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "periodBetweenReleasesInSeconds",
"type": "uint256"
}
],
"internalType": "struct RestrictedLockupToken.ReleaseSchedule",
"name": "releaseSchedule_",
"type": "tuple"
}
],
"name": "calculateUnlocked",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "commencedTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "currentTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "releaseCount_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "delayUntilFirstReleaseInSeconds_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "initialReleasePortionInBips_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "periodBetweenReleasesInSeconds_",
"type": "uint256"
}
],
"name": "calculateUnlocked",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "commencedTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "currentTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "scheduleId_",
"type": "uint256"
}
],
"name": "calculateUnlocked",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "target_",
"type": "address"
},
{
"internalType": "uint256",
"name": "timelockIndex_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "scheduleId_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "commencementTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "totalAmount_",
"type": "uint256"
},
{
"internalType": "address",
"name": "reclaimTokenTo_",
"type": "address"
}
],
"name": "cancelTimelock",
"outputs": [
{
"internalType": "bool",
"name": "success",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint32",
"name": "pos",
"type": "uint32"
}
],
"name": "checkpoints",
"outputs": [
{
"components": [
{
"internalType": "uint48",
"name": "_key",
"type": "uint48"
},
{
"internalType": "uint208",
"name": "_value",
"type": "uint208"
}
],
"internalType": "struct Checkpoints.Checkpoint208",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "circulatingTokenSupply",
"outputs": [
{
"internalType": "uint256",
"name": "_circulatingTokenSupply",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "clock",
"outputs": [
{
"internalType": "uint48",
"name": "",
"type": "uint48"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "contractAdminCount",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
}
],
"name": "createHolderFromAddress",
"outputs": [
{
"internalType": "uint256",
"name": "_holderId",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "releaseCount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "delayUntilFirstReleaseInSeconds",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "initialReleasePortionInBips",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "periodBetweenReleasesInSeconds",
"type": "uint256"
}
],
"name": "createReleaseSchedule",
"outputs": [
{
"internalType": "uint256",
"name": "unlockScheduleId",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "decimals",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from_",
"type": "address"
},
{
"internalType": "address",
"name": "to_",
"type": "address"
},
{
"internalType": "uint256",
"name": "value_",
"type": "uint256"
}
],
"name": "detectTransferRestriction",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from_",
"type": "address"
},
{
"internalType": "address",
"name": "to_",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
}
],
"name": "forceTransferBetween",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
},
{
"internalType": "bool",
"name": "status_",
"type": "bool"
}
],
"name": "freeze",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to_",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "commencementTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "scheduleId_",
"type": "uint256"
},
{
"internalType": "address[]",
"name": "cancelableBy_",
"type": "address[]"
}
],
"name": "fundReleaseSchedule",
"outputs": [
{
"internalType": "bool",
"name": "_success",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "fromGroupId_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "toGroupId_",
"type": "uint256"
}
],
"name": "getAllowGroupTransferTime",
"outputs": [
{
"internalType": "uint256",
"name": "_timestamp",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from_",
"type": "address"
},
{
"internalType": "address",
"name": "to_",
"type": "address"
}
],
"name": "getAllowTransferTime",
"outputs": [
{
"internalType": "uint256",
"name": "_timestamp",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
}
],
"name": "getFrozenStatus",
"outputs": [
{
"internalType": "bool",
"name": "status",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "holderId_",
"type": "uint256"
}
],
"name": "getHolderAddresses",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
}
],
"name": "getHolderId",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint256",
"name": "timepoint",
"type": "uint256"
}
],
"name": "getPastBalanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "timepoint",
"type": "uint256"
}
],
"name": "getPastTotalSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
}
],
"name": "getTransferGroup",
"outputs": [
{
"internalType": "uint256",
"name": "_groupId",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
},
{
"internalType": "uint8",
"name": "role",
"type": "uint8"
}
],
"name": "grantRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
}
],
"name": "hasAnyGroup",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
},
{
"internalType": "uint256",
"name": "groupId_",
"type": "uint256"
}
],
"name": "hasGroup",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
},
{
"internalType": "uint8",
"name": "role",
"type": "uint8"
}
],
"name": "hasRole",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "holderCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "holderId_",
"type": "uint256"
}
],
"name": "holderExists",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "holderGroupCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "holderGroupMax",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "holderIds",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "holderMax",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "holderWalletsCountByGroupId",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "isPaused",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "forwarder",
"type": "address"
}
],
"name": "isTrustedForwarder",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "transferRulesAddr_",
"type": "address"
}
],
"name": "isValidTransferRules",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
}
],
"name": "lockedBalanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
},
{
"internalType": "uint256",
"name": "timelockIndex_",
"type": "uint256"
}
],
"name": "lockedBalanceOfTimelock",
"outputs": [
{
"internalType": "uint256",
"name": "_locked",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "maxReleaseDelay",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "maxTotalSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint8",
"name": "restrictionCode_",
"type": "uint8"
}
],
"name": "messageForTransferRestriction",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "minTimelockAmount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to_",
"type": "address"
},
{
"internalType": "uint256",
"name": "value_",
"type": "uint256"
}
],
"name": "mint",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to_",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "commencementTimestamp_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "scheduleId_",
"type": "uint256"
},
{
"internalType": "address[]",
"name": "cancelableBy_",
"type": "address[]"
}
],
"name": "mintReleaseSchedule",
"outputs": [
{
"internalType": "bool",
"name": "_success",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "name",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "numCheckpoints",
"outputs": [
{
"internalType": "uint32",
"name": "",
"type": "uint32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bool",
"name": "isPaused_",
"type": "bool"
}
],
"name": "pause",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "releaseSchedules",
"outputs": [
{
"internalType": "uint256",
"name": "releaseCount",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "delayUntilFirstReleaseInSeconds",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "initialReleasePortionInBips",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "periodBetweenReleasesInSeconds",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "holderId_",
"type": "uint256"
}
],
"name": "removeHolder",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
}
],
"name": "removeWalletFromHolder",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr",
"type": "address"
},
{
"internalType": "uint8",
"name": "role",
"type": "uint8"
}
],
"name": "revokeRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "spender_",
"type": "address"
},
{
"internalType": "uint256",
"name": "value_",
"type": "uint256"
}
],
"name": "safeApprove",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "scheduleCount",
"outputs": [
{
"internalType": "uint256",
"name": "count",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "buyerAddr_",
"type": "address"
},
{
"internalType": "uint256",
"name": "groupId_",
"type": "uint256"
},
{
"internalType": "bool",
"name": "freezeStatus_",
"type": "bool"
}
],
"name": "setAddressPermissions",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "from_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "to_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "lockedUntil_",
"type": "uint256"
}
],
"name": "setAllowGroupTransfer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_groupId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_holderGroupMax",
"type": "uint256"
}
],
"name": "setHolderGroupMax",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "holderMax_",
"type": "uint256"
}
],
"name": "setHolderMax",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "maxTotalSupply_",
"type": "uint256"
}
],
"name": "setMaxTotalSupply",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "addr_",
"type": "address"
},
{
"internalType": "uint256",
"name": "groupId_",
"type": "uint256"
}
],
"name": "setTransferGroup",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "snapshotsEnabled",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
}
],
"name": "superBalanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"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": [
{
"internalType": "address",
"name": "who_",
"type": "address"
}
],
"name": "timelockCountOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
},
{
"internalType": "uint256",
"name": "index_",
"type": "uint256"
}
],
"name": "timelockOf",
"outputs": [
{
"components": [
{
"internalType": "address",
"name": "funder",
"type": "address"
},
{
"internalType": "uint256",
"name": "scheduleId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "commencementTimestamp",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "tokensTransferred",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "totalAmount",
"type": "uint256"
},
{
"internalType": "address[]",
"name": "cancelableBy",
"type": "address[]"
}
],
"internalType": "struct RestrictedLockupToken.Timelock",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "timelocks",
"outputs": [
{
"internalType": "address",
"name": "funder",
"type": "address"
},
{
"internalType": "uint256",
"name": "scheduleId",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "commencementTimestamp",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "tokensTransferred",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "totalAmount",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "totalSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "totalTokenSupply",
"outputs": [
{
"internalType": "uint256",
"name": "_totalTokenSupply",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
},
{
"internalType": "uint256",
"name": "timelockIndex_",
"type": "uint256"
}
],
"name": "totalUnlockedToDateOfTimelock",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"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": [],
"name": "transferRules",
"outputs": [
{
"internalType": "contract ITransferRules",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to_",
"type": "address"
},
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "timelockId_",
"type": "uint256"
}
],
"name": "transferTimelock",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "trustedForwarder",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "unissuedTokenSupply",
"outputs": [
{
"internalType": "uint256",
"name": "_unissuedTokenSupply",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
}
],
"name": "unlockedBalanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "amount_",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
},
{
"internalType": "uint256",
"name": "timelockIndex_",
"type": "uint256"
}
],
"name": "unlockedBalanceOfTimelock",
"outputs": [
{
"internalType": "uint256",
"name": "_unlocked",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "who_",
"type": "address"
}
],
"name": "unlockedTotalBalanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract ITransferRules",
"name": "newTransferRules",
"type": "address"
}
],
"name": "upgradeTransferRules",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
]