0 txs
2.4k calls
constructor
No constructor.
functions
checkMarketsAndTokensSupportedForClaiming
viewfunction checkMarketsAndTokensSupportedForClaiming(address exchangeRouterContractGuard, address poolManagerLogic, address[] tokens, address[] markets) view
decodeCreateOrder
purefunction decodeCreateOrder(bytes[] multicallParams) pure returns (bytes lastCallData, uint256 numOfCalls, tuple createOrderParams)
getMaxDepositSlippageData
viewfunction getMaxDepositSlippageData(tuple afterDepositData, tuple priceDependencies, bool isMinOutputAmountUsed, uint256 optionalOutputAmount) view returns (uint256 inputTokensValueD18, uint256 outputTokensValueD18)
getMaxSwapSlippageData
viewfunction getMaxSwapSlippageData(tuple afterSwapOrderData, tuple priceDependencies, bool isMinOutputAmountUsed, uint256 optionalOutputAmount) view returns (uint256 inputTokensValue, uint256 outputTokensValue)
getMaxWithdrawalSlippageData
viewfunction getMaxWithdrawalSlippageData(tuple afterWithdrawalData, tuple priceDependencies, bool isMinOutputAmountUsed, uint256 optionalOutputLongTokenAmount, uint256 optionalOutputShortTokenAmount) view returns (uint256 inputTokensValueD18, uint256 outputTokensValueD18)
getMethod
purefunction getMethod(bytes data) pure returns (bytes4)
getParams
purefunction getParams(bytes data) pure returns (bytes)
read4left
purefunction read4left(bytes data, uint256 offset) pure returns (bytes4 o)
validateCancelDeposit
viewfunction validateCancelDeposit(address exchangeRouterContractGuard, address poolManagerLogic, bytes params) view
validateCancelOrder
viewfunction validateCancelOrder(address exchangeRouterContractGuard, address poolManagerLogic, bytes params) view
validateCreateDepositMulticall
viewfunction validateCreateDepositMulticall(address _poolManagerLogic, tuple _poolSetting, address _to, bytes[] _multicallParams, IGmxReader reader, IGmxDataStore dataStore, address feeReceiver) view
validateDepositMarketTokens
viewfunction validateDepositMarketTokens(address _poolManagerLogic, address _market, address _initialLongToken, address _initialShortToken, IGmxReader reader, IGmxDataStore dataStore) view
validateDepositOrWithdrawalCommonParams
viewfunction validateDepositOrWithdrawalCommonParams(tuple _commonParams, address _poolLogic, address _feeReceiver) view
validateMarketTokens
viewfunction validateMarketTokens(address _poolManagerLogic, address _market, address _initialCollateralToken, IGmxReader reader, IGmxDataStore dataStore) view
validateSendTokensTx
viewfunction validateSendTokensTx(address _poolManagerLogic, bytes _subTxData, address _token, address _receiver) view
validateSwapPath
viewfunction validateSwapPath(address _poolManagerLogic, address[] _swapPath) view
validateTxGuardParams
viewfunction validateTxGuardParams(address exchangeRouterContractGuard, address poolManagerLogic, bytes data) view returns (bytes4 method, bytes params, address poolLogic, tuple poolSetting)
validateWithdrawalMarketTokens
viewfunction validateWithdrawalMarketTokens(address _poolManagerLogic, address _market, IGmxReader reader, IGmxDataStore dataStore) view
events
No events.
errors
No errors.
creation bytecode
0x6155de62000027600b82828239805160001a60731461001a57fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100f05760003560e01c80630e6c8f40146100f55780631e206dd81461010a5780632436542314610134578063293d8063146101475780632cfe758b1461016757806343a4919e1461017a5780636518a1a11461019c57806368901513146101af5780636e764056146101cf5780638651a635146101e257806396a13054146101f5578063a79e444e14610208578063b27bd28d1461021b578063c130fc901461022e578063c3c6279f14610241578063cd59ed9c14610254578063e62e250214610267578063f5e086af1461027a575b600080fd5b610108610103366004613c5f565b61029d565b005b61011d61011836600461438a565b6106d4565b60405161012b9291906154f2565b60405180910390f35b610108610142366004613deb565b61080f565b61015a610155366004613fd1565b61096d565b60405161012b9190614c18565b610108610175366004613bef565b61099c565b61018d610188366004613f31565b610bac565b60405161012b93929190614c91565b6101086101aa366004614297565b610c68565b6101c26101bd366004613f9f565b610d6b565b60405161012b9190614c7e565b6101086101dd366004613d9e565b610d8e565b6101086101f0366004613ce4565b610e5f565b610108610203366004613d43565b6111c5565b61011d610216366004614535565b611380565b610108610229366004613e42565b6114aa565b61010861023c366004613b6e565b611797565b61015a61024f366004613f9f565b6119c5565b61011d61026236600461445b565b6119d2565b610108610275366004613ce4565b611b18565b61028d610288366004613ce4565b611ccc565b60405161012b9493929190614c2d565b80518251146102c75760405162461bcd60e51b81526004016102be9061546f565b60405180910390fd5b60005b82518110156106cd57836001600160a01b0316639be918e68383815181106102ee57fe5b60200260200101516040518263ffffffff1660e01b81526004016103129190614be5565b60206040518083038186803b15801561032a57600080fd5b505afa15801561033e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103629190613f6b565b61037e5760405162461bcd60e51b81526004016102be90614e87565b6000856001600160a01b031663d4fc42c66040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b957600080fd5b505afa1580156103cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f19190613b19565b6001600160a01b031663714af34b876001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b15801561043857600080fd5b505afa15801561044c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104709190613b19565b85858151811061047c57fe5b60200260200101516040518363ffffffff1660e01b81526004016104a1929190614d70565b60806040518083038186803b1580156104b957600080fd5b505afa1580156104cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f191906147d6565b9050846001600160a01b0316639be918e684848151811061050e57fe5b60200260200101516040518263ffffffff1660e01b81526004016105329190614be5565b60206040518083038186803b15801561054a57600080fd5b505afa15801561055e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105829190613f6b565b61059e5760405162461bcd60e51b81526004016102be90614e87565b846001600160a01b0316639be918e68584815181106105b957fe5b60200260200101516040518263ffffffff1660e01b81526004016105dd9190614be5565b60206040518083038186803b1580156105f557600080fd5b505afa158015610609573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061062d9190613f6b565b6106495760405162461bcd60e51b81526004016102be90615025565b80604001516001600160a01b031684838151811061066357fe5b60200260200101516001600160a01b031614806106a8575080606001516001600160a01b031684838151811061069557fe5b60200260200101516001600160a01b0316145b6106c45760405162461bcd60e51b81526004016102be906151e4565b506001016102ca565b5050505050565b60008060006106e7868860400151611ebb565b60200151905060006106fd878960600151611ebb565b602001519050600061079a8889600001516001600160a01b031663714af34b8b602001518d602001516040518363ffffffff1660e01b8152600401610743929190614d70565b60806040518083038186803b15801561075b57600080fd5b505afa15801561076f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079391906147d6565b6000611f95565b90506107da64e8d4a510006107d46107bf858d60a001516120a290919063ffffffff16565b60808d01516107ce90886120a2565b906120fb565b90612153565b60c08a0151909550876107ea5750855b610800670de0b6b3a76400006107d483856120a2565b94505050505094509492505050565b631cdacd5960e31b610820846119c5565b6001600160e01b031916146108475760405162461bcd60e51b81526004016102be90614eaf565b60008061085385610d6b565b8060200190518101906108669190613b35565b604051634df48c7360e11b815291935091506001600160a01b03871690639be918e690610897908590600401614be5565b60206040518083038186803b1580156108af57600080fd5b505afa1580156108c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e79190613f6b565b6109035760405162461bcd60e51b81526004016102be906151e4565b836001600160a01b0316826001600160a01b0316146109345760405162461bcd60e51b81526004016102be906151e4565b826001600160a01b0316816001600160a01b0316146109655760405162461bcd60e51b81526004016102be90614e5d565b505050505050565b600081600401835110156109935760405162461bcd60e51b81526004016102be906151af565b50016020015190565b60405163714af34b60e01b81526000906001600160a01b0384169063714af34b906109cd9085908990600401614d70565b60806040518083038186803b1580156109e557600080fd5b505afa1580156109f9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1d91906147d6565b6040808201519051634df48c7360e11b81529192506001600160a01b03881691639be918e691610a4f91600401614be5565b60206040518083038186803b158015610a6757600080fd5b505afa158015610a7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a9f9190613f6b565b610abb5760405162461bcd60e51b81526004016102be90615377565b6060810151604051634df48c7360e11b81526001600160a01b03881691639be918e691610aeb9190600401614be5565b60206040518083038186803b158015610b0357600080fd5b505afa158015610b17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3b9190613f6b565b610b575760405162461bcd60e51b81526004016102be90615311565b80604001516001600160a01b0316846001600160a01b03161480610b90575080606001516001600160a01b0316846001600160a01b0316145b6109655760405162461bcd60e51b81526004016102be9061523d565b60606000610bb8613125565b835191508160031480610bcb5750816002145b610be75760405162461bcd60e51b81526004016102be90615119565b836001830381518110610bf657fe5b602002602001015192506000610c0b846119c5565b90506000610c1885610d6b565b90506001600160e01b0319821663f59c48eb60e01b14610c4a5760405162461bcd60e51b81526004016102be90615497565b80806020019051810190610c5e919061418e565b9496939550505050565b816001600160a01b031683600001516001600160a01b031614610c9d5760405162461bcd60e51b81526004016102be906150e8565b60208301516001600160a01b03163014610cc95760405162461bcd60e51b81526004016102be9061540a565b806001600160a01b03168360a001516001600160a01b031614610cfe5760405162461bcd60e51b81526004016102be90614ff7565b608083015115610d205760405162461bcd60e51b81526004016102be9061517b565b60408301515115610d435760405162461bcd60e51b81526004016102be90615150565b60608301515115610d665760405162461bcd60e51b81526004016102be90615150565b505050565b6060610d86600480845103846121b79092919063ffffffff16565b90505b919050565b8051600114610daf5760405162461bcd60e51b81526004016102be90615150565b816001600160a01b0316639be918e682600081518110610dcb57fe5b60200260200101516040518263ffffffff1660e01b8152600401610def9190614be5565b60206040518083038186803b158015610e0757600080fd5b505afa158015610e1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3f9190613f6b565b610e5b5760405162461bcd60e51b81526004016102be90615087565b5050565b6000836001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b158015610e9a57600080fd5b505afa158015610eae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed29190613b19565b9050600082806020019051810190610eea9190613f87565b90506000856001600160a01b031663d4fc42c66040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2757600080fd5b505afa158015610f3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5f9190613b19565b6001600160a01b0316631485d29784846040518363ffffffff1660e01b8152600401610f8c929190614d8a565b60006040518083038186803b158015610fa457600080fd5b505afa158015610fb8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fe09190810190614714565b805160a00151604051634df48c7360e11b81529192506001600160a01b03871691639be918e69161101391600401614be5565b60206040518083038186803b15801561102b57600080fd5b505afa15801561103f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110639190613f6b565b61107f5760405162461bcd60e51b81526004016102be90615025565b805160c00151604051634df48c7360e11b81526001600160a01b03871691639be918e6916110b09190600401614be5565b60206040518083038186803b1580156110c857600080fd5b505afa1580156110dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111009190613f6b565b61111c5760405162461bcd60e51b81526004016102be90615025565b846001600160a01b0316639be918e661113d856001600160a01b0316612308565b6040518263ffffffff1660e01b81526004016111599190614be5565b60206040518083038186803b15801561117157600080fd5b505afa158015611185573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111a99190613f6b565b6109655760405162461bcd60e51b81526004016102be906154c9565b60405163714af34b60e01b81526000906001600160a01b0384169063714af34b906111f69085908890600401614d70565b60806040518083038186803b15801561120e57600080fd5b505afa158015611222573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124691906147d6565b6040808201519051634df48c7360e11b81529192506001600160a01b03871691639be918e69161127891600401614be5565b60206040518083038186803b15801561129057600080fd5b505afa1580156112a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c89190613f6b565b6112e45760405162461bcd60e51b81526004016102be90615377565b6060810151604051634df48c7360e11b81526001600160a01b03871691639be918e6916113149190600401614be5565b60206040518083038186803b15801561132c57600080fd5b505afa158015611340573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113649190613f6b565b6106cd5760405162461bcd60e51b81526004016102be90615311565b600080600086600001516001600160a01b031663714af34b88602001518a602001516040518363ffffffff1660e01b81526004016113bf929190614d70565b60806040518083038186803b1580156113d757600080fd5b505afa1580156113eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061140f91906147d6565b9050611437670de0b6b3a76400006107d461142c8a856001611f95565b60408c0151906120a2565b92506000611449888360400151611ebb565b600001519050600061145f898460600151611ebb565b5160608b015160808c015191925090896114795750879050865b61149964e8d4a510006107d461148f84876120a2565b6107ce86896120a2565b955050505050509550959350505050565b83516004146114cb5760405162461bcd60e51b81526004016102be90614ede565b60006114df836001600160a01b0316612308565b90506000866001600160a01b0316639c8b2cfb6040518163ffffffff1660e01b815260040160206040518083038186803b15801561151c57600080fd5b505afa158015611530573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115549190613b19565b6001600160a01b031663d7cd39496040518163ffffffff1660e01b815260040160206040518083038186803b15801561158c57600080fd5b505afa1580156115a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115c49190613b19565b905060006115e5876003815181106115d857fe5b6020026020010151610d6b565b8060200190518101906115f891906140d2565b905061161a8a8860008151811061160b57fe5b6020026020010151858561080f565b6116428a8860018151811061162b57fe5b60200260200101518360000151608001518561080f565b61166a8a8860028151811061165357fe5b6020026020010151836000015160a001518561080f565b805160600151604051634df48c7360e11b81526001600160a01b038c1691639be918e69161169b9190600401614be5565b60206040518083038186803b1580156116b357600080fd5b505afa1580156116c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116eb9190613f6b565b6117075760405162461bcd60e51b81526004016102be90615087565b6040805160c080820183528351516001600160a01b039081168352845160209081015182169084015284519091015182840152835160e001516060830152838301511515608083015283519092015190911660a0820152895161176b919086610c68565b80516060810151608082015160a09092015161178b928d92918a8a611797565b50505050505050505050565b60405163714af34b60e01b81526000906001600160a01b0384169063714af34b906117c89085908a90600401614d70565b60806040518083038186803b1580156117e057600080fd5b505afa1580156117f4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061181891906147d6565b6040808201519051634df48c7360e11b81529192506001600160a01b03891691639be918e69161184a91600401614be5565b60206040518083038186803b15801561186257600080fd5b505afa158015611876573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061189a9190613f6b565b6118b65760405162461bcd60e51b81526004016102be90615377565b6060810151604051634df48c7360e11b81526001600160a01b03891691639be918e6916118e69190600401614be5565b60206040518083038186803b1580156118fe57600080fd5b505afa158015611912573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119369190613f6b565b6119525760405162461bcd60e51b81526004016102be90615311565b80604001516001600160a01b0316856001600160a01b0316146119875760405162461bcd60e51b81526004016102be9061543d565b80606001516001600160a01b0316846001600160a01b0316146119bc5760405162461bcd60e51b81526004016102be90614e2a565b50505050505050565b6000610d8682600061096d565b60008060006119e5868860400151611ebb565b602001519050600086600001516001600160a01b031663714af34b88602001518a60200151600081518110611a1657fe5b60200260200101516040518363ffffffff1660e01b8152600401611a3b929190614d70565b60806040518083038186803b158015611a5357600080fd5b505afa158015611a67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a8b91906147d6565b90506000611a9d8960400151836123bd565b90506000611aab8983611ebb565b5160608b0151909150611ac99064e8d4a51000906107d490876120a2565b95508715611af857611af164e8d4a510006107d4838d608001516120a290919063ffffffff16565b9450611b0b565b61080064e8d4a510006107d489846120a2565b5050505094509492505050565b6000836001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b158015611b5357600080fd5b505afa158015611b67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b8b9190613b19565b9050600082806020019051810190611ba39190613f87565b90506000856001600160a01b031663d4fc42c66040518163ffffffff1660e01b815260040160206040518083038186803b158015611be057600080fd5b505afa158015611bf4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c189190613b19565b6001600160a01b03166349651b6a84846040518363ffffffff1660e01b8152600401611c45929190614d8a565b60006040518083038186803b158015611c5d57600080fd5b505afa158015611c71573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c999190810190614853565b805160c00151604051634df48c7360e11b81529192506001600160a01b03871691639be918e6916110b091600401614be5565b600060606000611cda61317f565b856001600160a01b03166339b81fd96040518163ffffffff1660e01b815260040160206040518083038186803b158015611d1357600080fd5b505afa158015611d27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d4b9190613b19565b604051632a32620760e11b81529092506001600160a01b03881690635464c40e90611d7a908590600401614be5565b604080518083038186803b158015611d9157600080fd5b505afa158015611da5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dc991906145f1565b9050816001600160a01b031681600001516001600160a01b031614611e005760405162461bcd60e51b81526004016102be90614f93565b6020810151604051634df48c7360e11b81526001600160a01b03881691639be918e691611e309190600401614be5565b60206040518083038186803b158015611e4857600080fd5b505afa158015611e5c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e809190613f6b565b611e9c5760405162461bcd60e51b81526004016102be906152a4565b611ea5856119c5565b9350611eb085610d6b565b925093509350935093565b611ec3613196565b6060830151604051638d0cec5760e01b81526000916001600160a01b031690638d0cec5790611ef6908690600401614be5565b6101206040518083038186803b158015611f0f57600080fd5b505afa158015611f23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f4791906148fa565b90506000611f56858386612429565b90506040518060400160405280611f7387858560000151896127bb565b8152602001611f8887858560200151896127bb565b9052925050505b92915050565b60008084600001516001600160a01b031663095ce6c5866020015186611fbf898960200151611ebb565b611fcd8a8a60400151611ebb565b611fdb8b8b60600151611ebb565b604051602001611fea906153d3565b604051602081830303815290604052805190602001208a6040518863ffffffff1660e01b81526004016120239796959493929190614da3565b6101a06040518083038186803b15801561203c57600080fd5b505afa158015612050573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120749190614013565b50905060008113156120945761208f8164e8d4a51000612153565b612097565b60005b9150505b9392505050565b6000826120b157506000611f8f565b828202828482816120be57fe5b041461209b5760405162461bcd60e51b81526004018080602001828103825260218152602001806155886021913960400191505060405180910390fd5b60008282018381101561209b576040805162461bcd60e51b815260206004820152601b60248201527a536166654d6174683a206164646974696f6e206f766572666c6f7760281b604482015290519081900360640190fd5b60008082116121a6576040805162461bcd60e51b815260206004820152601a602482015279536166654d6174683a206469766973696f6e206279207a65726f60301b604482015290519081900360640190fd5b8183816121af57fe5b049392505050565b60608182601f011015612202576040805162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015290519081900360640190fd5b82828401101561224a576040805162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015290519081900360640190fd5b81830184511015612296576040805162461bcd60e51b8152602060048201526011602482015270736c6963655f6f75744f66426f756e647360781b604482015290519081900360640190fd5b6060821580156122b557604051915060008252602082016040526122ff565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156122ee5780518352602092830192016122d6565b5050858452601f01601f1916604052505b50949350505050565b6000816001600160a01b03166321f8a7216040516020018080602001828103825260038152602001806215d39560ea1b815250602001915050604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561238b57600080fd5b505afa15801561239f573d6000803e3d6000fd5b505050506040513d60208110156123b557600080fd5b505192915050565b600081604001516001600160a01b0316836001600160a01b031614156123e857506060810151611f8f565b81606001516001600160a01b0316836001600160a01b0316141561241157506040810151611f8f565b60405162461bcd60e51b81526004016102be90614f36565b612431613196565b60018360400151600281111561244357fe5b14156125145760008360600151600001516001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561248c57600080fd5b505afa1580156124a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124c49190614a25565b905061250c600085608001516040518060400160405280886060015181526020018860a001518152506125048560ff16601261280090919063ffffffff16565b600a0a61285d565b91505061209b565b60028360400151600281111561252657fe5b141561254757612540600084608001518560a0015161291a565b905061209b565b600084604001516001600160a01b031663b4fb1279846040518263ffffffff1660e01b81526004016125799190614be5565b60206040518083038186803b15801561259157600080fd5b505afa1580156125a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125c99190613b19565b604051631536292360e21b81529091506001600160a01b038216906354d8a48c906125f990600090600401614bf9565b604080518083038186803b15801561261057600080fd5b505afa925050508015612640575060408051601f3d908101601f1916820190925261263d91810190614648565b60015b6126fb576000816001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b15801561267f57600080fd5b505afa158015612693573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126b791906149d6565b505050915050600081136126dd5760405162461bcd60e51b81526004016102be90614fc0565b6040518060400160405280828152602001828152509250505061209b565b816001600160a01b03166338d52e0f6040518163ffffffff1660e01b815260040160206040518083038186803b15801561273457600080fd5b505afa925050508015612764575060408051601f3d908101601f1916820190925261276191810190613b19565b60015b6127805760405162461bcd60e51b81526004016102be90614f09565b806001600160a01b0316856001600160a01b0316146127b15760405162461bcd60e51b81526004016102be90614f6c565b50915061209b9050565b6020830151806127e05760208501516127dd906001600160a01b0316836129a9565b90505b6127f7838268327cb2734119d3b7a9601e1b612ae0565b95945050505050565b600082821115612857576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b612865613196565b600080612873858786612b8f565b9250509150600082116128985760405162461bcd60e51b81526004016102be906153a6565b86156128dd5760408051808201909152806128bc6402540be4006107d48686612800565b81526020016128d46402540be4006107d486866120fb565b90529250612910565b60408051808201909152806128f7846402540be400612153565b815260200161290b846402540be400612153565b905292505b5050949350505050565b612922613196565b60008061292f8585612c01565b925050915080600014156129555760405162461bcd60e51b81526004016102be90615274565b85156129885760408051808201909152806129708484612800565b815260200161297f84846120fb565b905292506129a0565b60405180604001604052808381526020018381525092505b50509392505050565b60408051602080820181905260158284015274282924a1a2afa322a2a22fa6aaa62a24a82624a2a960591b6060808401919091528351808403909101815260808301845280519082012060a08301526001600160a01b0384811660c0808501919091528451808503909101815260e0840180865281519184019190912063bd02d0f560e01b90915260e4840152925160009384939087169263bd02d0f59261010480840193829003018186803b158015612a6257600080fd5b505afa158015612a76573d6000803e3d6000fd5b505050506040513d6020811015612a8c57600080fd5b505190508061209b576040805162461bcd60e51b815260206004820152601b60248201527a32b6b83a3c90383934b1b2903332b2b21036bab63a34b83634b2b960291b604482015290519081900360640190fd5b6000808060001985870986860292508281109083900303905080612b165760008411612b0b57600080fd5b50829004905061209b565b808411612b2257600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b6000806000806000612ba18887612d7e565b91509150600080600080612bb58c8c612ea0565b995091955093509150869050600082612bea57858410612bde5784995083985060019050612be5565b8699508598505b612bf1565b8699508598505b5050505050505093509350939050565b600080806001600160a01b038516612c2b5760405162461bcd60e51b81526004016102be90615341565b8351602085015160405163052571af60e51b81526000926001600160a01b0389169263a4ae35e092612c61929190600401614c04565b60806040518083038186803b158015612c7957600080fd5b505afa158015612c8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cb1919061468f565b90506000816000015160070b138015612cd75750600081602001516001600160401b0316115b8015612cf257506008612cf0826040015160030b613056565b145b612d0e5760405162461bcd60e51b81526004016102be9061520b565b846040015160030b612d37826020015160070b836000015160070b61306d90919063ffffffff16565b1215612d555760405162461bcd60e51b81526004016102be906152da565b80606001519250806000015160070b935080602001516001600160401b03169150509250925092565b81515160009081906001600160a01b038116612dac5760405162461bcd60e51b81526004016102be906150b3565b600080826001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b158015612de857600080fd5b505afa158015612dfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e2091906149d6565b50935050925050809350612e4b87600001516020015163ffffffff16856120fb90919063ffffffff16565b421115612e6a5760405162461bcd60e51b81526004016102be90615050565b60008213612e8a5760405162461bcd60e51b81526004016102be90614fc0565b612e9482876120a2565b94505050509250929050565b60008080806001600160a01b038516612ecb5760405162461bcd60e51b81526004016102be90615341565b602080870151805191015160405163052571af60e51b81526001600160a01b0388169263a4ae35e092612f0092600401614c04565b60806040518083038186803b158015612f1857600080fd5b505afa925050508015612f48575060408051601f3d908101601f19168201909252612f459181019061468f565b60015b612f55576001915061304d565b806060015193506000816000015160070b138015612f805750600081602001516001600160401b0316115b8015612f9357506000816040015160030b125b8015612fa75750601219816040015160030b135b1561304657612fd3816040015160120160030b600a0a826000015160070b6120a290919063ffffffff16565b945086602001516040015160030b613002826020015160070b836000015160070b61306d90919063ffffffff16565b12156130115760019250613041565b61303e816040015160120160030b600a0a82602001516001600160401b03166120a290919063ffffffff16565b91505b61304b565b600192505b505b92959194509250565b6000808212156130695781600003610d86565b5090565b6000816130c1576040805162461bcd60e51b815260206004820181905260248201527f5369676e6564536166654d6174683a206469766973696f6e206279207a65726f604482015290519081900360640190fd5b816000191480156130d55750600160ff1b83145b156131115760405162461bcd60e51b81526004018080602001828103825260218152602001806155676021913960400191505060405180910390fd5b600082848161311c57fe5b05949350505050565b6040518061012001604052806131396131b0565b81526020016131466131ee565b81526020016000815260200160008152600060208201819052604082018190526060808301829052608083019190915260a09091015290565b604080518082019091526000808252602082015290565b604051806040016040528060008152602001600081525090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b60405180610100016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b8035610d8981615540565b8051610d8981615540565b600082601f830112613259578081fd5b8135602061326e61326983615523565b615500565b828152818101908583018385028701840188101561328a578586fd5b855b858110156132b157813561329f81615540565b8452928401929084019060010161328c565b5090979650505050505050565b600082601f8301126132ce578081fd5b815160206132de61326983615523565b82815281810190858301838502870184018810156132fa578586fd5b855b858110156132b157815161330f81615540565b845292840192908401906001016132fc565b600082601f830112613331578081fd5b8151602061334161326983615523565b828152818101908583018385028701840188101561335d578586fd5b855b858110156132b15781518452928401929084019060010161335f565b600082601f83011261338b578081fd5b8135602061339b61326983615523565b82815281810190858301855b858110156132b1576133be898684358b01016133e6565b845292840192908401906001016133a7565b8035610d8981615558565b8051610d8981615558565b600082601f8301126133f6578081fd5b81356001600160401b0381111561340957fe5b61341c601f8201601f1916602001615500565b818152846020838601011115613430578283fd5b816020850160208301379081016020019190915292915050565b805160038110610d8957600080fd5b805160098110610d8957600080fd5b8051600381900b8114610d8957600080fd5b600061012080838503121561348d578182fd5b61349681615500565b9150506134a28261323e565b81526134b06020830161323e565b60208201526134c16040830161323e565b60408201526134d26060830161323e565b60608201526134e36080830161323e565b60808201526134f460a0830161323e565b60a082015261350560c0830161323e565b60c082015260e08201516001600160401b038082111561352457600080fd5b613530858386016132be565b60e08401526101009150818401518181111561354b57600080fd5b613557868287016132be565b8385015250505092915050565b6000610100808385031215613577578182fd5b61358081615500565b91505061358c8261323e565b815261359a6020830161323e565b60208201526135ab6040830161323e565b60408201526135bc6060830161323e565b60608201526135cd6080830161323e565b60808201526135de60a0830161323e565b60a08201526135ef60c0830161323e565b60c082015260e08201516001600160401b0381111561360d57600080fd5b613619848285016132be565b60e08301525092915050565b6000610100808385031215613638578182fd5b61364181615500565b91505061364d8261323e565b815261365b6020830161323e565b602082015261366c6040830161323e565b604082015261367d6060830161323e565b606082015261368e6080830161323e565b608082015261369f60a0830161323e565b60a082015260c08201516001600160401b03808211156136be57600080fd5b6136ca858386016132be565b60c084015260e08401519150808211156136e357600080fd5b50613619848285016132be565b600060e08284031215613701578081fd5b61370b60e0615500565b90506137168261323e565b81526137246020830161323e565b60208201526137356040830161323e565b60408201526137466060830161323e565b60608201526137576080830161323e565b608082015261376860a0830161323e565b60a082015260c08201516001600160401b0381111561378657600080fd5b613792848285016132be565b60c08301525092915050565b60006101008083850312156137b1578182fd5b604051908101906001600160401b03821181831017156137cd57fe5b81604052809250835181526020840151602082015260408401516040820152606084015160608201526080840151608082015260a084015160a082015260c084015160c082015260e084015160e0820152505092915050565b600060208284031215613837578081fd5b604051602081018181106001600160401b038211171561385357fe5b8060405250809150825161386681615558565b905292915050565b60006080828403121561387f578081fd5b604051608081018181106001600160401b038211171561389b57fe5b806040525080915082516138ae81615558565b815260208301516138be81615558565b602082015260408301516138d181615558565b604082015260608301516138e481615558565b6060919091015292915050565b600060808284031215613902578081fd5b604051608081018181106001600160401b038211171561391e57fe5b604052905080823561392f81615540565b8152602083013561393f81615540565b6020820152604083013561395281615540565b604082015260608301356138e481615540565b600060e08284031215613976578081fd5b60405160e081018181106001600160401b038211171561399257fe5b8060405250809150825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c08201525092915050565b60006101808083850312156139f4578182fd5b6139fd81615500565b915050613a0982613459565b8152613a176020830161344a565b602082015260408201516040820152606082015160608201526080820151608082015260a082015160a082015260c082015160c082015260e082015160e082015261010080830151818301525061012080830151818301525061014080830151818301525061016080830151818301525092915050565b600060608284031215613a9f578081fd5b604051606081018181106001600160401b0382111715613abb57fe5b60405282518152905080613ad160208401613aee565b6020820152613ae260408401613aee565b60408201525092915050565b805163ffffffff81168114610d8957600080fd5b80516001600160501b0381168114610d8957600080fd5b600060208284031215613b2a578081fd5b815161209b81615540565b60008060408385031215613b47578081fd5b8251613b5281615540565b6020840151909250613b6381615540565b809150509250929050565b60008060008060008060c08789031215613b86578182fd5b8635613b9181615540565b95506020870135613ba181615540565b94506040870135613bb181615540565b93506060870135613bc181615540565b92506080870135613bd181615540565b915060a0870135613be181615540565b809150509295509295509295565b600080600080600060a08688031215613c06578283fd5b8535613c1181615540565b94506020860135613c2181615540565b93506040860135613c3181615540565b92506060860135613c4181615540565b91506080860135613c5181615540565b809150509295509295909350565b60008060008060808587031215613c74578182fd5b8435613c7f81615540565b93506020850135613c8f81615540565b925060408501356001600160401b0380821115613caa578384fd5b613cb688838901613249565b93506060870135915080821115613ccb578283fd5b50613cd887828801613249565b91505092959194509250565b600080600060608486031215613cf8578081fd5b8335613d0381615540565b92506020840135613d1381615540565b915060408401356001600160401b03811115613d2d578182fd5b613d39868287016133e6565b9150509250925092565b60008060008060808587031215613d58578182fd5b8435613d6381615540565b93506020850135613d7381615540565b92506040850135613d8381615540565b91506060850135613d9381615540565b939692955090935050565b60008060408385031215613db0578182fd5b8235613dbb81615540565b915060208301356001600160401b03811115613dd5578182fd5b613de185828601613249565b9150509250929050565b60008060008060808587031215613e00578182fd5b8435613e0b81615540565b935060208501356001600160401b03811115613e25578283fd5b613e31878288016133e6565b9350506040850135613d8381615540565b6000806000806000806000878903610100811215613e5e578586fd5b8835613e6981615540565b97506040601f1982011215613e7c578586fd5b50604051604081016001600160401b038282108183111715613e9a57fe5b8160405260208b01359150613eae82615540565b90825260408a013590613ec082615540565b816020840152829850613ed560608c01613233565b975060808b0135925080831115613eea578384fd5b5050613ef88a828b0161337b565b945050613f0760a08901613233565b9250613f1560c08901613233565b9150613f2360e08901613233565b905092959891949750929550565b600060208284031215613f42578081fd5b81356001600160401b03811115613f57578182fd5b613f638482850161337b565b949350505050565b600060208284031215613f7c578081fd5b815161209b81615558565b600060208284031215613f98578081fd5b5051919050565b600060208284031215613fb0578081fd5b81356001600160401b03811115613fc5578182fd5b613f63848285016133e6565b60008060408385031215613fe3578182fd5b82356001600160401b03811115613ff8578283fd5b614004858286016133e6565b95602094909401359450505050565b6000808284036101a0811215614027578283fd5b8351925061018080601f198301121561403e578283fd5b61404781615500565b91506020850151825260408501516020830152606085015160408301526080850151606083015260a0850151608083015260c085015160a083015260e085015160c08301526101008086015160e08401526101208087015182850152610140915081870151818501525061016080870151828501528287015181850152505050809150509250929050565b6000602082840312156140e3578081fd5b81516001600160401b03808211156140f9578283fd5b9083019060c0828603121561410c578283fd5b61411660c0615500565b825182811115614124578485fd5b61413087828601613625565b82525060208301516020820152614149604084016133db565b6040820152606083015160608201526080830151608082015260a083015182811115614173578485fd5b61417f87828601613321565b60a08301525095945050505050565b60006020828403121561419f578081fd5b81516001600160401b03808211156141b5578283fd5b9083019061020082860312156141c9578283fd5b6101206141d581615500565b8351838111156141e3578586fd5b6141ef888287016136f0565b8252506141ff876020860161379e565b602082015261420f828501613459565b6040820152614221610140850161344a565b606082015261423361016085016133db565b608082015261424561018085016133db565b60a08201526142576101a085016133db565b60c08201526101c084015160e08201526101e084015191508282111561427b578485fd5b61428787838601613321565b6101008201529695505050505050565b6000806000606084860312156142ab578081fd5b83356001600160401b03808211156142c1578283fd5b9085019060c082880312156142d4578283fd5b6142de60c0615500565b6142e783613233565b81526142f560208401613233565b602082015260408301358281111561430b578485fd5b61431789828601613249565b60408301525060608301358281111561432e578485fd5b61433a89828601613249565b60608301525061434c608084016133d0565b608082015261435d60a08401613233565b60a0820152945061437391505060208501613233565b915061438160408501613233565b90509250925092565b6000806000808486036101a08112156143a1578283fd5b60e08112156143ae578283fd5b5060405160e081018181106001600160401b03821117156143cb57fe5b6040526143d786613233565b81526143e560208701613233565b60208201526143f660408701613233565b604082015261440760608701613233565b60608201526080860135608082015260a086013560a082015260c086013560c08201528094505061443b8660e087016138f1565b925061444a61016086016133d0565b939692955092936101800135925050565b60008060008060e08587031215614470578182fd5b84356001600160401b0380821115614486578384fd5b9086019060a08289031215614499578384fd5b60405160a0810181811083821117156144ae57fe5b6040526144ba83613233565b81526020830135828111156144cd578586fd5b6144d98a828601613249565b6020830152506144eb60408401613233565b6040820152606083013560608201526080830135608082015280965050505061451786602087016138f1565b925061452560a086016133d0565b9396929550929360c00135925050565b600080600080600085870361018081121561454e578384fd5b60a081121561455b578384fd5b5060405160a081018181106001600160401b038211171561457857fe5b604052863561458681615540565b8152602087013561459681615540565b602082015260408781013590820152606080880135908201526080808801359082015294506145c88760a088016138f1565b93506145d761012087016133d0565b949793965093946101408101359450610160013592915050565b600060408284031215614602578081fd5b604051604081018181106001600160401b038211171561461e57fe5b604052825161462c81615540565b8152602083015161463c81615540565b60208201529392505050565b600060408284031215614659578081fd5b604051604081018181106001600160401b038211171561467557fe5b604052825181526020928301519281019290925250919050565b6000608082840312156146a0578081fd5b604051608081016001600160401b0382821081831117156146bd57fe5b81604052845191508160070b82146146d3578384fd5b90825260208401519080821682146146e9578384fd5b5060208201526146fb60408401613468565b6040820152606083015160608201528091505092915050565b600060208284031215614725578081fd5b81516001600160401b038082111561473b578283fd5b90830190610140828603121561474f578283fd5b60405160808101818110838211171561476457fe5b604052825182811115614775578485fd5b6147818782860161347a565b8252506147918660208501613965565b60208201526147a4866101008501613826565b6040820152610120830151828111156147bb578485fd5b6147c787828601613321565b60608301525095945050505050565b6000608082840312156147e7578081fd5b604051608081018181106001600160401b038211171561480357fe5b604052825161481181615540565b8152602083015161482181615540565b6020820152604083015161483481615540565b6040820152606083015161484781615540565b60608201529392505050565b600060208284031215614864578081fd5b81516001600160401b038082111561487a578283fd5b90830190610240828603121561488e578283fd5b6040516080810181811083821117156148a357fe5b6040528251828111156148b4578485fd5b6148c087828601613564565b8252506148d086602085016139e1565b60208201526148e3866101a0850161386e565b6040820152610220830151828111156147bb578485fd5b600081830361012081121561490d578182fd5b6040805160c081016001600160401b03828210818311171561492b57fe5b90835285519061493a82615540565b8183526020870151602084015261495284880161344a565b8484015283605f1986011215614966578586fd5b835194508385019150848210818311171561497d57fe5b5090915260608401519061499082615540565b81835261499f60808601613aee565b60208401528260608201526149b660a0860161323e565b60808201526149c88660c08701613a8e565b60a082015295945050505050565b600080600080600060a086880312156149ed578283fd5b6149f686613b02565b9450602086015193506040860151925060608601519150614a1960808701613b02565b90509295509295909350565b600060208284031215614a36578081fd5b815160ff8116811461209b578182fd5b6000815180845260208085019450808401835b83811015614a7557815187529582019590820190600101614a59565b509495945050505050565b15159052565b60008151808452815b81811015614aab57602081850181015186830182015201614a8f565b81811115614abc5782602083870101525b50601f01601f19169290920160200192915050565b60038110614adb57fe5b9052565b60098110614adb57fe5b600060e0830160018060a01b038084511685526020818186015116818701528160408601511660408701528160608601511660608701528160808601511660808701528160a08601511660a087015260c085015160e060c08801528381518086526101008901915083830195508692505b80831015614b7c57855185168252948301946001929092019190830190614b5a565b50979650505050505050565b805182526020810151602083015260408101516040830152606081015160608301526080810151608083015260a081015160a083015260c081015160c083015260e081015160e08301525050565b80518252602090810151910152565b6001600160a01b0391909116815260200190565b901515815260200190565b91825263ffffffff16602082015260400190565b6001600160e01b031991909116815260200190565b600063ffffffff60e01b8616825260a06020830152614c4f60a0830186614a86565b6001600160a01b0394851660408401528351851660608401526020909301519093166080909101529392505050565b60006020825261209b6020830184614a86565b600060608252614ca46060830186614a86565b84602084015282810360408401526102008451818352614cc682840182614ae9565b9150506020850151614cdb6020840182614b88565b506040850151614cef610120840182614adf565b506060850151614d03610140840182614ad1565b506080850151614d17610160840182614a80565b5060a0850151614d2b610180840182614a80565b5060c0850151614d3f6101a0840182614a80565b5060e08501516101c08301526101008501518282036101e0840152614d648282614a46565b98975050505050505050565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252602082015260400190565b60006101a08201905060018060a01b03808a1683528089511660208401528060208a01511660408401528060408a01511660608401528060608a015116608084015250614df360a0830188614bd6565b614e0060e0830187614bd6565b614e0e610120830186614bd6565b8361016083015282151561018083015298975050505050505050565b60208082526019908201527834b73b30b634b21034b734ba34b0b629b437b93a2a37b5b2b760391b604082015260600190565b60208082526010908201526f34b73b30b634b2103932b1b2b4bb32b960811b604082015260600190565b6020808252600e908201526d1a5b9d985b1a59081b585c9ad95d60921b604082015260600190565b6020808252601590820152740d2dcecc2d8d2c840e6cadcc8a8ded6cadce640e8f605b1b604082015260600190565b6020808252601190820152701a5b9d985b1a59081b5d5b1d1a58d85b1b607a1b604082015260600190565b60208082526013908201527219985a5b1959081d1bc819d95d08185cdcd95d606a1b604082015260600190565b6020808252601c908201527b2ab730b13632903a379033b2ba1037b83837b9b4ba32903a37b5b2b760211b604082015260600190565b6020808252600d908201526c1a5b9d985b1a5908185cdcd95d609a1b604082015260600190565b6020808252601390820152721b9bdd0819db5e081dda1a5d195b1a5cdd1959606a1b604082015260600190565b6020808252601f908201527f4f6e636861696e206f7261636c6520707269636520697320696e76616c696400604082015260600190565b60208082526014908201527334b73b30b634b2103332b2903932b1b2b4bb32b960611b604082015260600190565b6020808252601190820152703ab739bab83837b93a32b2103a37b5b2b760791b604082015260600190565b6020808252601d908201527f4f6e636861696e206f7261636c65207072696365206973207374616c65000000604082015260600190565b6020808252601290820152711d5b9cdd5c1c1bdc9d1959081b585c9ad95d60721b604082015260600190565b6020808252601b908201527a4f6e636861696e206f7261636c65207a65726f206164647265737360281b604082015260600190565b6020808252601790820152767265636569766572206e6f7420706f6f6c206c6f67696360481b604082015260600190565b6020808252601f908201527f696e76616c6964206d756c746963616c6c20706172616d73206c656e67746800604082015260600190565b6020808252601190820152700d2dcecc2d8d2c840e6eec2e040e0c2e8d607b1b604082015260600190565b6020808252601a908201527931b0b73737ba103ab73bb930b8103730ba34bb32903a37b5b2b760311b604082015260600190565b6020808252601b908201527a52656164696e67206279746573206f7574206f6620626f756e647360281b604082015260600190565b6020808252600d908201526c34b73b30b634b2103a37b5b2b760991b604082015260600190565b602080825260189082015277496e76616c69642050797468206f7261636c65206461746160401b604082015260600190565b6020808252601e908201527f696e76616c696420696e697469616c436f6c6c61746572616c546f6b656e0000604082015260600190565b60208082526016908201527513d99998da185a5b881c1c9a58d9481a5b9d985b1a5960521b604082015260600190565b6020808252601c908201527b1d5b9cdd5c1c1bdc9d1959081dda5d1a191c985dd85b08185cdcd95d60221b604082015260600190565b6020808252601d908201527f5079746820707269636520636f6e666964656e636520746f6f206c6f77000000604082015260600190565b6020808252601690820152753ab739bab83837b93a32b21039b437b93a2a37b5b2b760511b604082015260600190565b6020808252601c908201527b4f6666636861696e206f7261636c65207a65726f206164647265737360201b604082015260600190565b6020808252601590820152743ab739bab83837b93a32b2103637b733aa37b5b2b760591b604082015260600190565b6020808252601390820152720d2dcecc2d8d2c840e0e4d2c6ca9ad2dc9ac2f606b1b604082015260600190565b6020808252601e908201527f4d41585f504e4c5f464143544f525f464f525f5749544844524157414c530000604082015260600190565b6020808252601990820152781a5b9d985b1a590818d85b1b189858dac818dbdb9d1c9858dd603a1b604082015260600190565b60208082526018908201527734b73b30b634b21034b734ba34b0b62637b733aa37b5b2b760411b604082015260600190565b6020808252600e908201526d0d2dcecc2d8d2c840d8cadccee8d60931b604082015260600190565b602080825260189082015277696e76616c6964206d756c746963616c6c20706172616d7360401b604082015260600190565b6020808252600f908201526e1d5b9cdd5c1c1bdc9d1959081ddb9d608a1b604082015260600190565b918252602082015260400190565b6040518181016001600160401b038111828210171561551b57fe5b604052919050565b60006001600160401b0382111561553657fe5b5060209081020190565b6001600160a01b038116811461555557600080fd5b50565b801515811461555557600080fdfe5369676e6564536166654d6174683a206469766973696f6e206f766572666c6f77536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212208fcec8989084fa9f31358f7f34cbc78c262e5aa3847f30ebdf622a02decf419b64736f6c63430007060033