0 txs
6 calls
constructor
No constructor.
functions
activeBridge
viewfunction activeBridge() view returns (bytes32)
activeSwap
viewfunction activeSwap() view returns (bytes32)
bridgeParams
viewfunction bridgeParams() view returns (address bridge, bytes params)
bridgeToUse
viewfunction bridgeToUse(bytes32) view returns (string)
cowllector
viewfunction cowllector() view returns (bool sendFunds, address cowllector, uint256 amountCowllectorNeeds)
destinationAddress
viewfunction destinationAddress() view returns (address destination, bytes destinationBytes, string destinationString)
findHash
purefunction findHash(string _variable) pure returns (bytes32)
funds
viewfunction funds() view returns (address sender, bool fromInternalBalance, address recipient, bool toInternalBalance)
lastHarvest
viewfunction lastHarvest() view returns (uint256)
minBridgeAmount
viewfunction minBridgeAmount() view returns (uint256)
native
viewfunction native() view returns (address)
owner
viewfunction owner() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
stable
viewfunction stable() view returns (address)
swapKind
viewfunction swapKind() view returns (uint8)
swapParams
viewfunction swapParams() view returns (address router, bytes params)
swapToUse
viewfunction swapToUse(bytes32) view returns (string)
bridgeAxelar
nonpayablefunction bridgeAxelar()
bridgeCircle
nonpayablefunction bridgeCircle()
bridgeStargate
nonpayablefunction bridgeStargate()
bridgeSynapse
nonpayablefunction bridgeSynapse()
bridgezkEVM
nonpayablefunction bridgezkEVM()
bridgezkSync
nonpayablefunction bridgezkSync()
harvest
nonpayablefunction harvest()
inCaseTokensGetStuck
nonpayablefunction inCaseTokensGetStuck(address _token, bool _native)
initialize
nonpayablefunction initialize()
renounceOwnership
nonpayablefunction renounceOwnership()
setActiveBridge
nonpayablefunction setActiveBridge(bytes32 _bridgeHash, tuple _params)
setActiveSwap
nonpayablefunction setActiveSwap(bytes32 _swapHash, tuple _params)
setCowllector
nonpayablefunction setCowllector(tuple _cowllector)
setDestinationAddress
nonpayablefunction setDestinationAddress(tuple _destination)
setMinBridgeAmount
nonpayablefunction setMinBridgeAmount(uint256 _amount)
setStable
nonpayablefunction setStable(address _stable, address _native)
setSwapHash
nonpayablefunction setSwapHash(string _name, string _variable)
swapAlgebra
nonpayablefunction swapAlgebra()
swapBalancer
nonpayablefunction swapBalancer()
swapBeefy
nonpayablefunction swapBeefy()
swapSolidly
nonpayablefunction swapSolidly()
swapUniV2
nonpayablefunction swapUniV2()
swapUniV3
nonpayablefunction swapUniV3()
swapUniV3Deadline
nonpayablefunction swapUniV3Deadline()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
upgradeTo
nonpayablefunction upgradeTo(address newImplementation)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
events
AdminChanged
event AdminChanged(address previousAdmin, address newAdmin)
BeaconUpgraded
event BeaconUpgraded(address indexed beacon)
Bridged
event Bridged(address indexed stable, uint256 stableBridged)
CowllectorRefill
event CowllectorRefill(uint256 amount)
Harvested
event Harvested(uint256 amount)
Initialized
event Initialized(uint8 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SetBridge
event SetBridge(bytes32 bridge, (address bridge, bytes params) params)
SetDestinationAddress
event SetDestinationAddress((address destination, bytes destinationBytes, string destinationString) destinationAddress)
SetMinBridgeAmount
event SetMinBridgeAmount(uint256 amount)
SetStable
event SetStable(address oldStable, address newStable)
SetSwap
event SetSwap(bytes32 swap, (address router, bytes params) params)
Upgraded
event Upgraded(address indexed implementation)
errors
BridgeError
error BridgeError()
FailedToSendEther
error FailedToSendEther()
IncorrectRoute
error IncorrectRoute()
NotAuthorized
error NotAuthorized()
NotEnoughEth
error NotEnoughEth()
SwapError
error SwapError()
creation bytecode
0x60a06040523060805234801561001457600080fd5b50608051615f106200004d60003960008181610e4701528181610e9001528181610f6501528181610fa501526112be0152615f106000f3fe60806040526004361061026b5760003560e01c8063873d80ec11610144578063c89f2ce4116100b6578063ee63c1e51161007a578063ee63c1e514610727578063f1a392da1461073c578063f2fde38b14610752578063f3f1a71a14610772578063fe8d1ab014610792578063ff33d21f146107a757600080fd5b8063c89f2ce414610648578063ca325469146106b9578063cc5ea4ef146106dd578063d49b6408146106f2578063d7d66e711461070757600080fd5b8063b54653fb11610108578063b54653fb14610574578063b9f39147146105c8578063bac86af5146105dd578063bce4547a146105fd578063c3c2247514610612578063c4b00c4f1461062857600080fd5b8063873d80ec146104f25780638da5cb5b14610515578063943f8e96146105335780639c345b9f14610549578063a5131aaa1461055f57600080fd5b80635109d8b6116101dd5780636ae40711116101a15780636ae40711146104515780636d0a68911461046657806370c7510714610493578063715018a6146104b3578063748b3c05146104c85780638129fc1c146104dd57600080fd5b80635109d8b6146103bd57806352d1902d146103d2578063530728d5146103f557806364e510a11461040a578063671f6a261461042a57600080fd5b806322be3de11161022f57806322be3de114610315578063284eb663146103355780633659cfe6146103555780634641257d146103755780634f1ef2861461038a5780635066a7471461039d57600080fd5b80630278fb8a14610277578063057d1ae31461028e5780630d1f7833146102a357806311b0b42d146102b85780631610ee40146102f557600080fd5b3661027257005b600080fd5b34801561028357600080fd5b5061028c6107c7565b005b34801561029a57600080fd5b5061028c610959565b3480156102af57600080fd5b5061028c610bb5565b3480156102c457600080fd5b5060cd546102d8906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561030157600080fd5b5061028c61031036600461468c565b610d9a565b34801561032157600080fd5b5060cc546102d8906001600160a01b031681565b34801561034157600080fd5b5061028c610350366004614708565b610deb565b34801561036157600080fd5b5061028c610370366004614788565b610e3d565b34801561038157600080fd5b5061028c610f25565b61028c61039836600461485c565b610f5b565b3480156103a957600080fd5b5061028c6103b8366004614900565b61102b565b3480156103c957600080fd5b5061028c6110be565b3480156103de57600080fd5b506103e76112b1565b6040519081526020016102ec565b34801561040157600080fd5b5061028c611364565b34801561041657600080fd5b5061028c610425366004614900565b611451565b34801561043657600080fd5b5060c9546104449060ff1681565b6040516102ec9190614968565b34801561045d57600080fd5b5061028c6114df565b34801561047257600080fd5b50610486610481366004614976565b6116c5565b6040516102ec91906149df565b34801561049f57600080fd5b506103e76104ae3660046149f2565b61175f565b3480156104bf57600080fd5b5061028c611793565b3480156104d457600080fd5b5061028c6117a7565b3480156104e957600080fd5b5061028c611917565b3480156104fe57600080fd5b50610507611a8f565b6040516102ec929190614a33565b34801561052157600080fd5b506033546001600160a01b03166102d8565b34801561053f57600080fd5b506103e760cf5481565b34801561055557600080fd5b506103e760ce5481565b34801561056b57600080fd5b5061028c611b30565b34801561058057600080fd5b5060d05460d1546105a39160ff8116916101009091046001600160a01b03169083565b6040805193151584526001600160a01b039092166020840152908201526060016102ec565b3480156105d457600080fd5b5061028c611b9c565b3480156105e957600080fd5b5061028c6105f8366004614a65565b611d28565b34801561060957600080fd5b5061028c611e22565b34801561061e57600080fd5b506103e760d95481565b34801561063457600080fd5b5061028c610643366004614a9e565b61204d565b34801561065457600080fd5b5060ca5460cb54610684916001600160a01b038082169260ff600160a01b93849004811693928216929091041684565b6040516102ec94939291906001600160a01b039485168152921515602084015292166040820152901515606082015260800190565b3480156106c557600080fd5b506106ce612062565b6040516102ec93929190614aba565b3480156106e957600080fd5b5061028c612191565b3480156106fe57600080fd5b5061050761232c565b34801561071357600080fd5b5061028c610722366004614976565b61234a565b34801561073357600080fd5b5061028c61238a565b34801561074857600080fd5b506103e760dd5481565b34801561075e57600080fd5b5061028c61076d366004614788565b612516565b34801561077e57600080fd5b5061048661078d366004614976565b61258c565b34801561079e57600080fd5b5061028c6125a5565b3480156107b357600080fd5b5061028c6107c2366004614af0565b61272e565b6107cf61280a565b600060d460010180546107e190614b1e565b80601f016020809104026020016040519081016040528092919081815260200182805461080d90614b1e565b801561085a5780601f1061082f5761010080835404028352916020019161085a565b820191906000526020600020905b81548152906001019060200180831161083d57829003601f168201915b50505050508060200190518101906108729190614be4565b60cd5481519192506001600160a01b031690829060009061089557610895614c18565b60200260200101516001600160a01b0316146108c4576040516376c252e160e11b815260040160405180910390fd5b60cc5481516001600160a01b039091169082906108e390600190614c44565b815181106108f3576108f3614c18565b60200260200101516001600160a01b031614610922576040516376c252e160e11b815260040160405180910390fd5b600061092d8261282a565b905060006109396128e3565b60d454909150610953906001600160a01b03168383612956565b50505050565b61096161280a565b600060d2600101805461097390614b1e565b80601f016020809104026020016040519081016040528092919081815260200182805461099f90614b1e565b80156109ec5780601f106109c1576101008083540402835291602001916109ec565b820191906000526020600020905b8154815290600101906020018083116109cf57829003601f168201915b5050505050806020019051810190610a049190614c57565b6040805160e081018252825161ffff16815260d6546001600160a01b0316602080830191909152633b9aca00828401819052606083015282516000808252818301855260808401919091528351818152808301855260a0840152835191820190935282815260c0820152919250610a7a826129f7565b9050610a898160000151612a7e565b610a91612af1565b6000610a9b612b52565b905060d954811115610b7f576040805160e081018252855161ffff16815260d6546001600160a01b039081166020808401919091528284018590526000606084018190528451818152808301865260808501528451818152808301865260a085015284519182018552815260c083015260d2548551935163c7c7f5b360e01b8152929650169163c7c7f5b391610b3990879087903090600401614d4b565b60c06040518083038185885af1158015610b57573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b7c9190614dd6565b50505b60cc546040518281526001600160a01b0390911690600080516020615e748339815191529060200160405180910390a250505050565b610bbd61280a565b60008060d46001018054610bd090614b1e565b80601f0160208091040260200160405190810160405280929190818152602001828054610bfc90614b1e565b8015610c495780601f10610c1e57610100808354040283529160200191610c49565b820191906000526020600020905b815481529060010190602001808311610c2c57829003601f168201915b5050505050806020019051810190610c619190614e40565b60cd5481519294509092506001600160a01b0316908290600090610c8757610c87614c18565b60200260200101516001600160a01b031614610cb6576040516376c252e160e11b815260040160405180910390fd5b60cc5481516001600160a01b03909116908290610cd590600190614c44565b81518110610ce557610ce5614c18565b60200260200101516001600160a01b031614610d14576040516376c252e160e11b815260040160405180910390fd5b6000610d1e6128e3565b90506000610d2c8483612b83565b60d45460c9546040805160808101825260ca546001600160a01b03808216835260ff600160a01b9283900481161515602085015260cb548083169585019590955291909304811615156060830152949550610d939491909316929116908490879087612d8c565b5050505050565b610da2612ed6565b7f518f47fcfba5d9b707c3387a7fa4301136192d8091a43ea13ae8db7275ab5d3a81604051610dd19190614f8c565b60405180910390a18060d6610de68282615171565b505050565b610df3612ed6565b818160dc60008787604051602001610e0c92919061526a565b6040516020818303038152906040528051906020012081526020019081526020016000209182610d939291906150b8565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610e8e5760405162461bcd60e51b8152600401610e859061527e565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610ed7600080516020615e94833981519152546001600160a01b031690565b6001600160a01b031614610efd5760405162461bcd60e51b8152600401610e85906152ca565b610f0681612f30565b60408051600080825260208201909252610f2291839190612f38565b50565b610f2d6130a3565b610f3561312e565b610f3d61319f565b6000610f476128e3565b1115610f5557610f556132d8565b4260dd55565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610fa35760405162461bcd60e51b8152600401610e859061527e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610fec600080516020615e94833981519152546001600160a01b031690565b6001600160a01b0316146110125760405162461bcd60e51b8152600401610e85906152ca565b61101b82612f30565b61102782826001612f38565b5050565b611033612ed6565b7f25f7dd6fc737add5174192a11292dfd270c1397f9c4f641fb6336a208b5efbed8282604051611064929190615350565b60405180910390a160cd5460d454611088916001600160a01b039081169116613308565b60cf8290558060d461109a8282615445565b505060cd54611027906001600160a01b03166110b96020840184614788565b613397565b6110c661280a565b600060d460010180546110d890614b1e565b80601f016020809104026020016040519081016040528092919081815260200182805461110490614b1e565b80156111515780601f1061112657610100808354040283529160200191611151565b820191906000526020600020905b81548152906001019060200180831161113457829003601f168201915b5050505050806020019051810190611169919061544f565b9050600061117682613424565b60cd5481519192506001600160a01b031690829060009061119957611199614c18565b60200260200101516001600160a01b0316146111c8576040516376c252e160e11b815260040160405180910390fd5b60cc5481516001600160a01b039091169082906111e790600190614c44565b815181106111f7576111f7614c18565b60200260200101516001600160a01b031614611226576040516376c252e160e11b815260040160405180910390fd5b60006112306128e3565b60d454604051631e82ecdb60e31b81529192506001600160a01b03169063f41766d89061126a908490600090889030904290600401615527565b6000604051808303816000875af1158015611289573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261095391908101906155bc565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146113515760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610e85565b50600080516020615e9483398151915290565b61136c61280a565b611374612af1565b600061137e612b52565b905060d95481111561141e5760d25460d65460cc5460405163cd58657960e01b81526000600482018190526001600160a01b0393841660248301526044820186905291831660648201526001608482015260c060a482015260c481019190915291169063cd5865799060e4015b600060405180830381600087803b15801561140557600080fd5b505af1158015611419573d6000803e3d6000fd5b505050505b60cc546040518281526001600160a01b0390911690600080516020615e748339815191529060200160405180910390a250565b611459612ed6565b7f5e355369ceaccb04ff615500f99b96912ce9f237ed35ae521487c19064e2318d828260405161148a929190615350565b60405180910390a160cc5460d2546114ae916001600160a01b039081169116613308565b60ce8290558060d26114c08282615445565b505060cc54611027906001600160a01b03166110b96020840184614788565b6114e761280a565b600060d460010180546114f990614b1e565b80601f016020809104026020016040519081016040528092919081815260200182805461152590614b1e565b80156115725780601f1061154757610100808354040283529160200191611572565b820191906000526020600020905b81548152906001019060200180831161155557829003601f168201915b505050505080602001905181019061158a9190614be4565b60cd5481519192506001600160a01b03169082906000906115ad576115ad614c18565b60200260200101516001600160a01b0316146115dc576040516376c252e160e11b815260040160405180910390fd5b60cc5481516001600160a01b039091169082906115fb90600190614c44565b8151811061160b5761160b614c18565b60200260200101516001600160a01b03161461163a576040516376c252e160e11b815260040160405180910390fd5b60006116446128e3565b60d4546040516338ed173960e01b81529192506001600160a01b0316906338ed17399061167e908490600090879030904290600401615690565b6000604051808303816000875af115801561169d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610de691908101906155bc565b60db60205260009081526040902080546116de90614b1e565b80601f016020809104026020016040519081016040528092919081815260200182805461170a90614b1e565b80156117575780601f1061172c57610100808354040283529160200191611757565b820191906000526020600020905b81548152906001019060200180831161173a57829003601f168201915b505050505081565b6000828260405160200161177492919061526a565b6040516020818303038152906040528051906020012090505b92915050565b61179b612ed6565b6117a56000613542565b565b6117af61280a565b600060d260010180546117c190614b1e565b80601f01602080910402602001604051908101604052809291908181526020018280546117ed90614b1e565b801561183a5780601f1061180f5761010080835404028352916020019161183a565b820191906000526020600020905b81548152906001019060200180831161181d57829003601f168201915b5050505050806020019051810190611852919061571c565b905061185c612af1565b6000611866612b52565b905060d9548111156118e25760d254825160208401516040516326ef699d60e01b81526001600160a01b03909316926326ef699d926118af92909160d8919087906004016157ac565b600060405180830381600087803b1580156118c957600080fd5b505af11580156118dd573d6000803e3d6000fd5b505050505b60cc546040518281526001600160a01b0390911690600080516020615e74833981519152906020015b60405180910390a25050565b600054610100900460ff16158080156119375750600054600160ff909116105b806119515750303b158015611951575060005460ff166001145b6119b45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610e85565b6000805460ff1916600117905580156119d7576000805461ff0019166101001790555b6119df613594565b6119e76135c3565b6119ef6138ea565b604080516080810182523080825260006020830181905292820181905260609091019190915260ca805460ff60a01b199092166001600160a81b0319928316811790915560cb805490921617905560c9805460ff191690558015610f22576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b60d4805460d580546001600160a01b039092169291611aad90614b1e565b80601f0160208091040260200160405190810160405280929190818152602001828054611ad990614b1e565b8015611b265780601f10611afb57610100808354040283529160200191611b26565b820191906000526020600020905b815481529060010190602001808311611b0957829003601f168201915b5050505050905082565b611b3861280a565b611b40612af1565b6000611b4a612b52565b905060d95481111561141e5760d25460d65460cc54604051636ce5768960e11b81526001600160a01b03928316600482015290821660248201526044810184905291169063d9caed12906064016113eb565b611ba461280a565b600060d46001018054611bb690614b1e565b80601f0160208091040260200160405190810160405280929190818152602001828054611be290614b1e565b8015611c2f5780601f10611c0457610100808354040283529160200191611c2f565b820191906000526020600020905b815481529060010190602001808311611c1257829003601f168201915b5050505050806020019051810190611c479190615862565b90506000611c5482613bf3565b60cd5481519192506001600160a01b0316908290600090611c7757611c77614c18565b60200260200101516001600160a01b031614611ca6576040516376c252e160e11b815260040160405180910390fd5b60cc5481516001600160a01b03909116908290611cc590600190614c44565b81518110611cd557611cd5614c18565b60200260200101516001600160a01b031614611d04576040516376c252e160e11b815260040160405180910390fd5b6000611d0e6128e3565b60d454909150610953906001600160a01b03168483612956565b611d30612ed6565b8015611da1576040514790600090339083908381818185875af1925050503d8060008114611d7a576040519150601f19603f3d011682016040523d82523d6000602084013e611d7f565b606091505b505090508061095357604051630dcf35db60e41b815260040160405180910390fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015611de8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e0c91906158aa565b9050610de66001600160a01b0384163383613cf6565b611e2a61280a565b600060d46001018054611e3c90614b1e565b80601f0160208091040260200160405190810160405280929190818152602001828054611e6890614b1e565b8015611eb55780601f10611e8a57610100808354040283529160200191611eb5565b820191906000526020600020905b815481529060010190602001808311611e9857829003601f168201915b5050505050806020019051810190611ecd9190614be4565b60cd5481519192506001600160a01b0316908290600090611ef057611ef0614c18565b60200260200101516001600160a01b031614611f1f576040516376c252e160e11b815260040160405180910390fd5b60cc5481516001600160a01b03909116908290611f3e90600190614c44565b81518110611f4e57611f4e614c18565b60200260200101516001600160a01b031614611f7d576040516376c252e160e11b815260040160405180910390fd5b6000611f876128e3565b60d45483519192506001600160a01b03169063df791e50908490600090611fb057611fb0614c18565b60200260200101518460018651611fc79190614c44565b81518110611fd757611fd7614c18565b60209081029190910101516040516001600160e01b031960e085901b1681526001600160a01b0392831660048201529116602482015260448101849052606401600060405180830381600087803b15801561203157600080fd5b505af1158015612045573d6000803e3d6000fd5b505050505050565b612055612ed6565b8060d0610de682826158c3565b60d6805460d780546001600160a01b03909216929161208090614b1e565b80601f01602080910402602001604051908101604052809291908181526020018280546120ac90614b1e565b80156120f95780601f106120ce576101008083540402835291602001916120f9565b820191906000526020600020905b8154815290600101906020018083116120dc57829003601f168201915b50505050509080600201805461210e90614b1e565b80601f016020809104026020016040519081016040528092919081815260200182805461213a90614b1e565b80156121875780601f1061215c57610100808354040283529160200191612187565b820191906000526020600020905b81548152906001019060200180831161216a57829003601f168201915b5050505050905083565b61219961280a565b600060d260010180546121ab90614b1e565b80601f01602080910402602001604051908101604052809291908181526020018280546121d790614b1e565b80156122245780601f106121f957610100808354040283529160200191612224565b820191906000526020600020905b81548152906001019060200180831161220757829003601f168201915b505050505080602001905181019061223c9190615932565b9050612246612af1565b6000612250612b52565b905060d9548111156118e25760d25460d6548351606085015160208601516040870151608088015160a08901516001600160a01b0397881697639f3307279716959493929189916000914291836122a984610e106159cb565b6040516001600160e01b031960e08f901b1681526001600160a01b039c8d166004820152602481019b909b529a90981660448a015260ff96871660648a0152948616608489015260a488019390935260c487019190915260e4860152821661010485015216610124830152610144820152610164810191909152610184016118af565b60d2805460d380546001600160a01b039092169291611aad90614b1e565b612352612ed6565b6040518181527ff4f47d85dc8207b9d9c6dfd289d4f5008b33df899eda3da90658d75c351e54759060200160405180910390a160d955565b61239261280a565b600060d460010180546123a490614b1e565b80601f01602080910402602001604051908101604052809291908181526020018280546123d090614b1e565b801561241d5780601f106123f25761010080835404028352916020019161241d565b820191906000526020600020905b81548152906001019060200180831161240057829003601f168201915b50505050508060200190518101906124359190615862565b9050600061244282613bf3565b60cd5481519192506001600160a01b031690829060009061246557612465614c18565b60200260200101516001600160a01b031614612494576040516376c252e160e11b815260040160405180910390fd5b60cc5481516001600160a01b039091169082906124b390600190614c44565b815181106124c3576124c3614c18565b60200260200101516001600160a01b0316146124f2576040516376c252e160e11b815260040160405180910390fd5b60006124fc6128e3565b60d454909150610953906001600160a01b03168483613d59565b61251e612ed6565b6001600160a01b0381166125835760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610e85565b610f2281613542565b60dc60205260009081526040902080546116de90614b1e565b6125ad61280a565b600060d260010180546125bf90614b1e565b80601f01602080910402602001604051908101604052809291908181526020018280546125eb90614b1e565b80156126385780601f1061260d57610100808354040283529160200191612638565b820191906000526020600020905b81548152906001019060200180831161261b57829003601f168201915b505050505080602001905181019061265091906159de565b905061265a612af1565b6000612664612b52565b905060d9548111156118e25760d25460d65460cc546040516337e9a82760e11b81526004810185905263ffffffff861660248201526001600160a01b0392831660448201529082166064820152911690636fd3504e906084016020604051808303816000875af11580156126dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127009190615a04565b5060cc546040518281526001600160a01b0390911690600080516020615e748339815191529060200161190b565b612736612ed6565b60da5460ff1661277b5760cc80546001600160a01b039384166001600160a01b03199182161790915560cd805492909316911617905560da805460ff19166001179055565b60cc54604080516001600160a01b03928316815291841660208301527f4239efeca0761c0d170bd15a6e85542dbe0376ba0f5f1551b39c6045866ff735910160405180910390a160cc5460d2546127de916001600160a01b039081169116613308565b60cc80546001600160a01b0319166001600160a01b0384811691821790925560d2546110279216613397565b3330146117a55760405163ea8e4eb560e01b815260040160405180910390fd5b60608160008151811061283f5761283f614c18565b602002602001015160405160200161286f919060609190911b6bffffffffffffffffffffffff1916815260140190565b60408051601f19818403018152919052905060015b82518110156128dd57818382815181106128a0576128a0614c18565b60200260200101516040516020016128b9929190615a1f565b604051602081830303815290604052915080806128d590615a56565b915050612884565b50919050565b60cd546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a08231906024015b602060405180830381865afa15801561292d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061295191906158aa565b905090565b6040805160a081018252838152306020820152428183015260608101839052600060808201819052915163c04b8d5960e01b81526001600160a01b0386169063c04b8d59906129a9908490600401615a6f565b6020604051808303816000875af11580156129c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ec91906158aa565b9150505b9392505050565b604080518082019091526000808252602082015260d254604051633b6f743b60e01b81526001600160a01b0390911690633b6f743b90612a3e908590600090600401615ac7565b6040805180830381865afa158015612a5a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061178d9190615aeb565b6000612a886128e3565b90508181106110275760cd54604051632e1a7d4d60e01b8152600481018490526001600160a01b0390911690632e1a7d4d90602401600060405180830381600087803b158015612ad757600080fd5b505af1925050508015612ae8575060015b15611027575050565b60cf54600090815260dc6020526040908190208151600481526024810192839052610f22929091612b2191615b07565b6040519081900390206020820180516001600160e01b03166001600160e01b03199092169190911790523090613da6565b60cc546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401612910565b6060600083516001600160401b03811115612ba057612ba06147a5565b604051908082528060200260200182016040528015612c0657816020015b612bf36040518060a0016040528060008019168152602001600081526020016000815260200160008152602001606081525090565b815260200190600190039081612bbe5790505b50905060005b8451811015612d845780600003612cd0576040518060a0016040528086600081518110612c3b57612c3b614c18565b602002602001015160000151815260200186600081518110612c5f57612c5f614c18565b602002602001015160200151815260200186600081518110612c8357612c83614c18565b60200260200101516040015181526020018581526020016040518060200160405280600081525081525082600081518110612cc057612cc0614c18565b6020026020010181905250612d7c565b6040518060a00160405280868381518110612ced57612ced614c18565b6020026020010151600001518152602001868381518110612d1057612d10614c18565b6020026020010151602001518152602001868381518110612d3357612d33614c18565b60200260200101516040015181526020016000815260200160405180602001604052806000815250815250828281518110612d7057612d70614c18565b60200260200101819052505b600101612c0c565b509392505050565b6060600084516001600160401b03811115612da957612da96147a5565b604051908082528060200260200182016040528015612dd2578160200160208202803683370190505b50905060005b8551811015612e4c5780600003612e0e578382600081518110612dfd57612dfd614c18565b602002602001018181525050612e44565b60018651612e1c9190614c44565b8103612e4457600019828281518110612e3757612e37614c18565b6020026020010181815250505b600101612dd8565b5060405163945bcec960e01b81526001600160a01b0389169063945bcec990612e83908a908a908a908a9088904290600401615bad565b6000604051808303816000875af1158015612ea2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612eca91908101906155bc565b98975050505050505050565b6033546001600160a01b031633146117a55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610e85565b610f22612ed6565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615612f6b57610de683613dea565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612fc5575060408051601f3d908101601f19168201909252612fc2918101906158aa565b60015b6130285760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610e85565b600080516020615e9483398151915281146130975760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610e85565b50610de6838383613e86565b734fed5491693007f0cd49f4614ffc38ab6a04b6196130ca6033546001600160a01b031690565b6001600160a01b0316336001600160a01b0316141580156130f45750336001600160a01b03821614155b8015613110575060d05461010090046001600160a01b03163314155b15610f225760405163ea8e4eb560e01b815260040160405180910390fd5b478015610f225760cd60009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0476040518263ffffffff1660e01b81526004016000604051808303818588803b15801561318557600080fd5b505af193505050508015613197575060015b15610f225750565b60d05460ff16156117a55760cd5460d0546040516370a0823160e01b81526101009091046001600160a01b03908116600483015260009216906370a0823190602401602060405180830381865afa1580156131fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061322291906158aa565b60d05461323e919061010090046001600160a01b0316316159cb565b60d154909150811015610f225760006132556128e3565b905060008260d06001015461326a9190614c44565b9050818111613279578061327b565b815b60d05460cd549192506132a0916001600160a01b039081169161010090041683613cf6565b6040518181527feb722ef3dbafc24e43f4627f9b306563a93d546865b49eb1e64fbaffdab73d5c9060200160405180910390a1505050565b60ce54600090815260db6020526040908190208151600481526024810192839052610f22929091612b2191615b07565b604051636eb1769f60e11b81523060048201526001600160a01b0382811660248301526000919084169063dd62ed3e90604401602060405180830381865afa158015613358573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061337c91906158aa565b1115611027576110276001600160a01b038316826000613eab565b604051636eb1769f60e11b81523060048201526001600160a01b03828116602483015283169063dd62ed3e90604401602060405180830381865afa1580156133e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061340791906158aa565b600003611027576110276001600160a01b03831682600019613eab565b606060008251600161343691906159cb565b6001600160401b0381111561344d5761344d6147a5565b604051908082528060200260200182016040528015613476578160200160208202803683370190505b5090508260008151811061348c5761348c614c18565b602002602001015160000151816000815181106134ab576134ab614c18565b60200260200101906001600160a01b031690816001600160a01b03168152505060005b835181101561353b578381815181106134e9576134e9614c18565b6020026020010151602001518282600161350391906159cb565b8151811061351357613513614c18565b6001600160a01b039092166020928302919091019091015261353481615a56565b90506134ce565b5092915050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff166135bb5760405162461bcd60e51b8152600401610e8590615cc6565b6117a5613fc0565b6040518060400160405280600e81526020016d627269646765436972636c65282960901b81525060db600060405160200161361890602080825260069082015265434952434c4560d01b604082015260600190565b60405160208183030381529060405280519060200120815260200190815260200160002090816136489190615d11565b506040518060400160405280601081526020016f6272696467655374617267617465282960801b81525060db60006040516020016136a290602080825260089082015267535441524741544560c01b604082015260600190565b60405160208183030381529060405280519060200120815260200190815260200160002090816136d29190615d11565b506040518060400160405280600e81526020016d6272696467654178656c6172282960901b81525060db60006040516020016137289060208082526006908201526520ac22a620a960d11b604082015260600190565b60405160208183030381529060405280519060200120815260200190815260200160002090816137589190615d11565b506040518060400160405280600f81526020016e62726964676553796e61707365282960881b81525060db60006040516020016137b09060208082526007908201526653594e4150534560c81b604082015260600190565b60405160208183030381529060405280519060200120815260200190815260200160002090816137e09190615d11565b506040518060400160405280600d81526020016c6272696467657a6b45564d282960981b81525060db6000604051602001613834906020808252600590820152647a6b45564d60d81b604082015260600190565b60405160208183030381529060405280519060200120815260200190815260200160002090816138649190615d11565b506040518060400160405280600e81526020016d6272696467657a6b53796e63282960901b81525060db60006040516020016138ba906020808252600690820152657a6b53594e4360d01b604082015260600190565b6040516020818303038152906040528051906020012081526020019081526020016000209081610f229190615d11565b6040518060400160405280600b81526020016a73776170556e695632282960a81b81525060dc6000604051602001613940906020808252600a90820152692aa724a9aba0a82fab1960b11b604082015260600190565b60405160208183030381529060405280519060200120815260200190815260200160002090816139709190615d11565b506040518060400160405280600d81526020016c73776170536f6c69646c79282960981b81525060dc60006040516020016139c690602080825260079082015266534f4c49444c5960c81b604082015260600190565b60405160208183030381529060405280519060200120815260200190815260200160002090816139f69190615d11565b506040518060400160405280600b81526020016a73776170556e695633282960a81b81525060dc6000604051602001613a4d906020808252600a9082015269554e49535741505f563360b01b604082015260600190565b6040516020818303038152906040528051906020012081526020019081526020016000209081613a7d9190615d11565b506040518060400160405280601381526020017273776170556e695633446561646c696e65282960681b81525060dc6000604051602001613ae590602080825260139082015272554e49535741505f56335f444541444c494e4560681b604082015260600190565b6040516020818303038152906040528051906020012081526020019081526020016000209081613b159190615d11565b506040518060400160405280600d81526020016c73776170416c6765627261282960981b81525060dc6000604051602001613b6b90602080825260079082015266414c474542524160c81b604082015260600190565b6040516020818303038152906040528051906020012081526020019081526020016000209081613b9b9190615d11565b506040518060400160405280600e81526020016d7377617042616c616e636572282960901b81525060dc60006040516020016138ba906020808252600890820152672120a620a721a2a960c11b604082015260600190565b60606000613c0083613ff0565b90506000613c0f8260016159cb565b6001600160401b03811115613c2657613c266147a5565b604051908082528060200260200182016040528015613c4f578160200160208202803683370190505b50905060005b82811015612d8457600080613c6987614016565b509150915081848481518110613c8157613c81614c18565b6001600160a01b03909216602092830291909101909101528084613ca68560016159cb565b81518110613cb657613cb6614c18565b60200260200101906001600160a01b031690816001600160a01b031681525050613cdf87614052565b965050508080613cee90615a56565b915050613c55565b6040516001600160a01b038316602482015260448101829052610de690849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152614083565b60408051608081018252838152306020820152808201839052600060608201819052915163b858183f60e01b81526001600160a01b0386169063b858183f906129a9908490600401615dca565b60606129f0838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250614158565b6001600160a01b0381163b613e575760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610e85565b600080516020615e9483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b613e8f83614235565b600082511180613e9c5750805b15610de6576109538383614275565b801580613f255750604051636eb1769f60e11b81523060048201526001600160a01b03838116602483015284169063dd62ed3e90604401602060405180830381865afa158015613eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f2391906158aa565b155b613f905760405162461bcd60e51b815260206004820152603660248201527f5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f60448201527520746f206e6f6e2d7a65726f20616c6c6f77616e636560501b6064820152608401610e85565b6040516001600160a01b038316602482015260448101829052610de690849063095ea7b360e01b90606401613d22565b600054610100900460ff16613fe75760405162461bcd60e51b8152600401610e8590615cc6565b6117a533613542565b6000613ffe600360146159cb565b6014835161400c9190614c44565b61178d9190615e18565b60008080614024848261429a565b925061403184601461434e565b9050614049614042600360146159cb565b859061429a565b91509193909250565b606061178d614063600360146159cb565b61406f600360146159cb565b845161407b9190614c44565b8491906143f9565b60006140d8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166145509092919063ffffffff16565b90508051600014806140f95750808060200190518101906140f99190615e3a565b610de65760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610e85565b6060824710156141b95760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610e85565b600080866001600160a01b031685876040516141d59190615e57565b60006040518083038185875af1925050503d8060008114614212576040519150601f19603f3d011682016040523d82523d6000602084013e614217565b606091505b50915091506142288783838761455f565b925050505b949350505050565b61423e81613dea565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606129f08383604051806060016040528060278152602001615eb4602791396145d8565b6000816142a88160146159cb565b10156142eb5760405162461bcd60e51b8152602060048201526012602482015271746f416464726573735f6f766572666c6f7760701b6044820152606401610e85565b6142f68260146159cb565b8351101561433e5760405162461bcd60e51b8152602060048201526015602482015274746f416464726573735f6f75744f66426f756e647360581b6044820152606401610e85565b500160200151600160601b900490565b60008161435c8160036159cb565b101561439e5760405162461bcd60e51b8152602060048201526011602482015270746f55696e7432345f6f766572666c6f7760781b6044820152606401610e85565b6143a98260036159cb565b835110156143f05760405162461bcd60e51b8152602060048201526014602482015273746f55696e7432345f6f75744f66426f756e647360601b6044820152606401610e85565b50016003015190565b60608161440781601f6159cb565b10156144465760405162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b6044820152606401610e85565b8261445183826159cb565b10156144905760405162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b6044820152606401610e85565b61449a82846159cb565b845110156144de5760405162461bcd60e51b8152602060048201526011602482015270736c6963655f6f75744f66426f756e647360781b6044820152606401610e85565b6060821580156144fd5760405191506000825260208201604052614547565b6040519150601f8416801560200281840101858101878315602002848b0101015b8183101561453657805183526020928301920161451e565b5050858452601f01601f1916604052505b50949350505050565b606061422d8484600085614158565b606083156145ce5782516000036145c7576001600160a01b0385163b6145c75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610e85565b508161422d565b61422d8383614650565b6060600080856001600160a01b0316856040516145f59190615e57565b600060405180830381855af49150503d8060008114614630576040519150601f19603f3d011682016040523d82523d6000602084013e614635565b606091505b50915091506146468683838761455f565b9695505050505050565b8151156146605781518083602001fd5b8060405162461bcd60e51b8152600401610e8591906149df565b6000606082840312156128dd57600080fd5b60006020828403121561469e57600080fd5b81356001600160401b038111156146b457600080fd5b61422d8482850161467a565b60008083601f8401126146d257600080fd5b5081356001600160401b038111156146e957600080fd5b60208301915083602082850101111561470157600080fd5b9250929050565b6000806000806040858703121561471e57600080fd5b84356001600160401b038082111561473557600080fd5b614741888389016146c0565b9096509450602087013591508082111561475a57600080fd5b50614767878288016146c0565b95989497509550505050565b6001600160a01b0381168114610f2257600080fd5b60006020828403121561479a57600080fd5b81356129f081614773565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156147dd576147dd6147a5565b60405290565b604051606081016001600160401b03811182821017156147dd576147dd6147a5565b604051601f8201601f191681016001600160401b038111828210171561482d5761482d6147a5565b604052919050565b60006001600160401b0382111561484e5761484e6147a5565b50601f01601f191660200190565b6000806040838503121561486f57600080fd5b823561487a81614773565b915060208301356001600160401b0381111561489557600080fd5b8301601f810185136148a657600080fd5b80356148b96148b482614835565b614805565b8181528660208385010111156148ce57600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000604082840312156128dd57600080fd5b6000806040838503121561491357600080fd5b8235915060208301356001600160401b0381111561493057600080fd5b61493c858286016148ee565b9150509250929050565b6002811061496457634e487b7160e01b600052602160045260246000fd5b9052565b6020810161178d8284614946565b60006020828403121561498857600080fd5b5035919050565b60005b838110156149aa578181015183820152602001614992565b50506000910152565b600081518084526149cb81602086016020860161498f565b601f01601f19169290920160200192915050565b6020815260006129f060208301846149b3565b60008060208385031215614a0557600080fd5b82356001600160401b03811115614a1b57600080fd5b614a27858286016146c0565b90969095509350505050565b6001600160a01b038316815260406020820181905260009061422d908301846149b3565b8015158114610f2257600080fd5b60008060408385031215614a7857600080fd5b8235614a8381614773565b91506020830135614a9381614a57565b809150509250929050565b600060608284031215614ab057600080fd5b6129f0838361467a565b6001600160a01b0384168152606060208201819052600090614ade908301856149b3565b828103604084015261464681856149b3565b60008060408385031215614b0357600080fd5b8235614b0e81614773565b91506020830135614a9381614773565b600181811c90821680614b3257607f821691505b6020821081036128dd57634e487b7160e01b600052602260045260246000fd5b60006001600160401b03821115614b6b57614b6b6147a5565b5060051b60200190565b600082601f830112614b8657600080fd5b81516020614b966148b483614b52565b82815260059290921b84018101918181019086841115614bb557600080fd5b8286015b84811015614bd9578051614bcc81614773565b8352918301918301614bb9565b509695505050505050565b600060208284031215614bf657600080fd5b81516001600160401b03811115614c0c57600080fd5b61422d84828501614b75565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8181038181111561178d5761178d614c2e565b600060808284031215614c6957600080fd5b604051608081018181106001600160401b0382111715614c8b57614c8b6147a5565b604052825161ffff81168114614ca057600080fd5b808252506020830151602082015260408301516040820152606083015160608201528091505092915050565b63ffffffff81511682526020810151602083015260408101516040830152606081015160608301526000608082015160e06080850152614d0f60e08501826149b3565b905060a083015184820360a0860152614d2882826149b3565b91505060c083015184820360c0860152614d4282826149b3565b95945050505050565b608081526000614d5e6080830186614ccc565b8451602084810191909152909401516040830152506001600160a01b0391909116606090910152919050565b80516001600160401b0381168114614da157600080fd5b919050565b600060408284031215614db857600080fd5b614dc06147bb565b9050815181526020820151602082015292915050565b60008082840360c0811215614dea57600080fd5b6080811215614df857600080fd5b50614e016147e3565b83518152614e1160208501614d8a565b6020820152614e238560408601614da6565b60408201529150614e378460808501614da6565b90509250929050565b6000806040808486031215614e5457600080fd5b83516001600160401b0380821115614e6b57600080fd5b818601915086601f830112614e7f57600080fd5b81516020614e8f6148b483614b52565b8281526060928302850182019282820191908b851115614eae57600080fd5b958301955b84871015614ef65780878d031215614ecb5760008081fd5b614ed36147e3565b875181528488015185820152888801518982015283529586019591830191614eb3565b5091890151919750909450505080831115614f1057600080fd5b505061493c85828601614b75565b6000808335601e19843603018112614f3557600080fd5b83016020810192503590506001600160401b03811115614f5457600080fd5b80360382131561470157600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6020815260008235614f9d81614773565b6001600160a01b0316602083810191909152614fbb90840184614f1e565b60606040850152614fd0608085018284614f63565b915050614fe06040850185614f1e565b848303601f19016060860152614646838284614f63565b80546001600160a01b0319166001600160a01b0392909216919091179055565b6000808335601e1984360301811261502e57600080fd5b8301803591506001600160401b0382111561504857600080fd5b60200191503681900382131561470157600080fd5b601f821115610de657600081815260208120601f850160051c810160208610156150845750805b601f850160051c820191505b8181101561204557828155600101615090565b600019600383901b1c191660019190911b1790565b6001600160401b038311156150cf576150cf6147a5565b6150e3836150dd8354614b1e565b8361505d565b6000601f84116001811461511157600085156150ff5750838201355b61510986826150a3565b845550610d93565b600083815260209020601f19861690835b828110156151425786850135825560209485019460019092019101615122565b508682101561515f5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b813561517c81614773565b6151868183614ff7565b506001808201602061519a81860186615017565b6001600160401b038111156151b1576151b16147a5565b6151c5816151bf8654614b1e565b8661505d565b6000601f8211600181146151f357600083156151e15750838201355b6151eb84826150a3565b875550615248565b600086815260209020601f19841690835b828110156152215786850135825593870193908901908701615204565b508482101561523e5760001960f88660031b161c19848701351681555b50508683881b0186555b5050505050505061525c6040830183615017565b6109538183600286016150b8565b60208152600061422d602083018486614f63565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b6000813561532381614773565b6001600160a01b0316835261533b6020830183614f1e565b60406020860152614d42604086018284614f63565b82815260406020820152600061422d6040830184615316565b813561537481614773565b61537e8183614ff7565b506001808201602061539281860186615017565b6001600160401b038111156153a9576153a96147a5565b6153b7816151bf8654614b1e565b6000601f8211600181146153e557600083156153d35750838201355b6153dd84826150a3565b87555061543a565b600086815260209020601f19841690835b8281101561541357868501358255938701939089019087016153f6565b50848210156154305760001960f88660031b161c19848701351681555b50508683881b0186555b505050505050505050565b6110278282615369565b6000602080838503121561546257600080fd5b82516001600160401b0381111561547857600080fd5b8301601f8101851361548957600080fd5b80516154976148b482614b52565b818152606091820283018401918482019190888411156154b657600080fd5b938501935b8385101561551b5780858a0312156154d35760008081fd5b6154db6147e3565b85516154e681614773565b8152858701516154f581614773565b8188015260408681015161550881614a57565b90820152835293840193918501916154bb565b50979650505050505050565b600060a0820187835260208781850152604060a08186015282885180855260c087019150838a01945060005b8181101561559057855180516001600160a01b03908116855286820151168685015284015115158484015294840194606090920191600101615553565b50506001600160a01b038816606087015293506155ac92505050565b8260808301529695505050505050565b600060208083850312156155cf57600080fd5b82516001600160401b038111156155e557600080fd5b8301601f810185136155f657600080fd5b80516156046148b482614b52565b81815260059190911b8201830190838101908783111561562357600080fd5b928401925b8284101561564157835182529284019290840190615628565b979650505050505050565b600081518084526020808501945080840160005b838110156156855781516001600160a01b031687529582019590820190600101615660565b509495945050505050565b85815284602082015260a0604082015260006156af60a083018661564c565b6001600160a01b0394909416606083015250608001529392505050565b60006156da6148b484614835565b90508281528383830111156156ee57600080fd5b6129f083602083018461498f565b600082601f83011261570d57600080fd5b6129f0838351602085016156cc565b60006020828403121561572e57600080fd5b81516001600160401b038082111561574557600080fd5b908301906040828603121561575957600080fd5b6157616147bb565b82518281111561577057600080fd5b61577c878286016156fc565b82525060208301518281111561579157600080fd5b61579d878286016156fc565b60208301525095945050505050565b6080815260006157bf60808301876149b3565b602083820381850152600087546157d581614b1e565b808552600182811680156157f0576001811461580a57615838565b60ff1984168787015282151560051b870186019450615838565b8b6000528560002060005b84811015615830578154898201890152908301908701615815565b880187019550505b50505050848103604086015261584e81886149b3565b935050505082606083015295945050505050565b60006020828403121561587457600080fd5b81516001600160401b0381111561588a57600080fd5b8201601f8101841361589b57600080fd5b61422d848251602084016156cc565b6000602082840312156158bc57600080fd5b5051919050565b81356158ce81614a57565b815460ff19811691151560ff16918217835560208401356158ee81614773565b6001600160a81b03199190911690911760089190911b610100600160a81b03161781556040919091013560019190910155565b805160ff81168114614da157600080fd5b600060c0828403121561594457600080fd5b60405160c081018181106001600160401b0382111715615966576159666147a5565b6040528251815261597960208401615921565b602082015261598a60408401615921565b6040820152606083015161599d81614773565b60608201526159ae60808401615921565b60808201526159bf60a08401615921565b60a08201529392505050565b8082018082111561178d5761178d614c2e565b6000602082840312156159f057600080fd5b815163ffffffff811681146129f057600080fd5b600060208284031215615a1657600080fd5b6129f082614d8a565b60008351615a3181846020880161498f565b60609390931b6bffffffffffffffffffffffff19169190920190815260140192915050565b600060018201615a6857615a68614c2e565b5060010190565b602081526000825160a06020840152615a8b60c08401826149b3565b905060018060a01b0360208501511660408401526040840151606084015260608401516080840152608084015160a08401528091505092915050565b604081526000615ada6040830185614ccc565b905082151560208301529392505050565b600060408284031215615afd57600080fd5b6129f08383614da6565b6000808354615b1581614b1e565b60018281168015615b2d5760018114615b4257615b71565b60ff1984168752821515830287019450615b71565b8760005260208060002060005b85811015615b685781548a820152908401908201615b4f565b50505082870194505b50929695505050505050565b600081518084526020808501945080840160005b8381101561568557815187529582019590820190600101615b91565b6000610120808301615bbf848b614946565b60208481019290925288519081905261014080850192600583901b8601909101918a820160005b82811015615c495787850361013f190186528151805186528481015185870152604080820151908701526060808201519087015260809081015160a091870182905290615c35818801836149b3565b978601979650505090830190600101615be6565b505050508381036040850152615c5f818961564c565b915050615c9f606084018780516001600160a01b039081168352602080830151151590840152604080830151909116908301526060908101511515910152565b82810360e0840152615cb18186615b7d565b91505082610100830152979650505050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b81516001600160401b03811115615d2a57615d2a6147a5565b615d3e81615d388454614b1e565b8461505d565b602080601f831160018114615d6d5760008415615d5b5750858301515b615d6585826150a3565b865550612045565b600085815260208120601f198616915b82811015615d9c57888601518255948401946001909101908401615d7d565b5085821015615dba5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b602081526000825160806020840152615de660a08401826149b3565b905060018060a01b03602085015116604084015260408401516060840152606084015160808401528091505092915050565b600082615e3557634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215615e4c57600080fd5b81516129f081614a57565b60008251615e6981846020870161498f565b919091019291505056fe48b87fc02925b37a6aefac60c14fa9d8e9988d7dfadf262d4bd845872ca40730360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220b0be5f4c29bd83d5587f09358514a9df2b3d34f468e971be063b2001a41bd6b764736f6c63430008130033