0 txs
670 calls
constructor
No constructor.
functions
CLAIMABLE_COLLATERAL_TIME_DIVISOR
viewfunction CLAIMABLE_COLLATERAL_TIME_DIVISOR() view returns (bytes32)
CONTROLLER_ROLE_STORE_KEY
viewfunction CONTROLLER_ROLE_STORE_KEY() view returns (bytes32)
events
No events.
errors
No errors.
creation bytecode
0x6152b0610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100825760003560e01c80634180ea99146100875780636dbdf612146100a557806391ccde00146100c757806393af440b146100e75780639cd0dd5d146101075780639fdfb9ca1461010f578063f74a2c741461012f578063ff85548e1461014f575b600080fd5b61008f61016f565b60405161009c9190614b22565b60405180910390f35b8180156100b157600080fd5b506100c56100c03660046141d5565b610197565b005b8180156100d357600080fd5b506100c56100e2366004614634565b610ae4565b8180156100f357600080fd5b506100c56101023660046141d5565b610c6c565b61008f6111ce565b81801561011b57600080fd5b506100c561012a3660046144d7565b6111dd565b81801561013b57600080fd5b506100c561014a3660046141d5565b6113e7565b81801561015b57600080fd5b506100c561016a3660046142b3565b611bf4565b60405160200161017e90614b7b565b6040516020818303038152906040528051906020012081565b61019f612b97565b6000826001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b1580156101da57600080fd5b505afa1580156101ee573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102129190614063565b905060008061021f612bbe565b885160405163376354e960e11b815273e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d2916102579190600401614db9565b60206040518083038186803b15801561026f57600080fd5b505af4158015610283573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a79190614063565b6001600160a01b03168152885160405163376354e960e11b815273e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d2916102ea9190600401614d7e565b60206040518083038186803b15801561030257600080fd5b505af4158015610316573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033a9190614063565b6001600160a01b03166020820152885160405163376354e960e11b815273e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d2916103809190600401614cb6565b60206040518083038186803b15801561039857600080fd5b505af41580156103ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103d09190614063565b6001600160a01b03166040808301919091528951905163376354e960e11b815273e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d2916104199190600401614d38565b60206040518083038186803b15801561043157600080fd5b505af4158015610445573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104699190614063565b6001600160a01b03166060820152602089015160405163b2c2339f60e01b815273e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f916104b29190600401615027565b60206040518083038186803b1580156104ca57600080fd5b505af41580156104de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061050291906141bd565b6080820152602089015160405163b2c2339f60e01b815273e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f916105429190600401614f94565b60206040518083038186803b15801561055a57600080fd5b505af415801561056e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059291906141bd565b60a0820152602089015160405163b2c2339f60e01b815273e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f916105d2919060040161518d565b60206040518083038186803b1580156105ea57600080fd5b505af41580156105fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061062291906141bd565b8160c0018181525050856001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b15801561066457600080fd5b505afa158015610678573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069c9190614063565b93506106a784611df8565b8051604051632a32620760e11b81526000916001600160a01b03891691635464c40e916106d691600401614a73565b604080518083038186803b1580156106ed57600080fd5b505afa158015610701573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610725919061425c565b825181519192506001600160a01b0391821691161461075f5760405162461bcd60e51b815260040161075690614bbc565b60405180910390fd5b80600001516001600160a01b0316631e50a4a66040518163ffffffff1660e01b815260040160206040518083038186803b15801561079c57600080fd5b505afa1580156107b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d49190614063565b9250866001600160a01b03166333a518b86040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108479190614063565b93506040518060800160405280886001600160a01b031663d4fc42c66040518163ffffffff1660e01b815260040160206040518083038186803b15801561088d57600080fd5b505afa1580156108a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c59190614063565b6001600160a01b03168152602001866001600160a01b0316815260200173e555bdf3f46bbd7ef8b98f9ede75775c5df22d55631862aab3866040518263ffffffff1660e01b81526004016109199190614a73565b60206040518083038186803b15801561093157600080fd5b505af4158015610945573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109699190614063565b6001600160a01b03168152602001886001600160a01b031681525095505060008073e555bdf3f46bbd7ef8b98f9ede75775c5df22d55632fcea17f848960008d60200151600001516000815181106109bd57fe5b6020026020010151602001516040518563ffffffff1660e01b81526004016109e89493929190614e2e565b604080518083038186803b1580156109ff57600080fd5b505af4158015610a13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a379190614769565b91509150846001600160a01b031663ebd4f481858c604051806080016040528088602001516001600160a01b0316815260200188602001516001600160a01b03168152602001878152602001868152506040518463ffffffff1660e01b8152600401610aa593929190614aa0565b600060405180830381600087803b158015610abf57600080fd5b505af1158015610ad3573d6000803e3d6000fd5b505050505050505050505050505050565b610aec612bfa565b8051610af9906002611f29565b6040805180820190915260078152661858d8dbdd5b9d60ca1b60208201528551518251610b2b92909160009190611f80565b6040805180820190915260068152651b585c9ad95d60d21b60208201528551608001518251610b5f92909160019190611f80565b6020810151610b6f906003611fd1565b610bbc6000604051806040016040528060118152602001701b585c9ad95d151bdad95b905b5bdd5b9d607a1b8152508760200151600001518460200151612026909392919063ffffffff16565b610c0a6001604051806040016040528060128152602001711b5a5b931bdb99d51bdad95b905b5bdd5b9d60721b8152508760200151602001518460200151612026909392919063ffffffff16565b610c596002604051806040016040528060138152602001721b5a5b94da1bdc9d151bdad95b905b5bdd5b9d606a1b8152508760200151604001518460200151612026909392919063ffffffff16565b610c65818585856113e7565b5050505050565b602084015160405163b2c2339f60e01b815260009173e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f91610ca9916004016150c3565b60206040518083038186803b158015610cc157600080fd5b505af4158015610cd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf991906141bd565b6008811115610d0457fe5b90506004816008811115610d1457fe5b1415610ebe57845160405163376354e960e11b815260009173e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d291610d5491600401614db9565b60206040518083038186803b158015610d6c57600080fd5b505af4158015610d80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610da49190614063565b865160405163376354e960e11b815291925060009173e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d291610de29190600401614d7e565b60206040518083038186803b158015610dfa57600080fd5b505af4158015610e0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e329190614063565b90506000846001600160a01b03166352dac6566040518163ffffffff1660e01b815260040160206040518083038186803b158015610e6f57600080fd5b505afa158015610e83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea79190614063565b9050610eb6818830858761206d565b505050610c65565b6000816008811115610ecc57fe5b1415610c65576040805160a0810191829052865163376354e960e11b909252610c6591819073e66ed6d788809490e88847efa7a70223275e1a6190636ec6a9d290610f1a9060a48501614db9565b60206040518083038186803b158015610f3257600080fd5b505af4158015610f46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6a9190614063565b6001600160a01b031681528751604051633c0e40e760e01b815260209092019173e66ed6d788809490e88847efa7a70223275e1a6191633c0e40e791610fb39190600401614cfb565b60006040518083038186803b158015610fcb57600080fd5b505af4158015610fdf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110079190810190614086565b8152875160405163376354e960e11b815260209092019173e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d2916110479190600401614c6b565b60206040518083038186803b15801561105f57600080fd5b505af4158015611073573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110979190614063565b6001600160a01b0316815260208881015160405163b2c2339f60e01b8152919092019173e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f916110e291600401615072565b60206040518083038186803b1580156110fa57600080fd5b505af415801561110e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113291906141bd565b815260208881015160405163b2c2339f60e01b8152919092019173e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f9161117491600401615101565b60206040518083038186803b15801561118c57600080fd5b505af41580156111a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c491906141bd565b90528585306122e1565b60405160200161017e90614be9565b6111e5612bfa565b80516111f2906003611f29565b6040805180820190915260078152661858d8dbdd5b9d60ca1b6020820152855151825161122492909160009190611f80565b6040805180820190915260068152651b585c9ad95d60d21b6020820152855160a00151825161125892909160019190611f80565b60408051808201909152601681527534b734ba34b0b621b7b63630ba32b930b62a37b5b2b760511b6020820152855160c00151825161129c92909160029190611f80565b80516112a99060016127c5565b6040805180820190915260088152670e6eec2e0a0c2e8d60c31b6020820152855160e0015182516112df92909160009190612822565b60208101516112ef906003611fd1565b6113376000604051806040016040528060098152602001686f726465725479706560b81b815250876020015160000151600881111561132a57fe5b6020850151929190612026565b61138f60016040518060400160405280601c81526020017b1a5b9a5d1a585b10dbdb1b185d195c985b11195b1d18505b5bdd5b9d60221b8152508760200151606001518460200151612026909392919063ffffffff16565b6113db60026040518060400160405280600f81526020016e1b5a5b93dd5d1c1d5d105b5bdd5b9d608a1b815250876020015161010001518460200151612026909392919063ffffffff16565b610c6581858585610c6c565b6113ef612b97565b6000826001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b15801561142a57600080fd5b505afa15801561143e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114629190614063565b905060008061146f612c60565b885160405163376354e960e11b815273e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d2916114a79190600401614db9565b60206040518083038186803b1580156114bf57600080fd5b505af41580156114d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f79190614063565b6001600160a01b03168152885160405163376354e960e11b815273e66ed6d788809490e88847efa7a70223275e1a6191636ec6a9d29161153a9190600401614d7e565b60206040518083038186803b15801561155257600080fd5b505af4158015611566573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061158a9190614063565b6001600160a01b031660208083019190915289015160405163b2c2339f60e01b815273e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f916115d591906004016151d1565b60206040518083038186803b1580156115ed57600080fd5b505af4158015611601573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162591906141bd565b60408083019190915260208a0151905163b2c2339f60e01b815273e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f916116689190600401614fe0565b60206040518083038186803b15801561168057600080fd5b505af4158015611694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116b891906141bd565b6060820152602089015160405163b2c2339f60e01b815273e66ed6d788809490e88847efa7a70223275e1a619163b2c2339f916116f89190600401615145565b60206040518083038186803b15801561171057600080fd5b505af4158015611724573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174891906141bd565b816080018181525050856001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b15801561178a57600080fd5b505afa15801561179e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c29190614063565b93506117cd84611df8565b8051604051632a32620760e11b81526000916001600160a01b03891691635464c40e916117fc91600401614a73565b604080518083038186803b15801561181357600080fd5b505afa158015611827573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061184b919061425c565b825181519192506001600160a01b0391821691161461187c5760405162461bcd60e51b815260040161075690614bbc565b80600001516001600160a01b0316631e50a4a66040518163ffffffff1660e01b815260040160206040518083038186803b1580156118b957600080fd5b505afa1580156118cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118f19190614063565b9250866001600160a01b03166333a518b86040518163ffffffff1660e01b815260040160206040518083038186803b15801561192c57600080fd5b505afa158015611940573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119649190614063565b93506040518060800160405280886001600160a01b031663d4fc42c66040518163ffffffff1660e01b815260040160206040518083038186803b1580156119aa57600080fd5b505afa1580156119be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119e29190614063565b6001600160a01b03168152602001866001600160a01b0316815260200173e555bdf3f46bbd7ef8b98f9ede75775c5df22d55631862aab3866040518263ffffffff1660e01b8152600401611a369190614a73565b60206040518083038186803b158015611a4e57600080fd5b505af4158015611a62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a869190614063565b6001600160a01b03168152602001886001600160a01b03168152509550506000806000896020015160000151600081518110611abe57fe5b602002602001015160200151905060008a6020015160000151600181518110611ae357fe5b602002602001015160200151905073e555bdf3f46bbd7ef8b98f9ede75775c5df22d55633710ada2868b600086866040518663ffffffff1660e01b8152600401611b31959493929190614f29565b604080518083038186803b158015611b4857600080fd5b505af4158015611b5c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b809190614769565b80945081955050505050846001600160a01b031663ebd4f481858c604051806080016040528088602001516001600160a01b0316815260200188602001516001600160a01b03168152602001878152602001868152506040518463ffffffff1660e01b8152600401610aa593929190614aa0565b611bfc612bfa565b8051611c09906004611f29565b6040805180820190915260078152661858d8dbdd5b9d60ca1b60208201528551518251611c3b92909160009190611f80565b6040805180820190915260068152651b585c9ad95d60d21b60208201528551608001518251611c6f92909160019190611f80565b60408051808201909152601081526f34b734ba34b0b62637b733aa37b5b2b760811b6020820152855160a001518251611cad92909160029190611f80565b60408051808201909152601181527034b734ba34b0b629b437b93a2a37b5b2b760791b6020820152855160c001518251611cec92909160039190611f80565b6020810151611cfc906003611fd1565b611d4e6000604051806040016040528060168152602001751a5b9a5d1a585b131bdb99d51bdad95b905b5bdd5b9d60521b8152508760200151600001518460200151612026909392919063ffffffff16565b611da16001604051806040016040528060178152602001761a5b9a5d1a585b14da1bdc9d151bdad95b905b5bdd5b9d604a1b8152508760200151602001518460200151612026909392919063ffffffff16565b611dec60026040518060400160405280600f81526020016e6d696e4d61726b6574546f6b656e7360881b8152508760200151604001518460200151612026909392919063ffffffff16565b610c6581858585610197565b806001600160a01b0316634a4a7b046040518163ffffffff1660e01b815260040160206040518083038186803b158015611e3157600080fd5b505afa158015611e45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e699190614063565b6001600160a01b031663ac4ab3fb33604051602001611e8790614be9565b604051602081830303815290604052805190602001206040518363ffffffff1660e01b8152600401611eba929190614a87565b60206040518083038186803b158015611ed257600080fd5b505afa158015611ee6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f0a91906141a1565b611f265760405162461bcd60e51b815260040161075690614c42565b50565b806001600160401b0381118015611f3f57600080fd5b50604051908082528060200260200182016040528015611f7957816020015b611f66612ca1565b815260200190600190039081611f5e5790505b5090915250565b8184600001518481518110611f9157fe5b6020026020010151600001819052508084600001518481518110611fb157fe5b6020908102919091018101516001600160a01b0390921691015250505050565b806001600160401b0381118015611fe757600080fd5b50604051908082528060200260200182016040528015611f7957816020015b61200e612cb9565b81526020019060019003908161200657505090915250565b818460000151848151811061203757fe5b602002602001015160000181905250808460000151848151811061205757fe5b6020026020010151602001818152505050505050565b6000836001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b1580156120a857600080fd5b505afa1580156120bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120e09190614063565b90506000846001600160a01b031663d4fc42c66040518163ffffffff1660e01b815260040160206040518083038186803b15801561211d57600080fd5b505afa158015612131573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121559190614063565b905061216082611df8565b6000826001600160a01b031663bd02d0f560405160200161218090614b7b565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016121b29190614b22565b60206040518083038186803b1580156121ca57600080fd5b505afa1580156121de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061220291906141bd565b428161220a57fe5b0490506000826001600160a01b031663714af34b85886040518363ffffffff1660e01b815260040161223d929190614b61565b60806040518083038186803b15801561225557600080fd5b505afa158015612269573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061228d919061445a565b90506122a2898986888a866040015188612868565b80606001516001600160a01b031681604001516001600160a01b0316146122d6576122d6898986888a866060015188612868565b505050505050505050565b6122e9612b97565b6000826001600160a01b031663660d0d676040518163ffffffff1660e01b815260040160206040518083038186803b15801561232457600080fd5b505afa158015612338573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061235c9190614063565b905060008061236a83611df8565b8751604051632a32620760e11b81526000916001600160a01b03881691635464c40e9161239991600401614a73565b604080518083038186803b1580156123b057600080fd5b505afa1580156123c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123e8919061425c565b895181519192506001600160a01b039182169116146124195760405162461bcd60e51b815260040161075690614bbc565b80600001516001600160a01b0316631e50a4a66040518163ffffffff1660e01b815260040160206040518083038186803b15801561245657600080fd5b505afa15801561246a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061248e9190614063565b9150856001600160a01b03166333a518b86040518163ffffffff1660e01b815260040160206040518083038186803b1580156124c957600080fd5b505afa1580156124dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125019190614063565b92506040518060800160405280876001600160a01b031663d4fc42c66040518163ffffffff1660e01b815260040160206040518083038186803b15801561254757600080fd5b505afa15801561255b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061257f9190614063565b6001600160a01b03168152602001856001600160a01b0316815260200173e555bdf3f46bbd7ef8b98f9ede75775c5df22d55631862aab3856040518263ffffffff1660e01b81526004016125d39190614a73565b60206040518083038186803b1580156125eb57600080fd5b505af41580156125ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126239190614063565b6001600160a01b03168152602001876001600160a01b031681525094505060008073e555bdf3f46bbd7ef8b98f9ede75775c5df22d556366e74d588b8860008c602001516000015160008151811061267757fe5b6020026020010151602001516040518563ffffffff1660e01b81526004016126a29493929190614eb2565b604080518083038186803b1580156126b957600080fd5b505af41580156126cd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126f19190614769565b91509150836001600160a01b031663ebd4f481848b60405180608001604052808f6020015160008151811061272257fe5b60200260200101516001600160a01b031681526020018f6020015160008151811061274957fe5b60200260200101516001600160a01b03168152602001878152602001868152506040518463ffffffff1660e01b815260040161278793929190614aa0565b600060405180830381600087803b1580156127a157600080fd5b505af11580156127b5573d6000803e3d6000fd5b5050505050505050505050505050565b806001600160401b03811180156127db57600080fd5b5060405190808252806020026020018201604052801561281557816020015b612802612cd3565b8152602001906001900390816127fa5790505b5082602001819052505050565b818460200151848151811061283357fe5b602002602001015160000181905250808460200151848151811061285357fe5b60200260200101516020018190525050505050565b6000856001600160a01b031663bd02d0f573c4c9baa81cdfa2d3b3e6d3f63f3effb1ba9af1fa63cae3b41d6040518060800160405280896001600160a01b03168152602001886001600160a01b031681526020018781526020018a6001600160a01b03168152506040518263ffffffff1660e01b81526004016128eb9190614df5565b60206040518083038186803b15801561290357600080fd5b505af4158015612917573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061293b91906141bd565b6040518263ffffffff1660e01b81526004016129579190614b22565b60206040518083038186803b15801561296f57600080fd5b505afa158015612983573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129a791906141bd565b905080156129bd576129bd8888878787876129c7565b5050505050505050565b60006129d38484612a5d565b905060006129e48887878787612ab6565b9050806129bd57604051633b68defb60e11b81526001600160a01b038916906376d1bdf690612a21908a9086908b9089906103e890600401614aee565b600060405180830381600087803b158015612a3b57600080fd5b505af1158015612a4f573d6000803e3d6000fd5b505050505050505050505050565b6000604051602001612a6e90614c0d565b604051602081830303815290604052805190602001208383604051602001612a9893929190614b42565b60405160208183030381529060405280519060200120905092915050565b600080612ac38585612a5d565b90506000876001600160a01b031663d6b6aa4983896040518363ffffffff1660e01b8152600401612af5929190614b2b565b60006040518083038186803b158015612b0d57600080fd5b505afa158015612b21573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612b49919081019061411e565b905060005b8151811015612b8657818181518110612b6357fe5b6020026020010151851415612b7e5760019350505050612b8e565b600101612b4e565b600093505050505b95945050505050565b60408051608081018252600080825260208201819052918101829052606081019190915290565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b6040518060e00160405280612c0d612cd3565b8152602001612c1a612cd3565b8152602001612c27612cd3565b8152602001612c34612cd3565b8152602001612c41612cd3565b8152602001612c4e612cd3565b8152602001612c5b612cd3565b905290565b6040518060a0016040528060006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001600081525090565b60408051808201909152606081526000602082015290565b604051806040016040528060608152602001600081525090565b604051806040016040528060608152602001606081525090565b8035612cf881615257565b919050565b600082601f830112612d0d578081fd5b81356020612d22612d1d8361523a565b615217565b8281528181019085830183850287018401881015612d3e578586fd5b855b85811015612d65578135612d5381615257565b84529284019290840190600101612d40565b5090979650505050505050565b600082601f830112612d82578081fd5b81356020612d92612d1d8361523a565b82815281810190858301855b85811015612d655781358801604080601f19838d03011215612dbe578889fd5b80518181016001600160401b038282108183111715612dd957fe5b908352838901359080821115612ded578b8cfd5b612dfb8e8b848801016134f4565b8352928401359280841115612e0e578b8cfd5b5050612e1e8c8984860101612cfd565b81890152865250509284019290840190600101612d9e565b600082601f830112612e46578081fd5b81356020612e56612d1d8361523a565b82815281810190858301855b85811015612d655781358801604080601f19838d03011215612e82578889fd5b80518181016001600160401b038282108183111715612e9d57fe5b908352838901359080821115612eb1578b8cfd5b612ebf8e8b848801016134f4565b835283850135915080821115612ed3578b8cfd5b508084019350508b603f840112612ee857898afd5b87830135612ef8612d1d8261523a565b808282528a820191508486018f868d86028901011115612f16578d8efd5b8d96505b83871015612f445780359550612f2f8661526c565b85835260019690960195918b01918b01612f1a565b50838b01525050865250509284019290840190600101612e62565b600082601f830112612f6f578081fd5b81356020612f7f612d1d8361523a565b82815281810190858301855b85811015612d655781358801604080601f19838d03011215612fab578889fd5b80518181016001600160401b038282108183111715612fc657fe5b908352838901359080821115612fda578b8cfd5b612fe88e8b848801016134f4565b835283850135915080821115612ffc578b8cfd5b508084019350508b603f84011261301157898afd5b87830135613021612d1d8261523a565b808282528a820191508486018f868d8602890101111561303f578d8efd5b8d96505b83871015613061578035835260019690960195918b01918b01613043565b50838b01525050865250509284019290840190600101612f8b565b600082601f83011261308c578081fd5b602061309b612d1d843561523a565b8335815281810190828501845b863581101561319557813587016040818a03601f190112156130c8578687fd5b604051604081016001600160401b0382821081831117156130e557fe5b81604052888401359150808211156130fb57898afd5b6131098c8a848701016134f4565b8352604084013591508082111561311e57898afd5b5080830192505089603f830112613133578788fd5b86820135613143612d1d8261523a565b81815288810190604085018b5b8481101561317a576131688f604084358a01016134f4565b8452928b0192908b0190600101613150565b5050838a0152505085525092840192908401906001016130a8565b50909695505050505050565b600082601f8301126131b1578081fd5b813560206131c1612d1d8361523a565b82815281810190858301855b85811015612d655781358801604080601f19838d030112156131ed578889fd5b80518181016001600160401b03828210818311171561320857fe5b90835283890135908082111561321c578b8cfd5b61322a8e8b848801016134f4565b83528385013591508082111561323e578b8cfd5b508084019350508b603f84011261325357898afd5b87830135613263612d1d8261523a565b808282528a820191508486018f868d86028901011115613281578d8efd5b8d96505b838710156132a3578035835260019690960195918b01918b01613285565b50838b015250508652505092840192908401906001016131cd565b600082601f8301126132ce578081fd5b60206132dd612d1d843561523a565b8335815281810190828501845b863581101561319557813587016040818a03601f1901121561330a578687fd5b604051604081016001600160401b03828210818311171561332757fe5b816040528884013591508082111561333d57898afd5b61334b8c8a848701016134f4565b8352604084013591508082111561336057898afd5b5080830192505089603f830112613375578788fd5b86820135613385612d1d8261523a565b81815288810190604085018b5b848110156133bc576133aa8f604084358a01016134f4565b8452928b0192908b0190600101613392565b5050838a0152505085525092840192908401906001016132ea565b600082601f8301126133e7578081fd5b813560206133f7612d1d8361523a565b82815281810190858301855b85811015612d655781358801604080601f19838d03011215613423578889fd5b80518181016001600160401b03828210818311171561343e57fe5b908352838901359080821115613452578b8cfd5b6134608e8b848801016134f4565b835283850135915080821115613474578b8cfd5b508084019350508b603f84011261348957898afd5b87830135613499612d1d8261523a565b808282528a820191508486018f868d860289010111156134b7578d8efd5b8d96505b838710156134d9578035835260019690960195918b01918b016134bb565b50838b01525050865250509284019290840190600101613403565b600082601f830112613504578081fd5b81356001600160401b0381111561351757fe5b61352a601f8201601f1916602001615217565b81815284602083860101111561353e578283fd5b816020850160208301379081016020019190915292915050565b803560038110612cf857600080fd5b803560098110612cf857600080fd5b600060408284031215613587578081fd5b604051604081016001600160401b0382821081831117156135a457fe5b8160405282935080853511156135b957600080fd5b84358501915085601f8301126135ce57600080fd5b813560206135de612d1d8361523a565b8281528181019085830160005b8581101561366e57813588016040818e03601f1901121561360b57600080fd5b604051604081018181108a8211171561362057fe5b604052818701358981111561363457600080fd5b6136428f89838601016134f4565b8252506040820135915061365582615257565b80870191909152845292840192908401906001016135eb565b50508652508681013593508284111561368657600080fd5b61369288858901612d72565b81860152505050505092915050565b6000604082840312156136b2578081fd5b604051604081016001600160401b0382821081831117156136cf57fe5b8160405282935080853511156136e457600080fd5b84358501915085601f8301126136f957600080fd5b81356020613709612d1d8361523a565b8281528181019085830160005b8581101561379957813588016040818e03601f1901121561373657600080fd5b604051604081018181108a8211171561374b57fe5b604052818701358981111561375f57600080fd5b61376d8f89838601016134f4565b825250604082013591506137808261526c565b8087019190915284529284019290840190600101613716565b5050865250868101359350828411156137b157600080fd5b61369288858901612e36565b600060408083850312156137cf578182fd5b80518181016001600160401b0382821081831117156137ea57fe5b81845282945080863511156137fe57600080fd5b85358601915086601f83011261381357600080fd5b8135613821612d1d8261523a565b81815260208082019190850160005b848110156138a9578135870189601f19828f0301121561384f57600080fd5b89518a8101818110898211171561386257fe5b8b5260208201358881111561387657600080fd5b6138858f6020838601016134f4565b825250908a0135602080830191909152908552938401939190910190600101613830565b50508552505060208601359350808411156138c357600080fd5b50506138d185838601612f5f565b6020820152505092915050565b600060408083850312156138f0578182fd5b80518181016001600160401b03828210818311171561390b57fe5b818452829450808635111561391f57600080fd5b85358601915086601f83011261393457600080fd5b6020613943612d1d843561523a565b833581528181019082850160005b86358110156139df578135870189601f19828f0301121561397157600080fd5b89518a8101818110898211171561398457fe5b8b52818701358881111561399757600080fd5b6139a58f89838601016134f4565b8252508a820135888111156139b957600080fd5b6139c78f89838601016134f4565b82890152508552509284019290840190600101613951565b5050855250868101359450818511156139f757600080fd5b613a038886890161307c565b81850152505050505092915050565b600060e08284031215613a23578081fd5b613a2d60e0615217565b905081356001600160401b0380821115613a4657600080fd5b613a5285838601613576565b83526020840135915080821115613a6857600080fd5b613a7485838601613f4f565b60208401526040840135915080821115613a8d57600080fd5b613a9985838601613c01565b60408401526060840135915080821115613ab257600080fd5b613abe858386016136a1565b60608401526080840135915080821115613ad757600080fd5b613ae3858386016137bd565b608084015260a0840135915080821115613afc57600080fd5b613b08858386016138de565b60a084015260c0840135915080821115613b2157600080fd5b50613b2e84828501613e24565b60c08301525092915050565b600060208284031215613b4b578081fd5b604051602081018181106001600160401b0382111715613b6757fe5b6040529050808235613b788161526c565b905292915050565b600060808284031215613b91578081fd5b604051608081018181106001600160401b0382111715613bad57fe5b6040529050808235613bbe8161526c565b81526020830135613bce8161526c565b60208201526040830135613be18161526c565b60408201526060830135613bf48161526c565b6060919091015292915050565b600060408284031215613c12578081fd5b604051604081016001600160401b038282108183111715613c2f57fe5b816040528293508085351115613c4457600080fd5b84358501915085601f830112613c5957600080fd5b81356020613c69612d1d8361523a565b8281528181019085830160005b85811015613ced57813588016040818e03601f19011215613c9657600080fd5b604051604081018181108a82111715613cab57fe5b6040528187013589811115613cbf57600080fd5b613ccd8f89838601016134f4565b825250604091909101358682015284529284019290840190600101613c76565b505086525086810135935082841115613d0557600080fd5b613692888589016131a1565b600060c08284031215613d22578081fd5b60405160c081018181106001600160401b0382111715613d3e57fe5b8060405250809150823581526020830135602082015260408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000610160808385031215613d96578182fd5b613d9f81615217565b915050613dab82613567565b8152613db960208301613558565b602082015260408201356040820152606082013560608201526080820135608082015260a082013560a082015260c082013560c082015260e082013560e082015261010080830135818301525061012080830135818301525061014080830135818301525092915050565b600060408284031215613e35578081fd5b604051604081016001600160401b038282108183111715613e5257fe5b816040528293508085351115613e6757600080fd5b84358501915085601f830112613e7c57600080fd5b81356020613e8c612d1d8361523a565b8281528181019085830160005b85811015613f2b57813588016040818e03601f19011215613eb957600080fd5b604051604081018181108a82111715613ece57fe5b6040528187013589811115613ee257600080fd5b613ef08f89838601016134f4565b825250604082013589811115613f0557600080fd5b613f138f89838601016134f4565b82890152508552509284019290840190600101613e99565b505086525086810135935082841115613f4357600080fd5b613692888589016132be565b60006040808385031215613f61578182fd5b80518181016001600160401b038282108183111715613f7c57fe5b8184528294508086351115613f9057600080fd5b85358601915086601f830112613fa557600080fd5b8135613fb3612d1d8261523a565b81815260208082019190850160005b8481101561403b578135870189601f19828f03011215613fe157600080fd5b89518a81018181108982111715613ff457fe5b8b5260208201358881111561400857600080fd5b6140178f6020838601016134f4565b825250908a0135602080830191909152908552938401939190910190600101613fc2565b505085525050602086013593508084111561405557600080fd5b50506138d1858386016133d7565b600060208284031215614074578081fd5b815161407f81615257565b9392505050565b60006020808385031215614098578182fd5b82516001600160401b038111156140ad578283fd5b8301601f810185136140bd578283fd5b80516140cb612d1d8261523a565b81815283810190838501858402850186018910156140e7578687fd5b8694505b838510156141125780516140fe81615257565b8352600194909401939185019185016140eb565b50979650505050505050565b60006020808385031215614130578182fd5b82516001600160401b03811115614145578283fd5b8301601f81018513614155578283fd5b8051614163612d1d8261523a565b818152838101908385018584028501860189101561417f578687fd5b8694505b83851015614112578051835260019490940193918501918501614183565b6000602082840312156141b2578081fd5b815161407f8161526c565b6000602082840312156141ce578081fd5b5051919050565b600080600080608085870312156141ea578283fd5b84356001600160401b0380821115614200578485fd5b61420c88838901613a12565b95506020870135915061421e82615257565b90935060408601359080821115614233578384fd5b5061424087828801613a12565b925050606085013561425181615257565b939692955090935050565b60006040828403121561426d578081fd5b604051604081018181106001600160401b038211171561428957fe5b604052825161429781615257565b815260208301516142a781615257565b60208201529392505050565b600080600080608085870312156142c8578182fd5b84356001600160401b03808211156142de578384fd5b818701915061010080838a0312156142f4578485fd5b6040805160608101818110858211171561430a57fe5b825284358481111561431a578788fd5b8501610120818d0381131561432d578889fd5b61433681615217565b905061434182612ced565b815261434f60208301612ced565b602082015261435f848301612ced565b8482015261436f60608301612ced565b606082015261438060808301612ced565b608082015261439160a08301612ced565b60a08201526143a260c08301612ced565b60c082015260e0820135868111156143b857898afd5b6143c48e828501612cfd565b60e08301525084820135868111156143da57898afd5b6143e68e828501612cfd565b82870152508252506143fb8b60208701613d11565b602082015261440d8b60e08701613b3a565b81830152975061441f60208a01612ced565b965088013592505080821115614433578384fd5b5061444087828801613a12565b92505061444f60608601612ced565b905092959194509250565b60006080828403121561446b578081fd5b604051608081018181106001600160401b038211171561448757fe5b604052825161449581615257565b815260208301516144a581615257565b602082015260408301516144b881615257565b604082015260608301516144cb81615257565b60608201529392505050565b600080600080608085870312156144ec578182fd5b84356001600160401b0380821115614502578384fd5b908601906102008289031215614516578384fd5b6040805160608101818110848211171561452c57fe5b825283358381111561453c578687fd5b8401610100818c0381131561454f578788fd5b61455881615217565b905061456382612ced565b815261457160208301612ced565b6020820152614581848301612ced565b8482015261459160608301612ced565b60608201526145a260808301612ced565b60808201526145b360a08301612ced565b60a08201526145c460c08301612ced565b60c082015260e0820135858111156145da578889fd5b6145e68d828501612cfd565b60e0830152508252506145fc8a60208601613d83565b602082015261460f8a6101808601613b80565b81830152965061462160208901612ced565b9550870135915080821115614433578384fd5b60008060008060808587031215614649578182fd5b84356001600160401b038082111561465f578384fd5b908601906101008289031215614673578384fd5b6040805160608101818110848211171561468957fe5b8252833583811115614699578687fd5b840160e0818c0312156146aa578687fd5b6146b460e0615217565b6146bd82612ced565b81526146cb60208301612ced565b60208201526146db848301612ced565b848201526146eb60608301612ced565b60608201526146fc60808301612ced565b608082015260a082013585811115614712578889fd5b61471e8d828501612cfd565b60a08301525060c082013585811115614735578889fd5b6147418d828501612cfd565b60c0830152508252506147578a60208601613d11565b602082015261460f8a60e08601613b3a565b6000806040838503121561477b578182fd5b505080516020909101519092909150565b6000815180845260208085019450808401835b838110156147c45781516001600160a01b03168752958201959082019060010161479f565b509495945050505050565b6000815180845260208085018081965082840281019150828601855b8581101561483b57828403895281516040815181875261480d828801826148dd565b91505086820151915085810387870152614827818361478c565b9a87019a95505050908401906001016147eb565b5091979650505050505050565b6000815180845260208085018081965082840281019150828601855b8581101561483b578284038952815160408151818752614886828801826148dd565b92880151878403888a01528051808552908901938b9350890191505b808310156148c257835182529288019260019290920191908801906148a2565b509a87019a9550505090840190600101614864565b15159052565b60008151808452815b81811015614902576020818501810151868301820152016148e6565b818111156149135782602083870101525b50601f01601f19169290920160200192915050565b8051604080845281518482018190526000926020919082019060608088019190848202890101865b8281101561499a57898203605f1901845284518051888452614974898501826148dd565b918801516001600160a01b03169388019390935294860194938601939150600101614950565b50848801519550888103858a01526149b281876147cf565b9998505050505050505050565b80516001600160a01b03908116835260208083015182169084015260408083015182169084015260609182015116910152565b8051604080845281518482018190526000926020919082019060608088019190848202890101865b82811015614a5b57898203605f1901845284518051888452614a3e898501826148dd565b918801519388019390935294860194938601939150600101614a1a565b50848801519550888103858a01526149b28187614848565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b600060c08201905060018060a01b03808616835280851660208401528084511660408401528060208501511660608401525060408301516080830152606083015160a0830152949350505050565b6001600160a01b03958616815260208101949094529190931660408301526060820192909252608081019190915260a00190565b90815260200190565b9182526001600160a01b0316602082015260400190565b9283526001600160a01b03918216602084015216604082015260600190565b6001600160a01b0392831681529116602082015260400190565b60208082526021908201527f434c41494d41424c455f434f4c4c41544552414c5f54494d455f44495649534f6040820152602960f91b606082015260800190565b6020808252601390820152721b9bdd0819db5e081dda1a5d195b1a5cdd1959606a1b604082015260600190565b6020808252600a908201526921a7a72a2927a62622a960b11b604082015260600190565b6020808252601b908201527a10d31052535050931157d0d3d31310551154905317d05353d55395602a1b604082015260600190565b6020808252600f908201526e34b73b30b634b2103430b7323632b960891b604082015260600190565b600060408252614c7e6040830184614928565b8281036020840152601681527534b734ba34b0b621b7b63630ba32b930b62a37b5b2b760511b60208201526040810191505092915050565b600060408252614cc96040830184614928565b8281036020840152601081526f34b734ba34b0b62637b733aa37b5b2b760811b60208201526040810191505092915050565b600060408252614d0e6040830184614928565b828103602084015260088152670e6eec2e0a0c2e8d60c31b60208201526040810191505092915050565b600060408252614d4b6040830184614928565b8281036020840152601181527034b734ba34b0b629b437b93a2a37b5b2b760791b60208201526040810191505092915050565b600060408252614d916040830184614928565b828103602084015260068152651b585c9ad95d60d21b60208201526040810191505092915050565b600060408252614dcc6040830184614928565b828103602084015260078152661858d8dbdd5b9d60ca1b60208201526040810191505092915050565b81516001600160a01b03908116825260208084015182169083015260408084015190830152606092830151169181019190915260800190565b60006101a08201905060018060a01b03808751168352806020880151166020840152806040880151166040840152806060880151166060840152506080860151608083015260a086015160a083015260c086015160c0830152614e9460e08301866149bf565b614ea26101608301856148d7565b8261018083015295945050505050565b600060e0825260018060a01b038087511660e0840152602087015160a0610100850152614ee361018085018261478c565b604089015190921661012085015250606087015161014084015260808701516101608401529050614f1760208301866149bf565b92151560a082015260c0015292915050565b85516001600160a01b039081168252602080880151909116908201526040808701519082015260608087015190820152608080870151908201526101808101614f7560a08301876149bf565b9315156101208201526101408101929092526101609091015292915050565b600060408252614fa760408301846149f2565b828103602084015260178152761a5b9a5d1a585b14da1bdc9d151bdad95b905b5bdd5b9d604a1b60208201526040810191505092915050565b600060408252614ff360408301846149f2565b828103602084015260128152711b5a5b931bdb99d51bdad95b905b5bdd5b9d60721b60208201526040810191505092915050565b60006040825261503a60408301846149f2565b828103602084015260168152751a5b9a5d1a585b131bdb99d51bdad95b905b5bdd5b9d60521b60208201526040810191505092915050565b60006040825261508560408301846149f2565b8281036020840152601c81527b1a5b9a5d1a585b10dbdb1b185d195c985b11195b1d18505b5bdd5b9d60221b60208201526040810191505092915050565b6000604082526150d660408301846149f2565b828103602084015260098152686f726465725479706560b81b60208201526040810191505092915050565b60006040825261511460408301846149f2565b8281036020840152600f81526e1b5a5b93dd5d1c1d5d105b5bdd5b9d608a1b60208201526040810191505092915050565b60006040825261515860408301846149f2565b828103602084015260138152721b5a5b94da1bdc9d151bdad95b905b5bdd5b9d606a1b60208201526040810191505092915050565b6000604082526151a060408301846149f2565b8281036020840152600f81526e6d696e4d61726b6574546f6b656e7360881b60208201526040810191505092915050565b6000604082526151e460408301846149f2565b828103602084015260118152701b585c9ad95d151bdad95b905b5bdd5b9d607a1b60208201526040810191505092915050565b6040518181016001600160401b038111828210171561523257fe5b604052919050565b60006001600160401b0382111561524d57fe5b5060209081020190565b6001600160a01b0381168114611f2657600080fd5b8015158114611f2657600080fdfea264697066735822122063ebf2710c64cdc0e222aee2dc78ad8debc778a2948264a86c4d2843878152ee64736f6c63430007060033