ETH Price: $1,664.68 (+0.36%)
 

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Transmit1528456042026-06-12 18:46:2511 hrs ago1781289985IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000215310.00002867
Withdraw Funds1528438502026-06-12 17:47:5712 hrs ago1781286477IN
0x4F70c323...Be5df4AEf
0 ETH0.000000011330.00010033
Cancel Upkeep1528437322026-06-12 17:44:0112 hrs ago1781286241IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000090170.00010033
Transmit1527687582026-06-11 0:04:532 days ago1781136293IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000942420.00005117
Transmit1527687552026-06-11 0:04:472 days ago1781136287IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000509360.00002998
Transmit1527687522026-06-11 0:04:412 days ago1781136281IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000262340.00002377
Transmit1527687482026-06-11 0:04:332 days ago1781136273IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000187590.00002307
Transmit1527687472026-06-11 0:04:312 days ago1781136271IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000516390.00002307
Transmit1527687442026-06-11 0:04:252 days ago1781136265IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000580330.00002998
Transmit1527687412026-06-11 0:04:192 days ago1781136259IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000498680.00002377
Transmit1527687382026-06-11 0:04:132 days ago1781136253IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000445190.00002172
Transmit1527687352026-06-11 0:04:072 days ago1781136247IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000518260.00002377
Transmit1527687352026-06-11 0:04:072 days ago1781136247IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000243110.00002377
Transmit1527687262026-06-11 0:03:492 days ago1781136229IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000623820.00003159
Transmit1527687242026-06-11 0:03:452 days ago1781136225IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000656060.00003364
Transmit1527687192026-06-11 0:03:352 days ago1781136215IN
0x4F70c323...Be5df4AEf
0 ETH0.000000053630.0000403
Transmit1527687162026-06-11 0:03:292 days ago1781136209IN
0x4F70c323...Be5df4AEf
0 ETH0.0000001075680.0000503
Transmit1527687132026-06-11 0:03:232 days ago1781136203IN
0x4F70c323...Be5df4AEf
0 ETH0.0000001070740.0000503
Transmit1527687132026-06-11 0:03:232 days ago1781136203IN
0x4F70c323...Be5df4AEf
0 ETH0.0000001004210.0000503
Transmit1527687102026-06-11 0:03:172 days ago1781136197IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000898370.0000503
Transmit1527687102026-06-11 0:03:172 days ago1781136197IN
0x4F70c323...Be5df4AEf
0 ETH0.0000001025730.0000503
Transmit1527687102026-06-11 0:03:172 days ago1781136197IN
0x4F70c323...Be5df4AEf
0 ETH0.0000001009890.0000503
Transmit1527687062026-06-11 0:03:092 days ago1781136189IN
0x4F70c323...Be5df4AEf
0 ETH0.0000001014270.0000503
Transmit1527687062026-06-11 0:03:092 days ago1781136189IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000936710.0000503
Transmit1527687032026-06-11 0:03:032 days ago1781136183IN
0x4F70c323...Be5df4AEf
0 ETH0.0000000583930.0000503
View all transactions

Latest 23 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
1528485552026-06-12 20:24:479 hrs ago1781295887
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1528439542026-06-12 17:51:2512 hrs ago1781286685
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1528120312026-06-12 0:07:1930 hrs ago1781222839
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1525567962026-06-06 2:19:297 days ago1780712369
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1521695302026-05-28 3:10:3716 days ago1779937837
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1509036192026-04-28 19:53:3545 days ago1777406015
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1499941622026-04-07 18:38:2166 days ago1775587101
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1492147812026-03-20 17:38:5984 days ago1774028339
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1468967612026-01-26 1:51:39138 days ago1769392299
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1431850222025-11-01 3:47:01224 days ago1761968821
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1385815942025-07-17 14:19:25330 days ago1752761965
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1385815482025-07-17 14:17:53330 days ago1752761873
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1385810652025-07-17 14:01:47330 days ago1752760907
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1385030702025-07-15 18:41:57332 days ago1752604917
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1385004992025-07-15 17:16:15332 days ago1752599775
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1385004962025-07-15 17:16:09332 days ago1752599769
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1385004932025-07-15 17:16:03332 days ago1752599763
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1384991712025-07-15 16:31:59332 days ago1752597119
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1378279632025-06-30 3:38:23348 days ago1751254703
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1378258452025-06-30 2:27:47348 days ago1751250467
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1376776512025-06-26 16:07:59351 days ago1750954079
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1373710892025-06-19 13:49:15358 days ago1750340955
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH
1373554312025-06-19 5:07:19359 days ago1750309639
0x4F70c323...Be5df4AEf
 Contract Creation0 ETH

Cross-Chain Transactions
Loading...
Loading
Source Code Verified Exact Match

Contract Name

