blocklock-js
Version:
A library for encrypting and decrypting data for the future
936 lines (928 loc) • 43.8 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 {
DecryptionSender,
DecryptionSenderInterface,
} from "../DecryptionSender";
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: "UPGRADE_INTERFACE_VERSION",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "fulfillDecryptionRequest",
inputs: [
{
name: "requestId",
type: "uint256",
internalType: "uint256",
},
{
name: "decryptionKey",
type: "bytes",
internalType: "bytes",
},
{
name: "signature",
type: "bytes",
internalType: "bytes",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "getAllErroredRequestIds",
inputs: [],
outputs: [
{
name: "",
type: "uint256[]",
internalType: "uint256[]",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getAllFulfilledRequestIds",
inputs: [],
outputs: [
{
name: "",
type: "uint256[]",
internalType: "uint256[]",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getAllUnfulfilledRequestIds",
inputs: [],
outputs: [
{
name: "",
type: "uint256[]",
internalType: "uint256[]",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getCountOfUnfulfilledRequestIds",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getRequest",
inputs: [
{
name: "requestId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "tuple",
internalType: "struct TypesLib.DecryptionRequest",
components: [
{
name: "schemeID",
type: "string",
internalType: "string",
},
{
name: "ciphertext",
type: "bytes",
internalType: "bytes",
},
{
name: "condition",
type: "bytes",
internalType: "bytes",
},
{
name: "decryptionKey",
type: "bytes",
internalType: "bytes",
},
{
name: "signature",
type: "bytes",
internalType: "bytes",
},
{
name: "callback",
type: "address",
internalType: "address",
},
{
name: "isFulfilled",
type: "bool",
internalType: "bool",
},
],
},
],
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: "grantRole",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
{
name: "account",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "hasErrored",
inputs: [
{
name: "requestId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
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: "owner",
type: "address",
internalType: "address",
},
{
name: "_signatureSchemeAddressProvider",
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: "lastRequestId",
inputs: [],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
stateMutability: "view",
},
{
type: "function",
name: "multicall",
inputs: [
{
name: "data",
type: "bytes[]",
internalType: "bytes[]",
},
],
outputs: [
{
name: "results",
type: "bytes[]",
internalType: "bytes[]",
},
],
stateMutability: "nonpayable",
},
{
type: "function",
name: "proxiableUUID",
inputs: [],
outputs: [
{
name: "",
type: "bytes32",
internalType: "bytes32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "registerCiphertext",
inputs: [
{
name: "schemeID",
type: "string",
internalType: "string",
},
{
name: "ciphertext",
type: "bytes",
internalType: "bytes",
},
{
name: "condition",
type: "bytes",
internalType: "bytes",
},
],
outputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
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: "requests",
inputs: [
{
name: "",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "schemeID",
type: "string",
internalType: "string",
},
{
name: "ciphertext",
type: "bytes",
internalType: "bytes",
},
{
name: "condition",
type: "bytes",
internalType: "bytes",
},
{
name: "decryptionKey",
type: "bytes",
internalType: "bytes",
},
{
name: "signature",
type: "bytes",
internalType: "bytes",
},
{
name: "callback",
type: "address",
internalType: "address",
},
{
name: "isFulfilled",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "revokeRole",
inputs: [
{
name: "role",
type: "bytes32",
internalType: "bytes32",
},
{
name: "account",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "setSignatureSchemeAddressProvider",
inputs: [
{
name: "newSignatureSchemeAddressProvider",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "signatureSchemeAddressProvider",
inputs: [],
outputs: [
{
name: "",
type: "address",
internalType: "contract ISignatureSchemeAddressProvider",
},
],
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: "event",
name: "DecryptionReceiverCallbackFailed",
inputs: [
{
name: "requestId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "DecryptionReceiverCallbackSuccess",
inputs: [
{
name: "requestId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "decryptionKey",
type: "bytes",
indexed: false,
internalType: "bytes",
},
{
name: "signature",
type: "bytes",
indexed: false,
internalType: "bytes",
},
],
anonymous: false,
},
{
type: "event",
name: "DecryptionRequested",
inputs: [
{
name: "requestId",
type: "uint256",
indexed: true,
internalType: "uint256",
},
{
name: "callback",
type: "address",
indexed: true,
internalType: "address",
},
{
name: "schemeID",
type: "string",
indexed: false,
internalType: "string",
},
{
name: "condition",
type: "bytes",
indexed: false,
internalType: "bytes",
},
{
name: "ciphertext",
type: "bytes",
indexed: false,
internalType: "bytes",
},
{
name: "requestedAt",
type: "uint256",
indexed: false,
internalType: "uint256",
},
],
anonymous: false,
},
{
type: "event",
name: "Initialized",
inputs: [
{
name: "version",
type: "uint64",
indexed: false,
internalType: "uint64",
},
],
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: "SignatureSchemeAddressProviderUpdated",
inputs: [
{
name: "newSignatureSchemeAddressProvider",
type: "address",
indexed: true,
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: "ERC1967InvalidImplementation",
inputs: [
{
name: "implementation",
type: "address",
internalType: "address",
},
],
},
{
type: "error",
name: "ERC1967NonPayable",
inputs: [],
},
{
type: "error",
name: "FailedCall",
inputs: [],
},
{
type: "error",
name: "InvalidInitialization",
inputs: [],
},
{
type: "error",
name: "NotInitializing",
inputs: [],
},
{
type: "error",
name: "ReentrancyGuardReentrantCall",
inputs: [],
},
{
type: "error",
name: "UUPSUnauthorizedCallContext",
inputs: [],
},
{
type: "error",
name: "UUPSUnsupportedProxiableUUID",
inputs: [
{
name: "slot",
type: "bytes32",
internalType: "bytes32",
},
],
},
] as const;
const _bytecode =
"0x60a0604052306080525f600155348015610017575f5ffd5b5060015f55610024610029565b6100db565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100795760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100d85780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516131e96101015f395f8181611ef201528181611f1b015261206801526131e95ff3fe6080604052600436106101c5575f3560e01c806391d14854116100f2578063ca15c87311610092578063e6b3ca7111610062578063e6b3ca711461054d578063f7cef8001461056c578063f87f0e611461058b578063fc2a88c3146105aa575f5ffd5b8063ca15c873146104dc578063cd802c91146104fb578063d547741f1461051a578063e63b5d5814610539575f5ffd5b8063ac9650d8116100cd578063ac9650d814610435578063ad3cb1cc14610461578063b094728914610491578063c58343ef146104b0575f5ffd5b806391d14854146103d7578063a217fddf146103f6578063a3246ad314610409575f5ffd5b80634f1ef286116101685780636f421ea9116101385780636f421ea91461033a57806375b238fc1461034e57806381d12c581461036e5780639010d07c146103a0575f5ffd5b80634f1ef286146102c957806352d1902d146102dc57806354fd4d50146102f0578063571d708714610326575f5ffd5b80632f2ff15d116101a35780632f2ff15d1461024b57806336568abe1461026a578063485cc955146102895780634b96e166146102a8575f5ffd5b806301ffc9a7146101c957806316cc9a98146101fd578063248a9ca31461021e575b5f5ffd5b3480156101d4575f5ffd5b506101e86101e3366004612716565b6105bf565b60405190151581526020015b60405180910390f35b348015610208575f5ffd5b5061021c610217366004612751565b6105e9565b005b348015610229575f5ffd5b5061023d61023836600461276c565b610648565b6040519081526020016101f4565b348015610256575f5ffd5b5061021c610265366004612783565b610668565b348015610275575f5ffd5b5061021c610284366004612783565b61068a565b348015610294575f5ffd5b5061021c6102a33660046127b1565b6106c2565b3480156102b3575f5ffd5b506102bc610882565b6040516101f491906127dd565b61021c6102d7366004612889565b610893565b3480156102e7575f5ffd5b5061023d6108b2565b3480156102fb575f5ffd5b50604080518082019091526005815264302e302e3160d81b60208201525b6040516101f49190612943565b348015610331575f5ffd5b506102bc6108cd565b348015610345575f5ffd5b506102bc6108d9565b348015610359575f5ffd5b5061023d5f5160206131945f395f51905f5281565b348015610379575f5ffd5b5061038d61038836600461276c565b6108e5565b6040516101f49796959493929190612955565b3480156103ab575f5ffd5b506103bf6103ba3660046129da565b610bcc565b6040516001600160a01b0390911681526020016101f4565b3480156103e2575f5ffd5b506101e86103f1366004612783565b610bf9565b348015610401575f5ffd5b5061023d5f81565b348015610414575f5ffd5b5061042861042336600461276c565b610c2f565b6040516101f491906129fa565b348015610440575f5ffd5b5061045461044f366004612a3a565b610c5f565b6040516101f49190612aa9565b34801561046c575f5ffd5b50610319604051806040016040528060058152602001640352e302e360dc1b81525081565b34801561049c575f5ffd5b506101e86104ab36600461276c565b610d44565b3480156104bb575f5ffd5b506104cf6104ca36600461276c565b610d50565b6040516101f49190612b0c565b3480156104e7575f5ffd5b5061023d6104f636600461276c565b6110ad565b348015610506575f5ffd5b506101e861051536600461276c565b6110d1565b348015610525575f5ffd5b5061021c610534366004612783565b6110ee565b348015610544575f5ffd5b5061023d61110a565b348015610558575f5ffd5b506003546103bf906001600160a01b031681565b348015610577575f5ffd5b5061021c610586366004612c13565b611115565b348015610596575f5ffd5b5061023d6105a5366004612c8a565b61187a565b3480156105b5575f5ffd5b5061023d60015481565b5f6001600160e01b03198216635a05180f60e01b14806105e357506105e382611ded565b92915050565b6105ff5f5160206131945f395f51905f52611e21565b600380546001600160a01b0319166001600160a01b0383169081179091556040517f7724bcb43a09ae6582affdee2f0ace931e26f2ffa8b5c334baf0a39e9dc03426905f90a250565b5f9081525f5160206131745f395f51905f52602052604090206001015490565b61067182610648565b61067a81611e21565b6106848383611e2e565b50505050565b6001600160a01b03811633146106b35760405163334bd91960e11b815260040160405180910390fd5b6106bd8282611e70565b505050565b5f6106cb611ea9565b805490915060ff600160401b82041615906001600160401b03165f811580156106f15750825b90505f826001600160401b0316600114801561070c5750303b155b90508115801561071a575080155b156107385760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561076257845460ff60401b1916600160401b1785555b61076a611ed1565b610772611ed1565b6107895f5160206131945f395f51905f5288611e2e565b6107ce5760405162461bcd60e51b815260206004820152601160248201527011dc985b9d081c9bdb194819985a5b1959607a1b60448201526064015b60405180910390fd5b6107d85f88611e2e565b6108185760405162461bcd60e51b815260206004820152601160248201527011dc985b9d081c9bdb194819985a5b1959607a1b60448201526064016107c5565b600380546001600160a01b0319166001600160a01b038816179055831561087957845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b606061088e6006611edb565b905090565b61089b611ee7565b6108a482611f8b565b6108ae8282611fa1565b5050565b5f6108bb61205d565b505f5160206131545f395f51905f5290565b606061088e6004611edb565b606061088e6008611edb565b60026020525f90815260409020805481906108ff90612d26565b80601f016020809104026020016040519081016040528092919081815260200182805461092b90612d26565b80156109765780601f1061094d57610100808354040283529160200191610976565b820191905f5260205f20905b81548152906001019060200180831161095957829003601f168201915b50505050509080600101805461098b90612d26565b80601f01602080910402602001604051908101604052809291908181526020018280546109b790612d26565b8015610a025780601f106109d957610100808354040283529160200191610a02565b820191905f5260205f20905b8154815290600101906020018083116109e557829003601f168201915b505050505090806002018054610a1790612d26565b80601f0160208091040260200160405190810160405280929190818152602001828054610a4390612d26565b8015610a8e5780601f10610a6557610100808354040283529160200191610a8e565b820191905f5260205f20905b815481529060010190602001808311610a7157829003601f168201915b505050505090806003018054610aa390612d26565b80601f0160208091040260200160405190810160405280929190818152602001828054610acf90612d26565b8015610b1a5780601f10610af157610100808354040283529160200191610b1a565b820191905f5260205f20905b815481529060010190602001808311610afd57829003601f168201915b505050505090806004018054610b2f90612d26565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b90612d26565b8015610ba65780601f10610b7d57610100808354040283529160200191610ba6565b820191905f5260205f20905b815481529060010190602001808311610b8957829003601f168201915b505050600590930154919250506001600160a01b0381169060ff600160a01b9091041687565b5f8281525f5160206131345f395f51905f52602081905260408220610bf190846120a6565b949350505050565b5f9182525f5160206131745f395f51905f52602090815260408084206001600160a01b0393909316845291905290205460ff1690565b5f8181525f5160206131345f395f51905f526020819052604090912060609190610c5890611edb565b9392505050565b604080515f815260208101909152606090826001600160401b03811115610c8857610c8861281f565b604051908082528060200260200182016040528015610cbb57816020015b6060815260200190600190039081610ca65790505b5091505f5b83811015610d3c57610d1730868684818110610cde57610cde612d85565b9050602002810190610cf09190612d99565b85604051602001610d0393929190612df2565b6040516020818303038152906040526120b1565b838281518110610d2957610d29612d85565b6020908102919091010152600101610cc0565b505092915050565b5f6105e3600883612123565b610d996040518060e0016040528060608152602001606081526020016060815260200160608152602001606081526020015f6001600160a01b031681526020015f151581525090565b5f8281526002602052604090819020815160e08101909252805482908290610dc090612d26565b80601f0160208091040260200160405190810160405280929190818152602001828054610dec90612d26565b8015610e375780601f10610e0e57610100808354040283529160200191610e37565b820191905f5260205f20905b815481529060010190602001808311610e1a57829003601f168201915b50505050508152602001600182018054610e5090612d26565b80601f0160208091040260200160405190810160405280929190818152602001828054610e7c90612d26565b8015610ec75780601f10610e9e57610100808354040283529160200191610ec7565b820191905f5260205f20905b815481529060010190602001808311610eaa57829003601f168201915b50505050508152602001600282018054610ee090612d26565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0c90612d26565b8015610f575780601f10610f2e57610100808354040283529160200191610f57565b820191905f5260205f20905b815481529060010190602001808311610f3a57829003601f168201915b50505050508152602001600382018054610f7090612d26565b80601f0160208091040260200160405190810160405280929190818152602001828054610f9c90612d26565b8015610fe75780601f10610fbe57610100808354040283529160200191610fe7565b820191905f5260205f20905b815481529060010190602001808311610fca57829003601f168201915b5050505050815260200160048201805461100090612d26565b80601f016020809104026020016040519081016040528092919081815260200182805461102c90612d26565b80156110775780601f1061104e57610100808354040283529160200191611077565b820191905f5260205f20905b81548152906001019060200180831161105a57829003601f168201915b5050509183525050600591909101546001600160a01b0381166020830152600160a01b900460ff16151560409091015292915050565b5f8181525f5160206131345f395f51905f52602081905260408220610c589061213a565b5f6110dd600683612123565b806105e357506105e3600883612123565b6110f782610648565b61110081611e21565b6106848383611e70565b5f61088e600661213a565b61111d612143565b611126856110d1565b6111865760405162461bcd60e51b815260206004820152602b60248201527f4e6f2070656e64696e672072657175657374207769746820737065636966696560448201526a19081c995c5d595cdd125960aa1b60648201526084016107c5565b5f85815260026020526040808220815160e081019092528054829082906111ac90612d26565b80601f01602080910402602001604051908101604052809291908181526020018280546111d890612d26565b80156112235780601f106111fa57610100808354040283529160200191611223565b820191905f5260205f20905b81548152906001019060200180831161120657829003601f168201915b5050505050815260200160018201805461123c90612d26565b80601f016020809104026020016040519081016040528092919081815260200182805461126890612d26565b80156112b35780601f1061128a576101008083540402835291602001916112b3565b820191905f5260205f20905b81548152906001019060200180831161129657829003601f168201915b505050505081526020016002820180546112cc90612d26565b80601f01602080910402602001604051908101604052809291908181526020018280546112f890612d26565b80156113435780601f1061131a57610100808354040283529160200191611343565b820191905f5260205f20905b81548152906001019060200180831161132657829003601f168201915b5050505050815260200160038201805461135c90612d26565b80601f016020809104026020016040519081016040528092919081815260200182805461138890612d26565b80156113d35780601f106113aa576101008083540402835291602001916113d3565b820191905f5260205f20905b8154815290600101906020018083116113b657829003601f168201915b505050505081526020016004820180546113ec90612d26565b80601f016020809104026020016040519081016040528092919081815260200182805461141890612d26565b80156114635780601f1061143a57610100808354040283529160200191611463565b820191905f5260205f20905b81548152906001019060200180831161144657829003601f168201915b5050509183525050600591909101546001600160a01b038082166020840152600160a01b90910460ff16151560409283015282516003549251630b76139f60e31b8152939450925f9290911690635bb09cf8906114c4908590600401612943565b602060405180830381865afa1580156114df573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115039190612e11565b90506001600160a01b03811661154c5760405162461bcd60e51b815260206004820152600e60248201526d696e76616c696420736368656d6560901b60448201526064016107c5565b604080840151905163eae1e15b60e01b815282915f916001600160a01b0384169163eae1e15b916115809190600401612943565b5f60405180830381865afa15801561159a573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526115c19190810190612e2c565b9050816001600160a01b031663f6e548e9828989866001600160a01b031663acae9fee6040518163ffffffff1660e01b81526004015f60405180830381865afa158015611610573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526116379190810190612e2c565b6040518563ffffffff1660e01b81526004016116569493929190612ec8565b602060405180830381865afa158015611671573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116959190612f0c565b6116e15760405162461bcd60e51b815260206004820152601d60248201527f5369676e617475726520766572696669636174696f6e206661696c656400000060448201526064016107c5565b5f8560a001516001600160a01b0316635d3be00160e01b8c8c8c8c8c604051602401611711959493929190612f2b565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161174f9190612f63565b5f604051808303815f865af19150503d805f8114611788576040519150601f19603f3d011682016040523d82523d5f602084013e61178d565b606091505b50505f8c8152600260205260409020600501805460ff60a01b1916600160a01b17905590506117bd60068c61216b565b50806117fe576117ce60088c612176565b506040518b907f3fed05c5d3a79e0e2f23ffd594267f0e29799ad1b4b6a7756138d5247baa4a7b905f90a2611864565b6118078b610d44565b156118195761181760088c61216b565b505b61182460048c612176565b508a7f0a1f5b3782d8f604353407c980dbfe6b55499c5b92cb8c39f089c73f348407e68b8b8b8b60405161185b9493929190612f6e565b60405180910390a25b50505050505061187360015f55565b5050505050565b5f6001805f82825461188c9190612f94565b9091555050600354604051632fc9fa3360e01b81526001600160a01b0390911690632fc9fa33906118c3908a908a90600401612fa7565b602060405180830381865afa1580156118de573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119029190612f0c565b61194e5760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726520736368656d65206e6f7420737570706f72746564000060448201526064016107c5565b611995600161100087878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509294939250506121819050565b6119ef5760405162461bcd60e51b815260206004820152602560248201527f43697068657274657874206661696c6564206c656e67746820626f756e647320604482015264636865636b60d81b60648201526084016107c5565b611a36600161100085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152509294939250506121819050565b611a8e5760405162461bcd60e51b8152602060048201526024808201527f436f6e646974696f6e206661696c6564206c656e67746820626f756e647320636044820152636865636b60e01b60648201526084016107c5565b611acc83838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061221192505050565b15611b255760405162461bcd60e51b815260206004820152602360248201527f436f6e646974696f6e2062797465732063616e6e6f7420626520616c6c207a65604482015262726f7360e81b60648201526084016107c5565b600354604051630b76139f60e31b81525f916001600160a01b031690635bb09cf890611b57908b908b90600401612fa7565b602060405180830381865afa158015611b72573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b969190612e11565b90506001600160a01b038116611bee5760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964207369676e617475726520736368656d65000000000000000060448201526064016107c5565b6040518060e0016040528089898080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505090825250604080516020601f8a01819004810282018101909252888152918101919089908990819084018382808284375f92019190915250505090825250604080516020601f8801819004810282018101909252868152918101919087908790819084018382808284375f92018290525093855250506040805160208181018352848252808601919091528151808201835284815282860152336060860152608090940183905260015483526002909352502081518190611cee9082612ffe565b5060208201516001820190611d039082612ffe565b5060408201516002820190611d189082612ffe565b5060608201516003820190611d2d9082612ffe565b5060808201516004820190611d429082612ffe565b5060a08201516005909101805460c0909301511515600160a01b026001600160a81b03199093166001600160a01b0390921691909117919091179055600154611d8d90600690612176565b50336001600160a01b03166001547f133b1acfa49920f88bc8c23faeb2ba43b75b3d6c453290a824f3c85e7733df138a8a88888c8c42604051611dd697969594939291906130b8565b60405180910390a350506001549695505050505050565b5f6001600160e01b03198216637965db0b60e01b14806105e357506301ffc9a760e01b6001600160e01b03198316146105e3565b611e2b813361225c565b50565b5f5f5160206131345f395f51905f5281611e488585612295565b90508015610bf1575f858152602083905260409020611e679085612336565b50949350505050565b5f5f5160206131345f395f51905f5281611e8a858561234a565b90508015610bf1575f858152602083905260409020611e6790856123c3565b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006105e3565b611ed96123d7565b565b60605f610c58836123fc565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480611f6d57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611f615f5160206131545f395f51905f52546001600160a01b031690565b6001600160a01b031614155b15611ed95760405163703e46dd60e11b815260040160405180910390fd5b611e2b5f5160206131945f395f51905f52611e21565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffb575060408051601f3d908101601f19168201909252611ff891810190613108565b60015b61202357604051634c9c8ce360e01b81526001600160a01b03831660048201526024016107c5565b5f5160206131545f395f51905f52811461205357604051632a87526960e21b8152600481018290526024016107c5565b6106bd8383612455565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611ed95760405163703e46dd60e11b815260040160405180910390fd5b5f610c5883836124aa565b60605f5f846001600160a01b0316846040516120cd9190612f63565b5f60405180830381855af49150503d805f8114612105576040519150601f19603f3d011682016040523d82523d5f602084013e61210a565b606091505b509150915061211a8583836124d0565b95945050505050565b5f8181526001830160205260408120541515610c58565b5f6105e3825490565b60025f540361216557604051633ee5aeb560e01b815260040160405180910390fd5b60025f55565b5f610c58838361252c565b5f610c588383612606565b5f818311156121f85760405162461bcd60e51b815260206004820152603a60248201527f496e76616c696420626f756e64733a206d696e4c656e6774682063616e6e6f7460448201527f2062652067726561746572207468616e206d61784c656e67746800000000000060648201526084016107c5565b835183811080159061211a575091909111159392505050565b5f805b82518110156122535782818151811061222f5761222f612d85565b01602001516001600160f81b0319161561224b57505f92915050565b600101612214565b50600192915050565b6122668282610bf9565b6108ae5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016107c5565b5f5f5160206131745f395f51905f526122ae8484610bf9565b61232d575f848152602082815260408083206001600160a01b03871684529091529020805460ff191660011790556122e33390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019150506105e3565b5f9150506105e3565b5f610c58836001600160a01b038416612606565b5f5f5160206131745f395f51905f526123638484610bf9565b1561232d575f848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a460019150506105e3565b5f610c58836001600160a01b03841661252c565b6123df612652565b611ed957604051631afcd79f60e31b815260040160405180910390fd5b6060815f0180548060200260200160405190810160405280929190818152602001828054801561244957602002820191905f5260205f20905b815481526020019060010190808311612435575b50505050509050919050565b61245e8261266b565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a28051156124a2576106bd82826120b1565b6108ae6126ce565b5f825f0182815481106124bf576124bf612d85565b905f5260205f200154905092915050565b6060826124e5576124e0826126ed565b610c58565b81511580156124fc57506001600160a01b0384163b155b1561252557604051639996b31560e01b81526001600160a01b03851660048201526024016107c5565b5080610c58565b5f818152600183016020526040812054801561232d575f61254e600183612d72565b85549091505f9061256190600190612d72565b90508082146125c0575f865f01828154811061257f5761257f612d85565b905f5260205f200154905080875f01848154811061259f5761259f612d85565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806125d1576125d161311f565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f9055600193505050506105e3565b5f81815260018301602052604081205461264b57508154600181810184555f8481526020808220909301849055845484825282860190935260409020919091556105e3565b505f6105e3565b5f61265b611ea9565b54600160401b900460ff16919050565b806001600160a01b03163b5f036126a057604051634c9c8ce360e01b81526001600160a01b03821660048201526024016107c5565b5f5160206131545f395f51905f5280546001600160a01b0319166001600160a01b0392909216919091179055565b3415611ed95760405163b398979f60e01b815260040160405180910390fd5b8051156126fd5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f60208284031215612726575f5ffd5b81356001600160e01b031981168114610c58575f5ffd5b6001600160a01b0381168114611e2b575f5ffd5b5f60208284031215612761575f5ffd5b8135610c588161273d565b5f6020828403121561277c575f5ffd5b5035919050565b5f5f60408385031215612794575f5ffd5b8235915060208301356127a68161273d565b809150509250929050565b5f5f604083850312156127c2575f5ffd5b82356127cd8161273d565b915060208301356127a68161273d565b602080825282518282018190525f918401906040840190835b818110156128145783518352602093840193909201916001016127f6565b509095945050505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561285b5761285b61281f565b604052919050565b5f6001600160401b0382111561287b5761287b61281f565b50601f01601f191660200190565b5f5f6040838503121561289a575f5ffd5b82356128a58161273d565b915060208301356001600160401b038111156128bf575f5ffd5b8301601f810185136128cf575f5ffd5b80356128e26128dd82612863565b612833565b8181528660208385010111156128f6575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610c586020830184612915565b60e081525f61296760e083018a612915565b8281036020840152612979818a612915565b9050828103604084015261298d8189612915565b905082810360608401526129a18188612915565b905082810360808401526129b58187612915565b6001600160a01b039590951660a0840152505090151560c09091015295945050505050565b5f5f604083850312156129eb575f5ffd5b50508035926020909101359150565b602080825282518282018190525f918401906040840190835b818110156128145783516001600160a01b0316835260209384019390920191600101612a13565b5f5f60208385031215612a4b575f5ffd5b82356001600160401b03811115612a60575f5ffd5b8301601f81018513612a70575f5ffd5b80356001600160401b03811115612a85575f5ffd5b8560208260051b8401011115612a99575f5ffd5b6020919091019590945092505050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015612b0057603f19878603018452612aeb858351612915565b94506020938401939190910190600101612acf565b50929695505050505050565b602081525f825160e06020840152612b28610100840182612915565b90506020840151601f19848303016040850152612b458282612915565b9150506040840151601f19848303016060850152612b638282612915565b9150506060840151601f19848303016080850152612b818282612915565b9150506080840151601f198483030160a0850152612b9f8282612915565b91505060018060a01b0360a08501511660c084015260c0840151612bc760e085018215159052565b509392505050565b5f5f83601f840112612bdf575f5ffd5b5081356001600160401b03811115612bf5575f5ffd5b602083019150836020828501011115612c0c575f5ffd5b9250929050565b5f5f5f5f5f60608688031215612c27575f5ffd5b8535945060208601356001600160401b03811115612c43575f5ffd5b612c4f88828901612bcf565b90955093505060408601356001600160401b03811115612c6d575f5ffd5b612c7988828901612bcf565b969995985093965092949392505050565b5f5f5f5f5f5f60608789031215612c9f575f5ffd5b86356001600160401b03811115612cb4575f5ffd5b612cc089828a01612bcf565b90975095505060208701356001600160401b03811115612cde575f5ffd5b612cea89828a01612bcf565b90955093505060408701356001600160401b03811115612d08575f5ffd5b612d1489828a01612bcf565b979a9699509497509295939492505050565b600181811c90821680612d3a57607f821691505b602082108103612d5857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105e3576105e3612d5e565b634e487b7160e01b5f52603260045260245ffd5b5f5f8335601e19843603018112612dae575f5ffd5b8301803591506001600160401b03821115612dc7575f5ffd5b602001915036819003821315612c0c575f5ffd5b5f81518060208401855e5f93019283525090919050565b828482375f8382015f8152612e078185612ddb565b9695505050505050565b5f60208284031215612e21575f5ffd5b8151610c588161273d565b5f60208284031215612e3c575f5ffd5b81516001600160401b03811115612e51575f5ffd5b8201601f81018413612e61575f5ffd5b8051612e6f6128dd82612863565b818152856020838501011115612e83575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b606081525f612eda6060830187612915565b8281036020840152612eed818688612ea0565b90508281036040840152612f018185612915565b979650505050505050565b5f60208284031215612f1c575f5ffd5b81518015158114610c58575f5ffd5b858152606060208201525f612f44606083018688612ea0565b8281036040840152612f57818587612ea0565b98975050505050505050565b5f610c588284612ddb565b604081525f612f81604083018688612ea0565b8281036020840152612f01818587612ea0565b808201808211156105e3576105e3612d5e565b602081525f610bf1602083018486612ea0565b601f8211156106bd57805f5260205f20601f840160051c81016020851015612fdf5750805b601f840160051c820191505b81811015611873575f8155600101612feb565b81516001600160401b038111156130175761301761281f565b61302b816130258454612d26565b84612fba565b6020601f82116001811461305d575f83156130465750848201515b5f19600385901b1c1916600184901b178455611873565b5f84815260208120601f198516915b8281101561308c578785015182556020948501946001909201910161306c565b50848210156130a957868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b608081525f6130cb60808301898b612ea0565b82810360208401526130de81888a612ea0565b905082810360408401526130f3818688612ea0565b91505082606083015298975050505050505050565b5f60208284031215613118575f5ffd5b5051919050565b634e487b7160e01b5f52603160045260245ffdfec1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e82371705932000360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a2646970667358221220adcac5656fbff7469096f3117c572315dc5ef26355b567e82e88299a7ed26afe64736f6c634300081c0033";
type DecryptionSenderConstructorParams =
| [signer?: Signer]
| ConstructorParameters<typeof ContractFactory>;
const isSuperArgs = (
xs: DecryptionSenderConstructorParams
): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
export class DecryptionSender__factory extends ContractFactory {
constructor(...args: DecryptionSenderConstructorParams) {
if (isSuperArgs(args)) {
super(...args);
} else {
super(_abi, _bytecode, args[0]);
}
}
override getDeployTransaction(
overrides?: NonPayableOverrides & { from?: string }
): Promise<ContractDeployTransaction> {
return super.getDeployTransaction(overrides || {});
}
override deploy(overrides?: NonPayableOverrides & { from?: string }) {
return super.deploy(overrides || {}) as Promise<
DecryptionSender & {
deploymentTransaction(): ContractTransactionResponse;
}
>;
}
override connect(runner: ContractRunner | null): DecryptionSender__factory {
return super.connect(runner) as DecryptionSender__factory;
}
static readonly bytecode = _bytecode;
static readonly abi = _abi;
static createInterface(): DecryptionSenderInterface {
return new Interface(_abi) as DecryptionSenderInterface;
}
static connect(
address: string,
runner?: ContractRunner | null
): DecryptionSender {
return new Contract(address, _abi, runner) as unknown as DecryptionSender;
}
}