// This file was autogenerated by Hardhat, do not edit it. // prettier-ignore // tslint:disable // eslint-disable // biome-ignore format: see above export interface EnclavePricing$Type { readonly _format: "hh3-artifact-1"; readonly contractName: "EnclavePricing"; readonly sourceName: "contracts/lib/EnclavePricing.sol"; readonly abi: [{"inputs":[{"internalType":"uint256","name":"size","type":"uint256"},{"internalType":"uint256","name":"minimum","type":"uint256"}],"name":"BelowMinCommitteeSize","type":"error"},{"inputs":[{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"minimum","type":"uint256"}],"name":"BelowMinThreshold","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"BpsExceedsMax","type":"error"},{"inputs":[{"internalType":"uint256","name":"e3Id","type":"uint256"}],"name":"CiphertextOutputAlreadyPublished","type":"error"},{"inputs":[{"internalType":"uint256","name":"e3Id","type":"uint256"},{"internalType":"uint256","name":"expiration","type":"uint256"}],"name":"CommitteeDutiesCompleted","type":"error"},{"inputs":[{"internalType":"enum IEnclave.CommitteeSize","name":"committeeSize","type":"uint8"}],"name":"CommitteeSizeNotConfigured","type":"error"},{"inputs":[{"internalType":"enum IEnclave.CommitteeSize","name":"committeeSize","type":"uint8"}],"name":"CommitteeSizeTooSmall","type":"error"},{"inputs":[{"internalType":"uint256","name":"e3Id","type":"uint256"}],"name":"E3AlreadyComplete","type":"error"},{"inputs":[{"internalType":"uint256","name":"e3Id","type":"uint256"}],"name":"E3AlreadyFailed","type":"error"},{"inputs":[{"internalType":"uint256","name":"e3Id","type":"uint256"},{"internalType":"uint256","name":"inputDeadline","type":"uint256"}],"name":"InputDeadlineNotReached","type":"error"},{"inputs":[{"internalType":"uint256","name":"duration","type":"uint256"}],"name":"InvalidDuration","type":"error"},{"inputs":[{"internalType":"uint256","name":"end","type":"uint256"}],"name":"InvalidInputDeadlineEnd","type":"error"},{"inputs":[{"internalType":"uint256","name":"start","type":"uint256"}],"name":"InvalidInputDeadlineStart","type":"error"},{"inputs":[{"internalType":"uint256","name":"e3Id","type":"uint256"},{"internalType":"enum IEnclave.E3Stage","name":"expected","type":"uint8"},{"internalType":"enum IEnclave.E3Stage","name":"actual","type":"uint8"}],"name":"InvalidStage","type":"error"},{"inputs":[],"name":"InvalidThresholdValues","type":"error"},{"inputs":[],"name":"InvalidTimeoutWindow","type":"error"},{"inputs":[],"name":"MinSizeBelowMinThreshold","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"PaymentRequired","type":"error"},{"inputs":[{"internalType":"uint256","name":"threshold","type":"uint256"}],"name":"ThresholdTooSmall","type":"error"},{"inputs":[],"name":"TreasuryRequired","type":"error"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"UtilizationBpsExceedsMax","type":"error"},{"inputs":[{"internalType":"uint256","name":"cnAmount","type":"uint256"},{"internalType":"uint256","name":"n","type":"uint256"},{"internalType":"uint256","name":"e3Id","type":"uint256"}],"name":"computeNodeAmounts","outputs":[{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"defaultPricingConfig","outputs":[{"components":[{"internalType":"uint256","name":"keyGenFixedPerNode","type":"uint256"},{"internalType":"uint256","name":"keyGenPerEncryptionProof","type":"uint256"},{"internalType":"uint256","name":"coordinationPerPair","type":"uint256"},{"internalType":"uint256","name":"availabilityPerNodePerSec","type":"uint256"},{"internalType":"uint256","name":"decryptionPerNode","type":"uint256"},{"internalType":"uint256","name":"publicationBase","type":"uint256"},{"internalType":"uint256","name":"verificationPerProof","type":"uint256"},{"internalType":"address","name":"protocolTreasury","type":"address"},{"internalType":"uint16","name":"marginBps","type":"uint16"},{"internalType":"uint16","name":"protocolShareBps","type":"uint16"},{"internalType":"uint16","name":"dkgUtilizationBps","type":"uint16"},{"internalType":"uint16","name":"computeUtilizationBps","type":"uint16"},{"internalType":"uint16","name":"decryptUtilizationBps","type":"uint16"},{"internalType":"uint32","name":"minCommitteeSize","type":"uint32"},{"internalType":"uint32","name":"minThreshold","type":"uint32"}],"internalType":"struct IEnclave.PricingConfig","name":"cfg","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"keyGenFixedPerNode","type":"uint256"},{"internalType":"uint256","name":"keyGenPerEncryptionProof","type":"uint256"},{"internalType":"uint256","name":"coordinationPerPair","type":"uint256"},{"internalType":"uint256","name":"availabilityPerNodePerSec","type":"uint256"},{"internalType":"uint256","name":"decryptionPerNode","type":"uint256"},{"internalType":"uint256","name":"publicationBase","type":"uint256"},{"internalType":"uint256","name":"verificationPerProof","type":"uint256"},{"internalType":"address","name":"protocolTreasury","type":"address"},{"internalType":"uint16","name":"marginBps","type":"uint16"},{"internalType":"uint16","name":"protocolShareBps","type":"uint16"},{"internalType":"uint16","name":"dkgUtilizationBps","type":"uint16"},{"internalType":"uint16","name":"computeUtilizationBps","type":"uint16"},{"internalType":"uint16","name":"decryptUtilizationBps","type":"uint16"},{"internalType":"uint32","name":"minCommitteeSize","type":"uint32"},{"internalType":"uint32","name":"minThreshold","type":"uint32"}],"internalType":"struct IEnclave.PricingConfig","name":"pc","type":"tuple"},{"components":[{"internalType":"uint256","name":"dkgWindow","type":"uint256"},{"internalType":"uint256","name":"computeWindow","type":"uint256"},{"internalType":"uint256","name":"decryptionWindow","type":"uint256"}],"internalType":"struct IEnclave.E3TimeoutConfig","name":"tc","type":"tuple"},{"internalType":"uint256","name":"sortitionWindow","type":"uint256"},{"internalType":"uint32[2]","name":"threshold","type":"uint32[2]"},{"internalType":"uint256","name":"inputWindowStart","type":"uint256"},{"internalType":"uint256","name":"inputWindowEnd","type":"uint256"}],"name":"quote","outputs":[{"internalType":"uint256","name":"fee","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint32[2]","name":"threshold","type":"uint32[2]"},{"internalType":"uint32","name":"minCommitteeSize","type":"uint32"},{"internalType":"uint32","name":"minThreshold","type":"uint32"}],"name":"validateCommitteeThresholds","outputs":[],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"e3Id","type":"uint256"},{"internalType":"uint8","name":"current","type":"uint8"}],"name":"validateMarkFailedStage","outputs":[],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"keyGenFixedPerNode","type":"uint256"},{"internalType":"uint256","name":"keyGenPerEncryptionProof","type":"uint256"},{"internalType":"uint256","name":"coordinationPerPair","type":"uint256"},{"internalType":"uint256","name":"availabilityPerNodePerSec","type":"uint256"},{"internalType":"uint256","name":"decryptionPerNode","type":"uint256"},{"internalType":"uint256","name":"publicationBase","type":"uint256"},{"internalType":"uint256","name":"verificationPerProof","type":"uint256"},{"internalType":"address","name":"protocolTreasury","type":"address"},{"internalType":"uint16","name":"marginBps","type":"uint16"},{"internalType":"uint16","name":"protocolShareBps","type":"uint16"},{"internalType":"uint16","name":"dkgUtilizationBps","type":"uint16"},{"internalType":"uint16","name":"computeUtilizationBps","type":"uint16"},{"internalType":"uint16","name":"decryptUtilizationBps","type":"uint16"},{"internalType":"uint32","name":"minCommitteeSize","type":"uint32"},{"internalType":"uint32","name":"minThreshold","type":"uint32"}],"internalType":"struct IEnclave.PricingConfig","name":"config","type":"tuple"}],"name":"validatePricingConfig","outputs":[],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"e3Id","type":"uint256"},{"internalType":"uint8","name":"current","type":"uint8"},{"internalType":"uint256","name":"computeDeadline","type":"uint256"},{"internalType":"uint256","name":"inputWindowEnd","type":"uint256"},{"internalType":"bytes32","name":"ciphertextOutput","type":"bytes32"},{"internalType":"uint256","name":"nowTs","type":"uint256"}],"name":"validatePublishCiphertext","outputs":[],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint32[2]","name":"threshold","type":"uint32[2]"},{"internalType":"uint8","name":"committeeSize","type":"uint8"},{"internalType":"uint32","name":"minCommitteeSize","type":"uint32"},{"internalType":"uint32","name":"minThreshold","type":"uint32"}],"name":"validateQuoteThresholds","outputs":[],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256[2]","name":"inputWindow","type":"uint256[2]"},{"internalType":"uint256","name":"nowTs","type":"uint256"},{"internalType":"uint256","name":"computeWindow","type":"uint256"},{"internalType":"uint256","name":"decryptionWindow","type":"uint256"},{"internalType":"uint256","name":"maxDuration","type":"uint256"},{"internalType":"uint256","name":"quotedFee","type":"uint256"}],"name":"validateRequest","outputs":[],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"dkgWindow","type":"uint256"},{"internalType":"uint256","name":"computeWindow","type":"uint256"},{"internalType":"uint256","name":"decryptionWindow","type":"uint256"}],"internalType":"struct IEnclave.E3TimeoutConfig","name":"config","type":"tuple"},{"internalType":"uint256","name":"maxTimeoutWindow","type":"uint256"}],"name":"validateTimeoutConfig","outputs":[],"stateMutability":"pure","type":"function"}]; readonly bytecode: "0x61130c610039600b82828239805160001a607314602c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100a35760003560e01c80631a2dd41d146100a857806336523a5f146100bd5780634ae7776b146100d05780634ff2c9f5146100f6578063764346ff146101095780637cad3607146101585780637e262a6f1461016b578063b106e1521461017e578063bff6ec8e14610191578063de5fa95514610222578063ff9873ea14610235575b600080fd5b6100bb6100b6366004610d05565b610255565b005b6100bb6100cb366004610d6b565b610331565b6100e36100de366004610dc0565b6103c5565b6040519081526020015b60405180910390f35b6100bb610104366004610e52565b6106a0565b81801561011557600080fd5b506100bb620186a060185561c350601955612710601a556032601b55620493e0601c55620f4240601d55611388601e5569027104e202710000017760a21b601f55565b6100bb610166366004610f08565b610778565b6100bb610179366004610f53565b610814565b6100bb61018c366004610f7f565b6108d5565b604080516101e081018252600060e0820181905261012082018190526101a082018190526101c0820152620186a0815261c35060208201526127108183015260326060820152620493e06080820152620f424060a082015261138860c082018190526105dc6101008301526109c4610140830181905261016083019190915261018082015290516100ed9190610fc3565b6100bb6102303660046110d9565b610a2c565b6102486102433660046110fd565b610c0e565b6040516100ed9190611129565b60008560ff16600681111561026c5761026c61116c565b905060038160068111156102825761028261116c565b146102b057866003826040516337e1404160e01b81526004016102a793929190611196565b60405180910390fd5b818510156102db576040516308f3034360e31b815260048101889052602481018690526044016102a7565b838210156103065760405163017e35e560e71b815260048101889052602481018590526044016102a7565b821561032857604051637eb9cea960e11b8152600481018890526024016102a7565b50505050505050565b8135158061033f5750813581105b1561035d5760405163055f269d60e01b815260040160405180910390fd5b602082013515806103715750808260200135115b1561038f5760405163055f269d60e01b815260040160405180910390fd5b604082013515806103a35750808260400135115b156103c15760405163055f269d60e01b815260040160405180910390fd5b5050565b6000828210156103eb5760405163174b5a0760e21b8152600481018390526024016102a7565b60006103fd60408601602087016111d5565b63ffffffff169050600061041460208701876111d5565b63ffffffff16905060006104306101a08b016101808c016111f0565b6104429061ffff1660408b013561122a565b6104546101808c016101608d016111f0565b6104669061ffff1660208c013561122a565b6104786101608d016101408e016111f0565b6104879061ffff168c3561122a565b6104919190611241565b61049b9190611241565b905060006104ab6127108361126a565b876104b6888c611241565b6104c0919061127e565b6104ca9190611241565b905060006104d960018661127e565b6104e490600461122a565b6104ef90600e611241565b905060006104fe868e3561122a565b905081868e60200135610511919061122a565b61051b919061122a565b6105259082611241565b9050600186111561056d57600261053d60018861127e565b610547908861122a565b8e60400135610556919061122a565b610560919061126a565b61056a9082611241565b90505b81868e60c0013561057e919061122a565b610588919061122a565b6105929082611241565b905082868e606001356105a5919061122a565b6105af919061122a565b6105b99082611241565b90506105c98560808f013561122a565b6105d39082611241565b9050600185111561061b5760026105eb60018761127e565b6105f5908761122a565b8e60400135610604919061122a565b61060e919061126a565b6106189082611241565b90505b61062960a08e013582611241565b905061271061ffff168d61010001602081019061064691906111f0565b6106569061ffff16612710611241565b610660908361122a565b61066a919061126a565b96508660000361069057604051638c4fcd9360e01b8152600481018890526024016102a7565b5050505050509695505050505050565b60008360ff1660038111156106b7576106b761116c565b602086015190915063ffffffff166000036106e7578060405163286c068d60e11b81526004016102a79190611291565b60008363ffffffff161180156107095750602085015163ffffffff8481169116105b15610729578060405163010b971d60e31b81526004016102a79190611291565b60008263ffffffff161180156107485750845163ffffffff8381169116105b15610771578451604051630a4b6b6360e11b815263ffffffff90911660048201526024016102a7565b5050505050565b853585111561079d57604051630b99e87960e01b8152863560048201526024016102a7565b8535602087013510156107c95760405163174b5a0760e21b8152602087013560048201526024016102a7565b600083856107db8860208b013561127e565b6107e59190611241565b6107ef9190611241565b9050828110610328576040516313b783af60e21b8152600481018290526024016102a7565b60008160ff16600681111561082b5761082b61116c565b905060008160068111156108415761084161116c565b0361086657826001826040516337e1404160e01b81526004016102a793929190611196565b600581600681111561087a5761087a61116c565b0361089b5760405163462c7bed60e01b8152600481018490526024016102a7565b60068160068111156108af576108af61116c565b036108d057604051633de16e3560e11b8152600481018490526024016102a7565b505050565b6108e260208401846111d5565b63ffffffff16158061091a57506108fc60208401846111d5565b63ffffffff1661091260408501602086016111d5565b63ffffffff16105b1561093857604051634564ab9b60e01b815260040160405180910390fd5b61010061094b60408501602086016111d5565b63ffffffff16111561097057604051634564ab9b60e01b815260040160405180910390fd5b60008263ffffffff161180156109a0575063ffffffff821661099860408501602086016111d5565b63ffffffff16105b156109d1576109b560408401602085016111d5565b82604051633ccc4c2160e21b81526004016102a79291906112ab565b60008163ffffffff161180156109fe575063ffffffff81166109f660208501856111d5565b63ffffffff16105b156108d057610a1060208401846111d5565b8160405163156c4e5b60e11b81526004016102a79291906112ab565b611388610a41610120830161010084016111f0565b61ffff161115610a7d57610a5d610120820161010083016111f0565b6040516301027fc160e21b815261ffff90911660048201526024016102a7565b611388610a92610140830161012084016111f0565b61ffff161115610aae57610a5d610140820161012083016111f0565b612710610ac3610160830161014084016111f0565b61ffff161115610aff57610adf610160820161014083016111f0565b604051633239953960e01b815261ffff90911660048201526024016102a7565b612710610b14610180830161016084016111f0565b61ffff161115610b3057610adf610180820161016083016111f0565b612710610b456101a0830161018084016111f0565b61ffff161115610b6157610adf6101a0820161018083016111f0565b610b73610140820161012083016111f0565b61ffff1615801590610b9e57506000610b93610100830160e084016112c2565b6001600160a01b0316145b15610bbc5760405163015f92ff60e51b815260040160405180910390fd5b610bce6101e082016101c083016111d5565b63ffffffff16610be66101c083016101a084016111d5565b63ffffffff161015610c0b576040516392f55c6560e01b815260040160405180910390fd5b50565b6060826001600160401b03811115610c2857610c28610e28565b604051908082528060200260200182016040528015610c51578160200160208202803683370190505b5090506000610c60848661126a565b905060005b84811015610c935781838281518110610c8057610c806111bf565b6020908102919091010152600101610c65565b506000610ca0858361122a565b610caa908761127e565b90508015610ce6578083610cbe87876112eb565b81518110610cce57610cce6111bf565b60200260200101818151610ce29190611241565b9052505b50509392505050565b803560ff81168114610d0057600080fd5b919050565b60008060008060008060c08789031215610d1e57600080fd5b86359550610d2e60208801610cef565b95989597505050506040840135936060810135936080820135935060a0909101359150565b600060608284031215610d6557600080fd5b50919050565b60008060808385031215610d7e57600080fd5b610d888484610d53565b946060939093013593505050565b60006101e08284031215610d6557600080fd5b8060408101831015610dba57600080fd5b92915050565b6000806000806000806102e08789031215610dda57600080fd5b610de48888610d96565b9550610df4886101e08901610d53565b94506102408701359350610e0c886102608901610da9565b959894975092956102a0810135946102c0909101359350915050565b634e487b7160e01b600052604160045260246000fd5b803563ffffffff81168114610d0057600080fd5b60008060008060a08587031215610e6857600080fd5b85601f860112610e7757600080fd5b604080519081016001600160401b0381118282101715610e9957610e99610e28565b8060405250806040870188811115610eb057600080fd5b875b81811015610ed157610ec381610e3e565b835260209283019201610eb2565b50829650610ede81610cef565b9550505050610eef60608601610e3e565b9150610efd60808601610e3e565b905092959194509250565b60008060008060008060e08789031215610f2157600080fd5b610f2b8888610da9565b98604088013598506060880135976080810135975060a0810135965060c00135945092505050565b60008060408385031215610f6657600080fd5b82359150610f7660208401610cef565b90509250929050565b600080600060808486031215610f9457600080fd5b610f9e8585610da9565b9250610fac60408501610e3e565b9150610fba60608501610e3e565b90509250925092565b60006101e082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015161102660e08401826001600160a01b03169052565b5061010083015161103e61010084018261ffff169052565b5061012083015161105661012084018261ffff169052565b5061014083015161106e61014084018261ffff169052565b5061016083015161108661016084018261ffff169052565b5061018083015161109e61018084018261ffff169052565b506101a08301516110b86101a084018263ffffffff169052565b506101c08301516110d26101c084018263ffffffff169052565b5092915050565b60006101e082840312156110ec57600080fd5b6110f68383610d96565b9392505050565b60008060006060848603121561111257600080fd5b505081359360208301359350604090920135919050565b602080825282518282018190526000918401906040840190835b81811015611161578351835260209384019390920191600101611143565b509095945050505050565b634e487b7160e01b600052602160045260246000fd5b600781106111925761119261116c565b9052565b838152606081016111aa6020830185611182565b6111b76040830184611182565b949350505050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156111e757600080fd5b6110f682610e3e565b60006020828403121561120257600080fd5b813561ffff811681146110f657600080fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610dba57610dba611214565b80820180821115610dba57610dba611214565b634e487b7160e01b600052601260045260246000fd5b60008261127957611279611254565b500490565b81810381811115610dba57610dba611214565b60208101600483106112a5576112a561116c565b91905290565b63ffffffff92831681529116602082015260400190565b6000602082840312156112d457600080fd5b81356001600160a01b03811681146110f657600080fd5b6000826112fa576112fa611254565b50069056fea164736f6c634300081c000a"; readonly deployedBytecode: "0x73000000000000000000000000000000000000000030146080604052600436106100a35760003560e01c80631a2dd41d146100a857806336523a5f146100bd5780634ae7776b146100d05780634ff2c9f5146100f6578063764346ff146101095780637cad3607146101585780637e262a6f1461016b578063b106e1521461017e578063bff6ec8e14610191578063de5fa95514610222578063ff9873ea14610235575b600080fd5b6100bb6100b6366004610d05565b610255565b005b6100bb6100cb366004610d6b565b610331565b6100e36100de366004610dc0565b6103c5565b6040519081526020015b60405180910390f35b6100bb610104366004610e52565b6106a0565b81801561011557600080fd5b506100bb620186a060185561c350601955612710601a556032601b55620493e0601c55620f4240601d55611388601e5569027104e202710000017760a21b601f55565b6100bb610166366004610f08565b610778565b6100bb610179366004610f53565b610814565b6100bb61018c366004610f7f565b6108d5565b604080516101e081018252600060e0820181905261012082018190526101a082018190526101c0820152620186a0815261c35060208201526127108183015260326060820152620493e06080820152620f424060a082015261138860c082018190526105dc6101008301526109c4610140830181905261016083019190915261018082015290516100ed9190610fc3565b6100bb6102303660046110d9565b610a2c565b6102486102433660046110fd565b610c0e565b6040516100ed9190611129565b60008560ff16600681111561026c5761026c61116c565b905060038160068111156102825761028261116c565b146102b057866003826040516337e1404160e01b81526004016102a793929190611196565b60405180910390fd5b818510156102db576040516308f3034360e31b815260048101889052602481018690526044016102a7565b838210156103065760405163017e35e560e71b815260048101889052602481018590526044016102a7565b821561032857604051637eb9cea960e11b8152600481018890526024016102a7565b50505050505050565b8135158061033f5750813581105b1561035d5760405163055f269d60e01b815260040160405180910390fd5b602082013515806103715750808260200135115b1561038f5760405163055f269d60e01b815260040160405180910390fd5b604082013515806103a35750808260400135115b156103c15760405163055f269d60e01b815260040160405180910390fd5b5050565b6000828210156103eb5760405163174b5a0760e21b8152600481018390526024016102a7565b60006103fd60408601602087016111d5565b63ffffffff169050600061041460208701876111d5565b63ffffffff16905060006104306101a08b016101808c016111f0565b6104429061ffff1660408b013561122a565b6104546101808c016101608d016111f0565b6104669061ffff1660208c013561122a565b6104786101608d016101408e016111f0565b6104879061ffff168c3561122a565b6104919190611241565b61049b9190611241565b905060006104ab6127108361126a565b876104b6888c611241565b6104c0919061127e565b6104ca9190611241565b905060006104d960018661127e565b6104e490600461122a565b6104ef90600e611241565b905060006104fe868e3561122a565b905081868e60200135610511919061122a565b61051b919061122a565b6105259082611241565b9050600186111561056d57600261053d60018861127e565b610547908861122a565b8e60400135610556919061122a565b610560919061126a565b61056a9082611241565b90505b81868e60c0013561057e919061122a565b610588919061122a565b6105929082611241565b905082868e606001356105a5919061122a565b6105af919061122a565b6105b99082611241565b90506105c98560808f013561122a565b6105d39082611241565b9050600185111561061b5760026105eb60018761127e565b6105f5908761122a565b8e60400135610604919061122a565b61060e919061126a565b6106189082611241565b90505b61062960a08e013582611241565b905061271061ffff168d61010001602081019061064691906111f0565b6106569061ffff16612710611241565b610660908361122a565b61066a919061126a565b96508660000361069057604051638c4fcd9360e01b8152600481018890526024016102a7565b5050505050509695505050505050565b60008360ff1660038111156106b7576106b761116c565b602086015190915063ffffffff166000036106e7578060405163286c068d60e11b81526004016102a79190611291565b60008363ffffffff161180156107095750602085015163ffffffff8481169116105b15610729578060405163010b971d60e31b81526004016102a79190611291565b60008263ffffffff161180156107485750845163ffffffff8381169116105b15610771578451604051630a4b6b6360e11b815263ffffffff90911660048201526024016102a7565b5050505050565b853585111561079d57604051630b99e87960e01b8152863560048201526024016102a7565b8535602087013510156107c95760405163174b5a0760e21b8152602087013560048201526024016102a7565b600083856107db8860208b013561127e565b6107e59190611241565b6107ef9190611241565b9050828110610328576040516313b783af60e21b8152600481018290526024016102a7565b60008160ff16600681111561082b5761082b61116c565b905060008160068111156108415761084161116c565b0361086657826001826040516337e1404160e01b81526004016102a793929190611196565b600581600681111561087a5761087a61116c565b0361089b5760405163462c7bed60e01b8152600481018490526024016102a7565b60068160068111156108af576108af61116c565b036108d057604051633de16e3560e11b8152600481018490526024016102a7565b505050565b6108e260208401846111d5565b63ffffffff16158061091a57506108fc60208401846111d5565b63ffffffff1661091260408501602086016111d5565b63ffffffff16105b1561093857604051634564ab9b60e01b815260040160405180910390fd5b61010061094b60408501602086016111d5565b63ffffffff16111561097057604051634564ab9b60e01b815260040160405180910390fd5b60008263ffffffff161180156109a0575063ffffffff821661099860408501602086016111d5565b63ffffffff16105b156109d1576109b560408401602085016111d5565b82604051633ccc4c2160e21b81526004016102a79291906112ab565b60008163ffffffff161180156109fe575063ffffffff81166109f660208501856111d5565b63ffffffff16105b156108d057610a1060208401846111d5565b8160405163156c4e5b60e11b81526004016102a79291906112ab565b611388610a41610120830161010084016111f0565b61ffff161115610a7d57610a5d610120820161010083016111f0565b6040516301027fc160e21b815261ffff90911660048201526024016102a7565b611388610a92610140830161012084016111f0565b61ffff161115610aae57610a5d610140820161012083016111f0565b612710610ac3610160830161014084016111f0565b61ffff161115610aff57610adf610160820161014083016111f0565b604051633239953960e01b815261ffff90911660048201526024016102a7565b612710610b14610180830161016084016111f0565b61ffff161115610b3057610adf610180820161016083016111f0565b612710610b456101a0830161018084016111f0565b61ffff161115610b6157610adf6101a0820161018083016111f0565b610b73610140820161012083016111f0565b61ffff1615801590610b9e57506000610b93610100830160e084016112c2565b6001600160a01b0316145b15610bbc5760405163015f92ff60e51b815260040160405180910390fd5b610bce6101e082016101c083016111d5565b63ffffffff16610be66101c083016101a084016111d5565b63ffffffff161015610c0b576040516392f55c6560e01b815260040160405180910390fd5b50565b6060826001600160401b03811115610c2857610c28610e28565b604051908082528060200260200182016040528015610c51578160200160208202803683370190505b5090506000610c60848661126a565b905060005b84811015610c935781838281518110610c8057610c806111bf565b6020908102919091010152600101610c65565b506000610ca0858361122a565b610caa908761127e565b90508015610ce6578083610cbe87876112eb565b81518110610cce57610cce6111bf565b60200260200101818151610ce29190611241565b9052505b50509392505050565b803560ff81168114610d0057600080fd5b919050565b60008060008060008060c08789031215610d1e57600080fd5b86359550610d2e60208801610cef565b95989597505050506040840135936060810135936080820135935060a0909101359150565b600060608284031215610d6557600080fd5b50919050565b60008060808385031215610d7e57600080fd5b610d888484610d53565b946060939093013593505050565b60006101e08284031215610d6557600080fd5b8060408101831015610dba57600080fd5b92915050565b6000806000806000806102e08789031215610dda57600080fd5b610de48888610d96565b9550610df4886101e08901610d53565b94506102408701359350610e0c886102608901610da9565b959894975092956102a0810135946102c0909101359350915050565b634e487b7160e01b600052604160045260246000fd5b803563ffffffff81168114610d0057600080fd5b60008060008060a08587031215610e6857600080fd5b85601f860112610e7757600080fd5b604080519081016001600160401b0381118282101715610e9957610e99610e28565b8060405250806040870188811115610eb057600080fd5b875b81811015610ed157610ec381610e3e565b835260209283019201610eb2565b50829650610ede81610cef565b9550505050610eef60608601610e3e565b9150610efd60808601610e3e565b905092959194509250565b60008060008060008060e08789031215610f2157600080fd5b610f2b8888610da9565b98604088013598506060880135976080810135975060a0810135965060c00135945092505050565b60008060408385031215610f6657600080fd5b82359150610f7660208401610cef565b90509250929050565b600080600060808486031215610f9457600080fd5b610f9e8585610da9565b9250610fac60408501610e3e565b9150610fba60608501610e3e565b90509250925092565b60006101e082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015161102660e08401826001600160a01b03169052565b5061010083015161103e61010084018261ffff169052565b5061012083015161105661012084018261ffff169052565b5061014083015161106e61014084018261ffff169052565b5061016083015161108661016084018261ffff169052565b5061018083015161109e61018084018261ffff169052565b506101a08301516110b86101a084018263ffffffff169052565b506101c08301516110d26101c084018263ffffffff169052565b5092915050565b60006101e082840312156110ec57600080fd5b6110f68383610d96565b9392505050565b60008060006060848603121561111257600080fd5b505081359360208301359350604090920135919050565b602080825282518282018190526000918401906040840190835b81811015611161578351835260209384019390920191600101611143565b509095945050505050565b634e487b7160e01b600052602160045260246000fd5b600781106111925761119261116c565b9052565b838152606081016111aa6020830185611182565b6111b76040830184611182565b949350505050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156111e757600080fd5b6110f682610e3e565b60006020828403121561120257600080fd5b813561ffff811681146110f657600080fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610dba57610dba611214565b80820180821115610dba57610dba611214565b634e487b7160e01b600052601260045260246000fd5b60008261127957611279611254565b500490565b81810381811115610dba57610dba611214565b60208101600483106112a5576112a561116c565b91905290565b63ffffffff92831681529116602082015260400190565b6000602082840312156112d457600080fd5b81356001600160a01b03811681146110f657600080fd5b6000826112fa576112fa611254565b50069056fea164736f6c634300081c000a"; readonly linkReferences: {}; readonly deployedLinkReferences: {}; readonly immutableReferences: {}; readonly inputSourceName: "project/contracts/lib/EnclavePricing.sol"; readonly buildInfoId: "solc-0_8_28-58b894a0ac77a2d784be77b69288a062b8f6f518"; }; import "hardhat/types/artifacts"; declare module "hardhat/types/artifacts" { interface ArtifactMap { ["EnclavePricing"]: EnclavePricing$Type; ["contracts/lib/EnclavePricing.sol:EnclavePricing"]: EnclavePricing$Type; } }