AutomationRegistry2_3

Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled
Yes with 1000000 runs
Other Settings
default evmVersion
License
MIT
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API
[{"inputs":[{"internalType":"contract AutomationRegistryLogicA2_3","name":"logicA","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ArrayHasNoEntries","type":"error"},{"inputs":[],"name":"CannotCancel","type":"error"},{"inputs":[],"name":"CheckDataExceedsLimit","type":"error"},{"inputs":[],"name":"ConfigDigestMismatch","type":"error"},{"inputs":[],"name":"DuplicateEntry","type":"error"},{"inputs":[],"name":"DuplicateSigners","type":"error"},{"inputs":[],"name":"GasLimitCanOnlyIncrease","type":"error"},{"inputs":[],"name":"GasLimitOutsideRange","type":"error"},{"inputs":[],"name":"IncorrectNumberOfFaultyOracles","type":"error"},{"inputs":[],"name":"IncorrectNumberOfSignatures","type":"error"},{"inputs":[],"name":"IncorrectNumberOfSigners","type":"error"},{"inputs":[],"name":"IndexOutOfRange","type":"error"},{"inputs":[{"internalType":"uint256","name":"available","type":"uint256"},{"internalType":"uint256","name":"requested","type":"uint256"}],"name":"InsufficientBalance","type":"error"},{"inputs":[],"name":"InsufficientLinkLiquidity","type":"error"},{"inputs":[],"name":"InvalidDataLength","type":"error"},{"inputs":[],"name":"InvalidFeed","type":"error"},{"inputs":[],"name":"InvalidPayee","type":"error"},{"inputs":[],"name":"InvalidRecipient","type":"error"},{"inputs":[],"name":"InvalidReport","type":"error"},{"inputs":[],"name":"InvalidSigner","type":"error"},{"inputs":[],"name":"InvalidToken","type":"error"},{"inputs":[],"name":"InvalidTransmitter","type":"error"},{"inputs":[],"name":"InvalidTrigger","type":"error"},{"inputs":[],"name":"InvalidTriggerType","type":"error"},{"inputs":[],"name":"MigrationNotPermitted","type":"error"},{"inputs":[],"name":"MustSettleOffchain","type":"error"},{"inputs":[],"name":"MustSettleOnchain","type":"error"},{"inputs":[],"name":"NotAContract","type":"error"},{"inputs":[],"name":"OnlyActiveSigners","type":"error"},{"inputs":[],"name":"OnlyActiveTransmitters","type":"error"},{"inputs":[],"name":"OnlyCallableByAdmin","type":"error"},{"inputs":[],"name":"OnlyCallableByLINKToken","type":"error"},{"inputs":[],"name":"OnlyCallableByOwnerOrAdmin","type":"error"},{"inputs":[],"name":"OnlyCallableByOwnerOrRegistrar","type":"error"},{"inputs":[],"name":"OnlyCallableByPayee","type":"error"},{"inputs":[],"name":"OnlyCallableByProposedAdmin","type":"error"},{"inputs":[],"name":"OnlyCallableByProposedPayee","type":"error"},{"inputs":[],"name":"OnlyCallableByUpkeepPrivilegeManager","type":"error"},{"inputs":[],"name":"OnlyFinanceAdmin","type":"error"},{"inputs":[],"name":"OnlyPausedUpkeep","type":"error"},{"inputs":[],"name":"OnlySimulatedBackend","type":"error"},{"inputs":[],"name":"OnlyUnpausedUpkeep","type":"error"},{"inputs":[],"name":"ParameterLengthError","type":"error"},{"inputs":[],"name":"ReentrantCall","type":"error"},{"inputs":[],"name":"RegistryPaused","type":"error"},{"inputs":[],"name":"RepeatedSigner","type":"error"},{"inputs":[],"name":"RepeatedTransmitter","type":"error"},{"inputs":[{"internalType":"bytes","name":"reason","type":"bytes"}],"name":"TargetCheckReverted","type":"error"},{"inputs":[],"name":"TooManyOracles","type":"error"},{"inputs":[],"name":"TranscoderNotSet","type":"error"},{"inputs":[],"name":"TransferFailed","type":"error"},{"inputs":[],"name":"UpkeepAlreadyExists","type":"error"},{"inputs":[],"name":"UpkeepCancelled","type":"error"},{"inputs":[],"name":"UpkeepNotCanceled","type":"error"},{"inputs":[],"name":"UpkeepNotNeeded","type":"error"},{"inputs":[],"name":"ValueNotChanged","type":"error"},{"inputs":[],"name":"ZeroAddressNotAllowed","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"admin","type":"address"},{"indexed":false,"internalType":"bytes","name":"privilegeConfig","type":"bytes"}],"name":"AdminPrivilegeConfigSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"components":[{"internalType":"uint32","name":"gasFeePPB","type":"uint32"},{"internalType":"uint24","name":"flatFeeMilliCents","type":"uint24"}],"indexed":false,"internalType":"struct AutomationRegistryBase2_3.BillingOverrides","name":"overrides","type":"tuple"}],"name":"BillingConfigOverridden","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"BillingConfigOverrideRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"contract IERC20Metadata","name":"token","type":"address"},{"components":[{"internalType":"uint32","name":"gasFeePPB","type":"uint32"},{"internalType":"uint24","name":"flatFeeMilliCents","type":"uint24"},{"internalType":"contract AggregatorV3Interface","name":"priceFeed","type":"address"},{"internalType":"uint8","name":"decimals","type":"uint8"},{"internalType":"uint256","name":"fallbackPrice","type":"uint256"},{"internalType":"uint96","name":"minSpend","type":"uint96"}],"indexed":false,"internalType":"struct AutomationRegistryBase2_3.BillingConfig","name":"config","type":"tuple"}],"name":"BillingConfigSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"trigger","type":"bytes"}],"name":"CancelledUpkeepReport","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newModule","type":"address"}],"name":"ChainSpecificModuleUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint32","name":"previousConfigBlockNumber","type":"uint32"},{"indexed":false,"internalType":"bytes32","name":"configDigest","type":"bytes32"},{"indexed":false,"internalType":"uint64","name":"configCount","type":"uint64"},{"indexed":false,"internalType":"address[]","name":"signers","type":"address[]"},{"indexed":false,"internalType":"address[]","name":"transmitters","type":"address[]"},{"indexed":false,"internalType":"uint8","name":"f","type":"uint8"},{"indexed":false,"internalType":"bytes","name":"onchainConfig","type":"bytes"},{"indexed":false,"internalType":"uint64","name":"offchainConfigVersion","type":"uint64"},{"indexed":false,"internalType":"bytes","name":"offchainConfig","type":"bytes"}],"name":"ConfigSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"dedupKey","type":"bytes32"}],"name":"DedupKeyAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"assetAddress","type":"address"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"FeesWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint96","name":"amount","type":"uint96"}],"name":"FundsAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"address","name":"to","type":"address"}],"name":"FundsWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"trigger","type":"bytes"}],"name":"InsufficientFundsUpkeepReport","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"payees","type":"address[]"},{"indexed":false,"internalType":"uint256[]","name":"payments","type":"uint256[]"}],"name":"NOPsSettledOffchain","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"transmitters","type":"address[]"},{"indexed":false,"internalType":"address[]","name":"payees","type":"address[]"}],"name":"PayeesUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"transmitter","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"PayeeshipTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"transmitter","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"PayeeshipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"transmitter","type":"address"},{"indexed":true,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"address","name":"payee","type":"address"}],"name":"PaymentWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"trigger","type":"bytes"}],"name":"ReorgedUpkeepReport","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"trigger","type":"bytes"}],"name":"StaleUpkeepReport","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"configDigest","type":"bytes32"},{"indexed":false,"internalType":"uint32","name":"epoch","type":"uint32"}],"name":"Transmitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"UpkeepAdminTransferRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"UpkeepAdminTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":true,"internalType":"uint64","name":"atBlockHeight","type":"uint64"}],"name":"UpkeepCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"components":[{"internalType":"uint96","name":"gasChargeInBillingToken","type":"uint96"},{"internalType":"uint96","name":"premiumInBillingToken","type":"uint96"},{"internalType":"uint96","name":"gasReimbursementInJuels","type":"uint96"},{"internalType":"uint96","name":"premiumInJuels","type":"uint96"},{"internalType":"contract IERC20Metadata","name":"billingToken","type":"address"},{"internalType":"uint96","name":"linkUSD","type":"uint96"},{"internalType":"uint96","name":"nativeUSD","type":"uint96"},{"internalType":"uint96","name":"billingUSD","type":"uint96"}],"indexed":false,"internalType":"struct AutomationRegistryBase2_3.PaymentReceipt","name":"receipt","type":"tuple"}],"name":"UpkeepCharged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"newCheckData","type":"bytes"}],"name":"UpkeepCheckDataSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint96","name":"gasLimit","type":"uint96"}],"name":"UpkeepGasLimitSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"remainingBalance","type":"uint256"},{"indexed":false,"internalType":"address","name":"destination","type":"address"}],"name":"UpkeepMigrated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"offchainConfig","type":"bytes"}],"name":"UpkeepOffchainConfigSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"UpkeepPaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":true,"internalType":"bool","name":"success","type":"bool"},{"indexed":false,"internalType":"uint96","name":"totalPayment","type":"uint96"},{"indexed":false,"internalType":"uint256","name":"gasUsed","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"gasOverhead","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"trigger","type":"bytes"}],"name":"UpkeepPerformed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"privilegeConfig","type":"bytes"}],"name":"UpkeepPrivilegeConfigSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"startingBalance","type":"uint256"},{"indexed":false,"internalType":"address","name":"importedFrom","type":"address"}],"name":"UpkeepReceived","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"uint32","name":"performGas","type":"uint32"},{"indexed":false,"internalType":"address","name":"admin","type":"address"}],"name":"UpkeepRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"triggerConfig","type":"bytes"}],"name":"UpkeepTriggerConfigSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"UpkeepUnpaused","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"fallbackTo","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestConfigDetails","outputs":[{"internalType":"uint32","name":"configCount","type":"uint32"},{"internalType":"uint32","name":"blockNumber","type":"uint32"},{"internalType":"bytes32","name":"configDigest","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestConfigDigestAndEpoch","outputs":[{"internalType":"bool","name":"scanLogs","type":"bool"},{"internalType":"bytes32","name":"configDigest","type":"bytes32"},{"internalType":"uint32","name":"epoch","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"signers","type":"address[]"},{"internalType":"address[]","name":"transmitters","type":"address[]"},{"internalType":"uint8","name":"f","type":"uint8"},{"internalType":"bytes","name":"onchainConfigBytes","type":"bytes"},{"internalType":"uint64","name":"offchainConfigVersion","type":"uint64"},{"internalType":"bytes","name":"offchainConfig","type":"bytes"}],"name":"setConfig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"signers","type":"address[]"},{"internalType":"address[]","name":"transmitters","type":"address[]"},{"internalType":"uint8","name":"f","type":"uint8"},{"components":[{"internalType":"uint32","name":"checkGasLimit","type":"uint32"},{"internalType":"uint32","name":"maxPerformGas","type":"uint32"},{"internalType":"uint32","name":"maxCheckDataSize","type":"uint32"},{"internalType":"address","name":"transcoder","type":"address"},{"internalType":"bool","name":"reorgProtectionEnabled","type":"bool"},{"internalType":"uint24","name":"stalenessSeconds","type":"uint24"},{"internalType":"uint32","name":"maxPerformDataSize","type":"uint32"},{"internalType":"uint32","name":"maxRevertDataSize","type":"uint32"},{"internalType":"address","name":"upkeepPrivilegeManager","type":"address"},{"internalType":"uint16","name":"gasCeilingMultiplier","type":"uint16"},{"internalType":"address","name":"financeAdmin","type":"address"},{"internalType":"uint256","name":"fallbackGasPrice","type":"uint256"},{"internalType":"uint256","name":"fallbackLinkPrice","type":"uint256"},{"internalType":"uint256","name":"fallbackNativePrice","type":"uint256"},{"internalType":"address[]","name":"registrars","type":"address[]"},{"internalType":"contract IChainModule","name":"chainModule","type":"address"}],"internalType":"struct AutomationRegistryBase2_3.OnchainConfig","name":"onchainConfig","type":"tuple"},{"internalType":"uint64","name":"offchainConfigVersion","type":"uint64"},{"internalType":"bytes","name":"offchainConfig","type":"bytes"},{"internalType":"contract IERC20Metadata[]","name":"billingTokens","type":"address[]"},{"components":[{"internalType":"uint32","name":"gasFeePPB","type":"uint32"},{"internalType":"uint24","name":"flatFeeMilliCents","type":"uint24"},{"internalType":"contract AggregatorV3Interface","name":"priceFeed","type":"address"},{"internalType":"uint8","name":"decimals","type":"uint8"},{"internalType":"uint256","name":"fallbackPrice","type":"uint256"},{"internalType":"uint96","name":"minSpend","type":"uint96"}],"internalType":"struct AutomationRegistryBase2_3.BillingConfig[]","name":"billingConfigs","type":"tuple[]"}],"name":"setConfigTypeSafe","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[3]","name":"reportContext","type":"bytes32[3]"},{"internalType":"bytes","name":"rawReport","type":"bytes"},{"internalType":"bytes32[]","name":"rs","type":"bytes32[]"},{"internalType":"bytes32[]","name":"ss","type":"bytes32[]"},{"internalType":"bytes32","name":"rawVs","type":"bytes32"}],"name":"transmit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"typeAndVersion","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"}]
6101806040523480156200001257600080fd5b50604051620064b5380380620064b583398101604081905262000035916200062f565b80816001600160a01b031663ca30e6036040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000075573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009b91906200062f565b826001600160a01b031663226cf83c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200010091906200062f565b836001600160a01b031663614486af6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200013f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200016591906200062f565b846001600160a01b0316636709d0e56040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ca91906200062f565b856001600160a01b0316635425d8ac6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000209573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200022f91906200062f565b866001600160a01b031663a08714c06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200026e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029491906200062f565b876001600160a01b031663c5b964e06040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002d3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002f9919062000656565b886001600160a01b031663ac4dc59a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000338573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200035e91906200062f565b3380600081620003b55760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f7420736574206f776e657220746f207a65726f000000000000000060448201526064015b60405180910390fd5b600080546001600160a01b0319166001600160a01b0384811691909117909155811615620003e857620003e8816200056b565b5050506001600160a01b0380891660805287811660a05286811660c05285811660e052848116610100528316610120526025805483919060ff19166001838181111562000439576200043962000679565b0217905550806001600160a01b0316610140816001600160a01b03168152505060c0516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200049a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004c091906200068f565b60ff1660a0516001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000504573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200052a91906200068f565b60ff16146200054c576040516301f86e1760e41b815260040160405180910390fd5b5050506001600160a01b039095166101605250620006b4945050505050565b336001600160a01b03821603620005c55760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c660000000000000000006044820152606401620003ac565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b6001600160a01b03811681146200062c57600080fd5b50565b6000602082840312156200064257600080fd5b81516200064f8162000616565b9392505050565b6000602082840312156200066957600080fd5b8151600281106200064f57600080fd5b634e487b7160e01b600052602160045260246000fd5b600060208284031215620006a257600080fd5b815160ff811681146200064f57600080fd5b60805160a05160c05160e05161010051610120516101405161016051615d9d620007186000396000818160b301526101860152600050506000505060005050600050506000613730015260005050600081816113710152612d590152615d9d6000f3fe6080604052600436106100b15760003560e01c80638da5cb5b11610069578063b1dc65a41161004e578063b1dc65a4146102cb578063e3d0e712146102eb578063f2fde38b1461030b576100b1565b80638da5cb5b1461025a578063afcb95d714610285576100b1565b8063349e8cca1161009a578063349e8cca1461017757806379ba5097146101cb57806381ff7048146101e0576100b1565b80630870d3a1146100f8578063181f5a7714610118575b7f00000000000000000000000000000000000000000000000000000000000000003660008037600080366000845af43d6000803e8080156100f1573d6000f35b3d6000fd5b005b34801561010457600080fd5b506100f6610113366004614b11565b61032b565b34801561012457600080fd5b506101616040518060400160405280601881526020017f4175746f6d6174696f6e526567697374727920322e332e30000000000000000081525081565b60405161016e9190614c8d565b60405180910390f35b34801561018357600080fd5b507f00000000000000000000000000000000000000000000000000000000000000005b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161016e565b3480156101d757600080fd5b506100f6610c0f565b3480156101ec57600080fd5b5061023760175460135463ffffffff74010000000000000000000000000000000000000000830481169378010000000000000000000000000000000000000000000000009093041691565b6040805163ffffffff94851681529390921660208401529082015260600161016e565b34801561026657600080fd5b5060005473ffffffffffffffffffffffffffffffffffffffff166101a6565b34801561029157600080fd5b50601354601454604080516000815260208101939093526c0100000000000000000000000090910463ffffffff169082015260600161016e565b3480156102d757600080fd5b506100f66102e6366004614cec565b610d11565b3480156102f757600080fd5b506100f6610306366004614dd1565b611051565b34801561031757600080fd5b506100f6610326366004614e9e565b61108b565b61033361109f565b601f8851111561036f576040517f25d0209c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8560ff166000036103ac576040517fe77dba5600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b865188511415806103cb57506103c3866003614eea565b60ff16885111155b15610402576040517f1d2d1c5800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805182511461043d576040517fcf54c06a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104478282611122565b610451888861175a565b604051806101200160405280601460000160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff168152602001600063ffffffff1681526020018660a0015162ffffff16815260200186610120015161ffff1681526020018760ff168152602001601460000160169054906101000a900460ff1615158152602001601460000160179054906101000a900460ff1615158152602001866080015115158152602001866101e0015173ffffffffffffffffffffffffffffffffffffffff16815250601460008201518160000160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550602082015181600001600c6101000a81548163ffffffff021916908363ffffffff16021790555060408201518160000160106101000a81548162ffffff021916908362ffffff16021790555060608201518160000160136101000a81548161ffff021916908361ffff16021790555060808201518160000160156101000a81548160ff021916908360ff16021790555060a08201518160000160166101000a81548160ff02191690831515021790555060c08201518160000160176101000a81548160ff02191690831515021790555060e08201518160000160186101000a81548160ff0219169083151502179055506101008201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050506000601660010160189054906101000a900463ffffffff1690506000866101e0015173ffffffffffffffffffffffffffffffffffffffff166357e871e76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610701573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107259190614f06565b6017549091506000906107579074010000000000000000000000000000000000000000900463ffffffff166001614f1f565b9050604051806101600160405280896060015173ffffffffffffffffffffffffffffffffffffffff168152602001896000015163ffffffff168152602001896020015163ffffffff1681526020016016600001601c9054906101000a900463ffffffff1663ffffffff16815260200189610100015173ffffffffffffffffffffffffffffffffffffffff1681526020018263ffffffff1681526020018363ffffffff168152602001896040015163ffffffff16815260200189610140015173ffffffffffffffffffffffffffffffffffffffff1681526020018960c0015163ffffffff1681526020018960e0015163ffffffff16815250601660008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a81548163ffffffff021916908363ffffffff16021790555060408201518160000160186101000a81548163ffffffff021916908363ffffffff160217905550606082015181600001601c6101000a81548163ffffffff021916908363ffffffff16021790555060808201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060a08201518160010160146101000a81548163ffffffff021916908363ffffffff16021790555060c08201518160010160186101000a81548163ffffffff021916908363ffffffff16021790555060e082015181600101601c6101000a81548163ffffffff021916908363ffffffff1602179055506101008201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101208201518160020160146101000a81548163ffffffff021916908363ffffffff1602179055506101408201518160020160186101000a81548163ffffffff021916908363ffffffff160217905550905050876101600151601981905550876101800151601a81905550876101a00151601b81905550600088604051602001610a9a9190614f8d565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018152919052601754909150610aff904690309074010000000000000000000000000000000000000000900463ffffffff168f8f8f878f8f611e19565b6013556000610b0e6009611ec3565b90505b8015610b4b57610b38610b30610b28600184615113565b600990611ed3565b600990611ee6565b5080610b4381615126565b915050610b11565b5060005b896101c0015151811015610ba257610b8f8a6101c001518281518110610b7757610b7761515b565b60200260200101516009611f0890919063ffffffff16565b5080610b9a8161518a565b915050610b4f565b507f1591690b8638f5fb2dbec82ac741805ac5da8b45dc5263f4875b0496fdce4e0584601354601660010160149054906101000a900463ffffffff168f8f8f878f8f604051610bf9999897969594939291906151c2565b60405180910390a1505050505050505050505050565b60015473ffffffffffffffffffffffffffffffffffffffff163314610c95576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e65720000000000000000000060448201526064015b60405180910390fd5b60008054337fffffffffffffffffffffffff00000000000000000000000000000000000000008083168217845560018054909116905560405173ffffffffffffffffffffffffffffffffffffffff90921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b60005a90506000610d23866040615258565b610d2f8961014461526f565b610d39919061526f565b9050368114610d74576040517fdfe9309000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051610120810182526014546bffffffffffffffffffffffff8116825263ffffffff6c01000000000000000000000000820416602083015262ffffff7001000000000000000000000000000000008204169282019290925261ffff730100000000000000000000000000000000000000830416606082015260ff75010000000000000000000000000000000000000000008304811660808301527601000000000000000000000000000000000000000000008304811615801560a08401527701000000000000000000000000000000000000000000000084048216151560c0840152780100000000000000000000000000000000000000000000000090930416151560e082015260155473ffffffffffffffffffffffffffffffffffffffff1661010082015290610ed3576040517f24522f3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b336000908152600b602052604090205460ff16610f1c576040517f1099ed7500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6013548b3514610f58576040517fdfdcf8e700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6080810151610f68906001615282565b60ff1687141580610f795750868514155b15610fb0576040517f0244f71a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610fc08b8b8b8b8b8b8b8b611f2a565b6000610fcc8b8b612193565b905060208c0135600881901c63ffffffff16610fe984848861224c565b836020015163ffffffff168163ffffffff16111561104157601480547fffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffffff166c0100000000000000000000000063ffffffff8416021790555b5050505050505050505050505050565b60008060008580602001905181019061106a9190615408565b925092509250611080898989868989888861032b565b505050505050505050565b61109361109f565b61109c81612dcf565b50565b60005473ffffffffffffffffffffffffffffffffffffffff163314611120576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e6572000000000000000000006044820152606401610c8c565b565b60005b6024548110156111e05760226000602483815481106111465761114661515b565b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181019190915560020180547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169055806111d88161518a565b915050611125565b506111ed60246000614565565b60255460ff1660005b83518110156117545760008482815181106112135761121361515b565b6020026020010151905060008483815181106112315761123161515b565b602002602001015190508173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112aa91906155b3565b60ff16816060015160ff161415806113385750806040015173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561130c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061133091906155b3565b60ff16600814155b1561136f576040517fc1ab6dc100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480156113db575060018460018111156113d9576113d96155d0565b145b15611412576040517fc1ab6dc100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8216158061144d5750604081015173ffffffffffffffffffffffffffffffffffffffff16155b15611484576040517f8579befe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff828116600090815260226020526040902054670100000000000000900416156114ee576040517f357d0cc400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6024805460018181019092557f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec401805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216821790925560008181526022602090815260409182902086518154928801518489015160608a015160ff167b01000000000000000000000000000000000000000000000000000000027fffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff9190981667010000000000000002167fffffffff000000000000000000000000000000000000000000ffffffffffffff62ffffff909216640100000000027fffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000090951663ffffffff9093169290921793909317929092169190911793909317835560808501519383019390935560a0840151600290920180546bffffffffffffffffffffffff9093167fffffffffffffffffffffffffffffffffffffffff0000000000000000000000009093169290921790915590517fca93cbe727c73163ec538f71be6c0a64877d7f1f6dd35d5ca7cbaef3a3e34ba390611737908490600060c08201905063ffffffff835116825262ffffff602084015116602083015273ffffffffffffffffffffffffffffffffffffffff604084015116604083015260ff6060840151166060830152608083015160808301526bffffffffffffffffffffffff60a08401511660a083015292915050565b60405180910390a25050808061174c9061518a565b9150506111f6565b50505050565b600e546014546bffffffffffffffffffffffff1660005b600e548110156117cd576117ba600e82815481106117915761179161515b565b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff168385612ec4565b50806117c58161518a565b915050611771565b5060255460009060ff16815b600e5481101561193e57600e81815481106117f6576117f661515b565b6000918252602082200154600d805473ffffffffffffffffffffffffffffffffffffffff9092169550600c9291849081106118335761183361515b565b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff9081168452838201949094526040928301822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001690559286168152600b909252902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560018260018111156118d5576118d56155d0565b14801561191a575073ffffffffffffffffffffffffffffffffffffffff83166000908152600b60205260409020546201000090046bffffffffffffffffffffffff1615155b1561192c5761192a600f84611f08565b505b806119368161518a565b9150506117d9565b5061194b600d6000614565565b611957600e6000614565565b6040805160808101825260008082526020820181905291810182905260608101829052905b8751811015611de757600c600089838151811061199b5761199b61515b565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040016000205460ff1615611a06576040517f77cea0fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16888281518110611a3057611a3061515b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603611a85576040517f815e1d6400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405180604001604052806001151581526020018260ff16815250600c60008a8481518110611ab657611ab661515b565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528181019290925260400160002082518154939092015160ff16610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff921515929092167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092171790558651879082908110611b5e57611b5e61515b565b60200260200101519350600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611bce576040517f58a70a0a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166000908152600b60209081526040918290208251608081018452905460ff80821615801584526101008304909116938301939093526bffffffffffffffffffffffff6201000082048116948301949094526e01000000000000000000000000000090049092166060830152909250611c89576040517f6a7281ad00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180835260ff80831660208086019182526014546bffffffffffffffffffffffff9081166060880190815273ffffffffffffffffffffffffffffffffffffffff8a166000908152600b909352604092839020885181549551948a0151925184166e010000000000000000000000000000027fffffffffffff000000000000000000000000ffffffffffffffffffffffffffff939094166201000002929092167fffffffffffff000000000000000000000000000000000000000000000000ffff94909616610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff921515929092167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000090951694909417179190911692909217919091179055836001811115611dc357611dc36155d0565b03611dd557611dd3600f85611ee6565b505b80611ddf8161518a565b91505061197c565b508651611dfb90600d9060208a0190614583565b508551611e0f90600e906020890190614583565b5050505050505050565b6000808a8a8a8a8a8a8a8a8a604051602001611e3d999897969594939291906155ff565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001815291905280516020909101207dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e01000000000000000000000000000000000000000000000000000000000000179b9a5050505050505050505050565b6000611ecd825490565b92915050565b6000611edf83836130cc565b9392505050565b6000611edf8373ffffffffffffffffffffffffffffffffffffffff84166130f6565b6000611edf8373ffffffffffffffffffffffffffffffffffffffff84166131f0565b60008787604051611f3c929190615694565b604051908190038120611f53918b906020016156a4565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815282825280516020918201208383019092526000808452908301819052909250906000805b8881101561212a57600185878360208110611fbf57611fbf61515b565b611fcc91901a601b615282565b8c8c85818110611fde57611fde61515b565b905060200201358b8b86818110611ff757611ff761515b565b9050602002013560405160008152602001604052604051612034949392919093845260ff9290921660208401526040830152606082015260800190565b6020604051602081039080840390855afa158015612056573d6000803e3d6000fd5b5050604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081015173ffffffffffffffffffffffffffffffffffffffff81166000908152600c602090815290849020838501909452925460ff8082161515808552610100909204169383019390935290955093509050612104576040517f0f4c073700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b826020015160080260ff166001901b8401935080806121229061518a565b915050611fa2565b50827e01010101010101010101010101010101010101010101010101010101010101841614612185576040517fc103be2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050505050505050565b6121cc6040518060c001604052806000815260200160008152602001606081526020016060815260200160608152602001606081525090565b60006121da83850185615795565b60408101515160608201515191925090811415806121fd57508082608001515114155b8061220d5750808260a001515114155b15612244576040517fb55ac75400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b509392505050565b600082604001515167ffffffffffffffff81111561226c5761226c61461a565b60405190808252806020026020018201604052801561233857816020015b6040805161020081018252600060e08201818152610100830182905261012083018290526101408301829052610160830182905261018083018290526101a083018290526101c083018290526101e0830182905282526020808301829052928201819052606082018190526080820181905260a0820181905260c082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90920191018161228a5790505b50905060006040518060800160405280600061ffff16815260200160006bffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff16815260200160008152509050600085610100015173ffffffffffffffffffffffffffffffffffffffff166357e871e76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123fa9190614f06565b6101008701516040517f7810d12a00000000000000000000000000000000000000000000000000000000815236600482015291925060009173ffffffffffffffffffffffffffffffffffffffff90911690637810d12a90602401602060405180830381865afa158015612471573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124959190614f06565b905060005b8660400151518110156129255760046000886040015183815181106124c1576124c161515b565b6020908102919091018101518252818101929092526040908101600020815161012081018352815460ff8082161515835261010080830490911615159583019590955263ffffffff620100008204811694830194909452660100000000000081048416606083015273ffffffffffffffffffffffffffffffffffffffff6a01000000000000000000009091048116608083015260018301546fffffffffffffffffffffffffffffffff811660a08401526bffffffffffffffffffffffff70010000000000000000000000000000000082041660c08401527c0100000000000000000000000000000000000000000000000000000000900490931660e08201526002909101549091169181019190915285518690839081106125e4576125e461515b565b6020026020010151600001819052506126198760400151828151811061260c5761260c61515b565b602002602001015161323f565b85828151811061262b5761262b61515b565b6020026020010151606001906001811115612648576126486155d0565b9081600181111561265b5761265b6155d0565b815250506126bf876040015182815181106126785761267861515b565b602002602001015184896080015184815181106126975761269761515b565b60200260200101518885815181106126b1576126b161515b565b60200260200101518c6132ea565b8683815181106126d1576126d161515b565b60200260200101516020018784815181106126ee576126ee61515b565b602002602001015160c00182815250821515151581525050508481815181106127195761271961515b565b602002602001015160200151156127495760018460000181815161273d9190615882565b61ffff1690525061274e565b612913565b6127b48582815181106127635761276361515b565b60200260200101516000015160800151886060015183815181106127895761278961515b565b60200260200101518960a0015184815181106127a7576127a761515b565b6020026020010151613409565b8683815181106127c6576127c661515b565b60200260200101516040018784815181106127e3576127e361515b565b602002602001015160800182815250821515151581525050508760800151600161280d9190615282565b61281b9060ff166040615258565b6103a48860a0015183815181106128345761283461515b565b602002602001015151612847919061526f565b612851919061526f565b8582815181106128635761286361515b565b602002602001015160a00181815250508481815181106128855761288561515b565b602002602001015160a00151846060018181516128a2919061526f565b90525084518590829081106128b9576128b961515b565b602002602001015160800151866128d09190615113565b9550612913876040015182815181106128eb576128eb61515b565b6020026020010151848784815181106129065761290661515b565b6020026020010151613624565b8061291d8161518a565b91505061249a565b50825161ffff1660000361293c5750505050505050565b61c73861294a366010615258565b5a6129559088615113565b61295f919061526f565b612969919061526f565b8351909550613a34906129809061ffff16876158cc565b61298a919061526f565b60408051608081018252600080825260208201819052918101829052606081018290529196506129b989613729565b905060005b886040015151811015612c68578681815181106129dd576129dd61515b565b60200260200101516020015115612c5657612a1a8a888381518110612a0457612a0461515b565b6020026020010151600001516101000151613813565b92506000612b3a8b6040518061012001604052808b8681518110612a4057612a4061515b565b60200260200101516080015181526020018c81526020018a606001518c8781518110612a6e57612a6e61515b565b602002602001015160a001518a612a859190615258565b612a8f91906158cc565b81526020018d6000015181526020018d6020015181526020018681526020018b8681518110612ac057612ac061515b565b602002602001015160000151610100015173ffffffffffffffffffffffffffffffffffffffff168152602001878152602001600115158152508c604001518581518110612b0f57612b0f61515b565b60200260200101518b8681518110612b2957612b2961515b565b60200260200101516000015161398f565b9050806060015187604001818151612b5291906158e0565b6bffffffffffffffffffffffff169052506040810151602088018051612b799083906158e0565b6bffffffffffffffffffffffff169052508751889083908110612b9e57612b9e61515b565b60200260200101516040015115158a604001518381518110612bc257612bc261515b565b60200260200101517fad8cc9579b21dfe2c2f6ea35ba15b656e46b4f5b0cb424f52739b8ce5cac9c5b83602001518460000151612bff91906158e0565b8b8681518110612c1157612c1161515b565b6020026020010151608001518d8f608001518881518110612c3457612c3461515b565b6020026020010151604051612c4c9493929190615905565b60405180910390a3505b80612c608161518a565b9150506129be565b505050602083810151336000908152600b90925260409091208054600290612ca59084906201000090046bffffffffffffffffffffffff166158e0565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508260400151601460000160008282829054906101000a90046bffffffffffffffffffffffff16612d0391906158e0565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555082604001518360200151612d4591906158e0565b6bffffffffffffffffffffffff16602160007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612dc1919061526f565b909155505050505050505050565b3373ffffffffffffffffffffffffffffffffffffffff821603612e4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c660000000000000000006044820152606401610c8c565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600b602090815260408083208151608081018352905460ff80821615801584526101008304909116948301949094526bffffffffffffffffffffffff6201000082048116938301939093526e01000000000000000000000000000090049091166060820152906130c0576000816060015185612f5c9190615942565b90506000612f6a8583615967565b90508083604001818151612f7e91906158e0565b6bffffffffffffffffffffffff16905250612f998582615992565b83606001818151612faa91906158e0565b6bffffffffffffffffffffffff90811690915273ffffffffffffffffffffffffffffffffffffffff89166000908152600b602090815260409182902087518154928901519389015160608a015186166e010000000000000000000000000000027fffffffffffff000000000000000000000000ffffffffffffffffffffffffffff919096166201000002167fffffffffffff000000000000000000000000000000000000000000000000ffff60ff95909516610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff921515929092167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909416939093171792909216179190911790555050505b60400151949350505050565b60008260000182815481106130e3576130e361515b565b9060005260206000200154905092915050565b600081815260018301602052604081205480156131df57600061311a600183615113565b855490915060009061312e90600190615113565b905081811461319357600086600001828154811061314e5761314e61515b565b90600052602060002001549050808760000184815481106131715761317161515b565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806131a4576131a46159c2565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611ecd565b6000915050611ecd565b5092915050565b600081815260018301602052604081205461323757508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611ecd565b506000611ecd565b6000818160045b600f8110156132cc577fff0000000000000000000000000000000000000000000000000000000000000082168382602081106132845761328461515b565b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146132ba57506000949350505050565b806132c48161518a565b915050613246565b5081600f1a60018111156132e2576132e26155d0565b949350505050565b600080808085606001516001811115613305576133056155d0565b0361332b576133178888888888613dfe565b613326576000925090506133ff565b6133a3565b600185606001516001811115613343576133436155d0565b0361337157600061335689898988613f88565b925090508061336b57506000925090506133ff565b506133a3565b6040517ff2b2d41200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84516060015163ffffffff1687106133f857877fc3237c8807c467c1b39b8d0395eff077313e691bf0a7388106792564ebfd5636876040516133e59190614c8d565b60405180910390a26000925090506133ff565b6001925090505b9550959350505050565b601454600090819077010000000000000000000000000000000000000000000000900460ff1615613466576040517f37ed32e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b601480547fffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff16770100000000000000000000000000000000000000000000001790556040517f4585e33b00000000000000000000000000000000000000000000000000000000906134db908590602401614c8d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290517f79188d1600000000000000000000000000000000000000000000000000000000815290935073ffffffffffffffffffffffffffffffffffffffff8616906379188d16906135ae90879087906004016159f1565b60408051808303816000875af11580156135cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135f09190615a0a565b601480547fffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff16905590969095509350505050565b60008160600151600181111561363c5761363c6155d0565b036136a057600083815260046020526040902060010180547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000063ffffffff851602179055505050565b6001816060015160018111156136b8576136b86155d0565b036137245760c08101805160009081526008602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055915191517fa4a4e334c0e330143f9437484fe516c13bc560b86b5b0daf58e7084aaac228f29190a25b505050565b60008060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015613799573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137bd9190615a52565b509350509250506000821315806137d357508042105b8061380357506000846040015162ffffff1611801561380357506137f78142615113565b846040015162ffffff16105b156131e9575050601b5492915050565b60408051608081018252600080825260208083018281528385018381526060850184905273ffffffffffffffffffffffffffffffffffffffff878116855260229093528584208054640100000000810462ffffff1690925263ffffffff82169092527b01000000000000000000000000000000000000000000000000000000810460ff16855285517ffeaf968c00000000000000000000000000000000000000000000000000000000815295519495919484936701000000000000009092049091169163feaf968c9160048083019260a09291908290030181865afa158015613900573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139249190615a52565b5093505092505060008213158061393a57508042105b8061396a57506000866040015162ffffff1611801561396a575061395e8142615113565b866040015162ffffff16105b1561397e5760018301546060850152613986565b606084018290525b50505092915050565b604080516101008101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201529082015115613a255760008381526023602090815260409182902082518084018452905463ffffffff811680835262ffffff640100000000909204821692840192835260e089018051909401529051915191169101525b6000613a318686614195565b60c0840151602082015182519293509091600091613a4e916158e0565b60e08801515190915060ff16600060128210613a6b576001613a81565b613a76826012615113565b613a8190600a615bc2565b9050600060128311613a94576001613aaa565b613a9f601284615113565b613aaa90600a615bc2565b905085600001516bffffffffffffffffffffffff16856bffffffffffffffffffffffff161015613b5257849350613b26818b60800151613aea9190615258565b838c60e0015160600151886bffffffffffffffffffffffff16613b0d9190615258565b613b179190615258565b613b2191906158cc565b6144c3565b6bffffffffffffffffffffffff9081166040880152600060608801819052602088015285168652613c78565b836bffffffffffffffffffffffff16856bffffffffffffffffffffffff161015613c7857849350613be086604001516bffffffffffffffffffffffff16828c60800151613b9f9190615258565b848d60e0015160600151896bffffffffffffffffffffffff16613bc29190615258565b613bcc9190615258565b613bd691906158cc565b613b219190615113565b6bffffffffffffffffffffffff1660608088019190915260e08b01510151613c6490613c0d908490615258565b6001848d60e0015160600151613c239190615258565b613c2d9190615113565b838d608001518a606001516bffffffffffffffffffffffff16613c509190615258565b613c5a9190615258565b613b17919061526f565b6bffffffffffffffffffffffff1660208701525b60008981526004602052604090206001018054859190601090613cbe90849070010000000000000000000000000000000090046bffffffffffffffffffffffff16615942565b82546101009290920a6bffffffffffffffffffffffff81810219909316918316021790915560008b81526004602052604081206001018054928816935091613d199084906fffffffffffffffffffffffffffffffff16615bce565b92506101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550836bffffffffffffffffffffffff16602160008c60c0015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254613db09190615113565b92505081905550887f801ba6ed51146ffe3e99d1dbd9dd0f4de6292e78a9a34c39c0183de17b3f40fc87604051613de79190615bf7565b60405180910390a250939998505050505050505050565b60008084806020019051810190613e159190615cb7565b845160e00151815191925063ffffffff90811691161015613e7257867f405288ea7be309e16cfdf481367f90a413e1d4634fcdaf8966546db9b93012e886604051613e609190614c8d565b60405180910390a26000915050613f7f565b8260e001518015613f325750602081015115801590613f325750602081015161010084015182516040517f85df51fd00000000000000000000000000000000000000000000000000000000815263ffffffff909116600482015273ffffffffffffffffffffffffffffffffffffffff909116906385df51fd90602401602060405180830381865afa158015613f0b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f2f9190614f06565b14155b80613f445750805163ffffffff168611155b15613f7957867f6aa7f60c176da7af894b384daea2249497448137f5943c1237ada8bc92bdc30186604051613e609190614c8d565b60019150505b95945050505050565b600080600084806020019051810190613fa19190615d0f565b905060008782600001518360200151846040015160405160200161400394939291909384526020840192909252604083015260e01b7fffffffff0000000000000000000000000000000000000000000000000000000016606082015260640190565b6040516020818303038152906040528051906020012090508460e0015180156140de57506080820151158015906140de5750608082015161010086015160608401516040517f85df51fd00000000000000000000000000000000000000000000000000000000815263ffffffff909116600482015273ffffffffffffffffffffffffffffffffffffffff909116906385df51fd90602401602060405180830381865afa1580156140b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140db9190614f06565b14155b806140f3575086826060015163ffffffff1610155b1561413d57877f6aa7f60c176da7af894b384daea2249497448137f5943c1237ada8bc92bdc301876040516141289190614c8d565b60405180910390a260009350915061418c9050565b60008181526008602052604090205460ff161561418457877f405288ea7be309e16cfdf481367f90a413e1d4634fcdaf8966546db9b93012e8876040516141289190614c8d565b600193509150505b94509492505050565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915260008260e001516000015160ff1690506000846060015161ffff1684606001516142009190615258565b905083610100015180156142135750803a105b1561421b57503a5b60006012831161422c576001614242565b614237601284615113565b61424290600a615bc2565b905060006012841061425557600161426b565b614260846012615113565b61426b90600a615bc2565b905060008660a0015187604001518860200151896000015161428d919061526f565b6142979087615258565b6142a1919061526f565b6142ab9190615258565b90506142ee828860e00151606001516142c49190615258565b6001848a60e00151606001516142da9190615258565b6142e49190615113565b613c5a8685615258565b6bffffffffffffffffffffffff168652608087015161431190613b2190836158cc565b6bffffffffffffffffffffffff1660408088019190915260e0880151015160009061434a9062ffffff16683635c9adc5dea00000615258565b9050600081633b9aca008a60a001518b60e001516020015163ffffffff168c604001518d600001518b61437d9190615258565b614387919061526f565b6143919190615258565b61439b9190615258565b6143a591906158cc565b6143af919061526f565b90506143f2848a60e00151606001516143c89190615258565b6001868c60e00151606001516143de9190615258565b6143e89190615113565b613c5a8885615258565b6bffffffffffffffffffffffff166020890152608089015161441890613b2190836158cc565b6bffffffffffffffffffffffff16606089015260c089015173ffffffffffffffffffffffffffffffffffffffff166080808a019190915289015161445b906144c3565b6bffffffffffffffffffffffff1660a0808a019190915289015161447e906144c3565b6bffffffffffffffffffffffff1660c089015260e0890151606001516144a3906144c3565b6bffffffffffffffffffffffff1660e08901525050505050505092915050565b60006bffffffffffffffffffffffff821115614561576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203960448201527f36206269747300000000000000000000000000000000000000000000000000006064820152608401610c8c565b5090565b508054600082559060005260206000209081019061109c9190614605565b8280548282559060005260206000209081019282156145fd579160200282015b828111156145fd57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9091161782556020909201916001909101906145a3565b506145619291505b5b808211156145615760008155600101614606565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051610200810167ffffffffffffffff8111828210171561466d5761466d61461a565b60405290565b60405160c0810167ffffffffffffffff8111828210171561466d5761466d61461a565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156146dd576146dd61461a565b604052919050565b600067ffffffffffffffff8211156146ff576146ff61461a565b5060051b60200190565b73ffffffffffffffffffffffffffffffffffffffff8116811461109c57600080fd5b803561473681614709565b919050565b600082601f83011261474c57600080fd5b8135602061476161475c836146e5565b614696565b82815260059290921b8401810191818101908684111561478057600080fd5b8286015b848110156147a457803561479781614709565b8352918301918301614784565b509695505050505050565b60ff8116811461109c57600080fd5b8035614736816147af565b63ffffffff8116811461109c57600080fd5b8035614736816147c9565b801515811461109c57600080fd5b8035614736816147e6565b62ffffff8116811461109c57600080fd5b8035614736816147ff565b61ffff8116811461109c57600080fd5b80356147368161481b565b6000610200828403121561484957600080fd5b614851614649565b905061485c826147db565b815261486a602083016147db565b602082015261487b604083016147db565b604082015261488c6060830161472b565b606082015261489d608083016147f4565b60808201526148ae60a08301614810565b60a08201526148bf60c083016147db565b60c08201526148d060e083016147db565b60e08201526101006148e381840161472b565b908201526101206148f583820161482b565b9082015261014061490783820161472b565b90820152610160828101359082015261018080830135908201526101a080830135908201526101c08083013567ffffffffffffffff81111561494857600080fd5b6149548582860161473b565b8284015250506101e061496881840161472b565b9082015292915050565b803567ffffffffffffffff8116811461473657600080fd5b600082601f83011261499b57600080fd5b813567ffffffffffffffff8111156149b5576149b561461a565b6149e660207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601614696565b8181528460208386010111156149fb57600080fd5b816020850160208301376000918101602001919091529392505050565b6bffffffffffffffffffffffff8116811461109c57600080fd5b600082601f830112614a4357600080fd5b81356020614a5361475c836146e5565b82815260c09283028501820192828201919087851115614a7257600080fd5b8387015b85811015614b045781818a031215614a8e5760008081fd5b614a96614673565b8135614aa1816147c9565b815281860135614ab0816147ff565b81870152604082810135614ac381614709565b90820152606082810135614ad6816147af565b908201526080828101359082015260a080830135614af381614a18565b908201528452928401928101614a76565b5090979650505050505050565b600080600080600080600080610100898b031215614b2e57600080fd5b883567ffffffffffffffff80821115614b4657600080fd5b614b528c838d0161473b565b995060208b0135915080821115614b6857600080fd5b614b748c838d0161473b565b9850614b8260408c016147be565b975060608b0135915080821115614b9857600080fd5b614ba48c838d01614836565b9650614bb260808c01614972565b955060a08b0135915080821115614bc857600080fd5b614bd48c838d0161498a565b945060c08b0135915080821115614bea57600080fd5b614bf68c838d0161473b565b935060e08b0135915080821115614c0c57600080fd5b50614c198b828c01614a32565b9150509295985092959890939650565b6000815180845260005b81811015614c4f57602081850181015186830182015201614c33565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081526000611edf6020830184614c29565b60008083601f840112614cb257600080fd5b50813567ffffffffffffffff811115614cca57600080fd5b6020830191508360208260051b8501011115614ce557600080fd5b9250929050565b60008060008060008060008060e0898b031215614d0857600080fd5b606089018a811115614d1957600080fd5b8998503567ffffffffffffffff80821115614d3357600080fd5b818b0191508b601f830112614d4757600080fd5b813581811115614d5657600080fd5b8c6020828501011115614d6857600080fd5b6020830199508098505060808b0135915080821115614d8657600080fd5b614d928c838d01614ca0565b909750955060a08b0135915080821115614dab57600080fd5b50614db88b828c01614ca0565b999c989b50969995989497949560c00135949350505050565b60008060008060008060c08789031215614dea57600080fd5b863567ffffffffffffffff80821115614e0257600080fd5b614e0e8a838b0161473b565b97506020890135915080821115614e2457600080fd5b614e308a838b0161473b565b9650614e3e60408a016147be565b95506060890135915080821115614e5457600080fd5b614e608a838b0161498a565b9450614e6e60808a01614972565b935060a0890135915080821115614e8457600080fd5b50614e9189828a0161498a565b9150509295509295509295565b600060208284031215614eb057600080fd5b8135611edf81614709565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60ff81811683821602908116908181146131e9576131e9614ebb565b600060208284031215614f1857600080fd5b5051919050565b63ffffffff8181168382160190808211156131e9576131e9614ebb565b600081518084526020808501945080840160005b83811015614f8257815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101614f50565b509495945050505050565b60208152614fa460208201835163ffffffff169052565b60006020830151614fbd604084018263ffffffff169052565b50604083015163ffffffff8116606084015250606083015173ffffffffffffffffffffffffffffffffffffffff8116608084015250608083015180151560a08401525060a083015162ffffff811660c08401525060c083015163ffffffff811660e08401525060e083015161010061503c8185018363ffffffff169052565b84015190506101206150658482018373ffffffffffffffffffffffffffffffffffffffff169052565b840151905061014061507c8482018361ffff169052565b84015190506101606150a58482018373ffffffffffffffffffffffffffffffffffffffff169052565b840151610180848101919091528401516101a0808501919091528401516101c0808501919091528401516102006101e0808601829052919250906150ed610220860184614f3c565b95015173ffffffffffffffffffffffffffffffffffffffff169301929092525090919050565b81810381811115611ecd57611ecd614ebb565b60008161513557615135614ebb565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036151bb576151bb614ebb565b5060010190565b600061012063ffffffff808d1684528b6020850152808b166040850152508060608401526151f28184018a614f3c565b905082810360808401526152068189614f3c565b905060ff871660a084015282810360c08401526152238187614c29565b905067ffffffffffffffff851660e08401528281036101008401526152488185614c29565b9c9b505050505050505050505050565b8082028115828204841417611ecd57611ecd614ebb565b80820180821115611ecd57611ecd614ebb565b60ff8181168382160190811115611ecd57611ecd614ebb565b8051614736816147c9565b805161473681614709565b8051614736816147e6565b8051614736816147ff565b80516147368161481b565b600082601f8301126152e357600080fd5b815160206152f361475c836146e5565b82815260059290921b8401810191818101908684111561531257600080fd5b8286015b848110156147a457805161532981614709565b8352918301918301615316565b600082601f83011261534757600080fd5b8151602061535761475c836146e5565b82815260c0928302850182019282820191908785111561537657600080fd5b8387015b85811015614b045781818a0312156153925760008081fd5b61539a614673565b81516153a5816147c9565b8152818601516153b4816147ff565b818701526040828101516153c781614709565b908201526060828101516153da816147af565b908201526080828101519082015260a0808301516153f781614a18565b90820152845292840192810161537a565b60008060006060848603121561541d57600080fd5b835167ffffffffffffffff8082111561543557600080fd5b90850190610200828803121561544a57600080fd5b615452614649565b61545b8361529b565b81526154696020840161529b565b602082015261547a6040840161529b565b604082015261548b606084016152a6565b606082015261549c608084016152b1565b60808201526154ad60a084016152bc565b60a08201526154be60c0840161529b565b60c08201526154cf60e0840161529b565b60e08201526101006154e28185016152a6565b908201526101206154f48482016152c7565b908201526101406155068482016152a6565b90820152610160838101519082015261018080840151908201526101a080840151908201526101c0808401518381111561553f57600080fd5b61554b8a8287016152d2565b8284015250506101e061555f8185016152a6565b90820152602087015190955091508082111561557a57600080fd5b615586878388016152d2565b9350604086015191508082111561559c57600080fd5b506155a986828701615336565b9150509250925092565b6000602082840312156155c557600080fd5b8151611edf816147af565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60006101208b835273ffffffffffffffffffffffffffffffffffffffff8b16602084015267ffffffffffffffff808b1660408501528160608501526156468285018b614f3c565b9150838203608085015261565a828a614f3c565b915060ff881660a085015283820360c08501526156778288614c29565b90861660e085015283810361010085015290506152488185614c29565b8183823760009101908152919050565b8281526080810160608360208401379392505050565b600082601f8301126156cb57600080fd5b813560206156db61475c836146e5565b82815260059290921b840181019181810190868411156156fa57600080fd5b8286015b848110156147a457803583529183019183016156fe565b600082601f83011261572657600080fd5b8135602061573661475c836146e5565b82815260059290921b8401810191818101908684111561575557600080fd5b8286015b848110156147a457803567ffffffffffffffff8111156157795760008081fd5b6157878986838b010161498a565b845250918301918301615759565b6000602082840312156157a757600080fd5b813567ffffffffffffffff808211156157bf57600080fd5b9083019060c082860312156157d357600080fd5b6157db614673565b82358152602083013560208201526040830135828111156157fb57600080fd5b615807878286016156ba565b60408301525060608301358281111561581f57600080fd5b61582b878286016156ba565b60608301525060808301358281111561584357600080fd5b61584f87828601615715565b60808301525060a08301358281111561586757600080fd5b61587387828601615715565b60a08301525095945050505050565b61ffff8181168382160190808211156131e9576131e9614ebb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826158db576158db61589d565b500490565b6bffffffffffffffffffffffff8181168382160190808211156131e9576131e9614ebb565b6bffffffffffffffffffffffff851681528360208201528260408201526080606082015260006159386080830184614c29565b9695505050505050565b6bffffffffffffffffffffffff8281168282160390808211156131e9576131e9614ebb565b60006bffffffffffffffffffffffff808416806159865761598661589d565b92169190910492915050565b6bffffffffffffffffffffffff8181168382160280821691908281146159ba576159ba614ebb565b505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b8281526040602082015260006132e26040830184614c29565b60008060408385031215615a1d57600080fd5b8251615a28816147e6565b6020939093015192949293505050565b805169ffffffffffffffffffff8116811461473657600080fd5b600080600080600060a08688031215615a6a57600080fd5b615a7386615a38565b9450602086015193506040860151925060608601519150615a9660808701615a38565b90509295509295909350565b600181815b80851115615afb57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115615ae157615ae1614ebb565b80851615615aee57918102915b93841c9390800290615aa7565b509250929050565b600082615b1257506001611ecd565b81615b1f57506000611ecd565b8160018114615b355760028114615b3f57615b5b565b6001915050611ecd565b60ff841115615b5057615b50614ebb565b50506001821b611ecd565b5060208310610133831016604e8410600b8410161715615b7e575081810a611ecd565b615b888383615aa2565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115615bba57615bba614ebb565b029392505050565b6000611edf8383615b03565b6fffffffffffffffffffffffffffffffff8181168382160190808211156131e9576131e9614ebb565b6000610100820190506bffffffffffffffffffffffff8084511683528060208501511660208401528060408501511660408401528060608501511660608401525073ffffffffffffffffffffffffffffffffffffffff608084015116608083015260a0830151615c7760a08401826bffffffffffffffffffffffff169052565b5060c0830151615c9760c08401826bffffffffffffffffffffffff169052565b5060e08301516131e960e08401826bffffffffffffffffffffffff169052565b600060408284031215615cc957600080fd5b6040516040810181811067ffffffffffffffff82111715615cec57615cec61461a565b6040528251615cfa816147c9565b81526020928301519281019290925250919050565b600060a08284031215615d2157600080fd5b60405160a0810181811067ffffffffffffffff82111715615d4457615d4461461a565b806040525082518152602083015160208201526040830151615d65816147c9565b60408201526060830151615d78816147c9565b6060820152608092830151928101929092525091905056fea164736f6c6343000813000a0000000000000000000000000200faa259d3dabb6218461e63c432e2a2a108e6
Deployed Bytecode
0x6080604052600436106100b15760003560e01c80638da5cb5b11610069578063b1dc65a41161004e578063b1dc65a4146102cb578063e3d0e712146102eb578063f2fde38b1461030b576100b1565b80638da5cb5b1461025a578063afcb95d714610285576100b1565b8063349e8cca1161009a578063349e8cca1461017757806379ba5097146101cb57806381ff7048146101e0576100b1565b80630870d3a1146100f8578063181f5a7714610118575b7f0000000000000000000000000200faa259d3dabb6218461e63c432e2a2a108e63660008037600080366000845af43d6000803e8080156100f1573d6000f35b3d6000fd5b005b34801561010457600080fd5b506100f6610113366004614b11565b61032b565b34801561012457600080fd5b506101616040518060400160405280601881526020017f4175746f6d6174696f6e526567697374727920322e332e30000000000000000081525081565b60405161016e9190614c8d565b60405180910390f35b34801561018357600080fd5b507f0000000000000000000000000200faa259d3dabb6218461e63c432e2a2a108e65b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161016e565b3480156101d757600080fd5b506100f6610c0f565b3480156101ec57600080fd5b5061023760175460135463ffffffff74010000000000000000000000000000000000000000830481169378010000000000000000000000000000000000000000000000009093041691565b6040805163ffffffff94851681529390921660208401529082015260600161016e565b34801561026657600080fd5b5060005473ffffffffffffffffffffffffffffffffffffffff166101a6565b34801561029157600080fd5b50601354601454604080516000815260208101939093526c0100000000000000000000000090910463ffffffff169082015260600161016e565b3480156102d757600080fd5b506100f66102e6366004614cec565b610d11565b3480156102f757600080fd5b506100f6610306366004614dd1565b611051565b34801561031757600080fd5b506100f6610326366004614e9e565b61108b565b61033361109f565b601f8851111561036f576040517f25d0209c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8560ff166000036103ac576040517fe77dba5600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b865188511415806103cb57506103c3866003614eea565b60ff16885111155b15610402576040517f1d2d1c5800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805182511461043d576040517fcf54c06a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6104478282611122565b610451888861175a565b604051806101200160405280601460000160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff168152602001600063ffffffff1681526020018660a0015162ffffff16815260200186610120015161ffff1681526020018760ff168152602001601460000160169054906101000a900460ff1615158152602001601460000160179054906101000a900460ff1615158152602001866080015115158152602001866101e0015173ffffffffffffffffffffffffffffffffffffffff16815250601460008201518160000160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550602082015181600001600c6101000a81548163ffffffff021916908363ffffffff16021790555060408201518160000160106101000a81548162ffffff021916908362ffffff16021790555060608201518160000160136101000a81548161ffff021916908361ffff16021790555060808201518160000160156101000a81548160ff021916908360ff16021790555060a08201518160000160166101000a81548160ff02191690831515021790555060c08201518160000160176101000a81548160ff02191690831515021790555060e08201518160000160186101000a81548160ff0219169083151502179055506101008201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509050506000601660010160189054906101000a900463ffffffff1690506000866101e0015173ffffffffffffffffffffffffffffffffffffffff166357e871e76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610701573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107259190614f06565b6017549091506000906107579074010000000000000000000000000000000000000000900463ffffffff166001614f1f565b9050604051806101600160405280896060015173ffffffffffffffffffffffffffffffffffffffff168152602001896000015163ffffffff168152602001896020015163ffffffff1681526020016016600001601c9054906101000a900463ffffffff1663ffffffff16815260200189610100015173ffffffffffffffffffffffffffffffffffffffff1681526020018263ffffffff1681526020018363ffffffff168152602001896040015163ffffffff16815260200189610140015173ffffffffffffffffffffffffffffffffffffffff1681526020018960c0015163ffffffff1681526020018960e0015163ffffffff16815250601660008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160000160146101000a81548163ffffffff021916908363ffffffff16021790555060408201518160000160186101000a81548163ffffffff021916908363ffffffff160217905550606082015181600001601c6101000a81548163ffffffff021916908363ffffffff16021790555060808201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060a08201518160010160146101000a81548163ffffffff021916908363ffffffff16021790555060c08201518160010160186101000a81548163ffffffff021916908363ffffffff16021790555060e082015181600101601c6101000a81548163ffffffff021916908363ffffffff1602179055506101008201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101208201518160020160146101000a81548163ffffffff021916908363ffffffff1602179055506101408201518160020160186101000a81548163ffffffff021916908363ffffffff160217905550905050876101600151601981905550876101800151601a81905550876101a00151601b81905550600088604051602001610a9a9190614f8d565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018152919052601754909150610aff904690309074010000000000000000000000000000000000000000900463ffffffff168f8f8f878f8f611e19565b6013556000610b0e6009611ec3565b90505b8015610b4b57610b38610b30610b28600184615113565b600990611ed3565b600990611ee6565b5080610b4381615126565b915050610b11565b5060005b896101c0015151811015610ba257610b8f8a6101c001518281518110610b7757610b7761515b565b60200260200101516009611f0890919063ffffffff16565b5080610b9a8161518a565b915050610b4f565b507f1591690b8638f5fb2dbec82ac741805ac5da8b45dc5263f4875b0496fdce4e0584601354601660010160149054906101000a900463ffffffff168f8f8f878f8f604051610bf9999897969594939291906151c2565b60405180910390a1505050505050505050505050565b60015473ffffffffffffffffffffffffffffffffffffffff163314610c95576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e65720000000000000000000060448201526064015b60405180910390fd5b60008054337fffffffffffffffffffffffff00000000000000000000000000000000000000008083168217845560018054909116905560405173ffffffffffffffffffffffffffffffffffffffff90921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b60005a90506000610d23866040615258565b610d2f8961014461526f565b610d39919061526f565b9050368114610d74576040517fdfe9309000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60408051610120810182526014546bffffffffffffffffffffffff8116825263ffffffff6c01000000000000000000000000820416602083015262ffffff7001000000000000000000000000000000008204169282019290925261ffff730100000000000000000000000000000000000000830416606082015260ff75010000000000000000000000000000000000000000008304811660808301527601000000000000000000000000000000000000000000008304811615801560a08401527701000000000000000000000000000000000000000000000084048216151560c0840152780100000000000000000000000000000000000000000000000090930416151560e082015260155473ffffffffffffffffffffffffffffffffffffffff1661010082015290610ed3576040517f24522f3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b336000908152600b602052604090205460ff16610f1c576040517f1099ed7500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6013548b3514610f58576040517fdfdcf8e700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6080810151610f68906001615282565b60ff1687141580610f795750868514155b15610fb0576040517f0244f71a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610fc08b8b8b8b8b8b8b8b611f2a565b6000610fcc8b8b612193565b905060208c0135600881901c63ffffffff16610fe984848861224c565b836020015163ffffffff168163ffffffff16111561104157601480547fffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffffff166c0100000000000000000000000063ffffffff8416021790555b5050505050505050505050505050565b60008060008580602001905181019061106a9190615408565b925092509250611080898989868989888861032b565b505050505050505050565b61109361109f565b61109c81612dcf565b50565b60005473ffffffffffffffffffffffffffffffffffffffff163314611120576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e6572000000000000000000006044820152606401610c8c565b565b60005b6024548110156111e05760226000602483815481106111465761114661515b565b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001812080547fffffffff00000000000000000000000000000000000000000000000000000000168155600181019190915560020180547fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169055806111d88161518a565b915050611125565b506111ed60246000614565565b60255460ff1660005b83518110156117545760008482815181106112135761121361515b565b6020026020010151905060008483815181106112315761123161515b565b602002602001015190508173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015611286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112aa91906155b3565b60ff16816060015160ff161415806113385750806040015173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561130c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061133091906155b3565b60ff16600814155b1561136f576040517fc1ab6dc100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000350a791bfc2c21f9ed5d10980dad2e2638ffa7f673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480156113db575060018460018111156113d9576113d96155d0565b145b15611412576040517fc1ab6dc100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8216158061144d5750604081015173ffffffffffffffffffffffffffffffffffffffff16155b15611484576040517f8579befe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff828116600090815260226020526040902054670100000000000000900416156114ee576040517f357d0cc400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6024805460018181019092557f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec401805473ffffffffffffffffffffffffffffffffffffffff8086167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216821790925560008181526022602090815260409182902086518154928801518489015160608a015160ff167b01000000000000000000000000000000000000000000000000000000027fffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff9190981667010000000000000002167fffffffff000000000000000000000000000000000000000000ffffffffffffff62ffffff909216640100000000027fffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000090951663ffffffff9093169290921793909317929092169190911793909317835560808501519383019390935560a0840151600290920180546bffffffffffffffffffffffff9093167fffffffffffffffffffffffffffffffffffffffff0000000000000000000000009093169290921790915590517fca93cbe727c73163ec538f71be6c0a64877d7f1f6dd35d5ca7cbaef3a3e34ba390611737908490600060c08201905063ffffffff835116825262ffffff602084015116602083015273ffffffffffffffffffffffffffffffffffffffff604084015116604083015260ff6060840151166060830152608083015160808301526bffffffffffffffffffffffff60a08401511660a083015292915050565b60405180910390a25050808061174c9061518a565b9150506111f6565b50505050565b600e546014546bffffffffffffffffffffffff1660005b600e548110156117cd576117ba600e82815481106117915761179161515b565b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff168385612ec4565b50806117c58161518a565b915050611771565b5060255460009060ff16815b600e5481101561193e57600e81815481106117f6576117f661515b565b6000918252602082200154600d805473ffffffffffffffffffffffffffffffffffffffff9092169550600c9291849081106118335761183361515b565b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff9081168452838201949094526040928301822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001690559286168152600b909252902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905560018260018111156118d5576118d56155d0565b14801561191a575073ffffffffffffffffffffffffffffffffffffffff83166000908152600b60205260409020546201000090046bffffffffffffffffffffffff1615155b1561192c5761192a600f84611f08565b505b806119368161518a565b9150506117d9565b5061194b600d6000614565565b611957600e6000614565565b6040805160808101825260008082526020820181905291810182905260608101829052905b8751811015611de757600c600089838151811061199b5761199b61515b565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528101919091526040016000205460ff1615611a06576040517f77cea0fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16888281518110611a3057611a3061515b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603611a85576040517f815e1d6400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60405180604001604052806001151581526020018260ff16815250600c60008a8481518110611ab657611ab661515b565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff1682528181019290925260400160002082518154939092015160ff16610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff921515929092167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909316929092171790558651879082908110611b5e57611b5e61515b565b60200260200101519350600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611bce576040517f58a70a0a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166000908152600b60209081526040918290208251608081018452905460ff80821615801584526101008304909116938301939093526bffffffffffffffffffffffff6201000082048116948301949094526e01000000000000000000000000000090049092166060830152909250611c89576040517f6a7281ad00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180835260ff80831660208086019182526014546bffffffffffffffffffffffff9081166060880190815273ffffffffffffffffffffffffffffffffffffffff8a166000908152600b909352604092839020885181549551948a0151925184166e010000000000000000000000000000027fffffffffffff000000000000000000000000ffffffffffffffffffffffffffff939094166201000002929092167fffffffffffff000000000000000000000000000000000000000000000000ffff94909616610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff921515929092167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000090951694909417179190911692909217919091179055836001811115611dc357611dc36155d0565b03611dd557611dd3600f85611ee6565b505b80611ddf8161518a565b91505061197c565b508651611dfb90600d9060208a0190614583565b508551611e0f90600e906020890190614583565b5050505050505050565b6000808a8a8a8a8a8a8a8a8a604051602001611e3d999897969594939291906155ff565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001815291905280516020909101207dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167e01000000000000000000000000000000000000000000000000000000000000179b9a5050505050505050505050565b6000611ecd825490565b92915050565b6000611edf83836130cc565b9392505050565b6000611edf8373ffffffffffffffffffffffffffffffffffffffff84166130f6565b6000611edf8373ffffffffffffffffffffffffffffffffffffffff84166131f0565b60008787604051611f3c929190615694565b604051908190038120611f53918b906020016156a4565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815282825280516020918201208383019092526000808452908301819052909250906000805b8881101561212a57600185878360208110611fbf57611fbf61515b565b611fcc91901a601b615282565b8c8c85818110611fde57611fde61515b565b905060200201358b8b86818110611ff757611ff761515b565b9050602002013560405160008152602001604052604051612034949392919093845260ff9290921660208401526040830152606082015260800190565b6020604051602081039080840390855afa158015612056573d6000803e3d6000fd5b5050604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081015173ffffffffffffffffffffffffffffffffffffffff81166000908152600c602090815290849020838501909452925460ff8082161515808552610100909204169383019390935290955093509050612104576040517f0f4c073700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b826020015160080260ff166001901b8401935080806121229061518a565b915050611fa2565b50827e01010101010101010101010101010101010101010101010101010101010101841614612185576040517fc103be2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050505050505050505050565b6121cc6040518060c001604052806000815260200160008152602001606081526020016060815260200160608152602001606081525090565b60006121da83850185615795565b60408101515160608201515191925090811415806121fd57508082608001515114155b8061220d5750808260a001515114155b15612244576040517fb55ac75400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b509392505050565b600082604001515167ffffffffffffffff81111561226c5761226c61461a565b60405190808252806020026020018201604052801561233857816020015b6040805161020081018252600060e08201818152610100830182905261012083018290526101408301829052610160830182905261018083018290526101a083018290526101c083018290526101e0830182905282526020808301829052928201819052606082018190526080820181905260a0820181905260c082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90920191018161228a5790505b50905060006040518060800160405280600061ffff16815260200160006bffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff16815260200160008152509050600085610100015173ffffffffffffffffffffffffffffffffffffffff166357e871e76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123fa9190614f06565b6101008701516040517f7810d12a00000000000000000000000000000000000000000000000000000000815236600482015291925060009173ffffffffffffffffffffffffffffffffffffffff90911690637810d12a90602401602060405180830381865afa158015612471573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124959190614f06565b905060005b8660400151518110156129255760046000886040015183815181106124c1576124c161515b565b6020908102919091018101518252818101929092526040908101600020815161012081018352815460ff8082161515835261010080830490911615159583019590955263ffffffff620100008204811694830194909452660100000000000081048416606083015273ffffffffffffffffffffffffffffffffffffffff6a01000000000000000000009091048116608083015260018301546fffffffffffffffffffffffffffffffff811660a08401526bffffffffffffffffffffffff70010000000000000000000000000000000082041660c08401527c0100000000000000000000000000000000000000000000000000000000900490931660e08201526002909101549091169181019190915285518690839081106125e4576125e461515b565b6020026020010151600001819052506126198760400151828151811061260c5761260c61515b565b602002602001015161323f565b85828151811061262b5761262b61515b565b6020026020010151606001906001811115612648576126486155d0565b9081600181111561265b5761265b6155d0565b815250506126bf876040015182815181106126785761267861515b565b602002602001015184896080015184815181106126975761269761515b565b60200260200101518885815181106126b1576126b161515b565b60200260200101518c6132ea565b8683815181106126d1576126d161515b565b60200260200101516020018784815181106126ee576126ee61515b565b602002602001015160c00182815250821515151581525050508481815181106127195761271961515b565b602002602001015160200151156127495760018460000181815161273d9190615882565b61ffff1690525061274e565b612913565b6127b48582815181106127635761276361515b565b60200260200101516000015160800151886060015183815181106127895761278961515b565b60200260200101518960a0015184815181106127a7576127a761515b565b6020026020010151613409565b8683815181106127c6576127c661515b565b60200260200101516040018784815181106127e3576127e361515b565b602002602001015160800182815250821515151581525050508760800151600161280d9190615282565b61281b9060ff166040615258565b6103a48860a0015183815181106128345761283461515b565b602002602001015151612847919061526f565b612851919061526f565b8582815181106128635761286361515b565b602002602001015160a00181815250508481815181106128855761288561515b565b602002602001015160a00151846060018181516128a2919061526f565b90525084518590829081106128b9576128b961515b565b602002602001015160800151866128d09190615113565b9550612913876040015182815181106128eb576128eb61515b565b6020026020010151848784815181106129065761290661515b565b6020026020010151613624565b8061291d8161518a565b91505061249a565b50825161ffff1660000361293c5750505050505050565b61c73861294a366010615258565b5a6129559088615113565b61295f919061526f565b612969919061526f565b8351909550613a34906129809061ffff16876158cc565b61298a919061526f565b60408051608081018252600080825260208201819052918101829052606081018290529196506129b989613729565b905060005b886040015151811015612c68578681815181106129dd576129dd61515b565b60200260200101516020015115612c5657612a1a8a888381518110612a0457612a0461515b565b6020026020010151600001516101000151613813565b92506000612b3a8b6040518061012001604052808b8681518110612a4057612a4061515b565b60200260200101516080015181526020018c81526020018a606001518c8781518110612a6e57612a6e61515b565b602002602001015160a001518a612a859190615258565b612a8f91906158cc565b81526020018d6000015181526020018d6020015181526020018681526020018b8681518110612ac057612ac061515b565b602002602001015160000151610100015173ffffffffffffffffffffffffffffffffffffffff168152602001878152602001600115158152508c604001518581518110612b0f57612b0f61515b565b60200260200101518b8681518110612b2957612b2961515b565b60200260200101516000015161398f565b9050806060015187604001818151612b5291906158e0565b6bffffffffffffffffffffffff169052506040810151602088018051612b799083906158e0565b6bffffffffffffffffffffffff169052508751889083908110612b9e57612b9e61515b565b60200260200101516040015115158a604001518381518110612bc257612bc261515b565b60200260200101517fad8cc9579b21dfe2c2f6ea35ba15b656e46b4f5b0cb424f52739b8ce5cac9c5b83602001518460000151612bff91906158e0565b8b8681518110612c1157612c1161515b565b6020026020010151608001518d8f608001518881518110612c3457612c3461515b565b6020026020010151604051612c4c9493929190615905565b60405180910390a3505b80612c608161518a565b9150506129be565b505050602083810151336000908152600b90925260409091208054600290612ca59084906201000090046bffffffffffffffffffffffff166158e0565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055508260400151601460000160008282829054906101000a90046bffffffffffffffffffffffff16612d0391906158e0565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555082604001518360200151612d4591906158e0565b6bffffffffffffffffffffffff16602160007f000000000000000000000000350a791bfc2c21f9ed5d10980dad2e2638ffa7f673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612dc1919061526f565b909155505050505050505050565b3373ffffffffffffffffffffffffffffffffffffffff821603612e4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c660000000000000000006044820152606401610c8c565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600b602090815260408083208151608081018352905460ff80821615801584526101008304909116948301949094526bffffffffffffffffffffffff6201000082048116938301939093526e01000000000000000000000000000090049091166060820152906130c0576000816060015185612f5c9190615942565b90506000612f6a8583615967565b90508083604001818151612f7e91906158e0565b6bffffffffffffffffffffffff16905250612f998582615992565b83606001818151612faa91906158e0565b6bffffffffffffffffffffffff90811690915273ffffffffffffffffffffffffffffffffffffffff89166000908152600b602090815260409182902087518154928901519389015160608a015186166e010000000000000000000000000000027fffffffffffff000000000000000000000000ffffffffffffffffffffffffffff919096166201000002167fffffffffffff000000000000000000000000000000000000000000000000ffff60ff95909516610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff921515929092167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909416939093171792909216179190911790555050505b60400151949350505050565b60008260000182815481106130e3576130e361515b565b9060005260206000200154905092915050565b600081815260018301602052604081205480156131df57600061311a600183615113565b855490915060009061312e90600190615113565b905081811461319357600086600001828154811061314e5761314e61515b565b90600052602060002001549050808760000184815481106131715761317161515b565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806131a4576131a46159c2565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611ecd565b6000915050611ecd565b5092915050565b600081815260018301602052604081205461323757508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611ecd565b506000611ecd565b6000818160045b600f8110156132cc577fff0000000000000000000000000000000000000000000000000000000000000082168382602081106132845761328461515b565b1a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146132ba57506000949350505050565b806132c48161518a565b915050613246565b5081600f1a60018111156132e2576132e26155d0565b949350505050565b600080808085606001516001811115613305576133056155d0565b0361332b576133178888888888613dfe565b613326576000925090506133ff565b6133a3565b600185606001516001811115613343576133436155d0565b0361337157600061335689898988613f88565b925090508061336b57506000925090506133ff565b506133a3565b6040517ff2b2d41200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84516060015163ffffffff1687106133f857877fc3237c8807c467c1b39b8d0395eff077313e691bf0a7388106792564ebfd5636876040516133e59190614c8d565b60405180910390a26000925090506133ff565b6001925090505b9550959350505050565b601454600090819077010000000000000000000000000000000000000000000000900460ff1615613466576040517f37ed32e800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b601480547fffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff16770100000000000000000000000000000000000000000000001790556040517f4585e33b00000000000000000000000000000000000000000000000000000000906134db908590602401614c8d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff000000000000000000000000000000000000000000000000000000009094169390931790925290517f79188d1600000000000000000000000000000000000000000000000000000000815290935073ffffffffffffffffffffffffffffffffffffffff8616906379188d16906135ae90879087906004016159f1565b60408051808303816000875af11580156135cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135f09190615a0a565b601480547fffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff16905590969095509350505050565b60008160600151600181111561363c5761363c6155d0565b036136a057600083815260046020526040902060010180547bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000063ffffffff851602179055505050565b6001816060015160018111156136b8576136b86155d0565b036137245760c08101805160009081526008602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055915191517fa4a4e334c0e330143f9437484fe516c13bc560b86b5b0daf58e7084aaac228f29190a25b505050565b60008060007f00000000000000000000000013e3ee699d1909e989722e753853ae30b17e08c573ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015613799573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137bd9190615a52565b509350509250506000821315806137d357508042105b8061380357506000846040015162ffffff1611801561380357506137f78142615113565b846040015162ffffff16105b156131e9575050601b5492915050565b60408051608081018252600080825260208083018281528385018381526060850184905273ffffffffffffffffffffffffffffffffffffffff878116855260229093528584208054640100000000810462ffffff1690925263ffffffff82169092527b01000000000000000000000000000000000000000000000000000000810460ff16855285517ffeaf968c00000000000000000000000000000000000000000000000000000000815295519495919484936701000000000000009092049091169163feaf968c9160048083019260a09291908290030181865afa158015613900573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139249190615a52565b5093505092505060008213158061393a57508042105b8061396a57506000866040015162ffffff1611801561396a575061395e8142615113565b866040015162ffffff16105b1561397e5760018301546060850152613986565b606084018290525b50505092915050565b604080516101008101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201529082015115613a255760008381526023602090815260409182902082518084018452905463ffffffff811680835262ffffff640100000000909204821692840192835260e089018051909401529051915191169101525b6000613a318686614195565b60c0840151602082015182519293509091600091613a4e916158e0565b60e08801515190915060ff16600060128210613a6b576001613a81565b613a76826012615113565b613a8190600a615bc2565b9050600060128311613a94576001613aaa565b613a9f601284615113565b613aaa90600a615bc2565b905085600001516bffffffffffffffffffffffff16856bffffffffffffffffffffffff161015613b5257849350613b26818b60800151613aea9190615258565b838c60e0015160600151886bffffffffffffffffffffffff16613b0d9190615258565b613b179190615258565b613b2191906158cc565b6144c3565b6bffffffffffffffffffffffff9081166040880152600060608801819052602088015285168652613c78565b836bffffffffffffffffffffffff16856bffffffffffffffffffffffff161015613c7857849350613be086604001516bffffffffffffffffffffffff16828c60800151613b9f9190615258565b848d60e0015160600151896bffffffffffffffffffffffff16613bc29190615258565b613bcc9190615258565b613bd691906158cc565b613b219190615113565b6bffffffffffffffffffffffff1660608088019190915260e08b01510151613c6490613c0d908490615258565b6001848d60e0015160600151613c239190615258565b613c2d9190615113565b838d608001518a606001516bffffffffffffffffffffffff16613c509190615258565b613c5a9190615258565b613b17919061526f565b6bffffffffffffffffffffffff1660208701525b60008981526004602052604090206001018054859190601090613cbe90849070010000000000000000000000000000000090046bffffffffffffffffffffffff16615942565b82546101009290920a6bffffffffffffffffffffffff81810219909316918316021790915560008b81526004602052604081206001018054928816935091613d199084906fffffffffffffffffffffffffffffffff16615bce565b92506101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550836bffffffffffffffffffffffff16602160008c60c0015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254613db09190615113565b92505081905550887f801ba6ed51146ffe3e99d1dbd9dd0f4de6292e78a9a34c39c0183de17b3f40fc87604051613de79190615bf7565b60405180910390a250939998505050505050505050565b60008084806020019051810190613e159190615cb7565b845160e00151815191925063ffffffff90811691161015613e7257867f405288ea7be309e16cfdf481367f90a413e1d4634fcdaf8966546db9b93012e886604051613e609190614c8d565b60405180910390a26000915050613f7f565b8260e001518015613f325750602081015115801590613f325750602081015161010084015182516040517f85df51fd00000000000000000000000000000000000000000000000000000000815263ffffffff909116600482015273ffffffffffffffffffffffffffffffffffffffff909116906385df51fd90602401602060405180830381865afa158015613f0b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f2f9190614f06565b14155b80613f445750805163ffffffff168611155b15613f7957867f6aa7f60c176da7af894b384daea2249497448137f5943c1237ada8bc92bdc30186604051613e609190614c8d565b60019150505b95945050505050565b600080600084806020019051810190613fa19190615d0f565b905060008782600001518360200151846040015160405160200161400394939291909384526020840192909252604083015260e01b7fffffffff0000000000000000000000000000000000000000000000000000000016606082015260640190565b6040516020818303038152906040528051906020012090508460e0015180156140de57506080820151158015906140de5750608082015161010086015160608401516040517f85df51fd00000000000000000000000000000000000000000000000000000000815263ffffffff909116600482015273ffffffffffffffffffffffffffffffffffffffff909116906385df51fd90602401602060405180830381865afa1580156140b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140db9190614f06565b14155b806140f3575086826060015163ffffffff1610155b1561413d57877f6aa7f60c176da7af894b384daea2249497448137f5943c1237ada8bc92bdc301876040516141289190614c8d565b60405180910390a260009350915061418c9050565b60008181526008602052604090205460ff161561418457877f405288ea7be309e16cfdf481367f90a413e1d4634fcdaf8966546db9b93012e8876040516141289190614c8d565b600193509150505b94509492505050565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915260008260e001516000015160ff1690506000846060015161ffff1684606001516142009190615258565b905083610100015180156142135750803a105b1561421b57503a5b60006012831161422c576001614242565b614237601284615113565b61424290600a615bc2565b905060006012841061425557600161426b565b614260846012615113565b61426b90600a615bc2565b905060008660a0015187604001518860200151896000015161428d919061526f565b6142979087615258565b6142a1919061526f565b6142ab9190615258565b90506142ee828860e00151606001516142c49190615258565b6001848a60e00151606001516142da9190615258565b6142e49190615113565b613c5a8685615258565b6bffffffffffffffffffffffff168652608087015161431190613b2190836158cc565b6bffffffffffffffffffffffff1660408088019190915260e0880151015160009061434a9062ffffff16683635c9adc5dea00000615258565b9050600081633b9aca008a60a001518b60e001516020015163ffffffff168c604001518d600001518b61437d9190615258565b614387919061526f565b6143919190615258565b61439b9190615258565b6143a591906158cc565b6143af919061526f565b90506143f2848a60e00151606001516143c89190615258565b6001868c60e00151606001516143de9190615258565b6143e89190615113565b613c5a8885615258565b6bffffffffffffffffffffffff166020890152608089015161441890613b2190836158cc565b6bffffffffffffffffffffffff16606089015260c089015173ffffffffffffffffffffffffffffffffffffffff166080808a019190915289015161445b906144c3565b6bffffffffffffffffffffffff1660a0808a019190915289015161447e906144c3565b6bffffffffffffffffffffffff1660c089015260e0890151606001516144a3906144c3565b6bffffffffffffffffffffffff1660e08901525050505050505092915050565b60006bffffffffffffffffffffffff821115614561576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203960448201527f36206269747300000000000000000000000000000000000000000000000000006064820152608401610c8c565b5090565b508054600082559060005260206000209081019061109c9190614605565b8280548282559060005260206000209081019282156145fd579160200282015b828111156145fd57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9091161782556020909201916001909101906145a3565b506145619291505b5b808211156145615760008155600101614606565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051610200810167ffffffffffffffff8111828210171561466d5761466d61461a565b60405290565b60405160c0810167ffffffffffffffff8111828210171561466d5761466d61461a565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156146dd576146dd61461a565b604052919050565b600067ffffffffffffffff8211156146ff576146ff61461a565b5060051b60200190565b73ffffffffffffffffffffffffffffffffffffffff8116811461109c57600080fd5b803561473681614709565b919050565b600082601f83011261474c57600080fd5b8135602061476161475c836146e5565b614696565b82815260059290921b8401810191818101908684111561478057600080fd5b8286015b848110156147a457803561479781614709565b8352918301918301614784565b509695505050505050565b60ff8116811461109c57600080fd5b8035614736816147af565b63ffffffff8116811461109c57600080fd5b8035614736816147c9565b801515811461109c57600080fd5b8035614736816147e6565b62ffffff8116811461109c57600080fd5b8035614736816147ff565b61ffff8116811461109c57600080fd5b80356147368161481b565b6000610200828403121561484957600080fd5b614851614649565b905061485c826147db565b815261486a602083016147db565b602082015261487b604083016147db565b604082015261488c6060830161472b565b606082015261489d608083016147f4565b60808201526148ae60a08301614810565b60a08201526148bf60c083016147db565b60c08201526148d060e083016147db565b60e08201526101006148e381840161472b565b908201526101206148f583820161482b565b9082015261014061490783820161472b565b90820152610160828101359082015261018080830135908201526101a080830135908201526101c08083013567ffffffffffffffff81111561494857600080fd5b6149548582860161473b565b8284015250506101e061496881840161472b565b9082015292915050565b803567ffffffffffffffff8116811461473657600080fd5b600082601f83011261499b57600080fd5b813567ffffffffffffffff8111156149b5576149b561461a565b6149e660207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601614696565b8181528460208386010111156149fb57600080fd5b816020850160208301376000918101602001919091529392505050565b6bffffffffffffffffffffffff8116811461109c57600080fd5b600082601f830112614a4357600080fd5b81356020614a5361475c836146e5565b82815260c09283028501820192828201919087851115614a7257600080fd5b8387015b85811015614b045781818a031215614a8e5760008081fd5b614a96614673565b8135614aa1816147c9565b815281860135614ab0816147ff565b81870152604082810135614ac381614709565b90820152606082810135614ad6816147af565b908201526080828101359082015260a080830135614af381614a18565b908201528452928401928101614a76565b5090979650505050505050565b600080600080600080600080610100898b031215614b2e57600080fd5b883567ffffffffffffffff80821115614b4657600080fd5b614b528c838d0161473b565b995060208b0135915080821115614b6857600080fd5b614b748c838d0161473b565b9850614b8260408c016147be565b975060608b0135915080821115614b9857600080fd5b614ba48c838d01614836565b9650614bb260808c01614972565b955060a08b0135915080821115614bc857600080fd5b614bd48c838d0161498a565b945060c08b0135915080821115614bea57600080fd5b614bf68c838d0161473b565b935060e08b0135915080821115614c0c57600080fd5b50614c198b828c01614a32565b9150509295985092959890939650565b6000815180845260005b81811015614c4f57602081850181015186830182015201614c33565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081526000611edf6020830184614c29565b60008083601f840112614cb257600080fd5b50813567ffffffffffffffff811115614cca57600080fd5b6020830191508360208260051b8501011115614ce557600080fd5b9250929050565b60008060008060008060008060e0898b031215614d0857600080fd5b606089018a811115614d1957600080fd5b8998503567ffffffffffffffff80821115614d3357600080fd5b818b0191508b601f830112614d4757600080fd5b813581811115614d5657600080fd5b8c6020828501011115614d6857600080fd5b6020830199508098505060808b0135915080821115614d8657600080fd5b614d928c838d01614ca0565b909750955060a08b0135915080821115614dab57600080fd5b50614db88b828c01614ca0565b999c989b50969995989497949560c00135949350505050565b60008060008060008060c08789031215614dea57600080fd5b863567ffffffffffffffff80821115614e0257600080fd5b614e0e8a838b0161473b565b97506020890135915080821115614e2457600080fd5b614e308a838b0161473b565b9650614e3e60408a016147be565b95506060890135915080821115614e5457600080fd5b614e608a838b0161498a565b9450614e6e60808a01614972565b935060a0890135915080821115614e8457600080fd5b50614e9189828a0161498a565b9150509295509295509295565b600060208284031215614eb057600080fd5b8135611edf81614709565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60ff81811683821602908116908181146131e9576131e9614ebb565b600060208284031215614f1857600080fd5b5051919050565b63ffffffff8181168382160190808211156131e9576131e9614ebb565b600081518084526020808501945080840160005b83811015614f8257815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101614f50565b509495945050505050565b60208152614fa460208201835163ffffffff169052565b60006020830151614fbd604084018263ffffffff169052565b50604083015163ffffffff8116606084015250606083015173ffffffffffffffffffffffffffffffffffffffff8116608084015250608083015180151560a08401525060a083015162ffffff811660c08401525060c083015163ffffffff811660e08401525060e083015161010061503c8185018363ffffffff169052565b84015190506101206150658482018373ffffffffffffffffffffffffffffffffffffffff169052565b840151905061014061507c8482018361ffff169052565b84015190506101606150a58482018373ffffffffffffffffffffffffffffffffffffffff169052565b840151610180848101919091528401516101a0808501919091528401516101c0808501919091528401516102006101e0808601829052919250906150ed610220860184614f3c565b95015173ffffffffffffffffffffffffffffffffffffffff169301929092525090919050565b81810381811115611ecd57611ecd614ebb565b60008161513557615135614ebb565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036151bb576151bb614ebb565b5060010190565b600061012063ffffffff808d1684528b6020850152808b166040850152508060608401526151f28184018a614f3c565b905082810360808401526152068189614f3c565b905060ff871660a084015282810360c08401526152238187614c29565b905067ffffffffffffffff851660e08401528281036101008401526152488185614c29565b9c9b505050505050505050505050565b8082028115828204841417611ecd57611ecd614ebb565b80820180821115611ecd57611ecd614ebb565b60ff8181168382160190811115611ecd57611ecd614ebb565b8051614736816147c9565b805161473681614709565b8051614736816147e6565b8051614736816147ff565b80516147368161481b565b600082601f8301126152e357600080fd5b815160206152f361475c836146e5565b82815260059290921b8401810191818101908684111561531257600080fd5b8286015b848110156147a457805161532981614709565b8352918301918301615316565b600082601f83011261534757600080fd5b8151602061535761475c836146e5565b82815260c0928302850182019282820191908785111561537657600080fd5b8387015b85811015614b045781818a0312156153925760008081fd5b61539a614673565b81516153a5816147c9565b8152818601516153b4816147ff565b818701526040828101516153c781614709565b908201526060828101516153da816147af565b908201526080828101519082015260a0808301516153f781614a18565b90820152845292840192810161537a565b60008060006060848603121561541d57600080fd5b835167ffffffffffffffff8082111561543557600080fd5b90850190610200828803121561544a57600080fd5b615452614649565b61545b8361529b565b81526154696020840161529b565b602082015261547a6040840161529b565b604082015261548b606084016152a6565b606082015261549c608084016152b1565b60808201526154ad60a084016152bc565b60a08201526154be60c0840161529b565b60c08201526154cf60e0840161529b565b60e08201526101006154e28185016152a6565b908201526101206154f48482016152c7565b908201526101406155068482016152a6565b90820152610160838101519082015261018080840151908201526101a080840151908201526101c0808401518381111561553f57600080fd5b61554b8a8287016152d2565b8284015250506101e061555f8185016152a6565b90820152602087015190955091508082111561557a57600080fd5b615586878388016152d2565b9350604086015191508082111561559c57600080fd5b506155a986828701615336565b9150509250925092565b6000602082840312156155c557600080fd5b8151611edf816147af565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60006101208b835273ffffffffffffffffffffffffffffffffffffffff8b16602084015267ffffffffffffffff808b1660408501528160608501526156468285018b614f3c565b9150838203608085015261565a828a614f3c565b915060ff881660a085015283820360c08501526156778288614c29565b90861660e085015283810361010085015290506152488185614c29565b8183823760009101908152919050565b8281526080810160608360208401379392505050565b600082601f8301126156cb57600080fd5b813560206156db61475c836146e5565b82815260059290921b840181019181810190868411156156fa57600080fd5b8286015b848110156147a457803583529183019183016156fe565b600082601f83011261572657600080fd5b8135602061573661475c836146e5565b82815260059290921b8401810191818101908684111561575557600080fd5b8286015b848110156147a457803567ffffffffffffffff8111156157795760008081fd5b6157878986838b010161498a565b845250918301918301615759565b6000602082840312156157a757600080fd5b813567ffffffffffffffff808211156157bf57600080fd5b9083019060c082860312156157d357600080fd5b6157db614673565b82358152602083013560208201526040830135828111156157fb57600080fd5b615807878286016156ba565b60408301525060608301358281111561581f57600080fd5b61582b878286016156ba565b60608301525060808301358281111561584357600080fd5b61584f87828601615715565b60808301525060a08301358281111561586757600080fd5b61587387828601615715565b60a08301525095945050505050565b61ffff8181168382160190808211156131e9576131e9614ebb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826158db576158db61589d565b500490565b6bffffffffffffffffffffffff8181168382160190808211156131e9576131e9614ebb565b6bffffffffffffffffffffffff851681528360208201528260408201526080606082015260006159386080830184614c29565b9695505050505050565b6bffffffffffffffffffffffff8281168282160390808211156131e9576131e9614ebb565b60006bffffffffffffffffffffffff808416806159865761598661589d565b92169190910492915050565b6bffffffffffffffffffffffff8181168382160280821691908281146159ba576159ba614ebb565b505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b8281526040602082015260006132e26040830184614c29565b60008060408385031215615a1d57600080fd5b8251615a28816147e6565b6020939093015192949293505050565b805169ffffffffffffffffffff8116811461473657600080fd5b600080600080600060a08688031215615a6a57600080fd5b615a7386615a38565b9450602086015193506040860151925060608601519150615a9660808701615a38565b90509295509295909350565b600181815b80851115615afb57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115615ae157615ae1614ebb565b80851615615aee57918102915b93841c9390800290615aa7565b509250929050565b600082615b1257506001611ecd565b81615b1f57506000611ecd565b8160018114615b355760028114615b3f57615b5b565b6001915050611ecd565b60ff841115615b5057615b50614ebb565b50506001821b611ecd565b5060208310610133831016604e8410600b8410161715615b7e575081810a611ecd565b615b888383615aa2565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115615bba57615bba614ebb565b029392505050565b6000611edf8383615b03565b6fffffffffffffffffffffffffffffffff8181168382160190808211156131e9576131e9614ebb565b6000610100820190506bffffffffffffffffffffffff8084511683528060208501511660208401528060408501511660408401528060608501511660608401525073ffffffffffffffffffffffffffffffffffffffff608084015116608083015260a0830151615c7760a08401826bffffffffffffffffffffffff169052565b5060c0830151615c9760c08401826bffffffffffffffffffffffff169052565b5060e08301516131e960e08401826bffffffffffffffffffffffff169052565b600060408284031215615cc957600080fd5b6040516040810181811067ffffffffffffffff82111715615cec57615cec61461a565b6040528251615cfa816147c9565b81526020928301519281019290925250919050565b600060a08284031215615d2157600080fd5b60405160a0810181811067ffffffffffffffff82111715615d4457615d4461461a565b806040525082518152602083015160208201526040830151615d65816147c9565b60408201526060830151615d78816147c9565b6060820152608092830151928101929092525091905056fea164736f6c6343000813000a
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000200faa259d3dabb6218461e63c432e2a2a108e6

-----Decoded View---------------
Arg [0] : logicA (address): 0x0200FAA259D3dabb6218461E63c432e2a2a108E6

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000200faa259d3dabb6218461e63c432e2a2a108e6

🤖 Code Reader

Generate instant answers for your smart contract questions using Al Models. Read more.

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.