ETH Price: $2,437.59 (+6.29%)
 

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Update Off Chain...525779562026-10-14 2:34:1921 days ago1791945259IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...525560452026-10-13 14:23:5722 days ago1791901437IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...525341482026-10-13 2:14:0322 days ago1791857643IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.0060952
Update Off Chain...525122332026-10-12 14:03:3323 days ago1791813813IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...524903362026-10-12 1:53:3923 days ago1791770019IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...524684432026-10-11 13:43:5324 days ago1791726233IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...524465612026-10-11 1:34:2924 days ago1791682469IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...524246712026-10-10 13:24:4925 days ago1791638689IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...524027932026-10-10 1:15:3325 days ago1791594933IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...523808852026-10-09 13:05:1726 days ago1791551117IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...523589972026-10-09 0:55:4126 days ago1791507341IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...523371112026-10-08 12:46:0927 days ago1791463569IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...523153102026-10-08 0:39:2727 days ago1791419967IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...522935222026-10-07 12:33:1128 days ago1791376391IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...522717162026-10-07 0:26:1928 days ago1791332779IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update Off Chain...522499072026-10-06 12:19:2129 days ago1791289161IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update L1Assets522281192026-10-06 0:13:0529 days ago1791245585IN
0x8ccc56B5...798e3292B
0 ETH0.000000350.006
Update Off Chain...522281182026-10-06 0:13:0329 days ago1791245583IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update L1Assets522217572026-10-05 20:41:0129 days ago1791232861IN
0x8ccc56B5...798e3292B
0 ETH0.000000350.006
Update Off Chain...522217572026-10-05 20:41:0129 days ago1791232861IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update L1Assets521997582026-10-05 8:27:4330 days ago1791188863IN
0x8ccc56B5...798e3292B
0 ETH0.000000350.006
Update Off Chain...521997582026-10-05 8:27:4330 days ago1791188863IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update L1Assets521777972026-10-04 20:15:4130 days ago1791144941IN
0x8ccc56B5...798e3292B
0 ETH0.000000350.006
Update Off Chain...521777972026-10-04 20:15:4130 days ago1791144941IN
0x8ccc56B5...798e3292B
0 ETH0.000000330.006
Update L1Assets521558372026-10-04 8:03:4131 days ago1791101021IN
0x8ccc56B5...798e3292B
0 ETH0.000000350.006
View all transactions

Parent Transaction Hash Block From To
View All Internal Transactions

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

Contract Name

KerneVault

