0 txs
1 call
constructor
No constructor.
functions
getPriceImpactUsd
viewfunction getPriceImpactUsd(tuple params) view returns (int256, bool)
getSwapFees
viewfunction getSwapFees(DataStore dataStore, address marketToken, uint256 amount, bool balanceWasImproved, address uiFeeReceiver, ISwapPricingUtils.SwapPricingType swapPricingType) view returns (tuple)
events
No events.
errors
PRBMath__MulDivFixedPointOverflow
error PRBMath__MulDivFixedPointOverflow(uint256 prod1)
PRBMathUD60x18__Exp2InputTooBig
error PRBMathUD60x18__Exp2InputTooBig(uint256 x)
PRBMathUD60x18__LogInputTooSmall
error PRBMathUD60x18__LogInputTooSmall(uint256 x)
UsdDeltaExceedsPoolValue
error UsdDeltaExceedsPoolValue(int256 usdDelta, uint256 poolUsd)
creation bytecode
0x613489610039600b82828239805160001a607314602c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100565760003560e01c80633b89b2361461005b5780638860ae4c14610088578063b5f97bcd146100aa578063ccede1551461010d575b600080fd5b61006e6100693660046128a6565b61012d565b604080519283529015156020830152015b60405180910390f35b81801561009457600080fd5b506100a86100a336600461294e565b61023a565b005b6100bd6100b8366004612a1d565b61057b565b60405161007f91908151815260208083015190820152604080830151908201526060808301516001600160a01b0316908201526080808301519082015260a0918201519181019190915260c00190565b81801561011957600080fd5b506100a8610128366004612a98565b6108ad565b600080600061013b84610c88565b90506000806101538660000151876020015185610cd9565b915091506000821261016a57909590945092505050565b85610100015161017f57909590945092505050565b600080600061019a89600001518a6020015160000151610e0f565b925092509250826101b45750929791965090945050505050565b6000808a60200151604001516001600160a01b03168b604001516001600160a01b0316036101e65750829050816101ec565b50819050825b60006101f98c8484610fa7565b90506000806102118e600001518f6020015185610cd9565b91509150898212610223578989610226565b81815b9c509c505050505050505050505050915091565b6102426125d7565b60808101516102529060026110d1565b60408051808201909152600881526774726164654b657960c01b60208201526080820151610283916000908a611136565b60408051808201909152600b81526a737761704665655479706560a81b602082015260808201516102b79160019086611136565b80516102c49060036110d1565b60408051808201909152600d81526c3ab4a332b2a932b1b2b4bb32b960991b6020820152606083015182516102fe92909160009190611189565b6040805180820190915260068152651b585c9ad95d60d21b6020820152815161032a9160019089611189565b6040805180820190915260058152643a37b5b2b760d91b602082015281516103559160029088611189565b60208101516103659060066110d1565b6103a360006040518060400160405280600a815260200169746f6b656e507269636560b01b815250868460200151611136909392919063ffffffff16565b6103ec600160405180604001604052806011815260200170199959549958d95a5d995c905b5bdd5b9d607a1b81525084600001518460200151611136909392919063ffffffff16565b61043460026040518060400160405280601081526020016f199959505b5bdd5b9d119bdc941bdbdb60821b81525084602001518460200151611136909392919063ffffffff16565b61047b60036040518060400160405280600f81526020016e616d6f756e7441667465724665657360881b81525084604001518460200151611136909392919063ffffffff16565b6104c66004604051806040016040528060138152602001723ab4a332b2a932b1b2b4bb32b92330b1ba37b960691b81525084608001518460200151611136909392919063ffffffff16565b61050960056040518060400160405280600b81526020016a1d5a519959505b5bdd5b9d60aa1b8152508460a001518460200151611136909392919063ffffffff16565b876001600160a01b03166324de01e4610521886111e6565b836040518363ffffffff1660e01b815260040161053f9291906132ee565b600060405180830381600087803b15801561055957600080fd5b505af115801561056d573d6000803e3d6000fd5b505050505050505050505050565b6105836126c8565b61058b6126c8565b6000808460058111156105a0576105a061332f565b0361062457886001600160a01b031663bd02d0f56105be8a896111f2565b6040518263ffffffff1660e01b81526004016105dc91815260200190565b602060405180830381865afa1580156105f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061d9190613345565b9050610765565b60018460058111156106385761063861332f565b146107655760058460058111156106515761065161332f565b0361066e57886001600160a01b031663bd02d0f56105be8a61127c565b60038460058111156106825761068261332f565b036106a057886001600160a01b031663bd02d0f56105be8a89611302565b60048460058111156106b4576106b461332f565b036106d257886001600160a01b031663bd02d0f56105be8a8961133a565b60028460058111156106e6576106e661332f565b0361076557886001600160a01b031663bd02d0f56107038a611375565b6040518263ffffffff1660e01b815260040161072191815260200190565b602060405180830381865afa15801561073e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107629190613345565b90505b6000896001600160a01b031663bd02d0f56040516020016107b29060208082526018908201527729aba0a82fa322a2afa922a1a2a4ab22a92fa320a1aa27a960411b604082015260600190565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016107e691815260200190565b602060405180830381865afa158015610803573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108279190613345565b9050600061083589846113b7565b905061084181836113b7565b80855261084e9082613374565b60208501526001600160a01b038716606085015261086c8b886113d0565b6080850181905261087e908a906113b7565b60a0850181905261088f828b613374565b6108999190613374565b604085015250919998505050505050505050565b6108b56125d7565b60808101516108c59060016110d1565b6040805180820190915260088152676f726465724b657960c01b6020820152825160808301516108fa92909160009190611136565b80516109079060046110d1565b6109456000604051806040016040528060068152602001651b585c9ad95d60d21b81525084602001518460000151611189909392919063ffffffff16565b60408051808201825260088152673932b1b2b4bb32b960c11b602082015290830151825161097892909160019190611189565b6040805180820190915260078152663a37b5b2b724b760c91b6020820152606083015182516109ac92909160029190611189565b6040805180820190915260088152671d1bdad95b93dd5d60c21b6020820152608083015182516109e192909160039190611189565b60208101516109f19060056110d1565b610a3560006040518060400160405280600c81526020016b746f6b656e496e507269636560a01b8152508460a001518460200151611136909392919063ffffffff16565b610a7a60016040518060400160405280600d81526020016c746f6b656e4f7574507269636560981b8152508460c001518460200151611136909392919063ffffffff16565b610aba60026040518060400160405280600881526020016730b6b7bab73a24b760c11b8152508460e001518460200151611136909392919063ffffffff16565b610b04600360405180604001604052806011815260200170616d6f756e74496e41667465724665657360781b8152508461010001518460200151611136909392919063ffffffff16565b610b46600460405180604001604052806009815260200168185b5bdd5b9d13dd5d60ba1b8152508461012001518460200151611136909392919063ffffffff16565b6040810151610b569060036110d1565b604080518082018252600e81526d1c1c9a58d9525b5c1858dd155cd960921b602082015261014084015191830151610b92929091600091611136565b60408051808201825260118152701c1c9a58d9525b5c1858dd105b5bdd5b9d607a1b602082015261016084015191830151610bd1929091600191611136565b60408051808201825260188152771d1bdad95b925b941c9a58d9525b5c1858dd105b5bdd5b9d60421b602082015261018084015191830151610c17929091600291611136565b826001600160a01b03166324de01e4610c3384602001516111e6565b836040518363ffffffff1660e01b8152600401610c51929190613387565b600060405180830381600087803b158015610c6b57600080fd5b505af1158015610c7f573d6000803e3d6000fd5b50505050505050565b610c90612707565b6000610ca9836000015184602001518560400151611521565b90506000610cc4846000015185602001518660600151611521565b9050610cd1848383610fa7565b949350505050565b6000806000610cf0846000015185602001516115bf565b90506000610d06856040015186606001516115bf565b60608601516040870151602088015188518a51949550111591101514906000906001600160a01b038a169063bd02d0f590610d40906115e1565b6040518263ffffffff1660e01b8152600401610d5e91815260200190565b602060405180830381865afa158015610d7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9f9190613345565b90508383108215610dd9576000610dbb8b8b6000015184611622565b9050610dc98686838661164c565b8297509750505050505050610e07565b600080610dea8c8c6000015161168a565b91509150610dfb878784848861179e565b98509196505050505050505b935093915050565b600080600080856001600160a01b031663a6ed563e610e2d876117e7565b6040518263ffffffff1660e01b8152600401610e4b91815260200190565b602060405180830381865afa158015610e68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8c9190613345565b905080610ea457600080600093509350935050610fa0565b6001866001600160a01b031663bd02d0f5610ec084600161181e565b6040518263ffffffff1660e01b8152600401610ede91815260200190565b602060405180830381865afa158015610efb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f1f9190613345565b876001600160a01b031663bd02d0f5610f3985600061181e565b6040518263ffffffff1660e01b8152600401610f5791815260200190565b602060405180830381865afa158015610f74573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f989190613345565b935093509350505b9250925092565b610faf612707565b6000846080015184610fc191906133bf565b905060008560a0015184610fd591906133bf565b905060008660c00151128015610fff575081610ffd8760c00151610ff8906133d6565b611890565b115b156110325760c0860151604051632e94940960e01b81526004810191909152602481018390526044015b60405180910390fd5b60008660e001511280156110555750806110538760e00151610ff8906133d6565b115b156110835760e0860151604051632e94940960e01b8152600481019190915260248101829052604401611029565b6000611093838860c001516118e6565b905060006110a5838960e001516118e6565b6040805160808101825295865260208601949094529284019190915250606082015290505b9392505050565b806001600160401b038111156110e9576110e961272f565b60405190808252806020026020018201604052801561112f57816020015b6040805180820190915260608152600060208201528152602001906001900390816111075790505b5090915250565b818460000151848151811061114d5761114d6133f2565b6020026020010151600001819052508084600001518481518110611173576111736133f2565b6020026020010151602001818152505050505050565b81846000015184815181106111a0576111a06133f2565b60200260200101516000018190525080846000015184815181106111c6576111c66133f2565b6020908102919091018101516001600160a01b0390921691015250505050565b6001600160a01b031690565b6000604051602001611227906020808252600f908201526e29aba0a82fa322a2afa320a1aa27a960891b604082015260600190565b60408051601f198184030181528282528051602091820120908301526001600160a01b0385169082015282151560608201526080015b6040516020818303038152906040528051906020012090505b92915050565b60006040516020016112b89060208082526016908201527520aa27a6a4a1afa9aba0a82fa322a2afa320a1aa27a960511b604082015260600190565b60408051601f198184030181528282528051602091820120908301526001600160a01b03841690820152606001604051602081830303815290604052805190602001209050919050565b6000604051602001611227906020808252601290820152712222a827a9a4aa2fa322a2afa320a1aa27a960711b604082015260600190565b6000604051602001611227906020808252601590820152742ba4aa24222920aba0a62fa322a2afa320a1aa27a960591b604082015260600190565b60006040516020016112b8906020808252601c908201527b20aa27a6a4a1afaba4aa24222920aba0a62fa322a2afa320a1aa27a960211b604082015260600190565b60006110ca838368327cb2734119d3b7a9601e1b61191d565b600080836001600160a01b031663bd02d0f56040516020016114179060208082526011908201527026a0ac2faaa4afa322a2afa320a1aa27a960791b604082015260600190565b604051602081830303815290604052805190602001206040518263ffffffff1660e01b815260040161144b91815260200190565b602060405180830381865afa158015611468573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061148c9190613345565b90506000846001600160a01b031663bd02d0f56114a88661192a565b6040518263ffffffff1660e01b81526004016114c691815260200190565b602060405180830381865afa1580156114e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115079190613345565b90508181106115165781611518565b805b95945050505050565b6000806115368460400151856060015161195d565b905080856001600160a01b031663bd02d0f561155687600001518761198c565b6040518263ffffffff1660e01b815260040161157491815260200190565b602060405180830381865afa158015611591573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115b59190613345565b611518919061341e565b60008183116115d7576115d28383613374565b6110ca565b6110ca8284613374565b60006040516020016112b8906020808252601b908201527a29aba0a82fa4a6a820a1aa2fa2ac2827a722a72a2fa320a1aa27a960291b604082015260600190565b6000806000611631868661168a565b91509150836116405780611642565b815b9695505050505050565b6000848410816116706116608887876119fa565b61166b8888886119fa565b6115bf565b9050600061167e8284611a13565b98975050505050505050565b6000806000846001600160a01b031663bd02d0f56116a9866001611a36565b6040518263ffffffff1660e01b81526004016116c791815260200190565b602060405180830381865afa1580156116e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117089190613345565b90506000856001600160a01b031663bd02d0f5611726876000611a36565b6040518263ffffffff1660e01b815260040161174491815260200190565b602060405180830381865afa158015611761573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117859190613345565b905080821115611793578091505b909590945092505050565b6000806117ac8786856119fa565b905060006117bb8786866119fa565b905060006117c983836115bf565b905060006117d982848611611a13565b9a9950505050505050505050565b60006040516020016112b8906020808252601190820152701592549515505317d3505492d15517d251607a1b604082015260600190565b600060405160200161185f906020808252601b908201527a5649525455414c5f494e56454e544f52595f464f525f535741505360281b604082015260600190565b60408051601f198184030181528282528051602091820120908301528101849052821515606082015260800161125d565b6000808212156118e25760405162461bcd60e51b815260206004820181905260248201527f53616665436173743a2076616c7565206d75737420626520706f7369746976656044820152606401611029565b5090565b60008082131561190a576118f982611a6e565b6119039084613440565b9050611276565b61191382611a6e565b6110ca9084613374565b6000610cd1848484611a7f565b60006040516020016112b8906020808252600d908201526c2aa4afa322a2afa320a1aa27a960991b604082015260600190565b6000816001600160a01b0316836001600160a01b03161461197f576001611982565b60025b60ff169392505050565b60006040516020016119bd906020808252600b908201526a1413d3d317d05353d5539560aa1b604082015260600190565b60408051601f198184030181528282528051602091820120908301526001600160a01b03808616918301919091528316606082015260800161125d565b600080611a078584611b69565b905061151881856113b7565b60008115611a245761190383611bc8565b611a2d83611bc8565b611903906133d6565b60006040516020016112279060208082526012908201527129aba0a82fa4a6a820a1aa2fa320a1aa27a960711b604082015260600190565b6000808212156118e2575060000390565b6000808060001985870985870292508281108382030391505080600003611ab957838281611aaf57611aaf613408565b04925050506110ca565b808411611b005760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401611029565b60008486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091026000889003889004909101858311909403939093029303949094049190911702949350505050565b600068327cb2734119d3b7a9601e1b831015611b8757506000611276565b68327cb2734119d3b7a9601e1b8203611ba1575081611276565b6000611bbd611baf85611c32565b611bb885611c32565b611c43565b9050610cd181611c83565b60006001600160ff1b038211156118e25760405162461bcd60e51b815260206004820152602860248201527f53616665436173743a2076616c756520646f65736e27742066697420696e2061604482015267371034b73a191a9b60c11b6064820152608401611029565b600061127664e8d4a510008361341e565b600082600003611c69578115611c5a576000611903565b50670de0b6b3a7640000611276565b6110ca611c7e611c7885611c94565b84611d4a565b611d56565b600061127664e8d4a51000836133bf565b6000670de0b6b3a7640000821015611cc257604051633621413760e21b815260048101839052602401611029565b6000611cd7670de0b6b3a76400008404611d9c565b670de0b6b3a764000081029250905082811c670de0b6b3a763ffff198101611d00575050919050565b6706f05b59d3b200005b8015611d4257670de0b6b3a7640000828002049150671bc16d674ec800008210611d3a579283019260019190911c905b60011c611d0a565b505050919050565b60006110ca8383611e7f565b6000680a688906bd8b0000008210611d8457604051634a4f26f160e01b815260048101839052602401611029565b670de0b6b3a7640000604083901b046110ca81611f45565b6000600160801b8210611dbc57608091821c91611db99082613440565b90505b600160401b8210611dda57604091821c91611dd79082613440565b90505b600160201b8210611df857602091821c91611df59082613440565b90505b620100008210611e1557601091821c91611e129082613440565b90505b6101008210611e3157600891821c91611e2e9082613440565b90505b60108210611e4c57600491821c91611e499082613440565b90505b60048210611e6757600291821c91611e649082613440565b90505b60028210611e7a57611276600182613440565b919050565b60008080600019848609848602925082811083820303915050670de0b6b3a76400008110611ec35760405163698d9a0160e11b815260048101829052602401611029565b600080670de0b6b3a764000086880991506706f05b59d3b1ffff8211905082600003611f015780670de0b6b3a7640000850401945050505050611276565b620400008285030493909111909103600160ee1b02919091177faccb18165bd6fe31ae1cf318dc5b51eee0e1ba569b88cd74c1773b91fac106690201905092915050565b600160bf1b6001603f1b821615611f655768016a09e667f3bcc9090260401c5b6001603e1b821615611f80576801306fe0a31b7152df0260401c5b6001603d1b821615611f9b576801172b83c7d517adce0260401c5b6001603c1b821615611fb65768010b5586cf9890f62a0260401c5b6001603b1b821615611fd1576801059b0d31585743ae0260401c5b6001603a1b821615611fec57680102c9a3e778060ee70260401c5b600160391b8216156120075768010163da9fb33356d80260401c5b600160381b82161561202257680100b1afa5abcbed610260401c5b600160371b82161561203d5768010058c86da1c09ea20260401c5b600160361b821615612058576801002c605e2e8cec500260401c5b600160351b82161561207357680100162f3904051fa10260401c5b600160341b82161561208e576801000b175effdc76ba0260401c5b600160331b8216156120a957680100058ba01fb9f96d0260401c5b600160321b8216156120c45768010002c5cc37da94920260401c5b600160311b8216156120df576801000162e525ee05470260401c5b600160301b8216156120fa5768010000b17255775c040260401c5b6001602f1b821615612115576801000058b91b5bc9ae0260401c5b6001602e1b82161561213057680100002c5c89d5ec6d0260401c5b6001602d1b82161561214b5768010000162e43f4f8310260401c5b6001602c1b82161561216657680100000b1721bcfc9a0260401c5b6001602b1b8216156121815768010000058b90cf1e6e0260401c5b6001602a1b82161561219c576801000002c5c863b73f0260401c5b600160291b8216156121b757680100000162e430e5a20260401c5b600160281b8216156121d2576801000000b1721835510260401c5b600160271b8216156121ed57680100000058b90c0b490260401c5b600160261b8216156122085768010000002c5c8601cc0260401c5b600160251b821615612223576801000000162e42fff00260401c5b600160241b82161561223e5768010000000b17217fbb0260401c5b600160231b821615612259576801000000058b90bfce0260401c5b600160221b82161561227457680100000002c5c85fe30260401c5b600160211b82161561228f5768010000000162e42ff10260401c5b600160201b8216156122aa57680100000000b17217f80260401c5b63800000008216156122c55768010000000058b90bfc0260401c5b63400000008216156122e0576801000000002c5c85fe0260401c5b63200000008216156122fb57680100000000162e42ff0260401c5b6310000000821615612316576801000000000b17217f0260401c5b630800000082161561233157680100000000058b90c00260401c5b630400000082161561234c5768010000000002c5c8600260401c5b6302000000821615612367576801000000000162e4300260401c5b63010000008216156123825768010000000000b172180260401c5b6280000082161561239c576801000000000058b90c0260401c5b624000008216156123b657680100000000002c5c860260401c5b622000008216156123d05768010000000000162e430260401c5b621000008216156123ea57680100000000000b17210260401c5b620800008216156124045768010000000000058b910260401c5b6204000082161561241e576801000000000002c5c80260401c5b6202000082161561243857680100000000000162e40260401c5b620100008216156124515761b172600160401b010260401c5b618000821615612469576158b9600160401b010260401c5b61400082161561248157612c5d600160401b010260401c5b6120008216156124995761162e600160401b010260401c5b6110008216156124b157610b17600160401b010260401c5b6108008216156124c95761058c600160401b010260401c5b6104008216156124e1576102c6600160401b010260401c5b6102008216156124f957610163600160401b010260401c5b6101008216156125105760b1600160401b010260401c5b6080821615612526576059600160401b010260401c5b604082161561253c57602c600160401b010260401c5b6020821615612552576016600160401b010260401c5b601082161561256857600b600160401b010260401c5b600882161561257e576006600160401b010260401c5b6004821615612594576003600160401b010260401c5b60028216156125aa576001600160401b010260401c5b60018216156125c0576001600160401b010260401c5b670de0b6b3a76400000260409190911c60bf031c90565b604080516101208101909152606060e0820181815261010083019190915281908152602001612619604051806040016040528060608152602001606081525090565b815260200161263b604051806040016040528060608152602001606081525090565b815260200161265d604051806040016040528060608152602001606081525090565b815260200161267f604051806040016040528060608152602001606081525090565b81526020016126a1604051806040016040528060608152602001606081525090565b81526020016126c3604051806040016040528060608152602001606081525090565b905290565b6040518060c0016040528060008152602001600081526020016000815260200160006001600160a01b0316815260200160008152602001600081525090565b6040518060800160405280600081526020016000815260200160008152602001600081525090565b634e487b7160e01b600052604160045260246000fd5b60405161012081016001600160401b038111828210171561277657634e487b7160e01b600052604160045260246000fd5b60405290565b60405160c081016001600160401b038111828210171561277657634e487b7160e01b600052604160045260246000fd5b6040516101a081016001600160401b038111828210171561277657634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146127f257600080fd5b50565b8035611e7a816127dd565b60006080828403121561281257600080fd5b604051608081016001600160401b038111828210171561284257634e487b7160e01b600052604160045260246000fd5b6040529050808235612853816127dd565b81526020830135612863816127dd565b60208201526040830135612876816127dd565b60408201526060830135612889816127dd565b6060919091015292915050565b80358015158114611e7a57600080fd5b60006101808284031280156128ba57600080fd5b5060006128c5612745565b6128ce846127f5565b81526128dd8560208601612800565b60208201526128ee60a085016127f5565b60408201526128ff60c085016127f5565b606082015260e084810135608083015261010085013560a083015261012085013560c083015261014085013590820181905291506129406101608501612896565b610100820152949350505050565b600080600080600080600087890361018081121561296b57600080fd5b8835612976816127dd565b975060208901359650604089013561298d816127dd565b9550606089013561299d816127dd565b94506080890135935060a0890135925060c060bf19820112156129bf57600080fd5b506129c861277c565b60c0890135815260e0890135602082015261010089013560408201526101208901356129f3816127dd565b606082015261014089013560808201526101609098013560a0890152509497939650919490939192565b60008060008060008060c08789031215612a3657600080fd5b8635612a41816127dd565b95506020870135612a51816127dd565b945060408701359350612a6660608801612896565b92506080870135612a76816127dd565b915060a087013560068110612a8a57600080fd5b809150509295509295509295565b6000808284036101c0811215612aad57600080fd5b8335612ab8816127dd565b92506101a0601f1982011215612acd57600080fd5b50612ad66127ac565b60208401358152612ae9604085016127f5565b6020820152612afa606085016127f5565b6040820152612b0b608085016127f5565b6060820152612b1c60a085016127f5565b608082015260c08481013560a083015260e08086013591830191909152610100808601359183019190915261012080860135918301919091526101408086013591830191909152610160808601359183019190915261018080860135918301919091526101a090940135938101939093525092909150565b6000815180845260005b81811015612bba57602081850181015186830182015201612b9e565b506000602082860101526020601f19601f83011685010191505092915050565b600082825180855260208501945060208160051b8301016020850160005b83811015612c8157601f198584030188528151805160408552612c1e6040860182612b94565b6020928301518682038785015280518083529084019360009350909101905b80831015612c685783516001600160a01b031682526020938401936001939093019290910190612c3d565b5060209a8b019a90955093909301925050600101612bf8565b50909695505050505050565b60006040830182516040855281815180845260608701915060608160051b880101935060208301925060005b81811015612d0757605f198886030183528351805160408752612cdf6040880182612b94565b6020928301516001600160a01b03169783019790975250938401939290920191600101612cb9565b50505050602083015184820360208601526115188282612bda565b600082825180855260208501945060208160051b8301016020850160005b83811015612c8157601f198584030188528151805160408552612d666040860182612b94565b6020928301518682038785015280518083529084019360009350909101905b80831015612da85783518252602082019150602084019350600183019250612d85565b5060209a8b019a90955093909301925050600101612d40565b60006040830182516040855281815180845260608701915060608160051b880101935060208301925060005b81811015612e3257605f198886030183528351805160408752612e136040880182612b94565b6020928301519783019790975250938401939290920191600101612ded565b50505050602083015184820360208601526115188282612d22565b60006040830182516040855281815180845260608701915060608160051b880101935060208301925060005b81811015612e3257605f198886030183528351805160408752612e9f6040880182612b94565b6020928301519783019790975250938401939290920191600101612e79565b600082825180855260208501945060208160051b8301016020850160005b83811015612c8157601f198584030188528151805160408552612f026040860182612b94565b6020928301518682038785015280518083529084019360009350909101905b80831015612f4657835115158252602082019150602084019350600183019250612f21565b5060209a8b019a90955093909301925050600101612edc565b60006040830182516040855281815180845260608701915060608160051b880101935060208301925060005b81811015612fd257605f198886030183528351805160408752612fb16040880182612b94565b60209283015115159783019790975250938401939290920191600101612f8b565b50505050602083015184820360208601526115188282612ebe565b60006040830182516040855281815180845260608701915060608160051b880101935060208301925060005b81811015612e3257605f19888603018352835180516040875261303f6040880182612b94565b6020928301519783019790975250938401939290920191600101613019565b600082825180855260208501945060208160051b8301016020850160005b83811015612c8157601f1985840301885281518051604085526130a26040860182612b94565b6020928301518682038785015280518083529084019391925081830191600582901b84010160005b828110156130fb57601f198583030184526130e6828751612b94565b602096870196949094019391506001016130ca565b50809750505050505060208201915060208801975060018101905061307c565b60006040830182516040855281815180845260608701915060608160051b880101935060208301925060005b8181101561319f57605f19888603018352835180516040875261316d6040880182612b94565b90506020820151915086810360208801526131888183612b94565b965050506020938401939290920191600101613147565b5050505060208301518482036020860152611518828261305e565b60006040830182516040855281815180845260608701915060608160051b880101935060208301925060005b8181101561319f57605f19888603018352835180516040875261320c6040880182612b94565b90506020820151915086810360208801526132278183612b94565b9650505060209384019392909201916001016131e6565b6000815160e0845261325360e0850182612c8d565b90506020830151848203602086015261326c8282612dc1565b915050604083015184820360408601526132868282612e4d565b915050606083015184820360608601526132a08282612f5f565b915050608083015184820360808601526132ba8282612fed565b91505060a083015184820360a08601526132d4828261311b565b91505060c083015184820360c086015261151882826131ba565b60608152601160608201527014ddd85c1199595cd0dbdb1b1958dd1959607a1b608082015282602082015260a060408201526000610cd160a083018461323e565b634e487b7160e01b600052602160045260246000fd5b60006020828403121561335757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b818103818111156112765761127661335e565b60608152600860608201526753776170496e666f60c01b608082015282602082015260a060408201526000610cd160a083018461323e565b80820281158282048414176112765761127661335e565b6000600160ff1b82016133eb576133eb61335e565b5060000390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601260045260246000fd5b60008261343b57634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156112765761127661335e56fea2646970667358221220eb1d83c5afa0bb7f8019365c762566279eba38469f3be78493ed90edada48c3364736f6c634300081c0033