randomness-js
Version:
A library for consuming, verifying and using randomness from the dcipher network
1,685 lines (1,683 loc) • 79.2 kB
text/typescript
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import {
Contract,
ContractFactory,
ContractTransactionResponse,
Interface,
} from "ethers";
import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers";
import type { NonPayableOverrides } from "../common";
import type {
RandomnessSender,
RandomnessSenderInterface,
} from "../RandomnessSender";
const _abi = [
{
type: "constructor",
inputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "ADMIN_ROLE",
inputs: [],
outputs: [
{
name: "",
type: "bytes32",
internalType: "bytes32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "DEFAULT_ADMIN_ROLE",
inputs: [],
outputs: [
{
name: "",
type: "bytes32",
internalType: "bytes32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "MAX_CONSUMERS",
inputs: [],
outputs: [
{
name: "",
type: "uint16",
internalType: "uint16",
},
],
stateMutability: "view",
},
{
type: "function",
name: "SCHEME_ID",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "UPGRADE_INTERFACE_VERSION",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "acceptSubscriptionOwnerTransfer",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "addConsumer",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
{
name: "consumer",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "calculateRequestPriceNative",
inputs: [
{
name: "_callbackGasLimit",
type: "uint32",
internalType: "uint32",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "cancelSubscription",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
{
name: "to",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "createSubscription",
inputs: [],
outputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "disable",
inputs: [],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "enable",
inputs: [],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "estimateRequestPriceNative",
inputs: [
{
name: "_callbackGasLimit",
type: "uint32",
internalType: "uint32",
},
{
name: "_requestGasPriceWei",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "fundSubscriptionWithNative",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "payable",
},
{
type: "function",
name: "getActiveSubscriptionIds",
inputs: [
{
name: "startIndex",
type: "uint256",
internalType: "uint256",
},
{
name: "maxCount",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "ids",
type: "uint256[]",
internalType: "uint256[]",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getAllRequests",
inputs: [],
outputs: [
{
name: "",
type: "tuple[]",
internalType: "struct TypesLib.RandomnessRequest[]",
components: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
{
name: "directFundingFeePaid",
type: "uint256",
internalType: "uint256",
},
{
name: "callbackGasLimit",
type: "uint32",
internalType: "uint32",
},
{
name: "requestId",
type: "uint256",
internalType: "uint256",
},
{
name: "message",
type: "bytes",
internalType: "bytes",
},
{
name: "condition",
type: "bytes",
internalType: "bytes",
},
{
name: "signature",
type: "bytes",
internalType: "bytes",
},
{
name: "nonce",
type: "uint256",
internalType: "uint256",
},
{
name: "callback",
type: "address",
internalType: "address",
},
],
},
],
stateMutability: "view",
},
{
type: "function",
name: "getConfig",
inputs: [],
outputs: [
{
name: "maxGasLimit",
type: "uint32",
internalType: "uint32",
},
{
name: "gasAfterPaymentCalculation",
type: "uint32",
internalType: "uint32",
},
{
name: "fulfillmentFlatFeeNativePPM",
type: "uint32",
internalType: "uint32",
},
{
name: "weiPerUnitGas",
type: "uint32",
internalType: "uint32",
},
{
name: "blsPairingCheckOverhead",
type: "uint32",
internalType: "uint32",
},
{
name: "nativePremiumPercentage",
type: "uint8",
internalType: "uint8",
},
{
name: "gasForCallExactCheck",
type: "uint32",
internalType: "uint32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getRequest",
inputs: [
{
name: "requestId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "tuple",
internalType: "struct TypesLib.RandomnessRequest",
components: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
{
name: "directFundingFeePaid",
type: "uint256",
internalType: "uint256",
},
{
name: "callbackGasLimit",
type: "uint32",
internalType: "uint32",
},
{
name: "requestId",
type: "uint256",
internalType: "uint256",
},
{
name: "message",
type: "bytes",
internalType: "bytes",
},
{
name: "condition",
type: "bytes",
internalType: "bytes",
},
{
name: "signature",
type: "bytes",
internalType: "bytes",
},
{
name: "nonce",
type: "uint256",
internalType: "uint256",
},
{
name: "callback",
type: "address",
internalType: "address",
},
],
},
],
stateMutability: "view",
},
{
type: "function",
name: "getRoleAdmin",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "bytes32",
internalType: "bytes32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getRoleMember",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
{
name: "index",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "address",
internalType: "address",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getRoleMemberCount",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getRoleMembers",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "address[]",
internalType: "address[]",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getSubscription",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "nativeBalance",
type: "uint96",
internalType: "uint96",
},
{
name: "reqCount",
type: "uint64",
internalType: "uint64",
},
{
name: "subOwner",
type: "address",
internalType: "address",
},
{
name: "consumers",
type: "address[]",
internalType: "address[]",
},
],
stateMutability: "view",
},
{
type: "function",
name: "grantRole",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
{
name: "account",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "hasRole",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
{
name: "account",
type: "address",
internalType: "address",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "initialize",
inputs: [
{
name: "_signatureSender",
type: "address",
internalType: "address",
},
{
name: "owner",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "isInFlight",
inputs: [
{
name: "requestID",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "messageFrom",
inputs: [
{
name: "r",
type: "tuple",
internalType: "struct TypesLib.RandomnessRequestCreationParams",
components: [
{
name: "nonce",
type: "uint256",
internalType: "uint256",
},
{
name: "callback",
type: "address",
internalType: "address",
},
],
},
],
outputs: [
{
name: "",
type: "bytes",
internalType: "bytes",
},
],
stateMutability: "pure",
},
{
type: "function",
name: "nonce",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "ownerCancelSubscription",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "pendingRequestExists",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "proxiableUUID",
inputs: [],
outputs: [
{
name: "",
type: "bytes32",
internalType: "bytes32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "receiveSignature",
inputs: [
{
name: "requestID",
type: "uint256",
internalType: "uint256",
},
{
name: "signature",
type: "bytes",
internalType: "bytes",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "removeConsumer",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
{
name: "consumer",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "renounceRole",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
{
name: "callerConfirmation",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "requestRandomness",
inputs: [
{
name: "callbackGasLimit",
type: "uint32",
internalType: "uint32",
},
],
outputs: [
{
name: "requestID",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "payable",
},
{
type: "function",
name: "requestRandomnessWithSubscription",
inputs: [
{
name: "callbackGasLimit",
type: "uint32",
internalType: "uint32",
},
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "requestID",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "payable",
},
{
type: "function",
name: "requestSubscriptionOwnerTransfer",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
{
name: "newOwner",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "revokeRole",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
{
name: "account",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "s_config",
inputs: [],
outputs: [
{
name: "maxGasLimit",
type: "uint32",
internalType: "uint32",
},
{
name: "gasAfterPaymentCalculation",
type: "uint32",
internalType: "uint32",
},
{
name: "fulfillmentFlatFeeNativePPM",
type: "uint32",
internalType: "uint32",
},
{
name: "weiPerUnitGas",
type: "uint32",
internalType: "uint32",
},
{
name: "blsPairingCheckOverhead",
type: "uint32",
internalType: "uint32",
},
{
name: "nativePremiumPercentage",
type: "uint8",
internalType: "uint8",
},
{
name: "gasForCallExactCheck",
type: "uint32",
internalType: "uint32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "s_configured",
inputs: [],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "s_currentSubNonce",
inputs: [],
outputs: [
{
name: "",
type: "uint64",
internalType: "uint64",
},
],
stateMutability: "view",
},
{
type: "function",
name: "s_disabled",
inputs: [],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "s_totalNativeBalance",
inputs: [],
outputs: [
{
name: "",
type: "uint96",
internalType: "uint96",
},
],
stateMutability: "view",
},
{
type: "function",
name: "s_withdrawableDirectFundingFeeNative",
inputs: [],
outputs: [
{
name: "",
type: "uint96",
internalType: "uint96",
},
],
stateMutability: "view",
},
{
type: "function",
name: "s_withdrawableSubscriptionFeeNative",
inputs: [],
outputs: [
{
name: "",
type: "uint96",
internalType: "uint96",
},
],
stateMutability: "view",
},
{
type: "function",
name: "setConfig",
inputs: [
{
name: "maxGasLimit",
type: "uint32",
internalType: "uint32",
},
{
name: "gasAfterPaymentCalculation",
type: "uint32",
internalType: "uint32",
},
{
name: "fulfillmentFlatFeeNativePPM",
type: "uint32",
internalType: "uint32",
},
{
name: "weiPerUnitGas",
type: "uint32",
internalType: "uint32",
},
{
name: "blsPairingCheckOverhead",
type: "uint32",
internalType: "uint32",
},
{
name: "nativePremiumPercentage",
type: "uint8",
internalType: "uint8",
},
{
name: "gasForCallExactCheck",
type: "uint32",
internalType: "uint32",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "setSignatureSender",
inputs: [
{
name: "newSignatureSender",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "signatureSender",
inputs: [],
outputs: [
{
name: "",
type: "address",
internalType: "contract ISignatureSender",
},
],
stateMutability: "view",
},
{
type: "function",
name: "supportsInterface",
inputs: [
{
name: "interfaceId",
type: "bytes4",
internalType: "bytes4",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "upgradeToAndCall",
inputs: [
{
name: "newImplementation",
type: "address",
internalType: "address",
},
{
name: "data",
type: "bytes",
internalType: "bytes",
},
],
outputs: [],
stateMutability: "payable",
},
{
type: "function",
name: "version",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "pure",
},
{
type: "function",
name: "withdrawDirectFundingFeesNative",
inputs: [
{
name: "recipient",
type: "address",
internalType: "address payable",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "withdrawSubscriptionFeesNative",
inputs: [
{
name: "recipient",
type: "address",
internalType: "address payable",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "event",
name: "ConfigSet",
inputs: [
{
name: "maxGasLimit",
type: "uint32",
indexed: false,
internalType: "uint32",
},
{
name: "gasAfterPaymentCalculation",
type: "uint32",
indexed: false,
internalType: "uint32",
},
{
name: "fulfillmentFlatFeeNativePPM",
type: "uint32",
indexed: false,
internalType: "uint32",
},
{
name: "weiPerUnitGas",
type: "uint32",
indexed: false,
internalType: "uint32",
},
{
name: "blsPairingCheckOverhead",
type: "uint32",
indexed: false,
internalType: "uint32",
},
{
name: "nativePremiumPercentage",
type: "uint8",
indexed: false,
internalType: "uint8",
},
{
name: "gasForCallExactCheck",
type: "uint32",
indexed: false,
internalType: "uint32",
},
],
anonymous: false,
},
{
type: "event",
name: "Disabled",
inputs: [],
anonymous: false,
},
{
type: "event",
name: "Enabled",
inputs: [],
anonymous: false,
},
{
type: "event",
name: "Initialized",
inputs: [
{
name: "version",
type: "uint64",
indexed: false,
internalType: "uint64",
},
],
anonymous: false,
},
{
type: "event",
name: "L1GasFee",
inputs: [
{
name: "fee",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "RandomnessCallbackFailed",
inputs: [
{
name: "requestID",
type: "uint256",
indexed: true,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "RandomnessCallbackSuccess",
inputs: [
{
name: "requestID",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "randomness",
type: "bytes32",
indexed: false,
internalType: "bytes32",
},
{
name: "signature",
type: "bytes",
indexed: false,
internalType: "bytes",
},
],
anonymous: false,
},
{
type: "event",
name: "RandomnessRequested",
inputs: [
{
name: "requestID",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "nonce",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "requester",
type: "address",
indexed: true,
internalType: "address",
},
{
name: "requestedAt",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "RoleAdminChanged",
inputs: [
{
name: "role",
type: "bytes32",
indexed: true,
internalType: "bytes32",
},
{
name: "previousAdminRole",
type: "bytes32",
indexed: true,
internalType: "bytes32",
},
{
name: "newAdminRole",
type: "bytes32",
indexed: true,
internalType: "bytes32",
},
],
anonymous: false,
},
{
type: "event",
name: "RoleGranted",
inputs: [
{
name: "role",
type: "bytes32",
indexed: true,
internalType: "bytes32",
},
{
name: "account",
type: "address",
indexed: true,
internalType: "address",
},
{
name: "sender",
type: "address",
indexed: true,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "RoleRevoked",
inputs: [
{
name: "role",
type: "bytes32",
indexed: true,
internalType: "bytes32",
},
{
name: "account",
type: "address",
indexed: true,
internalType: "address",
},
{
name: "sender",
type: "address",
indexed: true,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "SignatureSenderUpdated",
inputs: [
{
name: "signatureSender",
type: "address",
indexed: true,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "SubscriptionCanceled",
inputs: [
{
name: "subId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "to",
type: "address",
indexed: false,
internalType: "address",
},
{
name: "amountNative",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "SubscriptionConsumerAdded",
inputs: [
{
name: "subId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "consumer",
type: "address",
indexed: false,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "SubscriptionConsumerRemoved",
inputs: [
{
name: "subId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "consumer",
type: "address",
indexed: false,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "SubscriptionCreated",
inputs: [
{
name: "subId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "owner",
type: "address",
indexed: false,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "SubscriptionFundedWithNative",
inputs: [
{
name: "subId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "oldNativeBalance",
type: "uint256",
indexed: false,
internalType: "uint256",
},
{
name: "newNativeBalance",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "SubscriptionOwnerTransferRequested",
inputs: [
{
name: "subId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "from",
type: "address",
indexed: false,
internalType: "address",
},
{
name: "to",
type: "address",
indexed: false,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "SubscriptionOwnerTransferred",
inputs: [
{
name: "subId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "from",
type: "address",
indexed: false,
internalType: "address",
},
{
name: "to",
type: "address",
indexed: false,
internalType: "address",
},
],
anonymous: false,
},
{
type: "event",
name: "Upgraded",
inputs: [
{
name: "implementation",
type: "address",
indexed: true,
internalType: "address",
},
],
anonymous: false,
},
{
type: "error",
name: "AccessControlBadConfirmation",
inputs: [],
},
{
type: "error",
name: "AccessControlUnauthorizedAccount",
inputs: [
{
name: "account",
type: "address",
internalType: "address",
},
{
name: "neededRole",
type: "bytes32",
internalType: "bytes32",
},
],
},
{
type: "error",
name: "AddressEmptyCode",
inputs: [
{
name: "target",
type: "address",
internalType: "address",
},
],
},
{
type: "error",
name: "BalanceInvariantViolated",
inputs: [
{
name: "internalBalance",
type: "uint256",
internalType: "uint256",
},
{
name: "externalBalance",
type: "uint256",
internalType: "uint256",
},
],
},
{
type: "error",
name: "ERC1967InvalidImplementation",
inputs: [
{
name: "implementation",
type: "address",
internalType: "address",
},
],
},
{
type: "error",
name: "ERC1967NonPayable",
inputs: [],
},
{
type: "error",
name: "FailedCall",
inputs: [],
},
{
type: "error",
name: "FailedToSendNative",
inputs: [],
},
{
type: "error",
name: "IndexOutOfRange",
inputs: [],
},
{
type: "error",
name: "InsufficientBalance",
inputs: [],
},
{
type: "error",
name: "InvalidCalldata",
inputs: [],
},
{
type: "error",
name: "InvalidConsumer",
inputs: [
{
name: "subId",
type: "uint256",
internalType: "uint256",
},
{
name: "consumer",
type: "address",
internalType: "address",
},
],
},
{
type: "error",
name: "InvalidInitialization",
inputs: [],
},
{
type: "error",
name: "InvalidSubscription",
inputs: [],
},
{
type: "error",
name: "MustBeRequestedOwner",
inputs: [
{
name: "proposedOwner",
type: "address",
internalType: "address",
},
],
},
{
type: "error",
name: "MustBeSubOwner",
inputs: [
{
name: "owner",
type: "address",
internalType: "address",
},
],
},
{
type: "error",
name: "NotInitializing",
inputs: [],
},
{
type: "error",
name: "PendingRequestExists",
inputs: [],
},
{
type: "error",
name: "ReentrancyGuardReentrantCall",
inputs: [],
},
{
type: "error",
name: "TooManyConsumers",
inputs: [],
},
{
type: "error",
name: "UUPSUnauthorizedCallContext",
inputs: [],
},
{
type: "error",
name: "UUPSUnsupportedProxiableUUID",
inputs: [
{
name: "slot",
type: "bytes32",
internalType: "bytes32",
},
],
},
] as const;
const _bytecode =
"0x60a0604052306080525f600c55348015610017575f5ffd5b5060015f55610024610029565b6100db565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100795760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100d85780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516159676101015f395f8181613a0a01528181613a330152613c7001526159675ff3fe608060405260043610610345575f3560e01c806391d14854116101b2578063b2a7cac5116100f2578063cb63179711610092578063dac83d291161006d578063dac83d2914610c09578063dc311dd314610c28578063f8fa0d6614610c57578063fb1a002a14610c76575f5ffd5b8063cb63179714610bac578063cd802c9114610bcb578063d547741f14610bea575f5ffd5b8063c3f909d4116100cd578063c3f909d414610aaa578063c58343ef14610b42578063c8db658214610b6e578063ca15c87314610b8d575f5ffd5b8063b2a7cac514610a4d578063bd18636b14610a6c578063bec4c08c14610a8b575f5ffd5b8063a3246ad31161015d578063aa433aff11610138578063aa433aff146109a5578063ad3cb1cc146109c4578063aefb212f14610a0c578063affed0e014610a38575f5ffd5b8063a3246ad314610947578063a3907d7114610973578063a608a1e114610987575f5ffd5b80639d40a6fd1161018d5780639d40a6fd146108e7578063a217fddf14610920578063a21a23e414610933575f5ffd5b806391d148541461084057806395b55cfc146108b0578063995cb36e146108c3575f5ffd5b8063485cc9551161028857806364d51a2a116102285780637d468106116102035780637d46810614610775578063811ee32a146107c65780638a1f165a146107d95780639010d07c14610821575f5ffd5b806364d51a2a146106fc57806375b238fc14610723578063775b839c14610756575f5ffd5b806352d1902d1161026357806352d1902d1461066257806354236fb31461067657806354fd4d501461069557806357a8070a146106e3575f5ffd5b8063485cc955146106115780634b160935146106305780634f1ef2861461064f575f5ffd5b80632f2770db116102f357806336568abe116102ce57806336568abe146105805780633bc32c751461059f57806341af6c87146105d357806345fa4354146105f2575f5ffd5b80632f2770db1461052e5780632f2ff15d146105425780633255c45614610561575f5ffd5b806318e3dd271161032357806318e3dd271461047f5780631da53c9f146104c0578063248a9ca3146104e1575f5ffd5b806301ffc9a714610349578063088070f51461037d5780630ae095401461045e575b5f5ffd5b348015610354575f5ffd5b50610368610363366004614cc2565b610c97565b60405190151581526020015b60405180910390f35b348015610388575f5ffd5b50600a546104179063ffffffff8082169164010000000081048216916801000000000000000082048116916c010000000000000000000000008104821691700100000000000000000000000000000000820481169160ff740100000000000000000000000000000000000000008204169175010000000000000000000000000000000000000000009091041687565b6040805163ffffffff988916815296881660208801529487169486019490945291851660608501528416608084015260ff1660a083015290911660c082015260e001610374565b348015610469575f5ffd5b5061047d610478366004614d22565b610cf2565b005b34801561048a575f5ffd5b506008546104a3906bffffffffffffffffffffffff1681565b6040516bffffffffffffffffffffffff9091168152602001610374565b6104d36104ce366004614d68565b610d5c565b604051908152602001610374565b3480156104ec575f5ffd5b506104d36104fb366004614d90565b5f9081527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800602052604090206001015490565b348015610539575f5ffd5b5061047d6112c0565b34801561054d575f5ffd5b5061047d61055c366004614d22565b61133f565b34801561056c575f5ffd5b506104d361057b366004614d68565b611388565b34801561058b575f5ffd5b5061047d61059a366004614d22565b6113a0565b3480156105aa575f5ffd5b506008546104a3906c0100000000000000000000000090046bffffffffffffffffffffffff1681565b3480156105de575f5ffd5b506103686105ed366004614d90565b6113f9565b3480156105fd575f5ffd5b5061047d61060c366004614da7565b6114a2565b34801561061c575f5ffd5b5061047d61062b366004614e2f565b61175d565b34801561063b575f5ffd5b506104d361064a366004614e5b565b611ac2565b61047d61065d366004614ef0565b611ad3565b34801561066d575f5ffd5b506104d3611af2565b348015610681575f5ffd5b5061047d610690366004614fb5565b611b21565b3480156106a0575f5ffd5b5060408051808201909152600581527f302e302e3100000000000000000000000000000000000000000000000000000060208201525b604051610374919061501c565b3480156106ee575f5ffd5b50600b546103689060ff1681565b348015610707575f5ffd5b50610710606481565b60405161ffff9091168152602001610374565b34801561072e575f5ffd5b506104d37fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b348015610761575f5ffd5b506106d661077036600461502e565b611bcb565b348015610780575f5ffd5b506001546107a19073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610374565b6104d36107d4366004614e5b565b611c34565b3480156107e4575f5ffd5b506106d66040518060400160405280600581526020017f424e32353400000000000000000000000000000000000000000000000000000081525081565b34801561082c575f5ffd5b506107a161083b366004615084565b611d1e565b34801561084b575f5ffd5b5061036861085a366004614d22565b5f9182527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b61047d6108be366004614d90565b611d5e565b3480156108ce575f5ffd5b506009546104a3906bffffffffffffffffffffffff1681565b3480156108f2575f5ffd5b506005546109079067ffffffffffffffff1681565b60405167ffffffffffffffff9091168152602001610374565b34801561092b575f5ffd5b506104d35f81565b34801561093e575f5ffd5b506104d3611e94565b348015610952575f5ffd5b50610966610961366004614d90565b6120d8565b60405161037491906150f4565b34801561097e575f5ffd5b5061047d612114565b348015610992575f5ffd5b50600b5461036890610100900460ff1681565b3480156109b0575f5ffd5b5061047d6109bf366004614d90565b61218f565b3480156109cf575f5ffd5b506106d66040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b348015610a17575f5ffd5b50610a2b610a26366004615084565b6121ef565b6040516103749190615106565b348015610a43575f5ffd5b506104d3600c5481565b348015610a58575f5ffd5b5061047d610a67366004614d90565b6122fe565b348015610a77575f5ffd5b5061047d610a86366004614fb5565b61244e565b348015610a96575f5ffd5b5061047d610aa5366004614d22565b61252b565b348015610ab5575f5ffd5b50600a5463ffffffff8082169164010000000081048216916801000000000000000082048116916c010000000000000000000000008104821691700100000000000000000000000000000000820481169160ff7401000000000000000000000000000000000000000082041691750100000000000000000000000000000000000000000090910416610417565b348015610b4d575f5ffd5b50610b61610b5c366004614d90565b6126a6565b6040516103749190615205565b348015610b79575f5ffd5b5061047d610b88366004615217565b61293a565b348015610b98575f5ffd5b506104d3610ba7366004614d90565b6129c6565b348015610bb7575f5ffd5b5061047d610bc6366004614d22565b6129fd565b348015610bd6575f5ffd5b50610368610be5366004614d90565b612cd8565b348015610bf5575f5ffd5b5061047d610c04366004614d22565b612d69565b348015610c14575f5ffd5b5061047d610c23366004614d22565b612dac565b348015610c33575f5ffd5b50610c47610c42366004614d90565b612e7b565b604051610374949392919061528e565b348015610c62575f5ffd5b5061047d610c71366004614fb5565b612f63565b348015610c81575f5ffd5b50610c8a612ffa565b60405161037491906152ea565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f5a05180f000000000000000000000000000000000000000000000000000000001480610cec5750610cec8261326a565b92915050565b81610cfc81613300565b610d04613394565b610d0d836113f9565b15610d44576040517fb42f66e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d4e83836133d5565b610d5760015f55565b505050565b600b545f9060ff16610dcf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f436f6e7472616374206973206e6f7420636f6e6669677572656400000000000060448201526064015b60405180910390fd5b600b54610100900460ff1615610e41576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742069732064697361626c65640000000000000000000000006044820152606401610dc6565b81151580610e4e57505f34115b610eda576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f4469726563742066756e64696e6720726571756972656420666f72207265717560448201527f6573742066756c66696c6c6d656e742063616c6c6261636b00000000000000006064820152608401610dc6565b610ee4838361345c565b6001600c5f828254610ef69190615398565b909155505060408051610120810182528381523460208083019190915263ffffffff8616828401525f606083018190528351808301855281815260808401528351808301855281815260a08401528351808301855281815260c0840152600c5460e084018190523361010085018190528551808701909652908552918401919091529091610f8390611bcb565b60408051602080820183525f82528251808401909352600583527f424e32353400000000000000000000000000000000000000000000000000000090830152919250610fd0908383613758565b606084018181526080850184815260a086018490525f838152600d602090815260409182902088518155908801516001820155908701516002820180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff9092169190911790559151600383015551919550849160048201906110599082615447565b5060a0820151600582019061106e9082615447565b5060c082015160068201906110839082615447565b5060e0820151600782015561010090910151600890910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091179055600e80546001810182555f9190915283517fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd600990920291820190815560208501517fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fe83015560408501517fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3ff830180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff90921691909117905560608501517fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c400830155608085015185927fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c40101906111f99082615447565b5060a0820151600582019061120e9082615447565b5060c082015160068201906112239082615447565b5060e0820151600782015561010090910151600890910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091179055600c5460405142815233919086907feee7195b6cee0fa7044c3af0b86fe2febb1d2703d71191f44052ba0d60ffda649060200160405180910390a450505092915050565b6112e97fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756137f2565b600b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790556040517f75884cdadc4a89e8b545db800057f06ec7f5338a08183c7ba515f2bfdd9fe1e1905f90a1565b5f8281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020526040902060010154611378816137f2565b61138283836137fc565b50505050565b5f6113998363ffffffff1683613851565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff811633146113ef576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610d57828261399c565b5f8181526003602052604081206002018054825b81811015611498575f60025f85848154811061142b5761142b61555e565b5f91825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352828101939093526040918201812089825290925290205467ffffffffffffffff690100000000000000000090910416111561149057506001949350505050565b60010161140d565b505f949350505050565b6114cb7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756137f2565b60ff8216609b11611538576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f496e76616c6964205072656d69756d2050657263656e746167650000000000006044820152606401610dc6565b6040805160e0808201835263ffffffff8a81168084528a821660208086018290528b84168688018190528b851660608089018290528c87166080808b0182905260ff8e1660a0808d01829052998e1660c09c8d01819052600a80547fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000168b176401000000008b02177fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff166801000000000000000089027fffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffffff16176c010000000000000000000000008802177fffffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffff1670010000000000000000000000000000000086027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1617740100000000000000000000000000000000000000008402177fffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000008302179055600b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558d51998a52968901979097529a8701939093528501529683019690965291810191909152918201929092527f55a28fde295f482c9f32d670c116103bca15724bcef4f18b35542e0553c35ad591015b60405180910390a150505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f811580156117a75750825b90505f8267ffffffffffffffff1660011480156117c35750303b155b9050811580156117d1575080155b15611808576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000016600117855583156118695784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b6118716139e8565b6118796139e8565b6118a37fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775876137fc565b611909576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4772616e7420726f6c65206661696c65640000000000000000000000000000006044820152606401610dc6565b6119135f876137fc565b611979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4772616e7420726f6c65206661696c65640000000000000000000000000000006044820152606401610dc6565b73ffffffffffffffffffffffffffffffffffffffff8716611a1c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f43616e6e6f7420736574207a65726f2061646472657373206173207369676e6160448201527f747572652073656e6465720000000000000000000000000000000000000000006064820152608401610dc6565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff89161790558315611ab95784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200161174c565b50505050505050565b5f610cec8263ffffffff163a613851565b611adb6139f2565b611ae482613af6565b611aee8282613b1f565b5050565b5f611afb613c58565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b90565b611b29613394565b611b527fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756137f2565b6008546c0100000000000000000000000090046bffffffffffffffffffffffff16611b7e811515613cc7565b600880547fffffffffffffffff000000000000000000000000ffffffffffffffffffffffff169055611bbe826bffffffffffffffffffffffff8316613cfe565b50611bc860015f55565b50565b8051604051606091611be39160200190815260200190565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152828252805160209182012090830152016040516020818303038152906040529050919050565b600b545f9060ff16611ca2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f436f6e7472616374206973206e6f7420636f6e666967757265640000000000006044820152606401610dc6565b600b54610100900460ff1615611d14576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f436f6e74726163742069732064697361626c65640000000000000000000000006044820152606401610dc6565b610cec825f610d5c565b5f8281527fc1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e82371705932000602081905260408220611d569084613d94565b949350505050565b611d66613394565b5f81815260036020526040902054611d939073ffffffffffffffffffffffffffffffffffffffff16613d9f565b5f81815260046020526040812080546bffffffffffffffffffffffff1691349190611dbe838561558b565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055503460085f8282829054906101000a90046bffffffffffffffffffffffff16611e14919061558b565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550817f7603b205d03651ee812f803fccde89f1012e545a9c99f0abfea9cedd0fd8e902823484611e719190615398565b604080519283526020830191909152015b60405180910390a250611bc860015f55565b5f611e9d613394565b60055467ffffffffffffffff1633611eb66001436155af565b6040517fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606093841b81166020830152914060348201523090921b1660548201527fffffffffffffffff00000000000000000000000000000000000000000000000060c083901b166068820152607001604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905280516020909101209150611f698160016155c2565b600580547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff928316179055604080515f808252606080830184526020808401838152848601848152898552600483528685209151825491516bffffffffffffffffffffffff9091167fffffffffffffffffffffffff0000000000000000000000000000000000000000928316176c01000000000000000000000000919099160297909717905584519182018552338252818101838152828601858152898552600383529590932082518154881673ffffffffffffffffffffffffffffffffffffffff918216178255935160018201805490981694169390931790955592518051929491926120879260028501920190614c0f565b5061209791506006905084613dec565b5060405133815283907f1d3015d7ba850fa198dc7b1a3f5d42779313a681035f77c8c03764c61005518d9060200160405180910390a25050611b1e60015f55565b5f8181527fc1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e82371705932000602081905260409091206060919061139990613df7565b61213d7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756137f2565b600b80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690556040517fc0f961051f97b04c496472d11cb6170d844e4b2c9dfd3b602a4fa0139712d484905f90a1565b6121b87fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756137f2565b5f8181526003602052604090205473ffffffffffffffffffffffffffffffffffffffff166121e581613d9f565b611aee82826133d5565b60605f6121fc6006613e03565b9050808410612237576040517f1390f2a100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6122428486615398565b905081811180612250575083155b61225a578061225c565b815b90505f61226986836155af565b90508067ffffffffffffffff81111561228457612284614e74565b6040519080825280602002602001820160405280156122ad578160200160208202803683370190505b5093505f5b818110156122f4576122cf6122c78883615398565b600690613d94565b8582815181106122e1576122e161555e565b60209081029190910101526001016122b2565b5050505092915050565b612306613394565b5f8181526003602052604090205473ffffffffffffffffffffffffffffffffffffffff16612333