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: false,
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 =
"0x60a0604052306080525f600155348015610017575f5ffd5b5060015f55610024610029565b6100db565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100795760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100d85780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516131f26101015f395f8181611efb01528181611f24015261207101526131f25ff3fe6080604052600436106101c5575f3560e01c80639010d07c116100f2578063c58343ef11610092578063e63b5d5811610062578063e63b5d581461054e578063e6b3ca7114610562578063f7cef80014610581578063f87f0e61146105a0575f5ffd5b8063c58343ef146104c5578063ca15c873146104f1578063cd802c9114610510578063d547741f1461052f575f5ffd5b8063a3246ad3116100cd578063a3246ad31461041e578063ac9650d81461044a578063ad3cb1cc14610476578063b0947289146104a6575f5ffd5b80639010d07c146103b557806391d14854146103ec578063a217fddf1461040b575f5ffd5b80634b96e16611610168578063571d708711610138578063571d70871461033b5780636f421ea91461034f57806375b238fc1461036357806381d12c5814610383575f5ffd5b80634b96e166146102bd5780634f1ef286146102de57806352d1902d146102f157806354fd4d5014610305575f5ffd5b80632f2ff15d116101a35780632f2ff15d1461024b57806336568abe1461026a57806347c0318614610289578063485cc9551461029e575f5ffd5b806301ffc9a7146101c957806316cc9a98146101fd578063248a9ca31461021e575b5f5ffd5b3480156101d4575f5ffd5b506101e86101e336600461271f565b6105bf565b60405190151581526020015b60405180910390f35b348015610208575f5ffd5b5061021c61021736600461275a565b6105e9565b005b348015610229575f5ffd5b5061023d610238366004612775565b610648565b6040519081526020016101f4565b348015610256575f5ffd5b5061021c61026536600461278c565b610668565b348015610275575f5ffd5b5061021c61028436600461278c565b61068a565b348015610294575f5ffd5b5061023d60015481565b3480156102a9575f5ffd5b5061021c6102b83660046127ba565b6106c2565b3480156102c8575f5ffd5b506102d1610882565b6040516101f491906127e6565b61021c6102ec366004612892565b610893565b3480156102fc575f5ffd5b5061023d6108b2565b348015610310575f5ffd5b50604080518082019091526005815264302e302e3160d81b60208201525b6040516101f4919061294c565b348015610346575f5ffd5b506102d16108cd565b34801561035a575f5ffd5b506102d16108d9565b34801561036e575f5ffd5b5061023d5f51602061319d5f395f51905f5281565b34801561038e575f5ffd5b506103a261039d366004612775565b6108e5565b6040516101f4979695949392919061295e565b3480156103c0575f5ffd5b506103d46103cf3660046129e3565b610bcc565b6040516001600160a01b0390911681526020016101f4565b3480156103f7575f5ffd5b506101e861040636600461278c565b610bf9565b348015610416575f5ffd5b5061023d5f81565b348015610429575f5ffd5b5061043d610438366004612775565b610c2f565b6040516101f49190612a03565b348015610455575f5ffd5b50610469610464366004612a43565b610c5f565b6040516101f49190612ab2565b348015610481575f5ffd5b5061032e604051806040016040528060058152602001640352e302e360dc1b81525081565b3480156104b1575f5ffd5b506101e86104c0366004612775565b610d44565b3480156104d0575f5ffd5b506104e46104df366004612775565b610d50565b6040516101f49190612b15565b3480156104fc575f5ffd5b5061023d61050b366004612775565b6110ad565b34801561051b575f5ffd5b506101e861052a366004612775565b6110d1565b34801561053a575f5ffd5b5061021c61054936600461278c565b6110ee565b348015610559575f5ffd5b5061023d61110a565b34801561056d575f5ffd5b506003546103d4906001600160a01b031681565b34801561058c575f5ffd5b5061021c61059b366004612c1c565b611115565b3480156105ab575f5ffd5b5061023d6105ba366004612c93565b611883565b5f6001600160e01b03198216635a05180f60e01b14806105e357506105e382611df6565b92915050565b6105ff5f51602061319d5f395f51905f52611e2a565b600380546001600160a01b0319166001600160a01b0383169081179091556040517f7724bcb43a09ae6582affdee2f0ace931e26f2ffa8b5c334baf0a39e9dc03426905f90a250565b5f9081525f51602061317d5f395f51905f52602052604090206001015490565b61067182610648565b61067a81611e2a565b6106848383611e37565b50505050565b6001600160a01b03811633146106b35760405163334bd91960e11b815260040160405180910390fd5b6106bd8282611e79565b505050565b5f6106cb611eb2565b805490915060ff600160401b82041615906001600160401b03165f811580156106f15750825b90505f826001600160401b0316600114801561070c5750303b155b90508115801561071a575080155b156107385760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561076257845460ff60401b1916600160401b1785555b61076a611eda565b610772611eda565b6107895f51602061319d5f395f51905f5288611e37565b6107ce5760405162461bcd60e51b815260206004820152601160248201527011dc985b9d081c9bdb194819985a5b1959607a1b60448201526064015b60405180910390fd5b6107d85f88611e37565b6108185760405162461bcd60e51b815260206004820152601160248201527011dc985b9d081c9bdb194819985a5b1959607a1b60448201526064016107c5565b600380546001600160a01b0319166001600160a01b038816179055831561087957845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b606061088e6006611ee4565b905090565b61089b611ef0565b6108a482611f94565b6108ae8282611faa565b5050565b5f6108bb612066565b505f51602061315d5f395f51905f5290565b606061088e6004611ee4565b606061088e6008611ee4565b60026020525f90815260409020805481906108ff90612d2f565b80601f016020809104026020016040519081016040528092919081815260200182805461092b90612d2f565b80156109765780601f1061094d57610100808354040283529160200191610976565b820191905f5260205f20905b81548152906001019060200180831161095957829003601f168201915b50505050509080600101805461098b90612d2f565b80601f01602080910402602001604051908101604052809291908181526020018280546109b790612d2f565b8015610a025780601f106109d957610100808354040283529160200191610a02565b820191905f5260205f20905b8154815290600101906020018083116109e557829003601f168201915b505050505090806002018054610a1790612d2f565b80601f0160208091040260200160405190810160405280929190818152602001828054610a4390612d2f565b8015610a8e5780601f10610a6557610100808354040283529160200191610a8e565b820191905f5260205f20905b815481529060010190602001808311610a7157829003601f168201915b505050505090806003018054610aa390612d2f565b80601f0160208091040260200160405190810160405280929190818152602001828054610acf90612d2f565b8015610b1a5780601f10610af157610100808354040283529160200191610b1a565b820191905f5260205f20905b815481529060010190602001808311610afd57829003601f168201915b505050505090806004018054610b2f90612d2f565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b90612d2f565b8015610ba65780601f10610b7d57610100808354040283529160200191610ba6565b820191905f5260205f20905b815481529060010190602001808311610b8957829003601f168201915b505050600590930154919250506001600160a01b0381169060ff600160a01b9091041687565b5f8281525f51602061313d5f395f51905f52602081905260408220610bf190846120af565b949350505050565b5f9182525f51602061317d5f395f51905f52602090815260408084206001600160a01b0393909316845291905290205460ff1690565b5f8181525f51602061313d5f395f51905f526020819052604090912060609190610c5890611ee4565b9392505050565b604080515f815260208101909152606090826001600160401b03811115610c8857610c88612828565b604051908082528060200260200182016040528015610cbb57816020015b6060815260200190600190039081610ca65790505b5091505f5b83811015610d3c57610d1730868684818110610cde57610cde612d8e565b9050602002810190610cf09190612da2565b85604051602001610d0393929190612dfb565b6040516020818303038152906040526120ba565b838281518110610d2957610d29612d8e565b6020908102919091010152600101610cc0565b505092915050565b5f6105e360088361212c565b610d996040518060e0016040528060608152602001606081526020016060815260200160608152602001606081526020015f6001600160a01b031681526020015f151581525090565b5f8281526002602052604090819020815160e08101909252805482908290610dc090612d2f565b80601f0160208091040260200160405190810160405280929190818152602001828054610dec90612d2f565b8015610e375780601f10610e0e57610100808354040283529160200191610e37565b820191905f5260205f20905b815481529060010190602001808311610e1a57829003601f168201915b50505050508152602001600182018054610e5090612d2f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e7c90612d2f565b8015610ec75780601f10610e9e57610100808354040283529160200191610ec7565b820191905f5260205f20905b815481529060010190602001808311610eaa57829003601f168201915b50505050508152602001600282018054610ee090612d2f565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0c90612d2f565b8015610f575780601f10610f2e57610100808354040283529160200191610f57565b820191905f5260205f20905b815481529060010190602001808311610f3a57829003601f168201915b50505050508152602001600382018054610f7090612d2f565b80601f0160208091040260200160405190810160405280929190818152602001828054610f9c90612d2f565b8015610fe75780601f10610fbe57610100808354040283529160200191610fe7565b820191905f5260205f20905b815481529060010190602001808311610fca57829003601f168201915b5050505050815260200160048201805461100090612d2f565b80601f016020809104026020016040519081016040528092919081815260200182805461102c90612d2f565b80156110775780601f1061104e57610100808354040283529160200191611077565b820191905f5260205f20905b81548152906001019060200180831161105a57829003601f168201915b5050509183525050600591909101546001600160a01b0381166020830152600160a01b900460ff16151560409091015292915050565b5f8181525f51602061313d5f395f51905f52602081905260408220610c5890612143565b5f6110dd60068361212c565b806105e357506105e360088361212c565b6110f782610648565b61110081611e2a565b6106848383611e79565b5f61088e6006612143565b61111d61214c565b611126856110d1565b6111865760405162461bcd60e51b815260206004820152602b60248201527f4e6f2070656e64696e672072657175657374207769746820737065636966696560448201526a19081c995c5d595cdd125160aa1b60648201526084016107c5565b5f85815260026020526040808220815160e081019092528054829082906111ac90612d2f565b80601f01602080910402602001604051908101604052809291908181526020018280546111d890612d2f565b80156112235780601f106111fa57610100808354040283529160200191611223565b820191905f5260205f20905b81548152906001019060200180831161120657829003601f168201915b5050505050815260200160018201805461123c90612d2f565b80601f016020809104026020016040519081016040528092919081815260200182805461126890612d2f565b80156112b35780601f1061128a576101008083540402835291602001916112b3565b820191905f5260205f20905b81548152906001019060200180831161129657829003601f168201915b505050505081526020016002820180546112cc90612d2f565b80601f01602080910402602001604051908101604052809291908181526020018280546112f890612d2f565b80156113435780601f1061131a57610100808354040283529160200191611343565b820191905f5260205f20905b81548152906001019060200180831161132657829003601f168201915b5050505050815260200160038201805461135c90612d2f565b80601f016020809104026020016040519081016040528092919081815260200182805461138890612d2f565b80156113d35780601f106113aa576101008083540402835291602001916113d3565b820191905f5260205f20905b8154815290600101906020018083116113b657829003601f168201915b505050505081526020016004820180546113ec90612d2f565b80601f016020809104026020016040519081016040528092919081815260200182805461141890612d2f565b80156114635780601f1061143a57610100808354040283529160200191611463565b820191905f5260205f20905b81548152906001019060200180831161144657829003601f168201915b5050509183525050600591909101546001600160a01b038082166020840152600160a01b90910460ff16151560409283015282516003549251630b76139f60e31b8152939450925f9290911690635bb09cf8906114c490859060040161294c565b602060405180830381865afa1580156114df573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115039190612e1a565b90506001600160a01b03811661154c5760405162461bcd60e51b815260206004820152600e60248201526d696e76616c696420736368656d6560901b60448201526064016107c5565b604080840151905163eae1e15b60e01b815282915f916001600160a01b0384169163eae1e15b91611580919060040161294c565b5f60405180830381865afa15801561159a573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526115c19190810190612e35565b9050816001600160a01b031663f6e548e9828989866001600160a01b031663acae9fee6040518163ffffffff1660e01b81526004015f60405180830381865afa158015611610573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526116379190810190612e35565b6040518563ffffffff1660e01b81526004016116569493929190612ed1565b602060405180830381865afa158015611671573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116959190612f15565b6116e15760405162461bcd60e51b815260206004820152601d60248201527f5369676e617475726520766572696669636174696f6e206661696c656400000060448201526064016107c5565b5f8560a001516001600160a01b0316635d3be00160e01b8c8c8c8c8c604051602401611711959493929190612f34565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161174f9190612f6c565b5f604051808303815f865af19150503d805f8114611788576040519150601f19603f3d011682016040523d82523d5f602084013e61178d565b606091505b50505f8c8152600260205260409020600501805460ff60a01b1916600160a01b17905590506117bd60068c612174565b5080611807576117ce60088c61217f565b506040518b81527f3fed05c5d3a79e0e2f23ffd594267f0e29799ad1b4b6a7756138d5247baa4a7b9060200160405180910390a161186d565b6118108b610d44565b156118225761182060088c612174565b505b61182d60048c61217f565b508a7f0a1f5b3782d8f604353407c980dbfe6b55499c5b92cb8c39f089c73f348407e68b8b8b8b6040516118649493929190612f77565b60405180910390a25b50505050505061187c60015f55565b5050505050565b5f6001805f8282546118959190612f9d565b9091555050600354604051632fc9fa3360e01b81526001600160a01b0390911690632fc9fa33906118cc908a908a90600401612fb0565b602060405180830381865afa1580156118e7573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061190b9190612f15565b6119575760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726520736368656d65206e6f7420737570706f72746564000060448201526064016107c5565b61199e600161100087878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061218a9050565b6119f85760405162461bcd60e51b815260206004820152602560248201527f43697068657274657874206661696c6564206c656e67746820626f756e647320604482015264636865636b60d81b60648201526084016107c5565b611a3f600161100085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525092949392505061218a9050565b611a975760405162461bcd60e51b8152602060048201526024808201527f436f6e646974696f6e206661696c6564206c656e67746820626f756e647320636044820152636865636b60e01b60648201526084016107c5565b611ad583838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061221a92505050565b15611b2e5760405162461bcd60e51b815260206004820152602360248201527f436f6e646974696f6e2062797465732063616e6e6f7420626520616c6c207a65604482015262726f7360e81b60648201526084016107c5565b600354604051630b76139f60e31b81525f916001600160a01b031690635bb09cf890611b60908b908b90600401612fb0565b602060405180830381865afa158015611b7b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b9f9190612e1a565b90506001600160a01b038116611bf75760405162461bcd60e51b815260206004820152601860248201527f696e76616c6964207369676e617475726520736368656d65000000000000000060448201526064016107c5565b6040518060e0016040528089898080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250505090825250604080516020601f8a01819004810282018101909252888152918101919089908990819084018382808284375f92019190915250505090825250604080516020601f8801819004810282018101909252868152918101919087908790819084018382808284375f92018290525093855250506040805160208181018352848252808601919091528151808201835284815282860152336060860152608090940183905260015483526002909352502081518190611cf79082613007565b5060208201516001820190611d0c9082613007565b5060408201516002820190611d219082613007565b5060608201516003820190611d369082613007565b5060808201516004820190611d4b9082613007565b5060a08201516005909101805460c0909301511515600160a01b026001600160a81b03199093166001600160a01b0390921691909117919091179055600154611d969060069061217f565b50336001600160a01b03166001547f133b1acfa49920f88bc8c23faeb2ba43b75b3d6c453290a824f3c85e7733df138a8a88888c8c42604051611ddf97969594939291906130c1565b60405180910390a350506001549695505050505050565b5f6001600160e01b03198216637965db0b60e01b14806105e357506301ffc9a760e01b6001600160e01b03198316146105e3565b611e348133612265565b50565b5f5f51602061313d5f395f51905f5281611e51858561229e565b90508015610bf1575f858152602083905260409020611e70908561233f565b50949350505050565b5f5f51602061313d5f395f51905f5281611e938585612353565b90508015610bf1575f858152602083905260409020611e7090856123cc565b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006105e3565b611ee26123e0565b565b60605f610c5883612405565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480611f7657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611f6a5f51602061315d5f395f51905f52546001600160a01b031690565b6001600160a01b031614155b15611ee25760405163703e46dd60e11b815260040160405180910390fd5b611e345f51602061319d5f395f51905f52611e2a565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612004575060408051601f3d908101601f1916820190925261200191810190613111565b60015b61202c57604051634c9c8ce360e01b81526001600160a01b03831660048201526024016107c5565b5f51602061315d5f395f51905f52811461205c57604051632a87526960e21b8152600481018290526024016107c5565b6106bd838361245e565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611ee25760405163703e46dd60e11b815260040160405180910390fd5b5f610c5883836124b3565b60605f5f846001600160a01b0316846040516120d69190612f6c565b5f60405180830381855af49150503d805f811461210e576040519150601f19603f3d011682016040523d82523d5f602084013e612113565b606091505b50915091506121238583836124d9565b95945050505050565b5f8181526001830160205260408120541515610c58565b5f6105e3825490565b60025f540361216e57604051633ee5aeb560e01b815260040160405180910390fd5b60025f55565b5f610c588383612535565b5f610c58838361260f565b5f818311156122015760405162461bcd60e51b815260206004820152603a60248201527f496e76616c696420626f756e64733a206d696e4c656e6774682063616e6e6f7460448201527f2062652067726561746572207468616e206d61784c656e67746800000000000060648201526084016107c5565b8351838110801590612123575091909111159392505050565b5f805b825181101561225c5782818151811061223857612238612d8e565b01602001516001600160f81b0319161561225457505f92915050565b60010161221d565b50600192915050565b61226f8282610bf9565b6108ae5760405163e2517d3f60e01b81526001600160a01b0382166004820152602481018390526044016107c5565b5f5f51602061317d5f395f51905f526122b78484610bf9565b612336575f848152602082815260408083206001600160a01b03871684529091529020805460ff191660011790556122ec3390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a460019150506105e3565b5f9150506105e3565b5f610c58836001600160a01b03841661260f565b5f5f51602061317d5f395f51905f5261236c8484610bf9565b15612336575f848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a460019150506105e3565b5f610c58836001600160a01b038416612535565b6123e861265b565b611ee257604051631afcd79f60e31b815260040160405180910390fd5b6060815f0180548060200260200160405190810160405280929190818152602001828054801561245257602002820191905f5260205f20905b81548152602001906001019080831161243e575b50505050509050919050565b61246782612674565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a28051156124ab576106bd82826120ba565b6108ae6126d7565b5f825f0182815481106124c8576124c8612d8e565b905f5260205f200154905092915050565b6060826124ee576124e9826126f6565b610c58565b815115801561250557506001600160a01b0384163b155b1561252e57604051639996b31560e01b81526001600160a01b03851660048201526024016107c5565b5080610c58565b5f8181526001830160205260408120548015612336575f612557600183612d7b565b85549091505f9061256a90600190612d7b565b90508082146125c9575f865f01828154811061258857612588612d8e565b905f5260205f200154905080875f0184815481106125a8576125a8612d8e565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806125da576125da613128565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f9055600193505050506105e3565b5f81815260018301602052604081205461265457508154600181810184555f8481526020808220909301849055845484825282860190935260409020919091556105e3565b505f6105e3565b5f612664611eb2565b54600160401b900460ff16919050565b806001600160a01b03163b5f036126a957604051634c9c8ce360e01b81526001600160a01b03821660048201526024016107c5565b5f51602061315d5f395f51905f5280546001600160a01b0319166001600160a01b0392909216919091179055565b3415611ee25760405163b398979f60e01b815260040160405180910390fd5b8051156127065780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f6020828403121561272f575f5ffd5b81356001600160e01b031981168114610c58575f5ffd5b6001600160a01b0381168114611e34575f5ffd5b5f6020828403121561276a575f5ffd5b8135610c5881612746565b5f60208284031215612785575f5ffd5b5035919050565b5f5f6040838503121561279d575f5ffd5b8235915060208301356127af81612746565b809150509250929050565b5f5f604083850312156127cb575f5ffd5b82356127d681612746565b915060208301356127af81612746565b602080825282518282018190525f918401906040840190835b8181101561281d5783518352602093840193909201916001016127ff565b509095945050505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b038111828210171561286457612864612828565b604052919050565b5f6001600160401b0382111561288457612884612828565b50601f01601f191660200190565b5f5f604083850312156128a3575f5ffd5b82356128ae81612746565b915060208301356001600160401b038111156128c8575f5ffd5b8301601f810185136128d8575f5ffd5b80356128eb6128e68261286c565b61283c565b8181528660208385010111156128ff575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610c58602083018461291e565b60e081525f61297060e083018a61291e565b8281036020840152612982818a61291e565b90508281036040840152612996818961291e565b905082810360608401526129aa818861291e565b905082810360808401526129be818761291e565b6001600160a01b039590951660a0840152505090151560c09091015295945050505050565b5f5f604083850312156129f4575f5ffd5b50508035926020909101359150565b602080825282518282018190525f918401906040840190835b8181101561281d5783516001600160a01b0316835260209384019390920191600101612a1c565b5f5f60208385031215612a54575f5ffd5b82356001600160401b03811115612a69575f5ffd5b8301601f81018513612a79575f5ffd5b80356001600160401b03811115612a8e575f5ffd5b8560208260051b8401011115612aa2575f5ffd5b6020919091019590945092505050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015612b0957603f19878603018452612af485835161291e565b94506020938401939190910190600101612ad8565b50929695505050505050565b602081525f825160e06020840152612b3161010084018261291e565b90506020840151601f19848303016040850152612b4e828261291e565b9150506040840151601f19848303016060850152612b6c828261291e565b9150506060840151601f19848303016080850152612b8a828261291e565b9150506080840151601f198483030160a0850152612ba8828261291e565b91505060018060a01b0360a08501511660c084015260c0840151612bd060e085018215159052565b509392505050565b5f5f83601f840112612be8575f5ffd5b5081356001600160401b03811115612bfe575f5ffd5b602083019150836020828501011115612c15575f5ffd5b9250929050565b5f5f5f5f5f60608688031215612c30575f5ffd5b8535945060208601356001600160401b03811115612c4c575f5ffd5b612c5888828901612bd8565b90955093505060408601356001600160401b03811115612c76575f5ffd5b612c8288828901612bd8565b969995985093965092949392505050565b5f5f5f5f5f5f60608789031215612ca8575f5ffd5b86356001600160401b03811115612cbd575f5ffd5b612cc989828a01612bd8565b90975095505060208701356001600160401b03811115612ce7575f5ffd5b612cf389828a01612bd8565b90955093505060408701356001600160401b03811115612d11575f5ffd5b612d1d89828a01612bd8565b979a9699509497509295939492505050565b600181811c90821680612d4357607f821691505b602082108103612d6157634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105e3576105e3612d67565b634e487b7160e01b5f52603260045260245ffd5b5f5f8335601e19843603018112612db7575f5ffd5b8301803591506001600160401b03821115612dd0575f5ffd5b602001915036819003821315612c15575f5ffd5b5f81518060208401855e5f93019283525090919050565b828482375f8382015f8152612e108185612de4565b9695505050505050565b5f60208284031215612e2a575f5ffd5b8151610c5881612746565b5f60208284031215612e45575f5ffd5b81516001600160401b03811115612e5a575f5ffd5b8201601f81018413612e6a575f5ffd5b8051612e786128e68261286c565b818152856020838501011115612e8c575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b606081525f612ee3606083018761291e565b8281036020840152612ef6818688612ea9565b90508281036040840152612f0a818561291e565b979650505050505050565b5f60208284031215612f25575f5ffd5b81518015158114610c58575f5ffd5b858152606060208201525f612f4d606083018688612ea9565b8281036040840152612f60818587612ea9565b98975050505050505050565b5f610c588284612de4565b604081525f612f8a604083018688612ea9565b8281036020840152612f0a818587612ea9565b808201808211156105e3576105e3612d67565b602081525f610bf1602083018486612ea9565b601f8211156106bd57805f5260205f20601f840160051c81016020851015612fe85750805b601f840160051c820191505b8181101561187c575f8155600101612ff4565b81516001600160401b0381111561302057613020612828565b6130348161302e8454612d2f565b84612fc3565b6020601f821160018114613066575f831561304f5750848201515b5f19600385901b1c1916600184901b17845561187c565b5f84815260208120601f198516915b828110156130955787850151825560209485019460019092019101613075565b50848210156130b257868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b608081525f6130d460808301898b612ea9565b82810360208401526130e781888a612ea9565b905082810360408401526130fc818688612ea9565b91505082606083015298975050505050505050565b5f60208284031215613121575f5ffd5b5051919050565b634e487b7160e01b5f52603160045260245ffdfec1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e82371705932000360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a2646970667358221220b9bf840b608447c267623fc79124450c15b070c6cf6f643c84d5b29677f23f5964736f6c634300081c0033";
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;
}
}