0 txs
1 call
constructor
constructor(address _buildManager, address _owner, address[] _plugins)
functions
externalLens
viewfunction externalLens() view returns (address)
facetAddress
viewfunction facetAddress(bytes4 _functionSelector) view returns (address facetAddress_)
facetAddresses
viewfunction facetAddresses() view returns (address[] facetAddresses_)
facetFunctionSelectors
viewfunction facetFunctionSelectors(address _facet) view returns (bytes4[] facetFunctionSelectors_)
facets
viewfunction facets() view returns (tuple[] facets_)
pendingOwner
viewfunction pendingOwner() view returns (address)
storageFacetAddress
viewfunction storageFacetAddress(bytes4 _functionSelector) view returns (address facetAddress_)
supportsInterface
viewfunction supportsInterface(bytes4 _interfaceId) view returns (bool)
acceptOwnership
nonpayablefunction acceptOwnership()
addPluginList
nonpayablefunction addPluginList(address[] _plugins)
removePluginList
nonpayablefunction removePluginList(address[] _plugins)
replacePlugin
nonpayablefunction replacePlugin(address[] _oldPlugins, address[] _newPlugins)
setPause
nonpayablefunction setPause(bool _isPaused)
staticCallChecker
nonpayablefunction staticCallChecker()
events
AddFunctions
event AddFunctions(address _facetAddress, bytes4[] _functionSelectors, uint16 selectorPosition)
BeneficiaryRegistryCatch
event BeneficiaryRegistryCatch(bytes reason)
BeneficiaryRegistryNotDefined
event BeneficiaryRegistryNotDefined()
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
PauseSet
event PauseSet(bool indexed isPaused)
RemoveFunctions
event RemoveFunctions(address _facetAddress, bytes4[] _functionSelectors)
SetCryptoLegacyBeneficiaryCatch
event SetCryptoLegacyBeneficiaryCatch(bytes reason)
SetCryptoLegacyGuardianCatch
event SetCryptoLegacyGuardianCatch(bytes reason)
SetCryptoLegacyOwnerCatch
event SetCryptoLegacyOwnerCatch(bytes reason)
StaticCallCheck
event StaticCallCheck()
errors
CantAddFunctionThatAlreadyExists
error CantAddFunctionThatAlreadyExists()
CantRemoveImmutableFunctions
error CantRemoveImmutableFunctions()
ChallengePeriodStarted
error ChallengePeriodStarted()
DistributionStarted
error DistributionStarted()
FacetCantBeZero
error FacetCantBeZero()
FacetNotFound
error FacetNotFound()
FunctionNotExists
error FunctionNotExists(bytes4 selector)
InitialFeeNotPaid
error InitialFeeNotPaid()
NotSelfCall
error NotSelfCall()
NotTheOwner
error NotTheOwner()
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
PluginNotRegistered
error PluginNotRegistered()
creation bytecode
0x608060405234801562000010575f80fd5b50604051620026fc380380620026fc8339810160408190526200003391620005ba565b7fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cf080546001600160a01b0319166001600160a01b0385161790557fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cee8054600160401b600160801b03191668010000000000000000426001600160401b0316021790557fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cec620000e183620000f7565b620000ed818362000179565b5050505062000826565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c132080546001600160a01b031981166001600160a01b038481169182179093556040515f80516020620026dc833981519152939092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b5f5b81518110156200026f57620001b3838383815181106200019f576200019f62000684565b60200260200101516200027460201b60201c565b5f828281518110620001c957620001c962000684565b60200260200101516001600160a01b031663265263b16040518163ffffffff1660e01b81526004015f60405180830381865afa1580156200020c573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405262000235919081019062000698565b90506200026583838151811062000250576200025062000684565b6020026020010151826200030960201b60201c565b506001016200017b565b505050565b600482810154604051636c6bc68760e11b81526001600160a01b038481169382019390935291169063d8d78d0e90602401602060405180830381865afa158015620002c1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002e7919062000742565b6200030557604051632f49c4f160e01b815260040160405180910390fd5b5050565b6001600160a01b0382166200033157604051635cf729ef60e11b815260040160405180910390fd5b5f80516020620026dc8339815191526200034c81846200043a565b5f5b8251811015620003f7575f8382815181106200036e576200036e62000684565b6020908102919091018101516001600160e01b031981165f908152918590526040909120549091506001600160a01b031615620003be576040516322be2eaf60e21b815260040160405180910390fd5b6001600160e01b0319165f90815260208390526040902080546001600160a01b0319166001600160a01b0386161790556001016200034e565b507f1e276e775f40f560dd2320571648985b1c73ff2675ce328bc449a4a82e317dc083835f6040516200042d939291906200076a565b60405180910390a1505050565b60028201545f5b818110156200049557826001600160a01b03168460020182815481106200046c576200046c62000684565b5f918252602090912001546001600160a01b0316036200048c5750505050565b60010162000441565b50620004c782604051806040016040528060078152602001664e4f5f434f444560c81b815250620004ff60201b60201c565b5060029190910180546001810182555f91825260209091200180546001600160a01b0319166001600160a01b03909216919091179055565b813b81816200052c5760405162461bcd60e51b8152600401620005239190620007d8565b60405180910390fd5b50505050565b80516001600160a01b038116811462000549575f80fd5b919050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156200058d576200058d6200054e565b604052919050565b5f6001600160401b03821115620005b057620005b06200054e565b5060051b60200190565b5f805f60608486031215620005cd575f80fd5b620005d88462000532565b92506020620005e981860162000532565b60408601519093506001600160401b0381111562000605575f80fd5b8501601f8101871362000616575f80fd5b80516200062d620006278262000595565b62000562565b81815260059190911b820183019083810190898311156200064c575f80fd5b928401925b828410156200067557620006658462000532565b8252928401929084019062000651565b80955050505050509250925092565b634e487b7160e01b5f52603260045260245ffd5b5f6020808385031215620006aa575f80fd5b82516001600160401b03811115620006c0575f80fd5b8301601f81018513620006d1575f80fd5b8051620006e2620006278262000595565b81815260059190911b8201830190838101908783111562000701575f80fd5b928401925b82841015620007375783516001600160e01b03198116811462000727575f80fd5b8252928401929084019062000706565b979650505050505050565b5f6020828403121562000753575f80fd5b8151801515811462000763575f80fd5b9392505050565b6001600160a01b03841681526060602080830182905284519183018290525f9185820191906080850190845b81811015620007be5784516001600160e01b0319168352938301939183019160010162000796565b505080935050505061ffff83166040830152949350505050565b5f602080835283518060208501525f5b818110156200080657858101830151858201604001528201620007e8565b505f604082860101526040601f19601f8301168501019250505092915050565b611ea880620008345f395ff3fe6080604052600436106100dc575f3560e01c80637a0ed6271161007e578063bedb86fb11610058578063bedb86fb1461043e578063c2a01f881461045d578063cdffacc61461047c578063e30c39781461049b576100dc565b80637a0ed627146103dd578063ac976040146103fe578063adfca15e14610412576100dc565b806352ef6b2c116100ba57806352ef6b2c146103755780636b8d545e1461039657806372744b44146103aa57806379ba5097146103c9576100dc565b806301ffc9a7146102885780631b82f1ba146102f45780634ca8d40314610356575b5f5f80516020611e338339815191525f80356001600160e01b0319168152602082905260409020549091506001600160a01b031680610230577fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cef545f80516020611e53833981519152905f90309063ac97604090600160e81b900460ff1615610173576003840154600160e81b900460ff16610176565b60015b6101869060ff16620186a0611901565b6040518263ffffffff1660e01b81526004015f604051808303815f88803b1580156101af575f80fd5b5087f1935050505080156101c1575060015b6101c9575060015b6101de845f356001600160e01b0319166104d7565b92506001600160a01b038316158015906101f6575080155b1561022d575f80356001600160e01b031916815260208590526040902080546001600160a01b0319166001600160a01b0385161790555b50505b6001600160a01b0381166102685760405162bdabc760e71b81526001600160e01b03195f351660048201526024015b60405180910390fd5b365f80375f80365f845af43d5f803e808015610282573d5ff35b3d5ffd5b005b348015610293575f80fd5b506102df6102a236600461192d565b6001600160e01b0319165f9081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f602052604090205460ff1690565b60405190151581526020015b60405180910390f35b3480156102ff575f80fd5b5061033e61030e36600461192d565b6001600160e01b0319165f9081525f80516020611e3383398151915260205260409020546001600160a01b031690565b6040516001600160a01b0390911681526020016102eb565b348015610361575f80fd5b50610286610370366004611a39565b6105fe565b348015610380575f80fd5b50610389610621565b6040516102eb9190611a73565b3480156103a1575f80fd5b5061033e610690565b3480156103b5575f80fd5b506102866103c4366004611a39565b610732565b3480156103d4575f80fd5b50610286610773565b3480156103e8575f80fd5b506103f16107f4565b6040516102eb9190611abf565b348015610409575f80fd5b5061028661098d565b34801561041d575f80fd5b5061043161042c366004611b70565b6109d7565b6040516102eb9190611bcf565b348015610449575f80fd5b50610286610458366004611bee565b610a3b565b348015610468575f80fd5b50610286610477366004611c09565b610a5a565b348015610487575f80fd5b5061033e61049636600461192d565b610aa1565b3480156104a6575f80fd5b507fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cef546001600160a01b031661033e565b5f805b60028401548110156105f3575f8460020182815481106104fc576104fc611c69565b5f9182526020822001546040805163cdcf7fb360e01b815290516001600160a01b039092169263cdcf7fb3926004808401938290030181865afa158015610545573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261056c9190810190611c7d565b90505f5b81518110156105e95781818151811061058b5761058b611c69565b60200260200101516001600160e01b031916856001600160e01b031916036105e1578560020183815481106105c2576105c2611c69565b5f918252602090912001546001600160a01b031693506105f892505050565b600101610570565b50506001016104da565b505f90505b92915050565b610606610aeb565b61061e5f80516020611e538339815191525b82610b38565b50565b60605f5f80516020611e338339815191526002810180546040805160208084028201810190925282815293945083018282801561068557602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610667575b505050505091505090565b7fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cf054604080516335c6aa2f60e11b815290515f925f80516020611e53833981519152926001600160a01b0390911691636b8d545e916004818101926020929091908290030181865afa158015610708573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061072c9190611d12565b91505090565b61073a610aeb565b5f5b815181101561076f5761076782828151811061075a5761075a611c69565b6020026020010151610c15565b60010161073c565b5050565b7fc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75cef545f80516020611e53833981519152906001600160a01b031633146107ce5760405163118cdaa760e01b815233600482015260240161025f565b6107d88133610c80565b6107e133610d30565b60030180546001600160a01b0319169055565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e546060905f80516020611e33833981519152908067ffffffffffffffff81111561084157610841611948565b60405190808252806020026020018201604052801561088657816020015b604080518082019091525f81526060602082015281526020019060019003908161085f5790505b5092505f5b81811015610987575f8360020182815481106108a9576108a9611c69565b905f5260205f20015f9054906101000a90046001600160a01b03169050808583815181106108d9576108d9611c69565b60200260200101515f01906001600160a01b031690816001600160a01b031681525050806001600160a01b031663cdcf7fb36040518163ffffffff1660e01b81526004015f60405180830381865afa158015610937573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261095e9190810190611c7d565b85838151811061097057610970611c69565b60209081029190910181015101525060010161088b565b50505090565b3330146109ad5760405163763e6e0560e11b815260040160405180910390fd5b6040517f6832e49adbb4121c72b63aad2aafe3e3a25b5e7624a192b19e60a513de6f9570905f90a1565b6060816001600160a01b031663cdcf7fb36040518163ffffffff1660e01b81526004015f60405180830381865afa158015610a14573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526105f89190810190611c7d565b610a43610aeb565b61061e5f80516020611e5383398151915282610db1565b610a62610aeb565b5f5b8251811015610a8a57610a8283828151811061075a5761075a611c69565b600101610a64565b5061076f5f80516020611e53833981519152610618565b6001600160e01b031981165f9081525f80516020611e3383398151915260208190526040909120546001600160a01b03169081610ae557610ae281846104d7565b91505b50919050565b5f80516020611e53833981519152610b0281610e1f565b600281015467ffffffffffffffff165f03610b30576040516392e3e90760e01b815260040160405180910390fd5b61061e610e46565b5f5b8151811015610c1057610b6683838381518110610b5957610b59611c69565b6020026020010151610ea1565b5f828281518110610b7957610b79611c69565b60200260200101516001600160a01b031663265263b16040518163ffffffff1660e01b81526004015f60405180830381865afa158015610bbb573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610be29190810190611c7d565b9050610c07838381518110610bf957610bf9611c69565b602002602001015182610f2e565b50600101610b3a565b505050565b61061e81826001600160a01b031663cdcf7fb36040518163ffffffff1660e01b81526004015f60405180830381865afa158015610c54573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610c7b9190810190611c7d565b611053565b5f610cb27fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c1320546001600160a01b031690565b9050610cf783610cef83604080516001600160a01b03831660208201525f9101604051602081830303815290604052805190602001209050919050565b60015f61113c565b604080516001600160a01b0384166020808301919091528251808303820181529183019092528051910120610c1090849060018061113c565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c132080546001600160a01b031981166001600160a01b038481169182179093556040515f80516020611e33833981519152939092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b6002820154600160801b900467ffffffffffffffff1615610de55760405163593ccb3560e11b815260040160405180910390fd5b815460ff191681151590811783556040517f878ac8a2ca79520471f8f3c8494fa802c03ce3bf034252aad7f22318984fdbdb905f90a25050565b610e288161145d565b1561061e57604051636576290f60e11b815260040160405180910390fd5b33610e787fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c1320546001600160a01b031690565b6001600160a01b031614610e9f576040516336b6b89560e01b815260040160405180910390fd5b565b600482810154604051636c6bc68760e11b81526001600160a01b038481169382019390935291169063d8d78d0e90602401602060405180830381865afa158015610eed573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f119190611d2d565b61076f57604051632f49c4f160e01b815260040160405180910390fd5b6001600160a01b038216610f5557604051635cf729ef60e11b815260040160405180910390fd5b5f80516020611e33833981519152610f6d818461149c565b5f5b8251811015611012575f838281518110610f8b57610f8b611c69565b6020908102919091018101516001600160e01b031981165f908152918590526040909120549091506001600160a01b031615610fda576040516322be2eaf60e21b815260040160405180910390fd5b6001600160e01b0319165f90815260208390526040902080546001600160a01b0319166001600160a01b038616179055600101610f6f565b507f1e276e775f40f560dd2320571648985b1c73ff2675ce328bc449a4a82e317dc083835f60405161104693929190611d48565b60405180910390a1505050565b5f80516020611e338339815191526001600160a01b03831661108857604051635cf729ef60e11b815260040160405180910390fd5b306001600160a01b038416036110b1576040516328fa4fbb60e11b815260040160405180910390fd5b6110bb8184611553565b5f5b825181101561110a57815f015f8483815181106110dc576110dc611c69565b6020908102919091018101516001600160e01b03191682528101919091526040015f908120556001016110bd565b507fa1e03417d4555d7153fb2d54752e8529929ae7e5ac5dcb1be3ad02d1cb5c89018383604051611046929190611d7f565b5f61114685611628565b90506001600160a01b038116611184576040517f7766884ba17ca44af7788bd49088117003cb1f7afb1bef5b9eaba6a632be1a92905f90a150611457565b600183600481111561119857611198611da2565b03611281576001600160a01b0381166338e921166111bd87631c74908b60e11b61170b565b6040516001600160e01b031960e084901b1681526004810188905285151560248201526044015f604051808303815f88803b1580156111fa575f80fd5b5087f19350505050801561120c575060015b61127c573d808015611239576040519150601f19603f3d011682016040523d82523d5f602084013e61123e565b606091505b507fb7adcaee8c9a507a90000cc8925fa2b7fbff4851ad39812bd37c753871e206648160405161126e9190611df9565b60405180910390a150611455565b611455565b600283600481111561129557611295611da2565b0361136b576001600160a01b03811663420d0acd6112ba8763420d0acd60e01b61170b565b6040516001600160e01b031960e084901b1681526004810188905285151560248201526044015f604051808303815f88803b1580156112f7575f80fd5b5087f193505050508015611309575060015b61127c573d808015611336576040519150601f19603f3d011682016040523d82523d5f602084013e61133b565b606091505b507f77f82f984d2704bb6696687dfd07bf38354877b220f4385750ce12eb500556d38160405161126e9190611df9565b600383600481111561137f5761137f611da2565b03611455576001600160a01b03811663b0ce9a3c6113a487632c33a68f60e21b61170b565b6040516001600160e01b031960e084901b1681526004810188905285151560248201526044015f604051808303815f88803b1580156113e1575f80fd5b5087f1935050505080156113f3575060015b611455573d808015611420576040519150601f19603f3d011682016040523d82523d5f602084013e611425565b606091505b507f89d9fd94f0e5757bb1f93ca918bf4c8c1b00a3c2d7811d5f6925aea69f3af3648160405161126e9190611df9565b505b50505050565b60028101545f90600160801b900467ffffffffffffffff16158015906105f85750506002015467ffffffffffffffff428116600160801b909204161090565b60028201545f5b818110156114f157826001600160a01b03168460020182815481106114ca576114ca611c69565b5f918252602090912001546001600160a01b0316036114e95750505050565b6001016114a3565b5061151b82604051806040016040528060078152602001664e4f5f434f444560c81b815250611756565b5060029190910180546001810182555f91825260209091200180546001600160a01b0319166001600160a01b03909216919091179055565b60028201545f9061156690600190611e0b565b90505f6115738484611777565b90508181146115ef575f84600201838154811061159257611592611c69565b5f918252602090912001546002860180546001600160a01b0390921692508291849081106115c2576115c2611c69565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b03160217905550505b8360020180548061160257611602611e1e565b5f8281526020902081015f1990810180546001600160a01b031916905501905550505050565b60048101545f906001600160a01b03168063cd26aee561164f8563cd26aee560e01b61170b565b6040518263ffffffff1660e01b81526004016020604051808303818786fa9350505050801561169b575060408051601f3d908101601f1916820190925261169891810190611d12565b60015b610ae2573d8080156116c8576040519150601f19603f3d011682016040523d82523d5f602084013e6116cd565b606091505b507fe47aa45755870462788b1131c13282eb5fa013cef64dccb21de17cb816a43857816040516116fd9190611df9565b60405180910390a150610ae5565b60038201545f90600160e81b900460ff1615611735576003830154600160e81b900460ff16611738565b60015b60ff1661174584846117eb565b61174f9190611901565b9392505050565b813b81816114575760405162461bcd60e51b815260040161025f9190611df9565b60028201545f90815b818110156117d157836001600160a01b03168560020182815481106117a7576117a7611c69565b5f918252602090912001546001600160a01b0316036117c95791506105f89050565b600101611780565b50604051632002ac4b60e21b815260040160405180910390fd5b5f6001600160e01b0319821663f4953aed60e01b0361180e575062124f806105f8565b63f23276b160e01b6001600160e01b03198316148061183d5750630134e3b760e71b6001600160e01b03198316145b1561184c5750620927c06105f8565b6001600160e01b03198216600160e01b0361186a5750619c406105f8565b5f630d0e688360e31b6001600160e01b03198416148061189a5750631c74908b60e11b6001600160e01b03198416145b806118b55750632c33a68f60e21b6001600160e01b03198416145b806118d0575063420d0acd60e01b6001600160e01b03198416145b156118e15762061a809150506105f8565b5062030d409392505050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176105f8576105f86118ed565b6001600160e01b03198116811461061e575f80fd5b5f6020828403121561193d575f80fd5b813561174f81611918565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561198557611985611948565b604052919050565b5f67ffffffffffffffff8211156119a6576119a6611948565b5060051b60200190565b6001600160a01b038116811461061e575f80fd5b5f82601f8301126119d3575f80fd5b813560206119e86119e38361198d565b61195c565b8083825260208201915060208460051b870101935086841115611a09575f80fd5b602086015b84811015611a2e578035611a21816119b0565b8352918301918301611a0e565b509695505050505050565b5f60208284031215611a49575f80fd5b813567ffffffffffffffff811115611a5f575f80fd5b611a6b848285016119c4565b949350505050565b602080825282518282018190525f9190848201906040850190845b81811015611ab35783516001600160a01b031683529284019291840191600101611a8e565b50909695505050505050565b5f60208083018184528085518083526040925060408601915060408160051b8701018488015f5b83811015611b6257888303603f19018552815180516001600160a01b031684528701518784018790528051878501819052908801905f9060608601905b80831015611b4d5783516001600160e01b0319168252928a019260019290920191908a0190611b23565b50968901969450505090860190600101611ae6565b509098975050505050505050565b5f60208284031215611b80575f80fd5b813561174f816119b0565b5f815180845260208085019450602084015f5b83811015611bc45781516001600160e01b03191687529582019590820190600101611b9e565b509495945050505050565b602081525f61174f6020830184611b8b565b801515811461061e575f80fd5b5f60208284031215611bfe575f80fd5b813561174f81611be1565b5f8060408385031215611c1a575f80fd5b823567ffffffffffffffff80821115611c31575f80fd5b611c3d868387016119c4565b93506020850135915080821115611c52575f80fd5b50611c5f858286016119c4565b9150509250929050565b634e487b7160e01b5f52603260045260245ffd5b5f6020808385031215611c8e575f80fd5b825167ffffffffffffffff811115611ca4575f80fd5b8301601f81018513611cb4575f80fd5b8051611cc26119e38261198d565b81815260059190911b82018301908381019087831115611ce0575f80fd5b928401925b82841015611d07578351611cf881611918565b82529284019290840190611ce5565b979650505050505050565b5f60208284031215611d22575f80fd5b815161174f816119b0565b5f60208284031215611d3d575f80fd5b815161174f81611be1565b6001600160a01b03841681526060602082018190525f90611d6b90830185611b8b565b905061ffff83166040830152949350505050565b6001600160a01b03831681526040602082018190525f90611a6b90830184611b8b565b634e487b7160e01b5f52602160045260245ffd5b5f81518084525f5b81811015611dda57602081850181015186830182015201611dbe565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f61174f6020830184611db6565b818103818111156105f8576105f86118ed565b634e487b7160e01b5f52603160045260245ffdfec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131cc20f29786b5c80f517b8eaf83151bc76d99ae5e383a839b80a5f4da3fef75ceca264697066735822122031e5a52883fbd6e14e82826af510964949e73c3b0d535066e1599eda56a7731a64736f6c63430008180033c8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000