Compiler Version
v0.8.24+commit.e11b9ed9
Optimization Enabled
Yes with 1000 runs
Other Settings
cancun EvmVersion
License
-NA-
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API
[{"inputs":[{"internalType":"contract IERC20","name":"asset_","type":"address"},{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"admin_","type":"address"},{"internalType":"address","name":"strategist_","type":"address"},{"internalType":"address","name":"exchangeDepositAddress_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[],"name":"AlreadyClaimed","type":"error"},{"inputs":[],"name":"CRStillLow","type":"error"},{"inputs":[],"name":"CircuitBreakerNotActive","type":"error"},{"inputs":[],"name":"ComplianceCheckFailed","type":"error"},{"inputs":[],"name":"CooldownTooLong","type":"error"},{"inputs":[],"name":"CooldownTooShort","type":"error"},{"inputs":[],"name":"DepositCapExceeded","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"uint256","name":"max","type":"uint256"}],"name":"ERC4626ExceededMaxDeposit","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"uint256","name":"max","type":"uint256"}],"name":"ERC4626ExceededMaxMint","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"uint256","name":"max","type":"uint256"}],"name":"ERC4626ExceededMaxRedeem","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"uint256","name":"max","type":"uint256"}],"name":"ERC4626ExceededMaxWithdraw","type":"error"},{"inputs":[],"name":"EmergencyRecipientLockedWhilePaused","type":"error"},{"inputs":[{"internalType":"address","name":"provided","type":"address"},{"internalType":"address","name":"expected","type":"address"}],"name":"EmergencyRecipientMismatch","type":"error"},{"inputs":[],"name":"EmergencyRecipientNotSet","type":"error"},{"inputs":[],"name":"EnforcedPause","type":"error"},{"inputs":[],"name":"ExpectedPause","type":"error"},{"inputs":[{"internalType":"address","name":"currentFactory","type":"address"}],"name":"FactoryAlreadySet","type":"error"},{"inputs":[],"name":"FactoryCannotBeZero","type":"error"},{"inputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"maximum","type":"uint256"}],"name":"FeeTooHigh","type":"error"},{"inputs":[{"internalType":"uint256","name":"requested","type":"uint256"},{"internalType":"uint256","name":"maxAllowed","type":"uint256"}],"name":"FounderCaptureExceedsLimit","type":"error"},{"inputs":[],"name":"FounderNotSet","type":"error"},{"inputs":[],"name":"GenesisAlreadyEnded","type":"error"},{"inputs":[],"name":"InsufficientLiquidBuffer","type":"error"},{"inputs":[],"name":"L1BridgeNotSet","type":"error"},{"inputs":[],"name":"MaxChangeRateTooHigh","type":"error"},{"inputs":[],"name":"MustBePaused","type":"error"},{"inputs":[],"name":"NoSweepDestination","type":"error"},{"inputs":[],"name":"NotInsuranceFund","type":"error"},{"inputs":[],"name":"NotPrimeAccount","type":"error"},{"inputs":[],"name":"NotWhitelistedOrCompliant","type":"error"},{"inputs":[],"name":"OffChainChangeExceedsMaxRate","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"inputs":[],"name":"SolvencyThresholdTooLow","type":"error"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"address","name":"expectedFactory","type":"address"}],"name":"UnauthorizedInitializer","type":"error"},{"inputs":[],"name":"UpdateCooldownNotMet","type":"error"},{"inputs":[],"name":"UseRequestWithdrawal","type":"error"},{"inputs":[],"name":"VaultAlreadyInitialized","type":"error"},{"inputs":[],"name":"VaultInsolvent","type":"error"},{"inputs":[{"internalType":"uint256","name":"requested","type":"uint256"},{"internalType":"uint256","name":"limit","type":"uint256"}],"name":"WithdrawLimitExceeded","type":"error"},{"inputs":[],"name":"WithdrawalCooldownNotMet","type":"error"},{"inputs":[],"name":"ZeroAddress","type":"error"},{"inputs":[],"name":"ZeroAmount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"cr","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CRCircuitBreakerRecovered","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"cr","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CRCircuitBreakerTriggered","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"cr","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CRSoftAlertRecovered","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"cr","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"CRSoftAlertTriggered","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"maxDeposit","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"maxWithdraw","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"minSolvency","type":"uint256"}],"name":"CircuitBreakersUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldHook","type":"address"},{"indexed":true,"internalType":"address","name":"newHook","type":"address"}],"name":"ComplianceHookUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newFeeBps","type":"uint256"}],"name":"DepositFeeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldBuffer","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newBuffer","type":"uint256"}],"name":"DynamicBufferUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldRecipient","type":"address"},{"indexed":true,"internalType":"address","name":"newRecipient","type":"address"}],"name":"EmergencyRecipientUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"EscrowForfeitTriggered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldToken","type":"address"},{"indexed":true,"internalType":"address","name":"newToken","type":"address"}],"name":"EscrowTokenUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"}],"name":"FounderWealthCaptured","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"address","name":"destination","type":"address"}],"name":"FundsSwept","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"totalGenesisDeposits","type":"uint256"}],"name":"GenesisPhaseDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tvlAtEnd","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"GenesisPhaseEnded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"HedgingReserveUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InsuranceFundContribution","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"insuranceFund","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InsuranceInjectionReceived","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"L1AssetsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"address","name":"bridge","type":"address"}],"name":"L1DepositRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"attempted","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"allowed","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"hour","type":"uint256"}],"name":"LiquidationRateLimited","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"OffChainAssetsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"maxChangeRateBps","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"cooldown","type":"uint256"}],"name":"OffChainUpdateParamsChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldOracle","type":"address"},{"indexed":true,"internalType":"address","name":"newOracle","type":"address"}],"name":"PriceOracleUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldAPY","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newAPY","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"ProjectedAPYUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"}],"name":"RewardReserveCaptured","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldRecipient","type":"address"},{"indexed":true,"internalType":"address","name":"newRecipient","type":"address"}],"name":"RewardReserveRecipientUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldAnchor","type":"address"},{"indexed":true,"internalType":"address","name":"newAnchor","type":"address"}],"name":"TrustAnchorUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldNode","type":"address"},{"indexed":true,"internalType":"address","name":"newNode","type":"address"}],"name":"VerificationNodeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"Withdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"requestId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"}],"name":"WithdrawalClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldCooldown","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newCooldown","type":"uint256"}],"name":"WithdrawalCooldownUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"requestId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"assets","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"unlockTimestamp","type":"uint256"}],"name":"WithdrawalRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldOracle","type":"address"},{"indexed":true,"internalType":"address","name":"newOracle","type":"address"}],"name":"YieldOracleUpdated","type":"event"},{"inputs":[],"name":"CRITICAL_CR_THRESHOLD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GENESIS_TVL_THRESHOLD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GRACE_PERIOD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GROWTH_PHASE_FEE_BPS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GROWTH_TVL_THRESHOLD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MATURITY_PHASE_FEE_BPS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_DEPOSIT_FEE_BPS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAUSER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SAFE_CR_THRESHOLD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"STRATEGIST_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"WARNING_CR_THRESHOLD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"asset","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"grossYieldAmount","type":"uint256"}],"name":"captureFounderWealth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"checkAndPause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"requestId","type":"uint256"}],"name":"claimWithdrawal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"complianceHook","outputs":[{"internalType":"contract IComplianceHook","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"convertToAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"convertToShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"crCircuitBreakerActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"crCircuitBreakerCooldown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"crCircuitBreakerTriggeredAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"crSoftAlertActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"}],"name":"deposit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"depositFeeBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dynamicCRBuffer","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"}],"name":"emergencyExit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"emergencyRecipient","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"endGenesisPhase","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"escrowToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"exchangeDepositAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"founder","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"founderFeeBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"genesisPhaseActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"genesisPhaseDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"genesisPhaseEndedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentFounderRevenueBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentRewardReserveBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getEffectivePerformanceFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getExchangeDepositAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getProjectedAPY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getSolvencyRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getWithdrawalRequestCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"grossPerformanceFeeBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hedgingReserve","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"hourlyLiquidationAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset_","type":"address"},{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"admin_","type":"address"},{"internalType":"address","name":"strategist_","type":"address"},{"internalType":"address","name":"founder_","type":"address"},{"internalType":"uint256","name":"founderFeeBps_","type":"uint256"},{"internalType":"uint256","name":"performanceFeeBps_","type":"uint256"},{"internalType":"bool","name":"whitelistEnabled_","type":"bool"},{"internalType":"address","name":"complianceHook_","type":"address"},{"internalType":"uint256","name":"maxTotalAssets_","type":"uint256"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"injectFromInsurance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"insolventSince","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"insuranceFund","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"insuranceFundBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"insuranceFundBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l1Assets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l1DepositAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastFounderCaptureTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastHedgingReserveTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastL1AssetsTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastOffChainAssetsTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastReportedTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"maxDeposit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxDepositLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxFounderCaptureBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxLiquidationPerHourBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"maxMint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxOffChainChangeRateBps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"maxRedeem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTotalAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"maxWithdraw","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWithdrawLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minSolvencyThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"}],"name":"mint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"offChainAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"offChainUpdateCooldown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"previewDeposit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"previewMint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"previewRedeem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"previewWithdraw","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"priceOracle","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"primeAccounts","outputs":[{"internalType":"bool","name":"active","type":"bool"},{"internalType":"uint256","name":"allocatedAssets","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"projectedAPY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"recoverCRCircuitBreaker","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"redeem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"callerConfirmation","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"requestL1Deposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"}],"name":"requestWithdrawal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"bucketId","type":"uint8"}],"name":"resetBucketBootstrap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"prime","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"returnFromPrime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardReserveRecipient","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxDepositLimit","type":"uint256"},{"internalType":"uint256","name":"_maxWithdrawLimit","type":"uint256"},{"internalType":"uint256","name":"_minSolvencyThreshold","type":"uint256"}],"name":"setCircuitBreakers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_hook","type":"address"}],"name":"setComplianceHook","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bps","type":"uint256"}],"name":"setDepositFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bufferBps","type":"uint256"}],"name":"setDynamicBuffer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newRecipient","type":"address"}],"name":"setEmergencyRecipient","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_escrowToken","type":"address"}],"name":"setEscrowToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_factory","type":"address"}],"name":"setFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_founder","type":"address"}],"name":"setFounder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bps","type":"uint256"}],"name":"setFounderFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_insuranceFund","type":"address"}],"name":"setInsuranceFund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bps","type":"uint256"}],"name":"setInsuranceFundBps","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"setL1DepositAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bps","type":"uint256"}],"name":"setMaxFounderCaptureBps","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxTotalAssets","type":"uint256"}],"name":"setMaxTotalAssets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxChangeRateBps","type":"uint256"},{"internalType":"uint256","name":"_cooldown","type":"uint256"}],"name":"setOffChainUpdateParams","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"bps","type":"uint256"}],"name":"setPerformanceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_oracle","type":"address"}],"name":"setPriceOracle","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"active","type":"bool"}],"name":"setPrimeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_recipient","type":"address"}],"name":"setRewardReserveRecipient","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_treasury","type":"address"}],"name":"setTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_anchor","type":"address"}],"name":"setTrustAnchor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_node","type":"address"}],"name":"setVerificationNode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setWhitelistEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"setWhitelisted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_cooldown","type":"uint256"}],"name":"setWithdrawalCooldown","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_oracle","type":"address"}],"name":"setYieldOracle","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"sweepToExchange","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"prime","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferToPrime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasury","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"trustAnchor","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"updateHedgingReserve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"updateL1Assets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"updateOffChainAssets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_projectedAPY","type":"uint256"}],"name":"updateProjectedAPY","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"verificationNode","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whitelistEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"withdraw","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawalCooldown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"withdrawalRequests","outputs":[{"internalType":"uint256","name":"assets","type":"uint256"},{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"uint256","name":"unlockTimestamp","type":"uint256"},{"internalType":"bool","name":"claimed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"yieldOracle","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
60e080604052346200089f576200643b8038038091620000208285620008bf565b833981019060c0818303126200089f578051906001600160a01b03821682036200089f5760208101516001600160401b0381116200089f578362000066918301620008ff565b604082015190936001600160401b0382116200089f5762000089918301620008ff565b620000976060830162000968565b92620000b460a0620000ac6080860162000968565b940162000968565b85516001600160401b0381116200056157600354600181811c9116801562000894575b60208210146200054257601f811162000830575b50806020601f8211600114620007a8575f916200079c575b508160011b915f199060031b1c1916176003555b82516001600160401b0381116200056157600454600181811c9116801562000791575b60208210146200054257601f811162000729575b50806020601f8211600114620006a1575f9162000695575b508160011b915f199060031b1c1916176004555b6040519060405f6020840163313ce56760e01b8152600485526200019e85620008a3565b8451906001600160a01b0387165afa5f5190836040528062000689575b806200067d575b15620006745760ff1660015b156200066b575b60a052608083905260017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f008190556103e8600b819055600c805460ff1916909217909155601255600560165562093a806028556107d0602955610258602a556101f4602b81905561384060335560355560c052600a805460ff60a01b1916600160a01b1790556001600160a01b038516156200065c5750603b80546001600160a01b0383166001600160a01b0319821681179092559060ff60a01b906200029c906200097d565b60a01b166001600160a01b03929092166001600160a81b0319919091161717603b5583516001600160401b0381116200056157603954600181811c9116801562000651575b60208210146200054257601f8111620005ed575b506020601f8211600114620005815781929394955f9262000575575b50508160011b915f199060031b1c1916176039555b8051906001600160401b0382116200056157603a54600181811c9116801562000556575b60208210146200054257601f8111620004de575b50602090601f83116001146200046c57620003bd9392915f918362000460575b50508160011b915f199060031b1c191617603a555b6200039e8362000a2d565b50620003aa8162000a9d565b50620003b68362000b3e565b5062000b3e565b5060018060a01b0319600a5416600a555f600f5560018060a01b031660018060a01b031960235416176023556103e8600b5560ff19601a5416601a555f601d5560056016556107d0602955610258602a5562093a80602855613840603355600160ff19600c541617600c556101f4602b55604051615821908162000bda823960805181614459015260a05181614418015260c0518181816136fe01526140d30152f35b015190505f806200037e565b90603a5f5260205f20915f5b601f1985168110620004c55750918391600193620003bd9695601f19811610620004ac575b505050811b01603a5562000393565b01515f1960f88460031b161c191690555f80806200049d565b9192602060018192868501518155019401920162000478565b603a5f527fa2999d817b6757290b50e8ecf3fa939673403dd35c97de392fdb343b4015ce9e601f840160051c8101602085106200053a575b601f830160051c820181106200052e5750506200035e565b5f815560010162000516565b508062000516565b634e487b7160e01b5f52602260045260245ffd5b90607f16906200034a565b634e487b7160e01b5f52604160045260245ffd5b015190505f8062000311565b60395f5260205f20905f5b601f1984168110620005d4575060019394959683601f19811610620005bb575b505050811b0160395562000326565b01515f1960f88460031b161c191690555f8080620005ac565b9091602060018192858b0151815501930191016200058c565b60395f527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d3601f830160051c81016020841062000649575b601f830160051c820181106200063d575050620002f5565b5f815560010162000625565b508062000625565b90607f1690620002e1565b63d92e233d60e01b8152600490fd5b506012620001d5565b505f80620001ce565b5060ff811115620001c2565b5060203d1015620001bb565b90508401515f62000166565b60045f90815292507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b905b601f198316841062000710576001935082601f19811610620006f7575b5050811b016004556200017a565b8601515f1960f88460031b161c191690555f80620006e9565b86810151825560209384019360019092019101620006cc565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c8101916020841062000786575b601f0160051c01905b8181106200077a57506200014e565b5f81556001016200076b565b909150819062000762565b90607f16906200013a565b90508701515f62000103565b60035f90815292507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b905b601f198316841062000817576001935082601f19811610620007fe575b5050811b0160035562000117565b8901515f1960f88460031b161c191690555f80620007f0565b89810151825560209384019360019092019101620007d3565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101602084106200088c575b601f830160051c8201811062000880575050620000eb565b5f815560010162000868565b508062000868565b90607f1690620000d7565b5f80fd5b604081019081106001600160401b038211176200056157604052565b601f909101601f19168101906001600160401b038211908210176200056157604052565b6001600160401b0381116200056157601f01601f191660200190565b9080601f830112156200089f578151906200091a82620008e3565b926200092a6040519485620008bf565b828452602091602084830101116200089f575f5b838110620009545750505060205f918301015290565b81810183015185820184015282016200093e565b51906001600160a01b03821682036200089f57565b6001600160a01b03811615620009f0575f8091604051602081019063313ce56760e01b825260048152620009b181620008a3565b51915afa3d1562000a24573d90620009c982620008e3565b91620009d96040519384620008bf565b82523d5f602084013e5b8062000a17575b620009f6575b50601290565b6020818051810103126200089f576020015160ff8111620009f05760ff1690565b50602081511015620009ea565b606090620009e3565b6001600160a01b03165f8181525f805160206200641b833981519152602052604090205460ff1662000a98575f8181525f805160206200641b83398151915260205260408120805460ff191660011790553391905f80516020620063fb8339815191528180a4600190565b505f90565b6001600160a01b03165f8181527ffeef3ffd450c6ab26115062dee850248a020d45e0eb3ee495cd60346ccab0cc960205260409020547f17a8e30262c1f919c33056d877a3c22b95c2f5e4dac44683c1c2323cd79fbdb0919060ff1662000b3857815f52600560205260405f20815f5260205260405f20600160ff1982541617905533915f80516020620063fb8339815191525f80a4600190565b50505f90565b6001600160a01b03165f8181527f99f2891db7a8db76249871a02b43b68c0bb8f22ef8a3bc1034ae9375ef6b7c3c60205260409020547f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a919060ff1662000b3857815f52600560205260405f20815f5260205260405f20600160ff1982541617905533915f80516020620063fb8339815191525f80a460019056fe60406080815260049081361015610014575f80fd5b5f915f3560e01c90816301e1d11414613ff057816301ffc9a714613f5157816303d00e7914613f2a578163052d9e7e14613ef457816306fdde0314613d7857816307a2d13a146133ba578163095ea7b314613cd057816309dad40014613cac5781630a28a47714613c8e57816313dbb10214613c72578163165c29e514613c2d57816317881aac14613c0f5781631803beff14613bf157816318160ddd14613bd35781631b03593214613b3057816320a1708b14613ac85781632311a8af14613aaa57816323b872dd1461399e57816324540cc114613980578163248a9ca3146139565781632630c12f146139305781632736d5711461381c57816327a5de0a1461380057816327d6a1e6146137e457816328833a9f146136c15781632eaa41d11461357a5781632f2ff15d146136875781632fe319da14613660578163313ce56714613642578163350dd94b1461362657816336568abe146135c957816338d52e0f1461359d5781633b16735a1461357f5781633d9524cb1461357a5781633dbc645d1461355c5781633f4ba83a146134dc578163402d267d146134b7578163456db97214613499578163490ae210146134275781634cbe6b80146133bf5781634cdad506146133ba5781634d853ee5146133935781634e5a23281461331e5781634ee076491461320557816351fb012d146131e257816352269bab14613131578163530e784f146130c95781635b028ed1146130a25781635bb4780814612fe65781635c5b7f6514612fc85781635c975abb14612fa55781635db6aefc14612e6f5781635f78cec914612e4b57816361d027b314612e245781636b7fb55214612dfd5781636c427ce514612dda5781636c48dbc814612dbc5781636c9a9fb014612d9e5781636d08b13b14612d6e5781636e553f6514612cc85781636fef958a14612c0f57816370897b2314612bdf57816370a0823114612bbf57816370cf46b514612b2f578163740f316314612b11578163744c0f1114612a4b5781637477d47d14612a2d57816376d3eb1214612a06578163792f9683146129e8578163794c779c146129c15781637a341bc71461297a5781637ce48d991461295f5781637f513e63146128ff5781638456cb59146128a6578163848ed0791461283e5781638935032a146128245781638b7b7d6f146127bc5781638d148eb61461228157816391d148541461223c5781639281aa0b146121ea57816394bf804d1461214f57816395d89b4114611f8f57816396d0d17414611f6a57816397d3e09b14611e5d578163981372e114611dd85781639e3f5e6214611dba5781639ee679e814611aef578163a01cc6e514611a85578163a217fddf14611a6a578163a378a32414611a2f578163a441d067146118c2578163a7f0e3421461189a578163a9059cbb14611869578163a9b5e5991461184a578163aa45097f146117f7578163ab2e8de7146117da578163ab879827146117bb578163ae81feed14611794578163b3d7f6b914611774578163b460af94146116e6578163b4a8be82146116c7578163b63c44e7146116a8578163b790230314611680578163b9d7bd331461164e578163ba0876521461159c578163ba9312a81461157d578163bc2e47b71461155b578163bd15afd914611506578163be4be0031461136b578163be9ee11f14611343578163c1a287e214611326578163c3c05293146112dd578163c45a0155146112b5578163c53226de14611298578163c63936e714610b69578163c63d75b614611272578163c6e6f59214611252578163cb0ee68014611233578163cbde2cdc14611214578163ce96cb77146111eb578163cf274c0514611105578163d0cb6fc8146110e1578163d0d4aa1314610f8b578163d547741f14610f4b578163d6c89c6014610f2c578163d76622cc14610d59578163d820f49214610d3a578163d905777e14610d02578163d936547e14610cc6578163dbd627de14610ca7578163dd15c22714610c3d578163dd62ed3e14610bf3578163de50e43714610ba7578163e18b904414610b88578163e1aec3de14610b69578163e4a2238914610b4c578163e63ab1e914610b11578163ec2f84c514610a56578163ef8b30f714610a1d578163efdb85fd146109fe578163efe77bda146109bc578163f0f442601461094d578163f84444361461073b57508063f87fb7851461071d578063f8f7c279146106f6578063fab39ce1146106d8578063fcc48030146106a25763fefa625f1461067c575f80fd5b3461069e578160031936011261069e576020906106976147bd565b9051908152f35b5080fd5b503461069e57602036600319011261069e57806020926001600160a01b036106c8614088565b1681526037845220549051908152f35b503461069e578160031936011261069e576020906032549051908152f35b503461069e578160031936011261069e576020906001600160a01b03602154169051908152f35b503461069e578160031936011261069e57602090600d549051908152f35b83833461069e57602090816003193601126109495783359161075b614daa565b610763614e04565b33845260378152610776838386206140f7565b50906003820180549260ff841661092157600281015442106108f95760010154906107a082614942565b9384601554106108d15760ff1916600117905530156108bb57305f525f8252835f20549681881061088c5750805f917f2d43eb174787155132b52ddb6b346e2dca99302eac3df4466dbeff953d3c84d19697983084528385520385832055806002540360025584519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef833092a361083c8260155461438a565b60155561085a82336001600160a01b0361085461443c565b16614e3a565b82519485528401523392a260017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005580f35b845163391434e360e21b81523091810191825260208201899052604082019290925281906060010390fd5b0390fd5b60248787865191634b637e8f60e11b8352820152fd5b8886517ffd8be273000000000000000000000000000000000000000000000000000000008152fd5b8785517f5f300731000000000000000000000000000000000000000000000000000000008152fd5b8785517f646cf558000000000000000000000000000000000000000000000000000000008152fd5b8280fd5b905034610949576020366003190112610949576001600160a01b03610970614088565b6109786147f7565b169182156109965750506001600160a01b0319602254161760225580f35b517fd92e233d000000000000000000000000000000000000000000000000000000008152fd5b83346109fb5760203660031901126109fb576001600160a01b036109de614088565b6109e66147f7565b166001600160a01b0319600954161760095580f35b80fd5b50503461069e578160031936011261069e576020906026549051908152f35b8284346109fb5760203660031901126109fb5750610697610a5160209335612710610a4a60165483614359565b049061438a565b61499a565b83833461069e578060031936011261069e578235602435610a756147f7565b6113888211610ae95761012c8110610ac1577fae18f987433cf17b8d00bfbffdb83fd3421ae9b509f57d601d3fc16a1c330aea9394508160295580602a5582519182526020820152a180f35b8483517fec7bf429000000000000000000000000000000000000000000000000000000008152fd5b8483517f7540b9d8000000000000000000000000000000000000000000000000000000008152fd5b50503461069e578160031936011261069e57602090517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b50503461069e578160031936011261069e57602090516127748152f35b50503461069e578160031936011261069e57602090601e549051908152f35b50503461069e578160031936011261069e576020906033549051908152f35b90503461094957602036600319011261094957803591610bc56147f7565b610bb890818411610bd95750505060125580f35b9260449351926373ab893560e11b84528301526024820152fd5b50503461069e578060031936011261069e57602091610c10614088565b82610c1961409e565b926001600160a01b038093168152600186522091165f528252805f20549051908152f35b83346109fb5760203660031901126109fb57610c57614088565b610c5f6147f7565b601854906001600160a01b0380911691826001600160a01b0319821617601855167fde70a1dca7d6c2547c1854d8f03076190d36684e3c90be0d3fce81eedc8c3f728380a380f35b50503461069e578160031936011261069e576020906029549051908152f35b50503461069e57602036600319011261069e5760ff816020936001600160a01b03610cef614088565b168152601b855220541690519015158152f35b50503461069e57602036600319011261069e57602090610697610d23614088565b6001600160a01b03165f525f60205260405f205490565b50503461069e578160031936011261069e57602090601d549051908152f35b91905034610949578060031936011261094957610d74614088565b9160243590610d816147f7565b610d89614daa565b6001600160a01b039081851691828752602092603c845260ff868920541615610f1d57808852603c84528760018782200186815410155f14610f16575052603c8352600185882001610ddc85825461438a565b90555b80610de861443c565b169385519684886024816370a0823160e01b998a825230898301525afa978815610f0c578998610ed5575b5091610e2f602492869594309084610e2961443c565b166154fa565b610e3761443c565b169486519586938492835230908301525afa928315610ecc57508492610e98575b84610e6e610e66868661438a565b60155461423c565b60155560017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005580f35b90809250813d8311610ec5575b610eaf8183614154565b81010312610ec1575181610e66610e58565b5f80fd5b503d610ea5565b513d86823e3d90fd5b93929097508484813d8311610f05575b610eef8183614154565b81010312610ec157925196919291610e2f610e13565b503d610ee5565b87513d8b823e3d90fd5b5550610ddf565b828651630444ff0360e51b8152fd5b50503461069e578160031936011261069e576020906028549051908152f35b91905034610949578060031936011261094957610f879135610f826001610f7061409e565b93838752600560205286200154614920565b61515c565b5080f35b905034610949576020806003193601126110dd578135610fa9614daa565b6001600160a01b03806011541633036110b5578290610fc661443c565b169360248651809681936370a0823160e01b835230908301525afa9283156110ab57859361107c575b50610ffd601554809461438a565b808210156110745750925b83611036575b8460017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005580f35b611061847fbce15fad2f4318588e9c029157a90b3d21de1651e2bff0db05307ea89b5a2a789461423c565b601555519283523392a25f80808061100e565b905092611008565b9092508181813d83116110a4575b6110948183614154565b81010312610ec15751915f610fef565b503d61108a565b84513d87823e3d90fd5b8385517f8ce905cb000000000000000000000000000000000000000000000000000000008152fd5b8380fd5b50503461069e578160031936011261069e5760209060ff6031541690519015158152f35b83833461069e578160031936011261069e5761111f6147f7565b60315460ff8116156111c35761113a6032546033549061423c565b42106111b4576111486147bd565b90612774821061118c577fabc715bbde114c71e2a48d0808f466cf2b48af8aa522db2fb48f993d57e2bd0c93945060ff19166031558151908152426020820152a180f35b8483517f192ddd25000000000000000000000000000000000000000000000000000000008152fd5b8382516301f0c1ef60e21b8152fd5b8382517ff939060a000000000000000000000000000000000000000000000000000000008152fd5b50503461069e57602036600319011261069e5760209061069761120f610d23614088565b614942565b50503461069e578160031936011261069e57602090600b549051908152f35b50503461069e578160031936011261069e576020906012549051908152f35b8284346109fb5760203660031901126109fb57506106976020923561499a565b50503461069e57602036600319011261069e57602090610697611293614088565b614789565b50503461069e578160031936011261069e57602090516126ac8152f35b50503461069e578160031936011261069e576020906001600160a01b03603854169051908152f35b905034610949576020366003190112610949576001600160a01b03611300614088565b6113086147f7565b169182156109965750506001600160a01b0319601154161760115580f35b50503461069e578160031936011261069e57602090516138408152f35b50503461069e578160031936011261069e576020906001600160a01b03601754169051908152f35b50503461069e578160031936011261069e576113856148c5565b6001602654801515806114f9575b6114de575b5080806114ca575b806114bd575b61142f575b61142757602754806113c1575050426027555b80f35b6113ce613840914261438a565b116113d7575080f35b60065460ff8116156113e857505080f35b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258916001602092611417614e04565b60ff19161760065551338152a180f35b508060275580f35b5081806001600160a01b0360215416835160208101907f38b51ce10000000000000000000000000000000000000000000000000000000082523060248201526024815261147b81614124565b51915afa61148761420d565b90806114b2575b156114ab57806020806114a69351830101910161447c565b6113ab565b50816113ab565b50602081511461148e565b506103e8600254116113a6565b506001600160a01b036021541615156113a0565b6114e66147bd565b106114f2575b5f611398565b50816114ec565b506103e860025411611393565b91905034610949576020366003190112610949577f3bd5c717fa43a93b4f9575f6a96b9bdb41c4d1751b9180858c5ed412ee43c427913561154561484c565b603454908060345582519182526020820152a180f35b83903461069e57602036600319011261069e576115766147f7565b35601d5580f35b50503461069e578160031936011261069e576020906007549051908152f35b905082346109fb57506115ae366141d8565b939190506115cd846001600160a01b03165f525f60205260405f205490565b80821161160557506115de90614942565b50517f0f3a9a37000000000000000000000000000000000000000000000000000000008152fd5b91517fb94abeec0000000000000000000000000000000000000000000000000000000081526001600160a01b039094169284019283526020830152604082015281906060010390fd5b9050346109495760203660031901126109495780359161166c6147f7565b6107d090818411610bd957505050600f5580f35b50503461069e578160031936011261069e576020906001600160a01b03601154169051908152f35b50503461069e578160031936011261069e576020906024549051908152f35b50503461069e578160031936011261069e576020906035549051908152f35b905082346109fb57506116f8366141d8565b9391905061171a61120f856001600160a01b03165f525f60205260405f205490565b80821161172b57506115de9061496e565b91517ffe9cceec0000000000000000000000000000000000000000000000000000000081526001600160a01b039094169284019283526020830152604082015281906060010390fd5b8284346109fb5760203660031901126109fb575061069760209235614724565b50503461069e578160031936011261069e5760209060ff60315460081c1690519015158152f35b50503461069e578160031936011261069e576020906016549051908152f35b50503461069e578160031936011261069e57602090516103e88152f35b50503461069e578060031936011261069e576113be90611815614088565b906001600160a01b0361182661400c565b9261182f6147f7565b168452603c60205283209060ff801983541691151516179055565b50503461069e578160031936011261069e576020906008549051908152f35b50503461069e578060031936011261069e57602090611893611889614088565b60243590336149c6565b5160018152f35b50503461069e578160031936011261069e576020906001600160a01b03601f54169051908152f35b91905034610949576020366003190112610949576118de614088565b6118e66147f7565b60ff6006541615611a08576001600160a01b039283601754169182156119e057828582160361199a575060208461191b61443c565b169160248551809481936370a0823160e01b835230908301525afa928315610ecc57508492611966575b508161194f578380f35b61195f928460155561085461443c565b5f80808380f35b9091506020813d602011611992575b8161198260209383614154565b81010312610ec15751905f611945565b3d9150611975565b83517fc929326c0000000000000000000000000000000000000000000000000000000081526001600160a01b039182169281019283529216602082015281906040010390fd5b5082517f21415826000000000000000000000000000000000000000000000000000000008152fd5b50517fa85cbe66000000000000000000000000000000000000000000000000000000008152fd5b50503461069e578160031936011261069e57602090517f17a8e30262c1f919c33056d877a3c22b95c2f5e4dac44683c1c2323cd79fbdb08152f35b50503461069e578160031936011261069e5751908152602090f35b83346109fb5760203660031901126109fb57611a9f614088565b611aa76147f7565b601f54906001600160a01b0380911691826001600160a01b0319821617601f55167fafa6da48aaac5028ba3c2df8f6ef83735c89d8e75f9163df5234ca07e96d85a28380a380f35b91905034610ec15760209283600319360112610ec157823592611b10614daa565b611b18614e04565b60255480151580611db1575b611d7c5750611b328461496e565b908115611d6e57611b448230336149c6565b335f5260378652835f205494611b5c6028544261423c565b335f5260378852855f20938651608081019567ffffffffffffffff9682811088821117611d5b5789528482528a82018381528983019085825260608401925f845280549068010000000000000000821015611d485790611bc1916001820181556140f7565b949094611d365791611bf794939160039351855551600185015551600284015551151591019060ff801983541691151516179055565b865192888452898401528683015260608201527f7a74e1828c0c82a2b291536f39b26a8feef6e0965de2521452f2a501aa7bc6b660803392a26001600160a01b03601354169081151580611d22575b611c79575b5050505060017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005551908152f35b813b15610ec1575f809260248751809581937ff66e88b100000000000000000000000000000000000000000000000000000000835233878401525af19283611cf7575b505050611ccc575b808080611c4b565b7f843fec29c0c1f4eba5434382c4cccbd979b52d752258a50d2b459ec3442a8b2d339180a25f611cc4565b90918093945011611d0f575082525f905f8080611cbc565b604190634e487b7160e01b5f525260245ffd5b50335f525f87526103e8855f205410611c46565b5f89634e487b7160e01b82525260245ffd5b60418a634e487b7160e01b5f525260245ffd5b604187634e487b7160e01b5f525260245ffd5b8351631f2a200560e01b8152fd5b60449250848451927f016d0ef10000000000000000000000000000000000000000000000000000000084528301526024820152fd5b50808511611b24565b8234610ec1575f366003190112610ec157602090602f549051908152f35b8234610ec1576020366003190112610ec1578135611df46147f7565b62278d008111611e36577f339836fabaa5f0eb442f133ec346175cc489ac04dbca653e7dd68dd1c6b563199250602854908060285582519182526020820152a1005b50517ff31366db000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1576020366003190112610ec1578135611e796147f7565b611e81614daa565b611e89614e04565b8015611f5c576001600160a01b03928360095416908115611f3557507fc26162413ff2ec890c3e6ee61d6bc8ffb60f1fe781127dec50321adf1c880b1593611ee783611f0c93611edb8260155461438a565b6015558361085461443c565b600954169251928392839092916001600160a01b036020916040840195845216910152565b0390a160017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055005b83517fd9241d30000000000000000000000000000000000000000000000000000000008152fd5b5051631f2a200560e01b8152fd5b34610ec1576020366003190112610ec157611f8d90611f8761484c565b356145a9565b005b8234610ec1575f366003190112610ec157603a5491611fad83614321565b15612082575080515f92611fc081614321565b8083529060209060019081811690811561205a5750600114611fff575b505050611fef81611ffb940382614154565b905b519182918261401b565b0390f35b603a5f90815295507fa2999d817b6757290b50e8ecf3fa939673403dd35c97de392fdb343b4015ce9e5b8387106120475750505050611fef816020611ffb9582010194611fdd565b8054858801840152958201958101612029565b611ffb975085935060209250611fef94915060ff191682840152151560051b82010194611fdd565b915080515f9280549061209482614321565b8084529160209160019182811690811561212457506001146120ca575b505050506120c481611ffb940382614154565b90611ff1565b5f90815295507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b83871061211157505050506120c4816020611ffb9582010194866120b1565b80548588018401529582019581016120f2565b9050611ffb9750859350602092506120c494915060ff191682840152151560051b82010194866120b1565b905034610ec15781600319360112610ec15780359161216c61409e565b9161217683614789565b80851161219c5750506121968361218e602095614724565b8094336151d1565b51908152f35b846108b79293519485947f284ff66700000000000000000000000000000000000000000000000000000000865285016040919493926001600160a01b03606083019616825260208201520152565b8234610ec15780600319360112610ec157611f8d90612207614088565b906001600160a01b0361221861400c565b926122216147f7565b165f52601b6020525f209060ff801983541691151516179055565b8234610ec15780600319360112610ec15760209161225861409e565b90355f52600583526001600160a01b03825f2091165f52825260ff815f20541690519015158152f35b8234610ec157610160366003190112610ec15761229c614088565b67ffffffffffffffff9290602435848111610ec1576122be9036908401614192565b91604435858111610ec1576122d69036908301614192565b94606435906001600160a01b039182811695868203610ec1576084358481168103610ec15760a4359385851692838603610ec15760e43597610104359b8c1515809d03610ec157610124359b898d16809d03610ec157600a5460ff8160a01c166127ad578a60385416801580156127a3575b61275d57507fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000017600a55156109965750878a16603b54906001600160a01b03199b818d841617603b556123b190615635565b60a01b74ff000000000000000000000000000000000000000016917fffffffffffffffffffffff000000000000000000000000000000000000000000161717603b55815183811161274a5780612408603954614321565b93601f948581116126de575b5060209085831160011461265a575f9261264f575b50508160011b915f199060031b1c1916176039555b8c51928311611d0f5750612453603a54614321565b8181116125ef575b5060209082116001146125675790806124b0939260019d5f9261255c575b50505f19600383901b1c1916908c1b17603a555b61249684614ee5565b506124a081614f85565b506124aa84615037565b50615037565b50600a805487168217905560c435600f551561255557505b1682602354161760235580151580612549575b612540575b5060ff199260ff84601a5416911617601a5581612531575b505061014435601d5560056016556107d0602955610258602a5562093a80602855613840603355600c541617600c556101f4602b555f80f35b601c541617601c5582806124f8565b600b55846124e0565b506107d08111156124db565b90506124c8565b015190508d80612479565b601f19821690603a5f527fa2999d817b6757290b50e8ecf3fa939673403dd35c97de392fdb343b4015ce9e915f5b8181106125d7575091839160019e8f94956124b09796106125bf575b505050811b01603a5561248d565b01515f1960f88460031b161c191690558d80806125b1565b8e830151845560019093019260209283019201612595565b603a5f527fa2999d817b6757290b50e8ecf3fa939673403dd35c97de392fdb343b4015ce9e8280850160051c82019260208610612646575b0160051c01905b81811061263b575061245b565b5f815560010161262e565b92508192612627565b015190508f80612429565b60395f9081527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d39350601f198516905b8181106126c657509084600195949392106126ae575b505050811b0160395561243e565b01515f1960f88460031b161c191690558f80806126a0565b9293602060018192878601518155019501930161268a565b90915060395f527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d38580850160051c82019260208610612741575b9085949392910160051c01905b8181106127335750612414565b5f8155849350600101612726565b92508192612719565b604182634e487b7160e01b5f525260245ffd5b83517f05523251000000000000000000000000000000000000000000000000000000008152338187019081526001600160a01b0390921660208301529081906040010390fd5b5080331415612348565b50505163abd5ec5d60e01b8152fd5b34610ec1576020366003190112610ec1576127d5614088565b6127dd6147f7565b602154906001600160a01b0380911691826001600160a01b0319821617602155167fc8ba30846f19c03b528bf19c3795d20275f17cf3d6001593ae9b8eb610b8d5625f80a3005b8234610ec1575f366003190112610ec157602090515f8152f35b34610ec1576020366003190112610ec157612857614088565b61285f6147f7565b602354906001600160a01b0380911691826001600160a01b0319821617602355167f9c20ea241bd183f9cde5f4c3baabe1f5d7bba2cda2a4a227977edb1e0af3d8ea5f80a3005b8234610ec1575f366003190112610ec15760207f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258916128e36148c5565b6128eb614e04565b600160ff19600654161760065551338152a1005b8234610ec1576020366003190112610ec1577f202cdbfa2dfe28bc043397ee3fd0bec161dc07d2af1883e6a0561c56118cef2f913561293c61484c565b601e8054908290559151918252602082015242604082015280606081015b0390a1005b8234610ec1575f366003190112610ec1576020905160648152f35b905034610ec1576020366003190112610ec1576001600160a01b0361299d614088565b6129a56147f7565b1691821561099657600a80546001600160a01b03191684179055005b8234610ec1575f366003190112610ec1576020906001600160a01b03601c54169051908152f35b8234610ec1575f366003190112610ec157602090600f549051908152f35b8234610ec1575f366003190112610ec1576020906001600160a01b03602354169051908152f35b8234610ec1575f366003190112610ec1576020906030549051908152f35b905034610ec1576020366003190112610ec157803560ff8116809103610ec157612a736147f7565b80612a875750505060ff19602d5416602d55005b60018103612a9e575050602d805461ff0019169055005b600203612ab557505062ff000019602d5416602d55005b602060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601c60248201527f4b65726e655661756c743a20696e76616c6964206275636b65744964000000006044820152fd5b8234610ec1575f366003190112610ec157602090602e549051908152f35b8234610ec1575f366003190112610ec157612b486147f7565b600c5460ff811615612b985760ff1916600c5542600d557f499000e94863dbf61db7158214f06d3de1480f5152532686555a511171de1d199150612b8a61425d565b8151908152426020820152a1005b50517fbaf02721000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1576020366003190112610ec157602090610697610d23614088565b905034610ec1576020366003190112610ec157803591612bfd6147f7565b6107d090818411610bd957600b849055005b905034610ec15781600319360112610ec157612c29614088565b60243591612c356147f7565b612c3d614daa565b6001600160a01b039081831690815f52603c60205260ff865f20541615612cba5750612c9494600191612c728660155461438a565b6015555f52603c6020525f2001612c8a84825461423c565b905561085461443c565b60017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055005b8551630444ff0360e51b8152fd5b8234610ec15780600319360112610ec157813590612ce461409e565b92612cee84614494565b808411612d22575050612196602093612d19610a51612710612d1260165488614359565b048661438a565b938491336151d1565b91517f79012fb20000000000000000000000000000000000000000000000000000000081526001600160a01b039094169084019081526020810192909252604082015281906060010390fd5b905034610ec1576020366003190112610ec157803591612d8c6147f7565b61271090818411610bd957602b849055005b8234610ec1575f366003190112610ec1576020906019549051908152f35b8234610ec1575f366003190112610ec157602090602a549051908152f35b8234610ec1575f366003190112610ec15760209060ff600c541690519015158152f35b8234610ec1575f366003190112610ec1576020906001600160a01b03601854169051908152f35b8234610ec1575f366003190112610ec1576020906001600160a01b03602254169051908152f35b8234610ec1575f366003190112610ec1576020905169d3c21bcecceda10000008152f35b905034610ec1576020366003190112610ec1578035612e8c61484c565b612e9b603054602a549061423c565b4210612f965760085491602d549060ff8260101c1680612f8b575b612f31575b507f16a5b8b1626b476fb9fa550bcdbf73b086c5b5fcc1f8ac1d63fb694069e70af393612f12918360085583612f1d575b504260305542601955519283924291846040919493926060820195825260208201520152565b0390a1611f8d614ab7565b62ff000019166201000017602d5585612eec565b8315612f7e57612710612f48855b60295490614359565b0484841115612f6f57612f5b858561438a565b1115612ebb57845163f824b4c160e01b8152fd5b612f79848661438a565b612f5b565b612710612f486001612f3f565b506029541515612eb6565b5090516301f0c1ef60e21b8152fd5b8234610ec1575f366003190112610ec15760209060ff6006541690519015158152f35b8234610ec1575f366003190112610ec157602090602b549051908152f35b905034610ec1576020366003190112610ec157613001614088565b9060ff600a5460a01c1661309457603854916001600160a01b03908184168061306557501692831561303f576001600160a01b031983168417603855005b517f5c2609c0000000000000000000000000000000000000000000000000000000008152fd5b836024918751917f744f04d3000000000000000000000000000000000000000000000000000000008352820152fd5b825163abd5ec5d60e01b8152fd5b8234610ec1575f366003190112610ec1576020906001600160a01b03600954169051908152f35b34610ec1576020366003190112610ec1576130e2614088565b6130ea6147f7565b602054906001600160a01b0380911691826001600160a01b0319821617602055167f56b5f80d8cac1479698aa7d01605fd6111e90b15fc4d2b377417f46034876cbd5f80a3005b8234610ec1576060366003190112610ec157813560243591604435936131556147f7565b841515806131d7575b6131b057507fc7ed7b235dfff6348fa79c5f1e28650a6a2b7f3b9182c115674b5124efd7b47c9361295a9183602455846025558160265551938493846040919493926060820195825260208201520152565b90517f3cf5e4ca000000000000000000000000000000000000000000000000000000008152fd5b50612328851061315e565b8234610ec1575f366003190112610ec15760209060ff601a541690519015158152f35b905034610ec1576020366003190112610ec157803561322261484c565b613231602f54602a549061423c565b4210612f965760145491602d549060ff8260081c1680613313575b6132ba575b507f9a117fa8cacd46c59f95a5327ecab58b4f54453a154e66db6eb6d9991862af2a93612f129183601455836132a8575b5042602f5542601955519283924291846040919493926060820195825260208201520152565b61ff00191661010017602d5585613282565b8315613306576127106132d08560295490614359565b04848411156132f7576132e3858561438a565b111561325157845163f824b4c160e01b8152fd5b613301848661438a565b6132e3565b6127106132d06001612f3f565b50602954151561324c565b8234610ec15780600319360112610ec157613337614088565b906001600160a01b0360243592165f526037602052805f208054831015610ec157608092613364916140f7565b509081549160018101549160ff6003600284015493015416928151948552602085015283015215156060820152f35b8234610ec1575f366003190112610ec1576020906001600160a01b03600a54169051908152f35b614062565b34610ec1576020366003190112610ec1576133d8614088565b6133e06147f7565b601354906001600160a01b0380911691826001600160a01b0319821617601355167fe69a0d5244fdde6db189a435722508e1bcdcdcf5f3a70e2c0cb6331faa0bec915f80a3005b905034610ec1576020366003190112610ec1578035906134456147f7565b6064821161347d577f206dd15151fcc83315419fbe53a71fcf9c09da803767d3dd05f7874e1b9bf645602083858160165551908152a1005b9060449251916373ab893560e11b835282015260646024820152fd5b8234610ec1575f366003190112610ec1576020906027549051908152f35b8234610ec1576020366003190112610ec1576020906106976134d7614088565b614494565b8234610ec1575f366003190112610ec1576134f56147f7565b6006549160ff831615613535577f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020838560ff191660065551338152a1005b90517f8dfc202b000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1575f366003190112610ec1576020906010549051908152f35b6140b4565b8234610ec1575f366003190112610ec1576020906034549051908152f35b8234610ec1575f366003190112610ec1576020906001600160a01b036135c161443c565b915191168152f35b8234610ec15780600319360112610ec1576135e261409e565b90336001600160a01b038316036135fe5750611f8d913561515c565b9050517f6697b232000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1575f366003190112610ec157602090516101f48152f35b8234610ec1575f366003190112610ec15760209060ff6135c16143f1565b8234610ec1575f366003190112610ec1576020906001600160a01b03601354169051908152f35b8234610ec15780600319360112610ec157611f8d91356136bc60016136aa61409e565b93835f5260056020525f200154614920565b6150e3565b905034610ec1576020366003190112610ec15780356136de6147f7565b6136e6614daa565b6136ee614e04565b80156137d5576001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000818116156137b757925b8184161561379057507f8bd6cee8939c04b07fdaff7566e9c8cd94790d512c84969fd08f296557d56e08936137728385611f0c946137678360155461438a565b60155561085461443c565b519182526001600160a01b0390921660208201529081906040820190565b84517f71cce4ab000000000000000000000000000000000000000000000000000000008152fd5b50602254811680156137ca575b92613727565b5080600a54166137c4565b509051631f2a200560e01b8152fd5b8234610ec1575f366003190112610ec1576020906106976143c9565b8234610ec1575f366003190112610ec157602090610697614397565b905034610ec1576020366003190112610ec157803561383961484c565b613848602e54602a549061423c565b4210612f965760075491602d549060ff821680613925575b6138cc575b507ff763735ff81e09c9cdefbd8533319faa4bb0c253bf82065323e7fc36f2ab154093612f129183600755836138bc575b5042602e5542601955519283924291846040919493926060820195825260208201520152565b60ff1916600117602d5585613896565b8315613918576127106138e28560295490614359565b0484841115613909576138f5858561438a565b111561386557845163f824b4c160e01b8152fd5b613913848661438a565b6138f5565b6127106138e26001612f3f565b506029541515613860565b8234610ec1575f366003190112610ec1576020906001600160a01b038254169051908152f35b8234610ec1576020366003190112610ec157602091355f52600582526001815f2001549051908152f35b8234610ec1575f366003190112610ec1576020906025549051908152f35b905034610ec1576060366003190112610ec1576139b9614088565b6139c161409e565b90604435926001600160a01b038216805f526001602052855f20335f52602052855f2054915f1983106139fd575b6020876118938888886149c6565b858310613a65578115613a4f573315613a3957505f908152600160209081528682203383528152908690209185900390915582906118936139ef565b6024905f885191634a1406b160e11b8352820152fd5b6024905f88519163e602df0560e01b8352820152fd5b86517ffb8f41b2000000000000000000000000000000000000000000000000000000008152339181019182526020820193909352604081018690528291506060010390fd5b8234610ec1575f366003190112610ec157602090600e549051908152f35b34610ec1576020366003190112610ec157613ae1614088565b613ae96147f7565b601c54906001600160a01b0380911691826001600160a01b0319821617601c55167f61f1ce30f879f9cf102924220036252115071d6e3e08319f63cc0e514749d4565f80a3005b905034610ec1576020366003190112610ec157613b4b614088565b90613b546147f7565b60ff60065416613bac576001600160a01b03809216928315610996575050601754826001600160a01b0319821617601755167f2cf03ba38270e8e21e9aca8fc329947beb1e77c258d74aa31d032009e5bb5ab85f80a3005b82517fa8beb8fd000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1575f366003190112610ec1576020906002549051908152f35b8234610ec1575f366003190112610ec157602090602c549051908152f35b8234610ec1575f366003190112610ec1576020906014549051908152f35b8234610ec1576020366003190112610ec1576001600160a01b03613c4f614088565b165f52603c602052805f20600160ff825416910154825191151582526020820152f35b8234610ec1575f366003190112610ec157602090516127108152f35b8234610ec1576020366003190112610ec1576106976020923561496e565b8234610ec1575f366003190112610ec1576020905169152d02c7e14af68000008152f35b8234610ec15780600319360112610ec157613ce9614088565b602435903315613d62576001600160a01b0316908115613d4c5760209350335f5260018452825f20825f52845280835f205582519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925843392a35160018152f35b6024845f855191634a1406b160e11b8352820152fd5b6024845f85519163e602df0560e01b8352820152fd5b8234610ec1575f366003190112610ec15760395490613d9682614321565b15613e315780515f92613da881614321565b8083529060209060019081811690811561205a5750600114613dd657505050611fef81611ffb940382614154565b60395f90815295507fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d35b838710613e1e5750505050611fef816020611ffb9582010194611fdd565b8054858801840152958201958101613e00565b80516003545f9350613e4281614321565b80835290602090600190818116908115613ecc5750600114613e71575b5050506120c481611ffb940382614154565b60035f90815295507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b838710613eb957505050506120c4816020611ffb9582010194613e5f565b8054858801840152958201958101613e9b565b611ffb9750859350602092506120c494915060ff191682840152151560051b82010194613e5f565b34610ec1576020366003190112610ec15735801515809103610ec157613f186147f7565b60ff8019601a5416911617601a555f80f35b8234610ec1576020366003190112610ec157602091355f5260368252805f20549051908152f35b905034610ec1576020366003190112610ec157357fffffffff000000000000000000000000000000000000000000000000000000008116809103610ec1576020917f7965db0b000000000000000000000000000000000000000000000000000000008214918215613fc6575b50519015158152f35b7f01ffc9a70000000000000000000000000000000000000000000000000000000014915083613fbd565b8234610ec1575f366003190112610ec15760209061069761425d565b602435908115158203610ec157565b602080825282518183018190529093925f5b82811061404e57505060409293505f838284010152601f8019910116010190565b81810186015184820160400152850161402d565b34610ec1576020366003190112610ec1576020614080600435614942565b604051908152f35b600435906001600160a01b0382168203610ec157565b602435906001600160a01b0382168203610ec157565b34610ec1575f366003190112610ec15760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b8054821015614110575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b6060810190811067ffffffffffffffff82111761414057604052565b634e487b7160e01b5f52604160045260245ffd5b90601f8019910116810190811067ffffffffffffffff82111761414057604052565b67ffffffffffffffff811161414057601f01601f191660200190565b81601f82011215610ec1578035906141a982614176565b926141b76040519485614154565b82845260208383010111610ec157815f926020809301838601378301015290565b6060906003190112610ec157600435906001600160a01b03906024358281168103610ec157916044359081168103610ec15790565b3d15614237573d9061421e82614176565b9161422c6040519384614154565b82523d5f602084013e565b606090565b9190820180921161424957565b634e487b7160e01b5f52601160045260245ffd5b6001600160a01b036018541680614299575061429661428d6142846015546007549061423c565b6008549061423c565b6014549061423c565b90565b5f809160405160208101907f5bf96a75000000000000000000000000000000000000000000000000000000008252306024820152602481526142da81614124565b51915afa6142e661420d565b9080614316575b6142f8575060155490565b601554602082805181010312610ec15760206142969201519061423c565b5060208151146142ed565b90600182811c9216801561434f575b602083101461433b57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691614330565b8181029291811591840414171561424957565b8115614376570490565b634e487b7160e01b5f52601260045260245ffd5b9190820391821161424957565b60ff600c54166143c55769d3c21bcecceda10000006143b4614c8e565b106143bf576103e890565b6101f490565b5f90565b6143d1614397565b80156143da5790565b505f90565b60ff60039116019060ff821161424957565b603b546001600160a01b038116156144125760ff6142969160a01c166143df565b506142967f00000000000000000000000000000000000000000000000000000000000000006143df565b603b546001600160a01b03908116908115614455575090565b90507f00000000000000000000000000000000000000000000000000000000000000001690565b90816020910312610ec157518015158103610ec15790565b60ff600654166143da5760ff601a54166144dc575b50601d5480151590816144ca575b506143c5576024548061429657505f1990565b90506144d461425d565b10155f6144b7565b6001600160a01b038082165f52601b60205260ff60405f20541690601c5416918215159283614524575b505015908161451b575b506143c5575f6144a9565b9050155f614510565b60405163dd4fcc3f60e01b81523060048201526001600160a01b0392909216602483015291925090602090829060449082905afa90811561459e575f9161456f575b50905f80614506565b614591915060203d602011614597575b6145898183614154565b81019061447c565b5f614566565b503d61457f565b6040513d5f823e3d90fd5b6001600160a01b0380600a541680156146e9576145c4614397565b91821561461b57602c5480151590816146d3575b506146c25760016145ef9361271094859187614359565b04941517156142495760155492614608602b5485614359565b0480851161468b575042602c5583614621575b50505050565b7f50def5386d897a53af15a5f4499c01fe702dbce2322f43ed4dfa4686db3147b692614660856020948460225416908115155f1461468357509261438a565b60155561467185828461085461443c565b6040519485521692a25f80808061461b565b90509261438a565b84604491604051917fa8fcc68600000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b60046040516301f0c1ef60e21b8152fd5b6146e19150602a549061423c565b42105f6145d8565b60046040517f4390013c000000000000000000000000000000000000000000000000000000008152fd5b60ff16604d811161424957600a0a90565b61472c61425d565b6001810180911161424957600254906103e8820180921161424957614750926154da565b601654801561478557612710818103908082116142495761477182856156dc565b92811461437657614296930915159061423c565b5090565b61479290614494565b80156143da575f198181146147b85750610a5161429691612710610a4a60165483614359565b905090565b6147c561425d565b6103e86002540480156147ef5761271091828102928184041490151715614249576142969161436c565b5050614e2090565b335f9081527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc602052604090205460ff161561482f57565b604460405163e2517d3f60e01b81523360048201525f6024820152fd5b335f9081527ffeef3ffd450c6ab26115062dee850248a020d45e0eb3ee495cd60346ccab0cc960205260409020547f17a8e30262c1f919c33056d877a3c22b95c2f5e4dac44683c1c2323cd79fbdb09060ff16156148a75750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b335f9081527f99f2891db7a8db76249871a02b43b68c0bb8f22ef8a3bc1034ae9375ef6b7c3c60205260409020547f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9060ff16156148a75750565b805f52600560205260405f20335f5260205260ff60405f205416156148a75750565b61494a61425d565b6001810180911161424957600254906103e882018092116142495761429692615777565b6002546103e881018091116142495761498561425d565b906001820180921161424957614296926154da565b6002546103e88101809111614249576149b161425d565b90600182018092116142495761429692615777565b916001600160a01b03808416928315614aa05716928315614a7057825f525f60205260405f205490828210614a3e5750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b60405163391434e360e21b81526001600160a01b03919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b6024604051634b637e8f60e11b81525f6004820152fd5b614abf6147bd565b6126ac811015614b69576031549060ff821615614adc575b50505b565b60407f1f5b70d267bce7998501b5cdced3b3b4373309e4e249f7ae2e9ec4ab0a5bb3fd91600160ff1980951617603155426032558151908152426020820152a16006549060ff8216614ad757600191614b33614e04565b16176006557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a15f80614ad7565b612710811015614bc95760315460ff8160081c1615614b86575050565b61ff00191661010017603155604080519182524260208301527ffe17f4426c9e6b4c849252d40269208fd8e0974b913a312e2edf0399432c61d891a15f80614ad7565b612774811015614bd65750565b60315460ff811680614c76575b614c3a575b5060315460ff8160081c16614bfb575050565b61ff001916603155604080519182524260208301527fe165b1d067a038fe6a5bf4f0ec8f8d5ccca63551ec26aa81c96a7fe5efc0ca5491a15f80614ad7565b60ff19166031557fabc715bbde114c71e2a48d0808f466cf2b48af8aa522db2fb48f993d57e2bd0c60408051838152426020820152a15f614be8565b50614c866032546033549061423c565b421015614be3565b614c9661425d565b80156143da576001600160a01b0380602054169081614d1d575b505060021960ff614cbf6143f1565b160160ff81116142495760ff1660128110614cff5760128111614ce0575090565b601119019060ff821161424957614cf961429692614713565b9061436c565b6012039060ff821161424957614d1761429692614713565b90614359565b6020906044614d2a61443c565b60405194859384927fcacabd270000000000000000000000000000000000000000000000000000000084521660048301528660248301525afa5f9181614d76575b506147b85780614cb0565b9091506020813d602011614da2575b81614d9260209383614154565b81010312610ec15751905f614d6b565b3d9150614d85565b7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f006002815414614dda5760029055565b60046040517f3ee5aeb5000000000000000000000000000000000000000000000000000000008152fd5b60ff60065416614e1057565b60046040517fd93c0665000000000000000000000000000000000000000000000000000000008152fd5b604051927fa9059cbb000000000000000000000000000000000000000000000000000000005f526001600160a01b0380931660045260245260205f60448180855af160015f5114811615614ec6575b8360405215614e9757505050565b602493507f5274afe7000000000000000000000000000000000000000000000000000000008352166004820152fd5b6001811516614edc57813b15153d151616614e89565b833d5f823e3d90fd5b6001600160a01b03165f8181527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc602052604090205460ff166143da575f8181527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc60205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b6001600160a01b03165f8181527ffeef3ffd450c6ab26115062dee850248a020d45e0eb3ee495cd60346ccab0cc960205260409020547f17a8e30262c1f919c33056d877a3c22b95c2f5e4dac44683c1c2323cd79fbdb0919060ff1661503157815f52600560205260405f20815f5260205260405f20600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d5f80a4600190565b50505f90565b6001600160a01b03165f8181527f99f2891db7a8db76249871a02b43b68c0bb8f22ef8a3bc1034ae9375ef6b7c3c60205260409020547f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a919060ff1661503157815f52600560205260405f20815f5260205260405f20600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d5f80a4600190565b90815f5260056020526001600160a01b0360405f20911690815f5260205260ff60405f205416155f1461503157815f52600560205260405f20815f5260205260405f20600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d5f80a4600190565b90815f5260056020526001600160a01b0360405f20911690815f5260205260ff60405f2054165f1461503157815f52600560205260405f20815f5260205260405f2060ff19815416905533917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b5f80a4600190565b9260ff601a54165f14615430576001600160a01b038083165f52601b60205260ff60405f20541690601c54169081151591826153ca575b501590816153c1575b50615397575b601d54801515908161537d575b506153535761271061523860165485614359565b04906001600160a01b0391615259858461525061443c565b168830916154fa565b806152fe575b610e6661526c918661438a565b601555818316918215614a705760407fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d791614ada976152ad8560025461423c565b600255855f525f602052825f20858154019055855f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60208651898152a382519488865260208601521692a3615579565b6022548316801561533d575b8084161561532f578161532761526c93610e66938761085461443c565b91505061525f565b505061526c610e665f615327565b5082600a54168015155f0361530a57505f61530a565b60046040517f935d630c000000000000000000000000000000000000000000000000000000008152fd5b90506153908461538b61425d565b61423c565b115f615224565b60046040517f984ddec3000000000000000000000000000000000000000000000000000000008152fd5b9050155f615211565b60405163dd4fcc3f60e01b81523060048201526001600160a01b0386166024820152919250602090829060449082905afa90811561459e575f91615411575b50905f615208565b61542a915060203d602011614597576145898183614154565b5f615409565b6001600160a01b03601c541680615448575b50615217565b60405163dd4fcc3f60e01b81523060048201526001600160a01b038416602482015290602090829060449082905afa90811561459e575f916154bb575b5015615491575f615442565b60046040517fa0e1accb000000000000000000000000000000000000000000000000000000008152fd5b6154d4915060203d602011614597576145898183614154565b5f615485565b916154e6818385615777565b91811561437657614296930915159061423c565b9092604051937f23b872dd000000000000000000000000000000000000000000000000000000005f526001600160a01b0393848092166004521660245260445260205f60648180855af160015f5114811615615563575b836040525f60605215614e9757505050565b6001811516614edc57813b15153d151616615551565b90600c549160ff8316156156305760406001600160a01b037f6a324837bb9248d5c144309bce01e3a94cfc98bcc866ea9d2d073df5f2ba1cf0926155bf85600e5461423c565b80600e55835195865260208601521692a269152d02c7e14af68000006155e3614c8e565b10156155ec5750565b60ff1916600c5542600d557f499000e94863dbf61db7158214f06d3de1480f5152532686555a511171de1d19604061562261425d565b8151908152426020820152a1565b505050565b6001600160a01b038116156156ab576040519060208201907f313ce56700000000000000000000000000000000000000000000000000000000825260048352604083019183831067ffffffffffffffff841117614140575f93849360405251915afa61569f61420d565b90806156d0575b6156b1575b50601290565b602081805181010312610ec1576020015160ff81116156ab5760ff1690565b506020815110156156a6565b612710915f19838309928083029283808610950394808603951461576a57848311156157525790829109815f038216809204600280826003021880830282030280830282030280830282030280830282030280830282030280920290030293600183805f03040190848311900302920304170290565b82634e487b715f52156003026011186020526024601cfd5b505090614296925061436c565b90915f19838309928083029283808610950394808603951461576a57848311156157525790829109815f038216809204600280826003021880830282030280830282030280830282030280830282030280830282030280920290030293600183805f0304019084831190030292030417029056fea2646970667358221220ef42d41723290de1299c50bca1b85cc7a2146e2837c1da85d31252a4467c784f64736f6c634300081800332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc000000000000000000000000420000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000014f04ce02f35b29af564a98544dd7e239399394600000000000000000000000009a2780ac8be6d5d2d1f85a8d92b09d40c9ca37e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b4b65726e65205661756c7400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036b4c500000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x60406080815260049081361015610014575f80fd5b5f915f3560e01c90816301e1d11414613ff057816301ffc9a714613f5157816303d00e7914613f2a578163052d9e7e14613ef457816306fdde0314613d7857816307a2d13a146133ba578163095ea7b314613cd057816309dad40014613cac5781630a28a47714613c8e57816313dbb10214613c72578163165c29e514613c2d57816317881aac14613c0f5781631803beff14613bf157816318160ddd14613bd35781631b03593214613b3057816320a1708b14613ac85781632311a8af14613aaa57816323b872dd1461399e57816324540cc114613980578163248a9ca3146139565781632630c12f146139305781632736d5711461381c57816327a5de0a1461380057816327d6a1e6146137e457816328833a9f146136c15781632eaa41d11461357a5781632f2ff15d146136875781632fe319da14613660578163313ce56714613642578163350dd94b1461362657816336568abe146135c957816338d52e0f1461359d5781633b16735a1461357f5781633d9524cb1461357a5781633dbc645d1461355c5781633f4ba83a146134dc578163402d267d146134b7578163456db97214613499578163490ae210146134275781634cbe6b80146133bf5781634cdad506146133ba5781634d853ee5146133935781634e5a23281461331e5781634ee076491461320557816351fb012d146131e257816352269bab14613131578163530e784f146130c95781635b028ed1146130a25781635bb4780814612fe65781635c5b7f6514612fc85781635c975abb14612fa55781635db6aefc14612e6f5781635f78cec914612e4b57816361d027b314612e245781636b7fb55214612dfd5781636c427ce514612dda5781636c48dbc814612dbc5781636c9a9fb014612d9e5781636d08b13b14612d6e5781636e553f6514612cc85781636fef958a14612c0f57816370897b2314612bdf57816370a0823114612bbf57816370cf46b514612b2f578163740f316314612b11578163744c0f1114612a4b5781637477d47d14612a2d57816376d3eb1214612a06578163792f9683146129e8578163794c779c146129c15781637a341bc71461297a5781637ce48d991461295f5781637f513e63146128ff5781638456cb59146128a6578163848ed0791461283e5781638935032a146128245781638b7b7d6f146127bc5781638d148eb61461228157816391d148541461223c5781639281aa0b146121ea57816394bf804d1461214f57816395d89b4114611f8f57816396d0d17414611f6a57816397d3e09b14611e5d578163981372e114611dd85781639e3f5e6214611dba5781639ee679e814611aef578163a01cc6e514611a85578163a217fddf14611a6a578163a378a32414611a2f578163a441d067146118c2578163a7f0e3421461189a578163a9059cbb14611869578163a9b5e5991461184a578163aa45097f146117f7578163ab2e8de7146117da578163ab879827146117bb578163ae81feed14611794578163b3d7f6b914611774578163b460af94146116e6578163b4a8be82146116c7578163b63c44e7146116a8578163b790230314611680578163b9d7bd331461164e578163ba0876521461159c578163ba9312a81461157d578163bc2e47b71461155b578163bd15afd914611506578163be4be0031461136b578163be9ee11f14611343578163c1a287e214611326578163c3c05293146112dd578163c45a0155146112b5578163c53226de14611298578163c63936e714610b69578163c63d75b614611272578163c6e6f59214611252578163cb0ee68014611233578163cbde2cdc14611214578163ce96cb77146111eb578163cf274c0514611105578163d0cb6fc8146110e1578163d0d4aa1314610f8b578163d547741f14610f4b578163d6c89c6014610f2c578163d76622cc14610d59578163d820f49214610d3a578163d905777e14610d02578163d936547e14610cc6578163dbd627de14610ca7578163dd15c22714610c3d578163dd62ed3e14610bf3578163de50e43714610ba7578163e18b904414610b88578163e1aec3de14610b69578163e4a2238914610b4c578163e63ab1e914610b11578163ec2f84c514610a56578163ef8b30f714610a1d578163efdb85fd146109fe578163efe77bda146109bc578163f0f442601461094d578163f84444361461073b57508063f87fb7851461071d578063f8f7c279146106f6578063fab39ce1146106d8578063fcc48030146106a25763fefa625f1461067c575f80fd5b3461069e578160031936011261069e576020906106976147bd565b9051908152f35b5080fd5b503461069e57602036600319011261069e57806020926001600160a01b036106c8614088565b1681526037845220549051908152f35b503461069e578160031936011261069e576020906032549051908152f35b503461069e578160031936011261069e576020906001600160a01b03602154169051908152f35b503461069e578160031936011261069e57602090600d549051908152f35b83833461069e57602090816003193601126109495783359161075b614daa565b610763614e04565b33845260378152610776838386206140f7565b50906003820180549260ff841661092157600281015442106108f95760010154906107a082614942565b9384601554106108d15760ff1916600117905530156108bb57305f525f8252835f20549681881061088c5750805f917f2d43eb174787155132b52ddb6b346e2dca99302eac3df4466dbeff953d3c84d19697983084528385520385832055806002540360025584519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef833092a361083c8260155461438a565b60155561085a82336001600160a01b0361085461443c565b16614e3a565b82519485528401523392a260017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005580f35b845163391434e360e21b81523091810191825260208201899052604082019290925281906060010390fd5b0390fd5b60248787865191634b637e8f60e11b8352820152fd5b8886517ffd8be273000000000000000000000000000000000000000000000000000000008152fd5b8785517f5f300731000000000000000000000000000000000000000000000000000000008152fd5b8785517f646cf558000000000000000000000000000000000000000000000000000000008152fd5b8280fd5b905034610949576020366003190112610949576001600160a01b03610970614088565b6109786147f7565b169182156109965750506001600160a01b0319602254161760225580f35b517fd92e233d000000000000000000000000000000000000000000000000000000008152fd5b83346109fb5760203660031901126109fb576001600160a01b036109de614088565b6109e66147f7565b166001600160a01b0319600954161760095580f35b80fd5b50503461069e578160031936011261069e576020906026549051908152f35b8284346109fb5760203660031901126109fb5750610697610a5160209335612710610a4a60165483614359565b049061438a565b61499a565b83833461069e578060031936011261069e578235602435610a756147f7565b6113888211610ae95761012c8110610ac1577fae18f987433cf17b8d00bfbffdb83fd3421ae9b509f57d601d3fc16a1c330aea9394508160295580602a5582519182526020820152a180f35b8483517fec7bf429000000000000000000000000000000000000000000000000000000008152fd5b8483517f7540b9d8000000000000000000000000000000000000000000000000000000008152fd5b50503461069e578160031936011261069e57602090517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b50503461069e578160031936011261069e57602090516127748152f35b50503461069e578160031936011261069e57602090601e549051908152f35b50503461069e578160031936011261069e576020906033549051908152f35b90503461094957602036600319011261094957803591610bc56147f7565b610bb890818411610bd95750505060125580f35b9260449351926373ab893560e11b84528301526024820152fd5b50503461069e578060031936011261069e57602091610c10614088565b82610c1961409e565b926001600160a01b038093168152600186522091165f528252805f20549051908152f35b83346109fb5760203660031901126109fb57610c57614088565b610c5f6147f7565b601854906001600160a01b0380911691826001600160a01b0319821617601855167fde70a1dca7d6c2547c1854d8f03076190d36684e3c90be0d3fce81eedc8c3f728380a380f35b50503461069e578160031936011261069e576020906029549051908152f35b50503461069e57602036600319011261069e5760ff816020936001600160a01b03610cef614088565b168152601b855220541690519015158152f35b50503461069e57602036600319011261069e57602090610697610d23614088565b6001600160a01b03165f525f60205260405f205490565b50503461069e578160031936011261069e57602090601d549051908152f35b91905034610949578060031936011261094957610d74614088565b9160243590610d816147f7565b610d89614daa565b6001600160a01b039081851691828752602092603c845260ff868920541615610f1d57808852603c84528760018782200186815410155f14610f16575052603c8352600185882001610ddc85825461438a565b90555b80610de861443c565b169385519684886024816370a0823160e01b998a825230898301525afa978815610f0c578998610ed5575b5091610e2f602492869594309084610e2961443c565b166154fa565b610e3761443c565b169486519586938492835230908301525afa928315610ecc57508492610e98575b84610e6e610e66868661438a565b60155461423c565b60155560017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005580f35b90809250813d8311610ec5575b610eaf8183614154565b81010312610ec1575181610e66610e58565b5f80fd5b503d610ea5565b513d86823e3d90fd5b93929097508484813d8311610f05575b610eef8183614154565b81010312610ec157925196919291610e2f610e13565b503d610ee5565b87513d8b823e3d90fd5b5550610ddf565b828651630444ff0360e51b8152fd5b50503461069e578160031936011261069e576020906028549051908152f35b91905034610949578060031936011261094957610f879135610f826001610f7061409e565b93838752600560205286200154614920565b61515c565b5080f35b905034610949576020806003193601126110dd578135610fa9614daa565b6001600160a01b03806011541633036110b5578290610fc661443c565b169360248651809681936370a0823160e01b835230908301525afa9283156110ab57859361107c575b50610ffd601554809461438a565b808210156110745750925b83611036575b8460017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005580f35b611061847fbce15fad2f4318588e9c029157a90b3d21de1651e2bff0db05307ea89b5a2a789461423c565b601555519283523392a25f80808061100e565b905092611008565b9092508181813d83116110a4575b6110948183614154565b81010312610ec15751915f610fef565b503d61108a565b84513d87823e3d90fd5b8385517f8ce905cb000000000000000000000000000000000000000000000000000000008152fd5b8380fd5b50503461069e578160031936011261069e5760209060ff6031541690519015158152f35b83833461069e578160031936011261069e5761111f6147f7565b60315460ff8116156111c35761113a6032546033549061423c565b42106111b4576111486147bd565b90612774821061118c577fabc715bbde114c71e2a48d0808f466cf2b48af8aa522db2fb48f993d57e2bd0c93945060ff19166031558151908152426020820152a180f35b8483517f192ddd25000000000000000000000000000000000000000000000000000000008152fd5b8382516301f0c1ef60e21b8152fd5b8382517ff939060a000000000000000000000000000000000000000000000000000000008152fd5b50503461069e57602036600319011261069e5760209061069761120f610d23614088565b614942565b50503461069e578160031936011261069e57602090600b549051908152f35b50503461069e578160031936011261069e576020906012549051908152f35b8284346109fb5760203660031901126109fb57506106976020923561499a565b50503461069e57602036600319011261069e57602090610697611293614088565b614789565b50503461069e578160031936011261069e57602090516126ac8152f35b50503461069e578160031936011261069e576020906001600160a01b03603854169051908152f35b905034610949576020366003190112610949576001600160a01b03611300614088565b6113086147f7565b169182156109965750506001600160a01b0319601154161760115580f35b50503461069e578160031936011261069e57602090516138408152f35b50503461069e578160031936011261069e576020906001600160a01b03601754169051908152f35b50503461069e578160031936011261069e576113856148c5565b6001602654801515806114f9575b6114de575b5080806114ca575b806114bd575b61142f575b61142757602754806113c1575050426027555b80f35b6113ce613840914261438a565b116113d7575080f35b60065460ff8116156113e857505080f35b7f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258916001602092611417614e04565b60ff19161760065551338152a180f35b508060275580f35b5081806001600160a01b0360215416835160208101907f38b51ce10000000000000000000000000000000000000000000000000000000082523060248201526024815261147b81614124565b51915afa61148761420d565b90806114b2575b156114ab57806020806114a69351830101910161447c565b6113ab565b50816113ab565b50602081511461148e565b506103e8600254116113a6565b506001600160a01b036021541615156113a0565b6114e66147bd565b106114f2575b5f611398565b50816114ec565b506103e860025411611393565b91905034610949576020366003190112610949577f3bd5c717fa43a93b4f9575f6a96b9bdb41c4d1751b9180858c5ed412ee43c427913561154561484c565b603454908060345582519182526020820152a180f35b83903461069e57602036600319011261069e576115766147f7565b35601d5580f35b50503461069e578160031936011261069e576020906007549051908152f35b905082346109fb57506115ae366141d8565b939190506115cd846001600160a01b03165f525f60205260405f205490565b80821161160557506115de90614942565b50517f0f3a9a37000000000000000000000000000000000000000000000000000000008152fd5b91517fb94abeec0000000000000000000000000000000000000000000000000000000081526001600160a01b039094169284019283526020830152604082015281906060010390fd5b9050346109495760203660031901126109495780359161166c6147f7565b6107d090818411610bd957505050600f5580f35b50503461069e578160031936011261069e576020906001600160a01b03601154169051908152f35b50503461069e578160031936011261069e576020906024549051908152f35b50503461069e578160031936011261069e576020906035549051908152f35b905082346109fb57506116f8366141d8565b9391905061171a61120f856001600160a01b03165f525f60205260405f205490565b80821161172b57506115de9061496e565b91517ffe9cceec0000000000000000000000000000000000000000000000000000000081526001600160a01b039094169284019283526020830152604082015281906060010390fd5b8284346109fb5760203660031901126109fb575061069760209235614724565b50503461069e578160031936011261069e5760209060ff60315460081c1690519015158152f35b50503461069e578160031936011261069e576020906016549051908152f35b50503461069e578160031936011261069e57602090516103e88152f35b50503461069e578060031936011261069e576113be90611815614088565b906001600160a01b0361182661400c565b9261182f6147f7565b168452603c60205283209060ff801983541691151516179055565b50503461069e578160031936011261069e576020906008549051908152f35b50503461069e578060031936011261069e57602090611893611889614088565b60243590336149c6565b5160018152f35b50503461069e578160031936011261069e576020906001600160a01b03601f54169051908152f35b91905034610949576020366003190112610949576118de614088565b6118e66147f7565b60ff6006541615611a08576001600160a01b039283601754169182156119e057828582160361199a575060208461191b61443c565b169160248551809481936370a0823160e01b835230908301525afa928315610ecc57508492611966575b508161194f578380f35b61195f928460155561085461443c565b5f80808380f35b9091506020813d602011611992575b8161198260209383614154565b81010312610ec15751905f611945565b3d9150611975565b83517fc929326c0000000000000000000000000000000000000000000000000000000081526001600160a01b039182169281019283529216602082015281906040010390fd5b5082517f21415826000000000000000000000000000000000000000000000000000000008152fd5b50517fa85cbe66000000000000000000000000000000000000000000000000000000008152fd5b50503461069e578160031936011261069e57602090517f17a8e30262c1f919c33056d877a3c22b95c2f5e4dac44683c1c2323cd79fbdb08152f35b50503461069e578160031936011261069e5751908152602090f35b83346109fb5760203660031901126109fb57611a9f614088565b611aa76147f7565b601f54906001600160a01b0380911691826001600160a01b0319821617601f55167fafa6da48aaac5028ba3c2df8f6ef83735c89d8e75f9163df5234ca07e96d85a28380a380f35b91905034610ec15760209283600319360112610ec157823592611b10614daa565b611b18614e04565b60255480151580611db1575b611d7c5750611b328461496e565b908115611d6e57611b448230336149c6565b335f5260378652835f205494611b5c6028544261423c565b335f5260378852855f20938651608081019567ffffffffffffffff9682811088821117611d5b5789528482528a82018381528983019085825260608401925f845280549068010000000000000000821015611d485790611bc1916001820181556140f7565b949094611d365791611bf794939160039351855551600185015551600284015551151591019060ff801983541691151516179055565b865192888452898401528683015260608201527f7a74e1828c0c82a2b291536f39b26a8feef6e0965de2521452f2a501aa7bc6b660803392a26001600160a01b03601354169081151580611d22575b611c79575b5050505060017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f005551908152f35b813b15610ec1575f809260248751809581937ff66e88b100000000000000000000000000000000000000000000000000000000835233878401525af19283611cf7575b505050611ccc575b808080611c4b565b7f843fec29c0c1f4eba5434382c4cccbd979b52d752258a50d2b459ec3442a8b2d339180a25f611cc4565b90918093945011611d0f575082525f905f8080611cbc565b604190634e487b7160e01b5f525260245ffd5b50335f525f87526103e8855f205410611c46565b5f89634e487b7160e01b82525260245ffd5b60418a634e487b7160e01b5f525260245ffd5b604187634e487b7160e01b5f525260245ffd5b8351631f2a200560e01b8152fd5b60449250848451927f016d0ef10000000000000000000000000000000000000000000000000000000084528301526024820152fd5b50808511611b24565b8234610ec1575f366003190112610ec157602090602f549051908152f35b8234610ec1576020366003190112610ec1578135611df46147f7565b62278d008111611e36577f339836fabaa5f0eb442f133ec346175cc489ac04dbca653e7dd68dd1c6b563199250602854908060285582519182526020820152a1005b50517ff31366db000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1576020366003190112610ec1578135611e796147f7565b611e81614daa565b611e89614e04565b8015611f5c576001600160a01b03928360095416908115611f3557507fc26162413ff2ec890c3e6ee61d6bc8ffb60f1fe781127dec50321adf1c880b1593611ee783611f0c93611edb8260155461438a565b6015558361085461443c565b600954169251928392839092916001600160a01b036020916040840195845216910152565b0390a160017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055005b83517fd9241d30000000000000000000000000000000000000000000000000000000008152fd5b5051631f2a200560e01b8152fd5b34610ec1576020366003190112610ec157611f8d90611f8761484c565b356145a9565b005b8234610ec1575f366003190112610ec157603a5491611fad83614321565b15612082575080515f92611fc081614321565b8083529060209060019081811690811561205a5750600114611fff575b505050611fef81611ffb940382614154565b905b519182918261401b565b0390f35b603a5f90815295507fa2999d817b6757290b50e8ecf3fa939673403dd35c97de392fdb343b4015ce9e5b8387106120475750505050611fef816020611ffb9582010194611fdd565b8054858801840152958201958101612029565b611ffb975085935060209250611fef94915060ff191682840152151560051b82010194611fdd565b915080515f9280549061209482614321565b8084529160209160019182811690811561212457506001146120ca575b505050506120c481611ffb940382614154565b90611ff1565b5f90815295507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b83871061211157505050506120c4816020611ffb9582010194866120b1565b80548588018401529582019581016120f2565b9050611ffb9750859350602092506120c494915060ff191682840152151560051b82010194866120b1565b905034610ec15781600319360112610ec15780359161216c61409e565b9161217683614789565b80851161219c5750506121968361218e602095614724565b8094336151d1565b51908152f35b846108b79293519485947f284ff66700000000000000000000000000000000000000000000000000000000865285016040919493926001600160a01b03606083019616825260208201520152565b8234610ec15780600319360112610ec157611f8d90612207614088565b906001600160a01b0361221861400c565b926122216147f7565b165f52601b6020525f209060ff801983541691151516179055565b8234610ec15780600319360112610ec15760209161225861409e565b90355f52600583526001600160a01b03825f2091165f52825260ff815f20541690519015158152f35b8234610ec157610160366003190112610ec15761229c614088565b67ffffffffffffffff9290602435848111610ec1576122be9036908401614192565b91604435858111610ec1576122d69036908301614192565b94606435906001600160a01b039182811695868203610ec1576084358481168103610ec15760a4359385851692838603610ec15760e43597610104359b8c1515809d03610ec157610124359b898d16809d03610ec157600a5460ff8160a01c166127ad578a60385416801580156127a3575b61275d57507fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000017600a55156109965750878a16603b54906001600160a01b03199b818d841617603b556123b190615635565b60a01b74ff000000000000000000000000000000000000000016917fffffffffffffffffffffff000000000000000000000000000000000000000000161717603b55815183811161274a5780612408603954614321565b93601f948581116126de575b5060209085831160011461265a575f9261264f575b50508160011b915f199060031b1c1916176039555b8c51928311611d0f5750612453603a54614321565b8181116125ef575b5060209082116001146125675790806124b0939260019d5f9261255c575b50505f19600383901b1c1916908c1b17603a555b61249684614ee5565b506124a081614f85565b506124aa84615037565b50615037565b50600a805487168217905560c435600f551561255557505b1682602354161760235580151580612549575b612540575b5060ff199260ff84601a5416911617601a5581612531575b505061014435601d5560056016556107d0602955610258602a5562093a80602855613840603355600c541617600c556101f4602b555f80f35b601c541617601c5582806124f8565b600b55846124e0565b506107d08111156124db565b90506124c8565b015190508d80612479565b601f19821690603a5f527fa2999d817b6757290b50e8ecf3fa939673403dd35c97de392fdb343b4015ce9e915f5b8181106125d7575091839160019e8f94956124b09796106125bf575b505050811b01603a5561248d565b01515f1960f88460031b161c191690558d80806125b1565b8e830151845560019093019260209283019201612595565b603a5f527fa2999d817b6757290b50e8ecf3fa939673403dd35c97de392fdb343b4015ce9e8280850160051c82019260208610612646575b0160051c01905b81811061263b575061245b565b5f815560010161262e565b92508192612627565b015190508f80612429565b60395f9081527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d39350601f198516905b8181106126c657509084600195949392106126ae575b505050811b0160395561243e565b01515f1960f88460031b161c191690558f80806126a0565b9293602060018192878601518155019501930161268a565b90915060395f527fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d38580850160051c82019260208610612741575b9085949392910160051c01905b8181106127335750612414565b5f8155849350600101612726565b92508192612719565b604182634e487b7160e01b5f525260245ffd5b83517f05523251000000000000000000000000000000000000000000000000000000008152338187019081526001600160a01b0390921660208301529081906040010390fd5b5080331415612348565b50505163abd5ec5d60e01b8152fd5b34610ec1576020366003190112610ec1576127d5614088565b6127dd6147f7565b602154906001600160a01b0380911691826001600160a01b0319821617602155167fc8ba30846f19c03b528bf19c3795d20275f17cf3d6001593ae9b8eb610b8d5625f80a3005b8234610ec1575f366003190112610ec157602090515f8152f35b34610ec1576020366003190112610ec157612857614088565b61285f6147f7565b602354906001600160a01b0380911691826001600160a01b0319821617602355167f9c20ea241bd183f9cde5f4c3baabe1f5d7bba2cda2a4a227977edb1e0af3d8ea5f80a3005b8234610ec1575f366003190112610ec15760207f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258916128e36148c5565b6128eb614e04565b600160ff19600654161760065551338152a1005b8234610ec1576020366003190112610ec1577f202cdbfa2dfe28bc043397ee3fd0bec161dc07d2af1883e6a0561c56118cef2f913561293c61484c565b601e8054908290559151918252602082015242604082015280606081015b0390a1005b8234610ec1575f366003190112610ec1576020905160648152f35b905034610ec1576020366003190112610ec1576001600160a01b0361299d614088565b6129a56147f7565b1691821561099657600a80546001600160a01b03191684179055005b8234610ec1575f366003190112610ec1576020906001600160a01b03601c54169051908152f35b8234610ec1575f366003190112610ec157602090600f549051908152f35b8234610ec1575f366003190112610ec1576020906001600160a01b03602354169051908152f35b8234610ec1575f366003190112610ec1576020906030549051908152f35b905034610ec1576020366003190112610ec157803560ff8116809103610ec157612a736147f7565b80612a875750505060ff19602d5416602d55005b60018103612a9e575050602d805461ff0019169055005b600203612ab557505062ff000019602d5416602d55005b602060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601c60248201527f4b65726e655661756c743a20696e76616c6964206275636b65744964000000006044820152fd5b8234610ec1575f366003190112610ec157602090602e549051908152f35b8234610ec1575f366003190112610ec157612b486147f7565b600c5460ff811615612b985760ff1916600c5542600d557f499000e94863dbf61db7158214f06d3de1480f5152532686555a511171de1d199150612b8a61425d565b8151908152426020820152a1005b50517fbaf02721000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1576020366003190112610ec157602090610697610d23614088565b905034610ec1576020366003190112610ec157803591612bfd6147f7565b6107d090818411610bd957600b849055005b905034610ec15781600319360112610ec157612c29614088565b60243591612c356147f7565b612c3d614daa565b6001600160a01b039081831690815f52603c60205260ff865f20541615612cba5750612c9494600191612c728660155461438a565b6015555f52603c6020525f2001612c8a84825461423c565b905561085461443c565b60017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055005b8551630444ff0360e51b8152fd5b8234610ec15780600319360112610ec157813590612ce461409e565b92612cee84614494565b808411612d22575050612196602093612d19610a51612710612d1260165488614359565b048661438a565b938491336151d1565b91517f79012fb20000000000000000000000000000000000000000000000000000000081526001600160a01b039094169084019081526020810192909252604082015281906060010390fd5b905034610ec1576020366003190112610ec157803591612d8c6147f7565b61271090818411610bd957602b849055005b8234610ec1575f366003190112610ec1576020906019549051908152f35b8234610ec1575f366003190112610ec157602090602a549051908152f35b8234610ec1575f366003190112610ec15760209060ff600c541690519015158152f35b8234610ec1575f366003190112610ec1576020906001600160a01b03601854169051908152f35b8234610ec1575f366003190112610ec1576020906001600160a01b03602254169051908152f35b8234610ec1575f366003190112610ec1576020905169d3c21bcecceda10000008152f35b905034610ec1576020366003190112610ec1578035612e8c61484c565b612e9b603054602a549061423c565b4210612f965760085491602d549060ff8260101c1680612f8b575b612f31575b507f16a5b8b1626b476fb9fa550bcdbf73b086c5b5fcc1f8ac1d63fb694069e70af393612f12918360085583612f1d575b504260305542601955519283924291846040919493926060820195825260208201520152565b0390a1611f8d614ab7565b62ff000019166201000017602d5585612eec565b8315612f7e57612710612f48855b60295490614359565b0484841115612f6f57612f5b858561438a565b1115612ebb57845163f824b4c160e01b8152fd5b612f79848661438a565b612f5b565b612710612f486001612f3f565b506029541515612eb6565b5090516301f0c1ef60e21b8152fd5b8234610ec1575f366003190112610ec15760209060ff6006541690519015158152f35b8234610ec1575f366003190112610ec157602090602b549051908152f35b905034610ec1576020366003190112610ec157613001614088565b9060ff600a5460a01c1661309457603854916001600160a01b03908184168061306557501692831561303f576001600160a01b031983168417603855005b517f5c2609c0000000000000000000000000000000000000000000000000000000008152fd5b836024918751917f744f04d3000000000000000000000000000000000000000000000000000000008352820152fd5b825163abd5ec5d60e01b8152fd5b8234610ec1575f366003190112610ec1576020906001600160a01b03600954169051908152f35b34610ec1576020366003190112610ec1576130e2614088565b6130ea6147f7565b602054906001600160a01b0380911691826001600160a01b0319821617602055167f56b5f80d8cac1479698aa7d01605fd6111e90b15fc4d2b377417f46034876cbd5f80a3005b8234610ec1576060366003190112610ec157813560243591604435936131556147f7565b841515806131d7575b6131b057507fc7ed7b235dfff6348fa79c5f1e28650a6a2b7f3b9182c115674b5124efd7b47c9361295a9183602455846025558160265551938493846040919493926060820195825260208201520152565b90517f3cf5e4ca000000000000000000000000000000000000000000000000000000008152fd5b50612328851061315e565b8234610ec1575f366003190112610ec15760209060ff601a541690519015158152f35b905034610ec1576020366003190112610ec157803561322261484c565b613231602f54602a549061423c565b4210612f965760145491602d549060ff8260081c1680613313575b6132ba575b507f9a117fa8cacd46c59f95a5327ecab58b4f54453a154e66db6eb6d9991862af2a93612f129183601455836132a8575b5042602f5542601955519283924291846040919493926060820195825260208201520152565b61ff00191661010017602d5585613282565b8315613306576127106132d08560295490614359565b04848411156132f7576132e3858561438a565b111561325157845163f824b4c160e01b8152fd5b613301848661438a565b6132e3565b6127106132d06001612f3f565b50602954151561324c565b8234610ec15780600319360112610ec157613337614088565b906001600160a01b0360243592165f526037602052805f208054831015610ec157608092613364916140f7565b509081549160018101549160ff6003600284015493015416928151948552602085015283015215156060820152f35b8234610ec1575f366003190112610ec1576020906001600160a01b03600a54169051908152f35b614062565b34610ec1576020366003190112610ec1576133d8614088565b6133e06147f7565b601354906001600160a01b0380911691826001600160a01b0319821617601355167fe69a0d5244fdde6db189a435722508e1bcdcdcf5f3a70e2c0cb6331faa0bec915f80a3005b905034610ec1576020366003190112610ec1578035906134456147f7565b6064821161347d577f206dd15151fcc83315419fbe53a71fcf9c09da803767d3dd05f7874e1b9bf645602083858160165551908152a1005b9060449251916373ab893560e11b835282015260646024820152fd5b8234610ec1575f366003190112610ec1576020906027549051908152f35b8234610ec1576020366003190112610ec1576020906106976134d7614088565b614494565b8234610ec1575f366003190112610ec1576134f56147f7565b6006549160ff831615613535577f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020838560ff191660065551338152a1005b90517f8dfc202b000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1575f366003190112610ec1576020906010549051908152f35b6140b4565b8234610ec1575f366003190112610ec1576020906034549051908152f35b8234610ec1575f366003190112610ec1576020906001600160a01b036135c161443c565b915191168152f35b8234610ec15780600319360112610ec1576135e261409e565b90336001600160a01b038316036135fe5750611f8d913561515c565b9050517f6697b232000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1575f366003190112610ec157602090516101f48152f35b8234610ec1575f366003190112610ec15760209060ff6135c16143f1565b8234610ec1575f366003190112610ec1576020906001600160a01b03601354169051908152f35b8234610ec15780600319360112610ec157611f8d91356136bc60016136aa61409e565b93835f5260056020525f200154614920565b6150e3565b905034610ec1576020366003190112610ec15780356136de6147f7565b6136e6614daa565b6136ee614e04565b80156137d5576001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000818116156137b757925b8184161561379057507f8bd6cee8939c04b07fdaff7566e9c8cd94790d512c84969fd08f296557d56e08936137728385611f0c946137678360155461438a565b60155561085461443c565b519182526001600160a01b0390921660208201529081906040820190565b84517f71cce4ab000000000000000000000000000000000000000000000000000000008152fd5b50602254811680156137ca575b92613727565b5080600a54166137c4565b509051631f2a200560e01b8152fd5b8234610ec1575f366003190112610ec1576020906106976143c9565b8234610ec1575f366003190112610ec157602090610697614397565b905034610ec1576020366003190112610ec157803561383961484c565b613848602e54602a549061423c565b4210612f965760075491602d549060ff821680613925575b6138cc575b507ff763735ff81e09c9cdefbd8533319faa4bb0c253bf82065323e7fc36f2ab154093612f129183600755836138bc575b5042602e5542601955519283924291846040919493926060820195825260208201520152565b60ff1916600117602d5585613896565b8315613918576127106138e28560295490614359565b0484841115613909576138f5858561438a565b111561386557845163f824b4c160e01b8152fd5b613913848661438a565b6138f5565b6127106138e26001612f3f565b506029541515613860565b8234610ec1575f366003190112610ec1576020906001600160a01b038254169051908152f35b8234610ec1576020366003190112610ec157602091355f52600582526001815f2001549051908152f35b8234610ec1575f366003190112610ec1576020906025549051908152f35b905034610ec1576060366003190112610ec1576139b9614088565b6139c161409e565b90604435926001600160a01b038216805f526001602052855f20335f52602052855f2054915f1983106139fd575b6020876118938888886149c6565b858310613a65578115613a4f573315613a3957505f908152600160209081528682203383528152908690209185900390915582906118936139ef565b6024905f885191634a1406b160e11b8352820152fd5b6024905f88519163e602df0560e01b8352820152fd5b86517ffb8f41b2000000000000000000000000000000000000000000000000000000008152339181019182526020820193909352604081018690528291506060010390fd5b8234610ec1575f366003190112610ec157602090600e549051908152f35b34610ec1576020366003190112610ec157613ae1614088565b613ae96147f7565b601c54906001600160a01b0380911691826001600160a01b0319821617601c55167f61f1ce30f879f9cf102924220036252115071d6e3e08319f63cc0e514749d4565f80a3005b905034610ec1576020366003190112610ec157613b4b614088565b90613b546147f7565b60ff60065416613bac576001600160a01b03809216928315610996575050601754826001600160a01b0319821617601755167f2cf03ba38270e8e21e9aca8fc329947beb1e77c258d74aa31d032009e5bb5ab85f80a3005b82517fa8beb8fd000000000000000000000000000000000000000000000000000000008152fd5b8234610ec1575f366003190112610ec1576020906002549051908152f35b8234610ec1575f366003190112610ec157602090602c549051908152f35b8234610ec1575f366003190112610ec1576020906014549051908152f35b8234610ec1576020366003190112610ec1576001600160a01b03613c4f614088565b165f52603c602052805f20600160ff825416910154825191151582526020820152f35b8234610ec1575f366003190112610ec157602090516127108152f35b8234610ec1576020366003190112610ec1576106976020923561496e565b8234610ec1575f366003190112610ec1576020905169152d02c7e14af68000008152f35b8234610ec15780600319360112610ec157613ce9614088565b602435903315613d62576001600160a01b0316908115613d4c5760209350335f5260018452825f20825f52845280835f205582519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925843392a35160018152f35b6024845f855191634a1406b160e11b8352820152fd5b6024845f85519163e602df0560e01b8352820152fd5b8234610ec1575f366003190112610ec15760395490613d9682614321565b15613e315780515f92613da881614321565b8083529060209060019081811690811561205a5750600114613dd657505050611fef81611ffb940382614154565b60395f90815295507fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d35b838710613e1e5750505050611fef816020611ffb9582010194611fdd565b8054858801840152958201958101613e00565b80516003545f9350613e4281614321565b80835290602090600190818116908115613ecc5750600114613e71575b5050506120c481611ffb940382614154565b60035f90815295507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b838710613eb957505050506120c4816020611ffb9582010194613e5f565b8054858801840152958201958101613e9b565b611ffb9750859350602092506120c494915060ff191682840152151560051b82010194613e5f565b34610ec1576020366003190112610ec15735801515809103610ec157613f186147f7565b60ff8019601a5416911617601a555f80f35b8234610ec1576020366003190112610ec157602091355f5260368252805f20549051908152f35b905034610ec1576020366003190112610ec157357fffffffff000000000000000000000000000000000000000000000000000000008116809103610ec1576020917f7965db0b000000000000000000000000000000000000000000000000000000008214918215613fc6575b50519015158152f35b7f01ffc9a70000000000000000000000000000000000000000000000000000000014915083613fbd565b8234610ec1575f366003190112610ec15760209061069761425d565b602435908115158203610ec157565b602080825282518183018190529093925f5b82811061404e57505060409293505f838284010152601f8019910116010190565b81810186015184820160400152850161402d565b34610ec1576020366003190112610ec1576020614080600435614942565b604051908152f35b600435906001600160a01b0382168203610ec157565b602435906001600160a01b0382168203610ec157565b34610ec1575f366003190112610ec15760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b8054821015614110575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b6060810190811067ffffffffffffffff82111761414057604052565b634e487b7160e01b5f52604160045260245ffd5b90601f8019910116810190811067ffffffffffffffff82111761414057604052565b67ffffffffffffffff811161414057601f01601f191660200190565b81601f82011215610ec1578035906141a982614176565b926141b76040519485614154565b82845260208383010111610ec157815f926020809301838601378301015290565b6060906003190112610ec157600435906001600160a01b03906024358281168103610ec157916044359081168103610ec15790565b3d15614237573d9061421e82614176565b9161422c6040519384614154565b82523d5f602084013e565b606090565b9190820180921161424957565b634e487b7160e01b5f52601160045260245ffd5b6001600160a01b036018541680614299575061429661428d6142846015546007549061423c565b6008549061423c565b6014549061423c565b90565b5f809160405160208101907f5bf96a75000000000000000000000000000000000000000000000000000000008252306024820152602481526142da81614124565b51915afa6142e661420d565b9080614316575b6142f8575060155490565b601554602082805181010312610ec15760206142969201519061423c565b5060208151146142ed565b90600182811c9216801561434f575b602083101461433b57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691614330565b8181029291811591840414171561424957565b8115614376570490565b634e487b7160e01b5f52601260045260245ffd5b9190820391821161424957565b60ff600c54166143c55769d3c21bcecceda10000006143b4614c8e565b106143bf576103e890565b6101f490565b5f90565b6143d1614397565b80156143da5790565b505f90565b60ff60039116019060ff821161424957565b603b546001600160a01b038116156144125760ff6142969160a01c166143df565b506142967f00000000000000000000000000000000000000000000000000000000000000126143df565b603b546001600160a01b03908116908115614455575090565b90507f00000000000000000000000042000000000000000000000000000000000000061690565b90816020910312610ec157518015158103610ec15790565b60ff600654166143da5760ff601a54166144dc575b50601d5480151590816144ca575b506143c5576024548061429657505f1990565b90506144d461425d565b10155f6144b7565b6001600160a01b038082165f52601b60205260ff60405f20541690601c5416918215159283614524575b505015908161451b575b506143c5575f6144a9565b9050155f614510565b60405163dd4fcc3f60e01b81523060048201526001600160a01b0392909216602483015291925090602090829060449082905afa90811561459e575f9161456f575b50905f80614506565b614591915060203d602011614597575b6145898183614154565b81019061447c565b5f614566565b503d61457f565b6040513d5f823e3d90fd5b6001600160a01b0380600a541680156146e9576145c4614397565b91821561461b57602c5480151590816146d3575b506146c25760016145ef9361271094859187614359565b04941517156142495760155492614608602b5485614359565b0480851161468b575042602c5583614621575b50505050565b7f50def5386d897a53af15a5f4499c01fe702dbce2322f43ed4dfa4686db3147b692614660856020948460225416908115155f1461468357509261438a565b60155561467185828461085461443c565b6040519485521692a25f80808061461b565b90509261438a565b84604491604051917fa8fcc68600000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b60046040516301f0c1ef60e21b8152fd5b6146e19150602a549061423c565b42105f6145d8565b60046040517f4390013c000000000000000000000000000000000000000000000000000000008152fd5b60ff16604d811161424957600a0a90565b61472c61425d565b6001810180911161424957600254906103e8820180921161424957614750926154da565b601654801561478557612710818103908082116142495761477182856156dc565b92811461437657614296930915159061423c565b5090565b61479290614494565b80156143da575f198181146147b85750610a5161429691612710610a4a60165483614359565b905090565b6147c561425d565b6103e86002540480156147ef5761271091828102928184041490151715614249576142969161436c565b5050614e2090565b335f9081527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc602052604090205460ff161561482f57565b604460405163e2517d3f60e01b81523360048201525f6024820152fd5b335f9081527ffeef3ffd450c6ab26115062dee850248a020d45e0eb3ee495cd60346ccab0cc960205260409020547f17a8e30262c1f919c33056d877a3c22b95c2f5e4dac44683c1c2323cd79fbdb09060ff16156148a75750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b335f9081527f99f2891db7a8db76249871a02b43b68c0bb8f22ef8a3bc1034ae9375ef6b7c3c60205260409020547f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9060ff16156148a75750565b805f52600560205260405f20335f5260205260ff60405f205416156148a75750565b61494a61425d565b6001810180911161424957600254906103e882018092116142495761429692615777565b6002546103e881018091116142495761498561425d565b906001820180921161424957614296926154da565b6002546103e88101809111614249576149b161425d565b90600182018092116142495761429692615777565b916001600160a01b03808416928315614aa05716928315614a7057825f525f60205260405f205490828210614a3e5750817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f5260405f20818154019055604051908152a3565b60405163391434e360e21b81526001600160a01b03919091166004820152602481019190915260448101829052606490fd5b60246040517fec442f050000000000000000000000000000000000000000000000000000000081525f6004820152fd5b6024604051634b637e8f60e11b81525f6004820152fd5b614abf6147bd565b6126ac811015614b69576031549060ff821615614adc575b50505b565b60407f1f5b70d267bce7998501b5cdced3b3b4373309e4e249f7ae2e9ec4ab0a5bb3fd91600160ff1980951617603155426032558151908152426020820152a16006549060ff8216614ad757600191614b33614e04565b16176006557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a15f80614ad7565b612710811015614bc95760315460ff8160081c1615614b86575050565b61ff00191661010017603155604080519182524260208301527ffe17f4426c9e6b4c849252d40269208fd8e0974b913a312e2edf0399432c61d891a15f80614ad7565b612774811015614bd65750565b60315460ff811680614c76575b614c3a575b5060315460ff8160081c16614bfb575050565b61ff001916603155604080519182524260208301527fe165b1d067a038fe6a5bf4f0ec8f8d5ccca63551ec26aa81c96a7fe5efc0ca5491a15f80614ad7565b60ff19166031557fabc715bbde114c71e2a48d0808f466cf2b48af8aa522db2fb48f993d57e2bd0c60408051838152426020820152a15f614be8565b50614c866032546033549061423c565b421015614be3565b614c9661425d565b80156143da576001600160a01b0380602054169081614d1d575b505060021960ff614cbf6143f1565b160160ff81116142495760ff1660128110614cff5760128111614ce0575090565b601119019060ff821161424957614cf961429692614713565b9061436c565b6012039060ff821161424957614d1761429692614713565b90614359565b6020906044614d2a61443c565b60405194859384927fcacabd270000000000000000000000000000000000000000000000000000000084521660048301528660248301525afa5f9181614d76575b506147b85780614cb0565b9091506020813d602011614da2575b81614d9260209383614154565b81010312610ec15751905f614d6b565b3d9150614d85565b7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f006002815414614dda5760029055565b60046040517f3ee5aeb5000000000000000000000000000000000000000000000000000000008152fd5b60ff60065416614e1057565b60046040517fd93c0665000000000000000000000000000000000000000000000000000000008152fd5b604051927fa9059cbb000000000000000000000000000000000000000000000000000000005f526001600160a01b0380931660045260245260205f60448180855af160015f5114811615614ec6575b8360405215614e9757505050565b602493507f5274afe7000000000000000000000000000000000000000000000000000000008352166004820152fd5b6001811516614edc57813b15153d151616614e89565b833d5f823e3d90fd5b6001600160a01b03165f8181527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc602052604090205460ff166143da575f8181527f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc60205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b6001600160a01b03165f8181527ffeef3ffd450c6ab26115062dee850248a020d45e0eb3ee495cd60346ccab0cc960205260409020547f17a8e30262c1f919c33056d877a3c22b95c2f5e4dac44683c1c2323cd79fbdb0919060ff1661503157815f52600560205260405f20815f5260205260405f20600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d5f80a4600190565b50505f90565b6001600160a01b03165f8181527f99f2891db7a8db76249871a02b43b68c0bb8f22ef8a3bc1034ae9375ef6b7c3c60205260409020547f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a919060ff1661503157815f52600560205260405f20815f5260205260405f20600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d5f80a4600190565b90815f5260056020526001600160a01b0360405f20911690815f5260205260ff60405f205416155f1461503157815f52600560205260405f20815f5260205260405f20600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d5f80a4600190565b90815f5260056020526001600160a01b0360405f20911690815f5260205260ff60405f2054165f1461503157815f52600560205260405f20815f5260205260405f2060ff19815416905533917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b5f80a4600190565b9260ff601a54165f14615430576001600160a01b038083165f52601b60205260ff60405f20541690601c54169081151591826153ca575b501590816153c1575b50615397575b601d54801515908161537d575b506153535761271061523860165485614359565b04906001600160a01b0391615259858461525061443c565b168830916154fa565b806152fe575b610e6661526c918661438a565b601555818316918215614a705760407fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d791614ada976152ad8560025461423c565b600255855f525f602052825f20858154019055855f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60208651898152a382519488865260208601521692a3615579565b6022548316801561533d575b8084161561532f578161532761526c93610e66938761085461443c565b91505061525f565b505061526c610e665f615327565b5082600a54168015155f0361530a57505f61530a565b60046040517f935d630c000000000000000000000000000000000000000000000000000000008152fd5b90506153908461538b61425d565b61423c565b115f615224565b60046040517f984ddec3000000000000000000000000000000000000000000000000000000008152fd5b9050155f615211565b60405163dd4fcc3f60e01b81523060048201526001600160a01b0386166024820152919250602090829060449082905afa90811561459e575f91615411575b50905f615208565b61542a915060203d602011614597576145898183614154565b5f615409565b6001600160a01b03601c541680615448575b50615217565b60405163dd4fcc3f60e01b81523060048201526001600160a01b038416602482015290602090829060449082905afa90811561459e575f916154bb575b5015615491575f615442565b60046040517fa0e1accb000000000000000000000000000000000000000000000000000000008152fd5b6154d4915060203d602011614597576145898183614154565b5f615485565b916154e6818385615777565b91811561437657614296930915159061423c565b9092604051937f23b872dd000000000000000000000000000000000000000000000000000000005f526001600160a01b0393848092166004521660245260445260205f60648180855af160015f5114811615615563575b836040525f60605215614e9757505050565b6001811516614edc57813b15153d151616615551565b90600c549160ff8316156156305760406001600160a01b037f6a324837bb9248d5c144309bce01e3a94cfc98bcc866ea9d2d073df5f2ba1cf0926155bf85600e5461423c565b80600e55835195865260208601521692a269152d02c7e14af68000006155e3614c8e565b10156155ec5750565b60ff1916600c5542600d557f499000e94863dbf61db7158214f06d3de1480f5152532686555a511171de1d19604061562261425d565b8151908152426020820152a1565b505050565b6001600160a01b038116156156ab576040519060208201907f313ce56700000000000000000000000000000000000000000000000000000000825260048352604083019183831067ffffffffffffffff841117614140575f93849360405251915afa61569f61420d565b90806156d0575b6156b1575b50601290565b602081805181010312610ec1576020015160ff81116156ab5760ff1690565b506020815110156156a6565b612710915f19838309928083029283808610950394808603951461576a57848311156157525790829109815f038216809204600280826003021880830282030280830282030280830282030280830282030280830282030280920290030293600183805f03040190848311900302920304170290565b82634e487b715f52156003026011186020526024601cfd5b505090614296925061436c565b90915f19838309928083029283808610950394808603951461576a57848311156157525790829109815f038216809204600280826003021880830282030280830282030280830282030280830282030280830282030280920290030293600183805f0304019084831190030292030417029056fea2646970667358221220ef42d41723290de1299c50bca1b85cc7a2146e2837c1da85d31252a4467c784f64736f6c63430008180033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000420000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000010000000000000000000000000014f04ce02f35b29af564a98544dd7e239399394600000000000000000000000009a2780ac8be6d5d2d1f85a8d92b09d40c9ca37e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b4b65726e65205661756c7400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036b4c500000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : asset_ (address): 0x4200000000000000000000000000000000000006
Arg [1] : name_ (string): Kerne Vault
Arg [2] : symbol_ (string): kLP
Arg [3] : admin_ (address): 0x14f04cE02f35B29Af564A98544dD7e2393993946
Arg [4] : strategist_ (address): 0x09a2780ac8Be6D5d2d1F85A8D92b09D40C9CA37e
Arg [5] : exchangeDepositAddress_ (address): 0x0000000000000000000000000000000000000000

-----Encoded View---------------
10 Constructor Arguments found :
Arg [0] : 0000000000000000000000004200000000000000000000000000000000000006
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000100
Arg [3] : 00000000000000000000000014f04ce02f35b29af564a98544dd7e2393993946
Arg [4] : 00000000000000000000000009a2780ac8be6d5d2d1f85a8d92b09d40c9ca37e
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [6] : 000000000000000000000000000000000000000000000000000000000000000b
Arg [7] : 4b65726e65205661756c74000000000000000000000000000000000000000000
Arg [8] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [9] : 6b4c500000000000000000000000000000000000000000000000000000000000

🤖 Code Reader

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

Custom Contract ABI

                            

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
0x8ccc56B5624e2FDB592F6609d81F4c3798e3292B

DeFi

0 Protocols
Loading...
Loading
Protocol Positions Portfolio % Value

There are no matching entries

Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.