0 txs
1 call
constructor
constructor()
functions
coverage
viewfunction coverage(address _agent) view returns (uint256 delegation)
coverageByVault
viewfunction coverageByVault(address _network, address _agent, address _vault, address _oracle, uint48 _timestamp) view returns (uint256 collateralValue, uint256 collateral)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
slashableCollateral
viewfunction slashableCollateral(address _agent, uint48 _timestamp) view returns (uint256 _slashableCollateral)
slashableCollateralByVault
viewfunction slashableCollateralByVault(address _network, address _agent, address _vault, address _oracle, uint48 _timestamp) view returns (uint256 collateralValue, uint256 collateral)
subnetwork
viewfunction subnetwork(address _operator) view returns (bytes32 id)
subnetworkIdentifier
purefunction subnetworkIdentifier(address _operator) pure returns (uint96 id)
UPGRADE_INTERFACE_VERSION
viewfunction UPGRADE_INTERFACE_VERSION() view returns (string)
vaults
viewfunction vaults(address _agent) view returns (address vaultAddress)
distributeRewards
nonpayablefunction distributeRewards(address _agent, address _token)
initialize
nonpayablefunction initialize(address _accessControl, address _network, address _vaultRegistry, address _oracle, uint48 _requiredEpochDuration, uint256 _feeAllowed)
registerVault
nonpayablefunction registerVault(address _vault, address _stakerRewarder, address _agent)
setFeeAllowed
nonpayablefunction setFeeAllowed(uint256 _feeAllowed)
slash
nonpayablefunction slash(address _agent, address _recipient, uint256 _slashShare, uint48 _timestamp)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
events
Initialized
event Initialized(uint64 version)
Slash
event Slash(address indexed agent, address recipient, uint256 amount)
Upgraded
event Upgraded(address indexed implementation)
VaultRegistered
event VaultRegistered(address vault, address agent)
errors
AccessDenied
error AccessDenied()
AddressEmptyCode
error AddressEmptyCode(address target)
ERC1967InvalidImplementation
error ERC1967InvalidImplementation(address implementation)
ERC1967NonPayable
error ERC1967NonPayable()
ExistingCoverage
error ExistingCoverage()
FailedCall
error FailedCall()
InvalidBurnerRouter
error InvalidBurnerRouter()
InvalidDelegator
error InvalidDelegator()
InvalidEpochDuration
error InvalidEpochDuration(uint48 required, uint48 actual)
InvalidInitialization
error InvalidInitialization()
InvalidSlasher
error InvalidSlasher()
NoBurner
error NoBurner()
NoSlashableCollateral
error NoSlashableCollateral()
NoSlasher
error NoSlasher()
NotInitializing
error NotInitializing()
NotVault
error NotVault()
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
UUPSUnauthorizedCallContext
error UUPSUnauthorizedCallContext()
UUPSUnsupportedProxiableUUID
error UUPSUnsupportedProxiableUUID(bytes32 slot)
VaultExists
error VaultExists()
VaultNotInitialized
error VaultNotInitialized()
ZeroAddress
error ZeroAddress()
creation bytecode
0x60a060405230608052348015610013575f5ffd5b5061001c610021565b6100d3565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100715760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100d05780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516127ee6100f95f395f81816116e30152818161170c015261185401526127ee5ff3fe6080604052600436106100e4575f3560e01c8063512d05c91161008757806396c6187b1161005757806396c6187b1461026d578063a622ee7c1461028c578063ad3cb1cc146102e7578063c2f348da14610324575f5ffd5b8063512d05c9146101df57806352d1902d1461021b578063814813c11461022f5780638c01df1f1461024e575f5ffd5b8063366d1cf9116100c2578063366d1cf91461015a5780633d11c00d1461018e5780634cfb842b146101ad5780634f1ef286146101cc575f5ffd5b80630f42c1c1146100e857806332cfdfbf1461011a578063330244301461013b575b5f5ffd5b3480156100f3575f5ffd5b5061010761010236600461212c565b610343565b6040519081526020015b60405180910390f35b348015610125575f5ffd5b5061013961013436600461215a565b610395565b005b348015610146575f5ffd5b5061010761015536600461212c565b610751565b348015610165575f5ffd5b506101796101743660046121aa565b6107d4565b60408051928352602083019190915201610111565b348015610199575f5ffd5b506101396101a8366004612217565b6109a6565b3480156101b8575f5ffd5b506101396101c736600461224e565b610b35565b6101396101da366004612279565b610b6b565b3480156101ea575f5ffd5b506101fe6101f936600461212c565b610b8a565b6040516bffffffffffffffffffffffff9091168152602001610111565b348015610226575f5ffd5b50610107610bc6565b34801561023a575f5ffd5b5061010761024936600461233f565b610be1565b348015610259575f5ffd5b506101796102683660046121aa565b610c4e565b348015610278575f5ffd5b5061013961028736600461236b565b610e24565b348015610297575f5ffd5b506102cf6102a636600461212c565b6001600160a01b039081165f9081525f5160206127795f395f51905f5260205260409020541690565b6040516001600160a01b039091168152602001610111565b3480156102f2575f5ffd5b50610317604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161011191906123e1565b34801561032f575f5ffd5b5061013961033e3660046123f3565b611000565b5f61038f5f5160206127595f395f51905f52546001600160a01b031661036884610b8a565b6bffffffffffffffffffffffff1660609190911b6bffffffffffffffffffffffff19161790565b92915050565b6332cfdfbf60e01b6103a6816111c3565b6001600160a01b038581165f9081525f5160206127795f395f51905f5260205260408120545f5160206127595f395f51905f5280547fb8e099bfced582503f4260023771d11f60bb84aadc54b7d0da79ce0abbf0e802549194928316939261041792918116918b9186911689610c4e565b9150505f86670de0b6b3a76400001461045757670de0b6b3a764000061043d888461247c565b6104479190612493565b6104529060016124b2565b610459565b815b9050818111156104665750805b8354604051631619718360e21b81526001600160a01b038b811660048301525f921690635865c60c90602401602060405180830381865afa1580156104ad573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d191906124c5565b9050836001600160a01b031663b13442716040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050f573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053391906124c5565b6001600160a01b031663021a815661054a83610343565b604080515f815260208101918290526001600160e01b031960e085901b1690915261057f9190859087908d90602481016124e0565b6020604051808303815f875af115801561059b573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105bf9190612525565b50836001600160a01b03166327810b6e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105fc573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062091906124c5565b60405163528dc85f60e11b81523060048201526001600160a01b03919091169063a51b90be906024016020604051808303815f875af1158015610665573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106899190612525565b506106ff8983866001600160a01b031663d8dfeb456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106cb573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106ef91906124c5565b6001600160a01b03169190611283565b604080516001600160a01b038b81168252602082018590528c16917f9995717781b7b3ba3dd9e553a2b5a2b7593ad9b71f5022a3691a089d5189bd19910160405180910390a250505050505050505050565b6001600160a01b038181165f9081525f5160206127795f395f51905f52602052604081205490915f5160206127595f395f51905f529116806107a65760405163d92e233d60e01b815260040160405180910390fd5b815460028301546001600160a01b039182169116426107c883888685856107d4565b50979650505050505050565b5f5f5f5f5f6107e58a8a8a8a6112e7565b919450925090506001600160a01b038316610808575f5f9450945050505061099c565b604051631619718360e21b81526001600160a01b038a811660048301525f91908c1690635865c60c90602401602060405180830381865afa15801561084f573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061087391906124c5565b9050886001600160a01b031663ce9b79306040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108b1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108d591906124c5565b6001600160a01b031663e02f69376108ec83610343565b6040516001600160e01b031960e084901b16815260048101919091526001600160a01b038416602482015265ffffffffffff8a166044820152608060648201525f608482015260a401602060405180830381865afa158015610950573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109749190612525565b945061098183600a61261f565b61098b838761247c565b6109959190612493565b9550505050505b9550959350505050565b633d11c00d60e01b6109b7816111c3565b5f5f5160206127595f395f51905f526040516370a0823160e01b81523060048201529091505f906001600160a01b038516906370a0823190602401602060405180830381865afa158015610a0d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a319190612525565b6001600160a01b038087165f9081526005850160209081526040808320548416808452600488019092529091205492935091811690610a739087168285611643565b83546001600160a01b038083169163239723ed91168886610a9560014261262d565b60038a01546040805165ffffffffffff90931660208401528201526080606082018190525f60a08084018290529183019190915260c082015260e0016040516020818303038152906040526040518563ffffffff1660e01b8152600401610aff9493929190612640565b5f604051808303815f87803b158015610b16575f5ffd5b505af1158015610b28573d5f5f3e3d5ffd5b5050505050505050505050565b634cfb842b60e01b610b46816111c3565b507fb8e099bfced582503f4260023771d11f60bb84aadc54b7d0da79ce0abbf0e80355565b610b736116d8565b610b7c8261177e565b610b868282611788565b5050565b6040805160609290921b6bffffffffffffffffffffffff1916602080840191909152815160148185030181526034909301909152815191012090565b5f610bcf611849565b505f5160206127995f395f51905f5290565b6001600160a01b038281165f9081525f5160206127795f395f51905f5260205260408120545f5160206127595f395f51905f5280547fb8e099bfced582503f4260023771d11f60bb84aadc54b7d0da79ce0abbf0e80254939491939282169290821691166107c8828885848a5b5f5f5f5f5f610c5f8a8a8a8a6112e7565b919450925090506001600160a01b038316610c82575f5f9450945050505061099c565b5f886001600160a01b031663b13442716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cbf573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce391906124c5565b604051631619718360e21b81526001600160a01b038c811660048301529192505f918d1690635865c60c90602401602060405180830381865afa158015610d2c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d5091906124c5565b9050816001600160a01b031663aab3595f610d6a83610343565b6040516001600160e01b031960e084901b16815260048101919091526001600160a01b038416602482015265ffffffffffff8b166044820152608060648201525f608482015260a401602060405180830381865afa158015610dce573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610df29190612525565b9550610dff84600a61261f565b610e09848861247c565b610e139190612493565b965050505050509550959350505050565b6396c6187b60e01b610e35816111c3565b6001600160a01b038281165f9081525f5160206127795f395f51905f5260205260409020545f5160206127595f395f51905f52911615610e88576040516302551c0360e21b815260040160405180910390fd5b6001600160a01b0384161580610ea557506001600160a01b038316155b15610ec35760405163d92e233d60e01b815260040160405180910390fd5b610ecc85611892565b6001600160a01b0385165f90815260048201602052604090208054600160a01b900460ff1615610f0f5760405163108e5c5f60e21b815260040160405180910390fd5b80546001600160a81b0319166001600160a01b0386811691909117600160a01b1782558481165f8181526005850160205260409081902080548a85166001600160a01b03199091168117909155855491516305c4fdf960e01b815260048101919091526024810192909252909116906305c4fdf9906044015f604051808303815f87803b158015610f9e575f5ffd5b505af1158015610fb0573d5f5f3e3d5ffd5b5050604080516001600160a01b03808b168252881660208201527ff8ee9039d8e4d43426638703c71517008894fdea742bb2d2dbff5a46fb07abdb935001905060405180910390a1505050505050565b5f611009611de6565b805490915060ff600160401b820416159067ffffffffffffffff165f811580156110305750825b90505f8267ffffffffffffffff16600114801561104c5750303b155b90508115801561105a575080155b156110785760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156110a257845460ff60401b1916600160401b1785555b6110ab8b611e0e565b5f5160206127595f395f51905f5280546001600160a01b03199081166001600160a01b038d8116919091179092557fb8e099bfced582503f4260023771d11f60bb84aadc54b7d0da79ce0abbf0e80180549091168b83161790557fb8e099bfced582503f4260023771d11f60bb84aadc54b7d0da79ce0abbf0e8028054918a166001600160d01b031990921691909117600160a01b65ffffffffffff8a16021790557fb8e099bfced582503f4260023771d11f60bb84aadc54b7d0da79ce0abbf0e8038690558315610b2857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15050505050505050505050565b5f7fb413d65cb88f23816c329284a0d3eb15a99df7963ab7402ade4c5da22bff6b0054604051633657648360e21b81526001600160e01b0319841660048201523060248201523360448201526001600160a01b039091169063d95d920c90606401602060405180830381865afa15801561123f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112639190612672565b905080610b8657604051634ca8886760e01b815260040160405180910390fd5b6040516001600160a01b038381166024830152604482018390526112e291859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611e22565b505050565b5f5f5f846001600160a01b03166327810b6e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611326573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061134a91906124c5565b604051631619718360e21b81526001600160a01b0388811660048301529194505f91891690635865c60c90602401602060405180830381865afa158015611393573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113b791906124c5565b604051630332128960e01b81526001600160a01b038a811660048301529192505f918616906303321289906024016040805180830381865afa1580156113ff573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114239190612691565b5090506001600160a01b0381161580159061144757506001600160a01b0381163014155b1561145c575f5f5f9450945094505050611639565b6040516301d82eb160e21b81526001600160a01b038a811660048301528381166024830152861690630760bac4906044016040805180830381865afa1580156114a7573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114cb9190612691565b5090506001600160a01b038116158015906114ef57506001600160a01b0381163014155b15611504575f5f5f9450945094505050611639565b5f876001600160a01b031663d8dfeb456040518163ffffffff1660e01b8152600401602060405180830381865afa158015611541573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061156591906124c5565b9050806001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115a3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115c791906126be565b6040516341976e0960e01b81526001600160a01b038381166004830152919650908816906341976e09906024016040805180830381865afa15801561160e573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061163291906126de565b5093505050505b9450945094915050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b1790526116948482611e8e565b6116d2576040516001600160a01b0384811660248301525f60448301526116c891869182169063095ea7b3906064016112b0565b6116d28482611e22565b50505050565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148061175e57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166117525f5160206127995f395f51905f52546001600160a01b031690565b6001600160a01b031614155b1561177c5760405163703e46dd60e11b815260040160405180910390fd5b565b5f610b86816111c3565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156117e2575060408051601f3d908101601f191682019092526117df91810190612525565b60015b61180f57604051634c9c8ce360e01b81526001600160a01b03831660048201526024015b60405180910390fd5b5f5160206127995f395f51905f52811461183f57604051632a87526960e21b815260048101829052602401611806565b6112e28383611ed7565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461177c5760405163703e46dd60e11b815260040160405180910390fd5b5f5f5160206127595f395f51905f5260018101546040516302910f8b60e31b81526001600160a01b0385811660048301529293509116906314887c5890602401602060405180830381865afa1580156118ed573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119119190612672565b61192e576040516362df054560e01b815260040160405180910390fd5b816001600160a01b031663392e53cd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561196a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061198e9190612672565b6119ab57604051639a09fd8760e01b815260040160405180910390fd5b5f826001600160a01b0316634ff0876a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119e8573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a0c9190612700565b600283015490915065ffffffffffff600160a01b90910481169082161015611a66576002820154604051633754999f60e11b8152600160a01b90910465ffffffffffff908116600483015282166024820152604401611806565b5f836001600160a01b031663b13442716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611aa3573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ac791906124c5565b90505f816001600160a01b031663bb24fe8a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b06573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b2a919061271b565b905067ffffffffffffffff811615611b5557604051633f3e089160e21b815260040160405180910390fd5b5f856001600160a01b03166327810b6e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b92573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bb691906124c5565b90506001600160a01b038116611bdf5760405163d2420f5960e01b815260040160405180910390fd5b845460405163ae89186b60e01b81526001600160a01b0391821660048201525f9183169063ae89186b90602401602060405180830381865afa158015611c27573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c4b91906124c5565b90505f826001600160a01b031663467aea206040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c8a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cae91906124c5565b90506001600160a01b0381163014611ce9576001600160a01b0382163014611ce957604051632aa3aa3b60e01b815260040160405180910390fd5b5f886001600160a01b031663ce9b79306040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d26573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d4a91906124c5565b90505f816001600160a01b031663bb24fe8a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d89573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dad919061271b565b905067ffffffffffffffff8116600314611dda5760405163b9f0f17160e01b815260040160405180910390fd5b50505050505050505050565b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0061038f565b611e16611f2c565b611e1f81611f51565b50565b5f5f60205f8451602086015f885af180611e41576040513d5f823e3d81fd5b50505f513d91508115611e58578060011415611e65565b6001600160a01b0384163b155b156116d257604051635274afe760e01b81526001600160a01b0385166004820152602401611806565b5f5f5f5f60205f8651602088015f8a5af192503d91505f519050828015611ecd57508115611ebf5780600114611ecd565b5f866001600160a01b03163b115b9695505050505050565b611ee082611f9d565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a2805115611f24576112e28282611fe6565b610b86612058565b611f34612077565b61177c57604051631afcd79f60e31b815260040160405180910390fd5b611f59611f2c565b807fb413d65cb88f23816c329284a0d3eb15a99df7963ab7402ade4c5da22bff6b005b80546001600160a01b0319166001600160a01b039290921691909117905550565b806001600160a01b03163b5f03611fd257604051634c9c8ce360e01b81526001600160a01b0382166004820152602401611806565b805f5160206127995f395f51905f52611f7c565b60605f5f846001600160a01b0316846040516120029190612742565b5f60405180830381855af49150503d805f811461203a576040519150601f19603f3d011682016040523d82523d5f602084013e61203f565b606091505b509150915061204f858383612090565b95945050505050565b341561177c5760405163b398979f60e01b815260040160405180910390fd5b5f612080611de6565b54600160401b900460ff16919050565b6060826120a5576120a0826120ef565b6120e8565b81511580156120bc57506001600160a01b0384163b155b156120e557604051639996b31560e01b81526001600160a01b0385166004820152602401611806565b50805b9392505050565b8051156120ff5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b6001600160a01b0381168114611e1f575f5ffd5b5f6020828403121561213c575f5ffd5b81356120e881612118565b65ffffffffffff81168114611e1f575f5ffd5b5f5f5f5f6080858703121561216d575f5ffd5b843561217881612118565b9350602085013561218881612118565b925060408501359150606085013561219f81612147565b939692955090935050565b5f5f5f5f5f60a086880312156121be575f5ffd5b85356121c981612118565b945060208601356121d981612118565b935060408601356121e981612118565b925060608601356121f981612118565b9150608086013561220981612147565b809150509295509295909350565b5f5f60408385031215612228575f5ffd5b823561223381612118565b9150602083013561224381612118565b809150509250929050565b5f6020828403121561225e575f5ffd5b5035919050565b634e487b7160e01b5f52604160045260245ffd5b5f5f6040838503121561228a575f5ffd5b823561229581612118565b9150602083013567ffffffffffffffff8111156122b0575f5ffd5b8301601f810185136122c0575f5ffd5b803567ffffffffffffffff8111156122da576122da612265565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561230957612309612265565b604052818152828201602001871015612320575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f5f60408385031215612350575f5ffd5b823561235b81612118565b9150602083013561224381612147565b5f5f5f6060848603121561237d575f5ffd5b833561238881612118565b9250602084013561239881612118565b915060408401356123a881612118565b809150509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6120e860208301846123b3565b5f5f5f5f5f5f60c08789031215612408575f5ffd5b863561241381612118565b9550602087013561242381612118565b9450604087013561243381612118565b9350606087013561244381612118565b9250608087013561245381612147565b9598949750929591949360a090920135925050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761038f5761038f612468565b5f826124ad57634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111561038f5761038f612468565b5f602082840312156124d5575f5ffd5b81516120e881612118565b85815260018060a01b038516602082015283604082015265ffffffffffff8316606082015260a060808201525f61251a60a08301846123b3565b979650505050505050565b5f60208284031215612535575f5ffd5b5051919050565b6001815b60018411156125775780850481111561255b5761255b612468565b600184161561256957908102905b60019390931c928002612540565b935093915050565b5f8261258d5750600161038f565b8161259957505f61038f565b81600181146125af57600281146125b9576125d5565b600191505061038f565b60ff8411156125ca576125ca612468565b50506001821b61038f565b5060208310610133831016604e8410600b84101617156125f8575081810a61038f565b6126045f19848461253c565b805f190482111561261757612617612468565b029392505050565b5f6120e860ff84168361257f565b8181038181111561038f5761038f612468565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f90611ecd908301846123b3565b5f60208284031215612682575f5ffd5b815180151581146120e8575f5ffd5b5f5f604083850312156126a2575f5ffd5b82516126ad81612118565b602084015190925061224381612147565b5f602082840312156126ce575f5ffd5b815160ff811681146120e8575f5ffd5b5f5f604083850312156126ef575f5ffd5b505080516020909101519092909150565b5f60208284031215612710575f5ffd5b81516120e881612147565b5f6020828403121561272b575f5ffd5b815167ffffffffffffffff811681146120e8575f5ffd5b5f82518060208501845e5f92019182525091905056feb8e099bfced582503f4260023771d11f60bb84aadc54b7d0da79ce0abbf0e800b8e099bfced582503f4260023771d11f60bb84aadc54b7d0da79ce0abbf0e805360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca26469706673582212203ccf1a19f4eebbc37eeeaa425d137a7ef356175d3245fd7ab37b52925fb3090664736f6c634300081c0033