randomness-js
Version:
A library for consuming, verifying and using randomness from the dcipher network
400 lines (399 loc) • 61 kB
TypeScript
import { ContractFactory, ContractTransactionResponse } from "ethers";
import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers";
import type { NonPayableOverrides } from "../common";
import type { SignatureSender, SignatureSenderInterface } from "../SignatureSender";
type SignatureSenderConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class SignatureSender__factory extends ContractFactory {
constructor(...args: SignatureSenderConstructorParams);
getDeployTransaction(overrides?: NonPayableOverrides & {
from?: string;
}): Promise<ContractDeployTransaction>;
deploy(overrides?: NonPayableOverrides & {
from?: string;
}): Promise<SignatureSender & {
deploymentTransaction(): ContractTransactionResponse;
}>;
connect(runner: ContractRunner | null): SignatureSender__factory;
static readonly bytecode = "0x306080525f80805560e081815261010082905260a08181526101606040526101208381526101409390935260c0929092526001906100409082906002610124565b5060208201516100569060028084019190610124565b505050348015610064575f5ffd5b5061006d610072565b610176565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100c25760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146101215780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b8260028101928215610152579160200282015b82811115610152578251825591602001919060010190610137565b5061015e929150610162565b5090565b5b8082111561015e575f8155600101610163565b6080516144ef61019c5f395f8181612b7101528181612b9a0152612dbb01526144ef5ff3fe6080604052600436106101f5575f3560e01c806375b238fc11610117578063acae9fee116100ac578063ca15c8731161007c578063d547741f11610062578063d547741f146106c0578063e63b5d58146106df578063e6b3ca71146106f3575f5ffd5b8063ca15c87314610682578063cd802c91146106a1575f5ffd5b8063acae9fee146105db578063ad3cb1cc146105ef578063b094728914610637578063c58343ef14610656575f5ffd5b806395b8d073116100e757806395b8d07314610551578063a217fddf14610570578063a3246ad314610583578063ac9650d8146105af575f5ffd5b806375b238fc1461043857806381d12c581461046b5780639010d07c1461049d57806391d14854146104e1575f5ffd5b80634b96e1661161018d578063571d70871161015d578063571d7087146103d25780635eab2b20146103e65780636f421ea914610405578063702ef38c14610419575f5ffd5b80634b96e1661461033c5780634f1ef2861461035d57806352d1902d1461037057806354fd4d5014610384575f5ffd5b80632e334452116101c85780632e334452146102c85780632f2ff15d146102ea57806336568abe1461030957806347c0318614610328575f5ffd5b80630138c60d146101f957806301ffc9a71461021a57806316cc9a981461024e578063248a9ca31461026d575b5f5ffd5b348015610204575f5ffd5b506102186102133660046137bd565b61071f565b005b348015610225575f5ffd5b506102396102343660046137d4565b610c74565b60405190151581526020015b60405180910390f35b348015610259575f5ffd5b50610218610268366004613834565b610ccf565b348015610278575f5ffd5b506102ba6102873660046137bd565b5f9081527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800602052604090206001015490565b604051908152602001610245565b3480156102d3575f5ffd5b506102dc610d66565b604051610245929190613871565b3480156102f5575f5ffd5b5061021861030436600461388c565b610de1565b348015610314575f5ffd5b5061021861032336600461388c565b610e2a565b348015610333575f5ffd5b506102ba5f5481565b348015610347575f5ffd5b50610350610e83565b60405161024591906138ba565b61021861036b366004613981565b610e94565b34801561037b575f5ffd5b506102ba610eb3565b34801561038f575f5ffd5b5060408051808201909152600581527f302e302e3100000000000000000000000000000000000000000000000000000060208201525b6040516102459190613a3c565b3480156103dd575f5ffd5b50610350610ee1565b3480156103f1575f5ffd5b50610218610400366004613a93565b610eed565b348015610410575f5ffd5b5061035061163b565b348015610424575f5ffd5b50610218610433366004613b48565b611647565b348015610443575f5ffd5b506102ba7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b348015610476575f5ffd5b5061048a6104853660046137bd565b6119ee565b6040516102459796959493929190613b9f565b3480156104a8575f5ffd5b506104bc6104b7366004613c32565b611ce4565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610245565b3480156104ec575f5ffd5b506102396104fb36600461388c565b5f9182527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561055c575f5ffd5b506102ba61056b366004613c52565b611d24565b34801561057b575f5ffd5b506102ba5f81565b34801561058e575f5ffd5b506105a261059d3660046137bd565b612429565b6040516102459190613cf1565b3480156105ba575f5ffd5b506105ce6105c9366004613d3e565b61246c565b6040516102459190613daf565b3480156105e6575f5ffd5b506103c5612552565b3480156105fa575f5ffd5b506103c56040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b348015610642575f5ffd5b506102396106513660046137bd565b6125cd565b348015610661575f5ffd5b506106756106703660046137bd565b6125d9565b6040516102459190613e30565b34801561068d575f5ffd5b506102ba61069c3660046137bd565b612951565b3480156106ac575f5ffd5b506102396106bb3660046137bd565b612988565b3480156106cb575f5ffd5b506102186106da36600461388c565b6129a5565b3480156106ea575f5ffd5b506102ba6129e8565b3480156106fe575f5ffd5b506006546104bc9073ffffffffffffffffffffffffffffffffffffffff1681565b610728816125cd565b6107b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f4e6f20726571756573742077697468207370656369666965642072657175657360448201527f74494420686173206572726f726564000000000000000000000000000000000060648201526084015b60405180910390fd5b5f81815260056020526040808220815160e081019092528054829082906107df90613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461080b90613f01565b80156108565780601f1061082d57610100808354040283529160200191610856565b820191905f5260205f20905b81548152906001019060200180831161083957829003601f168201915b5050505050815260200160018201805461086f90613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461089b90613f01565b80156108e65780601f106108bd576101008083540402835291602001916108e6565b820191905f5260205f20905b8154815290600101906020018083116108c957829003601f168201915b505050505081526020016002820180546108ff90613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461092b90613f01565b80156109765780601f1061094d57610100808354040283529160200191610976565b820191905f5260205f20905b81548152906001019060200180831161095957829003601f168201915b5050505050815260200160038201805461098f90613f01565b80601f01602080910402602001604051908101604052809291908181526020018280546109bb90613f01565b8015610a065780601f106109dd57610100808354040283529160200191610a06565b820191905f5260205f20905b8154815290600101906020018083116109e957829003601f168201915b5050509183525050600482015473ffffffffffffffffffffffffffffffffffffffff166020820152600582018054604090920191610a4390613f01565b80601f0160208091040260200160405190810160405280929190818152602001828054610a6f90613f01565b8015610aba5780601f10610a9157610100808354040283529160200191610aba565b820191905f5260205f20905b815481529060010190602001808311610a9d57829003601f168201915b50505091835250506006919091015460ff161515602090910152608081015160a08201516040519293505f9273ffffffffffffffffffffffffffffffffffffffff909216917fc8db65820000000000000000000000000000000000000000000000000000000091610b3091879190602401613f52565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff00000000000000000000000000000000000000000000000000000000909416939093179092529051610b9b9190613f81565b5f604051808303815f865af19150503d805f8114610bd4576040519150601f19603f3d011682016040523d82523d5f602084013e610bd9565b606091505b5050905080610c1a576040518381527fb447474448cd6fcec713160a7af96335b628994d6abcc074f215b856ccde31679060200160405180910390a1505050565b610c25600b846129f3565b50610c316007846129fe565b50827f9a03aa0053cbc9522f2f584b8e74ba5478cadd5f83b136eaf2d4338795b369558360a00151604051610c669190613a3c565b60405180910390a25b505050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f5a05180f000000000000000000000000000000000000000000000000000000001480610cc95750610cc982612a09565b92915050565b610cf87fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775612a9f565b600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f7724bcb43a09ae6582affdee2f0ace931e26f2ffa8b5c334baf0a39e9dc03426905f90a250565b610d6e61374d565b610d7661374d565b604080518082019182905260019160039190839060029082845b815481526020019060010190808311610d90575050604080518082019182905294965085935060029250905082845b815481526020019060010190808311610dbf5750505050509050915091509091565b5f8281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020526040902060010154610e1a81612a9f565b610e248383612aac565b50505050565b73ffffffffffffffffffffffffffffffffffffffff81163314610e79576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c6f8282612b01565b6060610e8f6009612b4d565b905090565b610e9c612b59565b610ea582612c5f565b610eaf8282612c88565b5050565b5f610ebc612da3565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b6060610e8f6007612b4d565b610f167fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775612a9f565b610f1f83612988565b610fab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f4e6f20726571756573742077697468207370656369666965642072657175657360448201527f744944000000000000000000000000000000000000000000000000000000000060648201526084016107b0565b5f83815260056020526040808220815160e08101909252805482908290610fd190613f01565b80601f0160208091040260200160405190810160405280929190818152602001828054610ffd90613f01565b80156110485780601f1061101f57610100808354040283529160200191611048565b820191905f5260205f20905b81548152906001019060200180831161102b57829003601f168201915b5050505050815260200160018201805461106190613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461108d90613f01565b80156110d85780601f106110af576101008083540402835291602001916110d8565b820191905f5260205f20905b8154815290600101906020018083116110bb57829003601f168201915b505050505081526020016002820180546110f190613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461111d90613f01565b80156111685780601f1061113f57610100808354040283529160200191611168565b820191905f5260205f20905b81548152906001019060200180831161114b57829003601f168201915b5050505050815260200160038201805461118190613f01565b80601f01602080910402602001604051908101604052809291908181526020018280546111ad90613f01565b80156111f85780601f106111cf576101008083540402835291602001916111f8565b820191905f5260205f20905b8154815290600101906020018083116111db57829003601f168201915b5050509183525050600482015473ffffffffffffffffffffffffffffffffffffffff16602082015260058201805460409092019161123590613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461126190613f01565b80156112ac5780601f10611283576101008083540402835291602001916112ac565b820191905f5260205f20905b81548152906001019060200180831161128f57829003601f168201915b505050918352505060069182015460ff161515602090910152606082015190546040517f5bb09cf800000000000000000000000000000000000000000000000000000000815292935090915f9173ffffffffffffffffffffffffffffffffffffffff1690635bb09cf890611324908590600401613a3c565b602060405180830381865afa15801561133f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113639190613f8c565b90505f8190508073ffffffffffffffffffffffffffffffffffffffff1663f6e548e985602001518888611394612552565b6040518563ffffffff1660e01b81526004016113b39493929190613fd0565b602060405180830381865afa1580156113ce573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113f29190614014565b611458576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f5369676e617475726520766572696669636174696f6e206661696c656400000060448201526064016107b0565b5f846080015173ffffffffffffffffffffffffffffffffffffffff1663c8db658260e01b89898960405160240161149193929190614033565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290516114fc9190613f81565b5f604051808303815f865af19150503d805f8114611535576040519150601f19603f3d011682016040523d82523d5f602084013e61153a565b606091505b50505f8981526005602081905260409091209192500161155b878983614097565b505f88815260056020526040902060060180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556115a06009896129f3565b50806115ea576115b1600b896129fe565b506040518881527fb447474448cd6fcec713160a7af96335b628994d6abcc074f215b856ccde31679060200160405180910390a1611631565b6115f56007896129fe565b50877f9a03aa0053cbc9522f2f584b8e74ba5478cadd5f83b136eaf2d4338795b36955888860405161162892919061418f565b60405180910390a25b5050505050505050565b6060610e8f600b612b4d565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f811580156116915750825b90505f8267ffffffffffffffff1660011480156116ad5750303b155b9050811580156116bb575080155b156116f2576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000016600117855583156117535784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b61175b612e12565b611763612e12565b60408051808201909152898152602081018990526001611785818c600261376b565b50602082015161179b906002808401919061376b565b509050506117c97fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177588612aac565b61182f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4772616e7420726f6c65206661696c656400000000000000000000000000000060448201526064016107b0565b6118395f88612aac565b61189f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4772616e7420726f6c652072657665727473000000000000000000000000000060448201526064016107b0565b73ffffffffffffffffffffffffffffffffffffffff8616611942576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f43616e6e6f7420736574207a65726f2061646472657373206173207369676e6160448201527f7475726520736368656d6520616464726573732070726f76696465720000000060648201526084016107b0565b600680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff881617905583156119e35784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050565b60056020525f9081526040902080548190611a0890613f01565b80601f0160208091040260200160405190810160405280929190818152602001828054611a3490613f01565b8015611a7f5780601f10611a5657610100808354040283529160200191611a7f565b820191905f5260205f20905b815481529060010190602001808311611a6257829003601f168201915b505050505090806001018054611a9490613f01565b80601f0160208091040260200160405190810160405280929190818152602001828054611ac090613f01565b8015611b0b5780601f10611ae257610100808354040283529160200191611b0b565b820191905f5260205f20905b815481529060010190602001808311611aee57829003601f168201915b505050505090806002018054611b2090613f01565b80601f0160208091040260200160405190810160405280929190818152602001828054611b4c90613f01565b8015611b975780601f10611b6e57610100808354040283529160200191611b97565b820191905f5260205f20905b815481529060010190602001808311611b7a57829003601f168201915b505050505090806003018054611bac90613f01565b80601f0160208091040260200160405190810160405280929190818152602001828054611bd890613f01565b8015611c235780601f10611bfa57610100808354040283529160200191611c23565b820191905f5260205f20905b815481529060010190602001808311611c0657829003601f168201915b5050506004840154600585018054949573ffffffffffffffffffffffffffffffffffffffff909216949193509150611c5a90613f01565b80601f0160208091040260200160405190810160405280929190818152602001828054611c8690613f01565b8015611cd15780601f10611ca857610100808354040283529160200191611cd1565b820191905f5260205f20905b815481529060010190602001808311611cb457829003601f168201915b5050506006909301549192505060ff1687565b5f8281527fc1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e82371705932000602081905260408220611d1c9084612e1a565b949350505050565b5f60015f5f828254611d3691906141cf565b90915550506006546040517f2fc9fa3300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff90911690632fc9fa3390611d93908a908a9060040161418f565b602060405180830381865afa158015611dae573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd29190614014565b611e38576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f5369676e617475726520736368656d65206e6f7420737570706f72746564000060448201526064016107b0565b611e7f600161100087878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929493925050612e259050565b611f0b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4d657373616765206661696c6564206c656e67746820626f756e64732063686560448201527f636b00000000000000000000000000000000000000000000000000000000000060648201526084016107b0565b611f515f61100085858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250929493925050612e259050565b611fdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f436f6e646974696f6e206661696c6564206c656e67746820626f756e6473206360448201527f6865636b0000000000000000000000000000000000000000000000000000000060648201526084016107b0565b8180156120ae5761202184848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f92019190915250612ed192505050565b156120ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f436f6e646974696f6e2062797465732063616e6e6f7420626520616c6c207a6560448201527f726f73000000000000000000000000000000000000000000000000000000000060648201526084016107b0565b6006546040517f5bb09cf80000000000000000000000000000000000000000000000000000000081525f9173ffffffffffffffffffffffffffffffffffffffff1690635bb09cf890612106908c908c9060040161418f565b602060405180830381865afa158015612121573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121459190613f8c565b6040517feae1e15b00000000000000000000000000000000000000000000000000000000815290915081905f9073ffffffffffffffffffffffffffffffffffffffff83169063eae1e15b906121a0908c908c9060040161418f565b5f60405180830381865afa1580156121ba573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526121e191908101906141e2565b604080516101006020601f8d01819004028201810190925260e081018b81529293509182918c908c90819085018382808284375f92019190915250505090825250602080820184905260408051601f8b0183900483028101830182528a8152920191908a908a90819084018382808284375f92019190915250505090825250604080516020601f8f018190048102820181019092528d815291810191908e908e90819084018382808284375f92018290525093855250503360208085019190915260408051808301825284815281860152606090940183905282548352600590525020815181906122d29082614257565b50602082015160018201906122e79082614257565b50604082015160028201906122fc9082614257565b50606082015160038201906123119082614257565b5060808201516004820180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff90921691909117905560a082015160058201906123719082614257565b5060c09190910151600690910180547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790555f546123b9906009906129fe565b503373ffffffffffffffffffffffffffffffffffffffff165f547ff0a5ef4bc87d6534674b1469f4b31d03c6510d0f7ab353f3e53f9d1d87ead02b8d8d8d8d878e8e42604051612410989796959493929190614350565b60405180910390a350505f549998505050505050505050565b5f8181527fc1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e82371705932000602081905260409091206060919061246590612b4d565b9392505050565b604080515f8152602081019091526060908267ffffffffffffffff811115612496576124966138fc565b6040519080825280602002602001820160405280156124c957816020015b60608152602001906001900390816124b45790505b5091505f5b8381101561254a57612525308686848181106124ec576124ec6143c8565b90506020028101906124fe91906143f5565b8560405160200161251193929190614456565b604051602081830303815290604052612f34565b838281518110612537576125376143c8565b60209081029190910101526001016124ce565b505092915050565b6040805160808101808352606092610e8f9291600191839190820190839060029082845b81548152602001906001019080831161257657505050918352505060408051808201918290526020909201919060028481019182845b8154815260200190600101908083116125ac57505050505081525050612faa565b5f610cc9600b83613006565b61262f6040518060e00160405280606081526020016060815260200160608152602001606081526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f151581525090565b5f8281526005602052604090819020815160e0810190925280548290829061265690613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461268290613f01565b80156126cd5780601f106126a4576101008083540402835291602001916126cd565b820191905f5260205f20905b8154815290600101906020018083116126b057829003601f168201915b505050505081526020016001820180546126e690613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461271290613f01565b801561275d5780601f106127345761010080835404028352916020019161275d565b820191905f5260205f20905b81548152906001019060200180831161274057829003601f168201915b5050505050815260200160028201805461277690613f01565b80601f01602080910402602001604051908101604052809291908181526020018280546127a290613f01565b80156127ed5780601f106127c4576101008083540402835291602001916127ed565b820191905f5260205f20905b8154815290600101906020018083116127d057829003601f168201915b5050505050815260200160038201805461280690613f01565b80601f016020809104026020016040519081016040528092919081815260200182805461283290613f01565b801561287d5780601f106128545761010080835404028352916020019161287d565b820191905f5260205f20905b81548152906001019060200180831161286057829003601f168201915b5050509183525050600482015473ffffffffffffffffffffffffffffffffffffffff1660208201526005820180546040909201916128ba90613f01565b80601f01602080910402602001604051908101604052809291908181526020018280546128e690613f01565b80156129315780601f1061290857610100808354040283529160200191612931565b820191905f5260205f20905b81548152906001019060200180831161291457829003601f168201915b50505091835250506006919091015460ff16151560209091015292915050565b5f8181527fc1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e823717059320006020819052604082206124659061301d565b5f612994600983613006565b80610cc95750610cc9600b83613006565b5f8281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b62680060205260409020600101546129de81612a9f565b610e248383612b01565b5f610e8f600961301d565b5f6124658383613026565b5f6124658383613109565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b000000000000000000000000000000000000000000000000000000001480610cc957507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610cc9565b612aa98133613155565b50565b5f7fc1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e8237170593200081612ad985856131fb565b90508015611d1c575f858152602083905260409020612af89085613310565b50949350505050565b5f7fc1f6fe24621ce81ec5827caf0253cadb74709b061630e6b55e8237170593200081612b2e8585613331565b90508015611d1c575f858152602083905260409020612af8908561340d565b60605f6124658361342e565b3073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161480612c2657507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16612c0d7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15612c5d576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b612aa97fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775612a9f565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612cef575060408051601f3d908101601f19168201909252612cec91810190614475565b60015b612d3d576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526024016107b0565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114612d99576040517faa1d49a4000000000000000000000000000000000000000000000000000000008152600481018290526024016107b0565b610c6f8383613487565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614612c5d576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612c5d6134e9565b5f6124658383613550565b5f81831115612eb6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f496e76616c696420626f756e64733a206d696e4c656e6774682063616e6e6f7460448201527f2062652067726561746572207468616e206d61784c656e67746800000000000060648201526084016107b0565b8351838110801590612ec85750828111155b95945050505050565b5f805b8251811015612f2b57828181518110612eef57612eef6143c8565b01602001517fff000000000000000000000000000000000000000000000000000000000000001615612f2357505f92915050565b600101612ed4565b50600192915050565b60605f5f8473ffffffffffffffffffffffffffffffffffffffff1684604051612f5d9190613f81565b5f60405180830381855af49150503d805f8114612f95576040519150601f19603f3d011682016040523d82523d5f602084013e612f9a565b606091505b5091509150612ec8858383613576565b60408051608080825260a082019092526060915f91906020820181803683375050845180516020918201519682015180519083015192850191909152604084019690965260608301959095525060808101939093525090919050565b5f8181526001830160205260408120541515612465565b5f610cc9825490565b5f8181526001830160205260408120548015613100575f6130486001836143b5565b85549091505f9061305b906001906143b5565b90508082146130ba575f865f018281548110613079576130796143c8565b905f5260205f200154905080875f018481548110613099576130996143c8565b5f918252602080832090910192909255918252600188019052604090208390555b85548690806130cb576130cb61448c565b600190038181905f5260205f20015f90559055856001015f8681526020019081526020015f205f905560019350505050610cc9565b5f915050610cc9565b5f81815260018301602052604081205461314e57508154600181810184555f848152602080822090930184905584548482528286019093526040902091909155610cc9565b505f610cc9565b5f8281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16610eaf576040517fe2517d3f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602481018390526044016107b0565b5f8281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020818152604080842073ffffffffffffffffffffffffffffffffffffffff8616855290915282205460ff16613100575f8481526020828152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556132ac3390565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610cc9565b5f6124658373ffffffffffffffffffffffffffffffffffffffff8416613109565b5f8281527f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268006020818152604080842073ffffffffffffffffffffffffffffffffffffffff8616855290915282205460ff1615613100575f8481526020828152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610cc9565b5f6124658373ffffffffffffffffffffffffffffffffffffffff8416613026565b6060815f0180548060200260200160405190810160405280929190818152602001828054801561347b57602002820191905f5260205f20905b815481526020019060010190808311613467575b50505050509050919050565b61349082613605565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a28051156134e157610c6f8282612f34565b610eaf6136d3565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff16612c5d576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f825f018281548110613565576135656143c8565b905f5260205f200154905092915050565b60608261358b576135868261370b565b612465565b81511580156135af575073ffffffffffffffffffffffffffffffffffffffff84163b155b156135fe576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851660048201526024016107b0565b5080612465565b8073ffffffffffffffffffffffffffffffffffffffff163b5f0361366d576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024016107b0565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b3415612c5d576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80511561371b5780518082602001fd5b6040517fd6bda27500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405180604001604052806002906020820280368337509192915050565b8260028101928215613799579160200282015b8281111561379957825182559160200191906001019061377e565b506137a59291506137a9565b5090565b5b808211156137a5575f81556001016137aa565b5f602082840312156137cd575f5ffd5b5035919050565b5f602082840312156137e4575f5ffd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114612465575f5ffd5b73ffffffffffffffffffffffffffffffffffffffff81168114612aa9575f5ffd5b5f60208284031215613844575f5ffd5b813561246581613813565b805f5b6002811015610e24578151845260209384019390910190600101613852565b6080810161387f828561384f565b612465604083018461384f565b5f5f6040838503121561389d575f5ffd5b8235915060208301356138af81613813565b809150509250929050565b602080825282518282018190525f918401906040840190835b818110156138f15783518352602093840193909201916001016138d3565b509095945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613952576139526138fc565b604052919050565b5f67ffffffffffffffff821115613973576139736138fc565b50601f01601f191660200190565b5f5f60408385031215613992575f5ffd5b823561399d81613813565b9150602083013567ffffffffffffffff8111156139b8575f5ffd5b8301601f810185136139c8575f5ffd5b80356139db6139d68261395a565b613929565b8181528660208385010111156139ef575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6124656020830184613a0e565b5f5f83601f840112613a5e575f5ffd5b50813567ffffffffffffffff811115613a75575f5ffd5b602083019150836020828501011115613a8c575f5ffd5b9250929050565b5f5f5f60408486031215613aa5575f5ffd5b83359250602084013567ffffffffffffffff811115613ac2575f5ffd5b613ace86828701613a4e565b9497909650939450505050565b5f82601f830112613aea575f5ffd5b6040805190810167ffffffffffffffff81118282101715613b0d57613b0d6138fc565b8060405250806040840185811115613b23575f5ffd5b845b81811015613b3d578035835260209283019201613b25565b509195945050505050565b5f5f5f5f60c08587031215613b5b575f5ffd5b613b658686613adb565b9350613b748660408701613adb565b92506080850135613b8481613813565b915060a0850135613b9481613813565b939692955090935050565b60e081525f613bb160e083018a613a0e565b8281036020840152613bc3818a613a0e565b90508281036040840152613bd78189613a0e565b90508281036060840152613beb8188613a0e565b905073ffffffffffffffffffffffffffffffffffffffff8616608084015282810360a0840152613c1b8186613a0e565b91505082151560c083015298975050505050505050565b5f5f60408385031215613c43575f5ffd5b50508035926020909101359150565b5f5f5f5f5f5f60608789031215613c67575f5ffd5b863567ffffffffffffffff811115613c7d575f5ffd5b613c8989828a01613a4e565b909750955050602087013567ffffffffffffffff811115613ca8575f5ffd5b613cb489828a01613a4e565b909550935050604087013567ffffffffffffffff811115613cd3575f5ffd5b613cdf89828a01613a4e565b979a9699509497509295939492505050565b602080825282518282018190525f918401906040840190835b818110156138f157835173ffffffffffffffffffffffffffffffffffffffff16835260209384019390920191600101613d0a565b5f5f60208385031215613d4f575f5ffd5b823567ffffffffffffffff811115613d65575f5ffd5b8301601f81018513613d75575f5ffd5b803567ffffffffffffffff811115613d8b575f5ffd5b8560208260051b8401011115613d9f575f5ffd5b6020919091019590945092505050565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b82811015613e24577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0878603018452613e0f858351613a0e565b94506020938401939190910190600101613dd5565b50929695505050505050565b602081525f825160e06020840152613e4c610100840182613a0e565b90506020840151601f19848303016040850152613e698282613a0e565b9150506040840151601f19848303016060850152613e878282613a0e565b9150506060840151601f19848303016080850152613ea58282613a0e565b91505073ffffffffffffffffffffffffffffffffffffffff60808501511660a084015260a0840151601f198483030160c0850152613ee38282613a0e565b91505060c0840151613ef960e085018215159052565b509392505050565b600181811c90821680613f1557607f821691505b602082108103613f4c577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b50919050565b828152604060208201525f611d1c6040830184613a0e565b5f81518060208401855e5f93019283525090919050565b5f6124658284613f6a565b5f60208284031215613f9c575f5ffd5b815161246581613813565b81835281816020850137505f602082840101525f6020601f19601f840116840101905092915050565b606081525f613fe26060830187613a0e565b8281036020840152613ff5818688613fa7565b905082810360408401526140098185613a0e565b979650505050505050565b5f60208284031215614024575f5ffd5b81518015158114612465575f5ffd5b838152604060208201525f612ec8604083018486613fa7565b601f821115610c6f57805f5260205f20601f840160051c810160208510156140715750805b601f840160051c820191505b81811015614090575f815560010161407d565b5050505050565b67ffffffffffffffff8311156140af576140af6138fc565b6140c3836140bd8354613f01565b8361404c565b5f601f841160018114614113575f85156140dd5750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b178355614090565b5f83815260208120601f198716915b828110156141425786850135825560209485019460019092019101614122565b508682101561417d577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555050505050565b602081525f611d1c602083018486613fa7565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b80820180821115610cc957610cc96141a2565b5f602082840312156141f2575f5ffd5b815167ffffffffffffffff811115614208575f5ffd5b8201601f81018413614218575f5ffd5b80516142266139d68261395a565b81815285602083850101111561423a575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b815167ffffffffffffffff811115614271576142716138fc565b6142858161427f8454613f01565b8461404c565b6020601f8211600181146142d6575f83156142a05750848201515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600385901b1c1916600184901b178455614090565b5f84815260208120601f198516915b8281101561430557878501518255602094850194600190920191016142e5565b508482101561434157868401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b60f8161c191681555b50505050600190811b01905550565b60a081525f61436360a083018a8c613fa7565b828103602084015261437681898b613fa7565b9050828103604084015261438a8188613a0e565b9050828103606084015261439f818688613fa7565b9150508260808301529998505050505050505050565b81810381811115610cc957610cc96141a2565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f5f83357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614428575f5ffd5b83018035915067ffffffffffffffff821115614442575f5ffd5b602001915036819003821315613a8c575f5ffd5b828482375f8382015f815261446b8185613f6a565b9695505050505050565b5f60208284031215614485575f5ffd5b5051919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffdfea26469706673582212207f33e7672e5328ae7dfef406ddca56e21c29c4c4d46bb1f9d05ba19afd9c928264736f6c634300081c0033";
static readonly abi: readonly [{
readonly type: "constructor";
readonly inputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "ADMIN_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "DEFAULT_ADMIN_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "UPGRADE_INTERFACE_VERSION";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "string";
readonly internalType: "string";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "fulfilSignatureRequest";
readonly inputs: readonly [{
readonly name: "requestID";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "signature";
readonly type: "bytes";
readonly internalType: "bytes";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "getAllErroredRequestIds";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256[]";
readonly internalType: "uint256[]";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getAllFulfilledRequestIds";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256[]";
readonly internalType: "uint256[]";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getAllUnfulfilledRequestIds";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256[]";
readonly internalType: "uint256[]";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getCountOfUnfulfilledRequestIds";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getPublicKey";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256[2]";
readonly internalType: "uint256[2]";
}, {
readonly name: "";
readonly type: "uint256[2]";
readonly internalType: "uint256[2]";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getPublicKeyBytes";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes";
readonly internalType: "bytes";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRequest";
readonly inputs: readonly [{
readonly name: "requestID";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly internalType: "struct TypesLib.SignatureRequest";
readonly components: readonly [{
readonly name: "message";
readonly type: "bytes";
readonly internalType: "bytes";
}, {
readonly name: "messageHash";
readonly type: "bytes";
readonly internalType: "bytes";
}, {
readonly name: "condition";
readonly type: "bytes";
readonly internalType: "bytes";
}, {
readonly name: "schemeID";
readonly type: "string";
readonly internalType: "string";
}, {
readonly name: "callback";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "signature";
readonly type: "bytes";
readonly internalType: "bytes";
}, {
readonly name: "isFulfilled";
readonly type: "bool";
readonly internalType: "bool";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRoleAdmin";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRoleMember";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "index";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRoleMemberCount";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRoleMembers";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address[]";
readonly internalType: "address[]";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "grantRole";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "account";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "hasErrored";
readonly inputs: readonly [{
readonly name: "requestID";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "hasRole";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "account";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initialize";
readonly inputs: readonly [{
readonly name: "x";
readonly type: "uint256[2]";
readonly internalType: "uint256[2]";
}, {
readonly name: "y";
readonly type: "uint256[2]";
readonly internalType: "uint256[2]";
}, {
readonly name: "owner";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "_signatureSchemeAddressProvider";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isInFlight";
readonly inputs: readonly [{
readonly name: "requestID";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "lastRequestID";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "multicall";
readonly inputs: readonly [{
readonly name: "data";
readonly type: "bytes[]";
readonly internalType: "bytes[]";
}];
readonly outputs: readonly [{
readonly name: "results";
readonly type: "bytes[]";
readonly internalType: "bytes[]";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "proxiableUUID";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "renounceRole";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "callerConfirmation";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "requestSignature";
readonly inputs: readonly [{
readonly name: "schemeID";
readonly type: "string";
readonly internalType: "string";
}, {
readonly name: "message";
readonly type: "bytes";
readonly internalType: "bytes";
}, {
readonly name: "condition";
readonly type: "bytes";
readonly internalType: "bytes";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "requests";
readonly inputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "message";
readonly type: "bytes";
readonly internalType: "bytes";
}, {
readonly name: "messageHash";
readonly type: "bytes";